MAYBE

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

Strict Trs:
  { lcm(x, y) -> lcmIter(x, y, 0(), times(x, y))
  , lcmIter(x, y, z, u) -> if(or(ge(0(), x), ge(z, u)), x, y, z, u)
  , times(x, y) -> ifTimes(ge(0(), x), x, y)
  , if(true(), x, y, z, u) -> z
  , if(false(), x, y, z, u) -> if2(divisible(z, y), x, y, z, u)
  , or(true(), y) -> true()
  , or(false(), y) -> y
  , ge(x, 0()) -> true()
  , ge(0(), s(y)) -> false()
  , ge(s(x), s(y)) -> ge(x, y)
  , if2(true(), x, y, z, u) -> z
  , if2(false(), x, y, z, u) -> lcmIter(x, y, plus(x, z), u)
  , divisible(0(), s(y)) -> true()
  , divisible(s(x), s(y)) -> div(s(x), s(y), s(y))
  , plus(0(), y) -> y
  , plus(s(x), y) -> s(plus(x, y))
  , ifTimes(true(), x, y) -> 0()
  , ifTimes(false(), x, y) -> plus(y, times(y, p(x)))
  , p(0()) -> s(s(0()))
  , p(s(x)) -> x
  , div(x, y, 0()) -> divisible(x, y)
  , div(0(), y, s(z)) -> false()
  , div(s(x), y, s(z)) -> div(x, y, z)
  , a() -> b()
  , a() -> c() }
Obligation:
  innermost runtime complexity
Answer:
  MAYBE

We add following dependency tuples:

Strict DPs:
  { lcm^#(x, y) ->
    c_1(lcmIter^#(x, y, 0(), times(x, y)), times^#(x, y))
  , lcmIter^#(x, y, z, u) ->
    c_2(if^#(or(ge(0(), x), ge(z, u)), x, y, z, u),
        or^#(ge(0(), x), ge(z, u)),
        ge^#(0(), x),
        ge^#(z, u))
  , times^#(x, y) -> c_3(ifTimes^#(ge(0(), x), x, y), ge^#(0(), x))
  , if^#(true(), x, y, z, u) -> c_4()
  , if^#(false(), x, y, z, u) ->
    c_5(if2^#(divisible(z, y), x, y, z, u), divisible^#(z, y))
  , or^#(true(), y) -> c_6()
  , or^#(false(), y) -> c_7()
  , ge^#(x, 0()) -> c_8()
  , ge^#(0(), s(y)) -> c_9()
  , ge^#(s(x), s(y)) -> c_10(ge^#(x, y))
  , ifTimes^#(true(), x, y) -> c_17()
  , ifTimes^#(false(), x, y) ->
    c_18(plus^#(y, times(y, p(x))), times^#(y, p(x)), p^#(x))
  , if2^#(true(), x, y, z, u) -> c_11()
  , if2^#(false(), x, y, z, u) ->
    c_12(lcmIter^#(x, y, plus(x, z), u), plus^#(x, z))
  , divisible^#(0(), s(y)) -> c_13()
  , divisible^#(s(x), s(y)) -> c_14(div^#(s(x), s(y), s(y)))
  , plus^#(0(), y) -> c_15()
  , plus^#(s(x), y) -> c_16(plus^#(x, y))
  , div^#(x, y, 0()) -> c_21(divisible^#(x, y))
  , div^#(0(), y, s(z)) -> c_22()
  , div^#(s(x), y, s(z)) -> c_23(div^#(x, y, z))
  , p^#(0()) -> c_19()
  , p^#(s(x)) -> c_20()
  , a^#() -> c_24()
  , a^#() -> c_25() }

and mark the set of starting terms.

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

Strict DPs:
  { lcm^#(x, y) ->
    c_1(lcmIter^#(x, y, 0(), times(x, y)), times^#(x, y))
  , lcmIter^#(x, y, z, u) ->
    c_2(if^#(or(ge(0(), x), ge(z, u)), x, y, z, u),
        or^#(ge(0(), x), ge(z, u)),
        ge^#(0(), x),
        ge^#(z, u))
  , times^#(x, y) -> c_3(ifTimes^#(ge(0(), x), x, y), ge^#(0(), x))
  , if^#(true(), x, y, z, u) -> c_4()
  , if^#(false(), x, y, z, u) ->
    c_5(if2^#(divisible(z, y), x, y, z, u), divisible^#(z, y))
  , or^#(true(), y) -> c_6()
  , or^#(false(), y) -> c_7()
  , ge^#(x, 0()) -> c_8()
  , ge^#(0(), s(y)) -> c_9()
  , ge^#(s(x), s(y)) -> c_10(ge^#(x, y))
  , ifTimes^#(true(), x, y) -> c_17()
  , ifTimes^#(false(), x, y) ->
    c_18(plus^#(y, times(y, p(x))), times^#(y, p(x)), p^#(x))
  , if2^#(true(), x, y, z, u) -> c_11()
  , if2^#(false(), x, y, z, u) ->
    c_12(lcmIter^#(x, y, plus(x, z), u), plus^#(x, z))
  , divisible^#(0(), s(y)) -> c_13()
  , divisible^#(s(x), s(y)) -> c_14(div^#(s(x), s(y), s(y)))
  , plus^#(0(), y) -> c_15()
  , plus^#(s(x), y) -> c_16(plus^#(x, y))
  , div^#(x, y, 0()) -> c_21(divisible^#(x, y))
  , div^#(0(), y, s(z)) -> c_22()
  , div^#(s(x), y, s(z)) -> c_23(div^#(x, y, z))
  , p^#(0()) -> c_19()
  , p^#(s(x)) -> c_20()
  , a^#() -> c_24()
  , a^#() -> c_25() }
Weak Trs:
  { lcm(x, y) -> lcmIter(x, y, 0(), times(x, y))
  , lcmIter(x, y, z, u) -> if(or(ge(0(), x), ge(z, u)), x, y, z, u)
  , times(x, y) -> ifTimes(ge(0(), x), x, y)
  , if(true(), x, y, z, u) -> z
  , if(false(), x, y, z, u) -> if2(divisible(z, y), x, y, z, u)
  , or(true(), y) -> true()
  , or(false(), y) -> y
  , ge(x, 0()) -> true()
  , ge(0(), s(y)) -> false()
  , ge(s(x), s(y)) -> ge(x, y)
  , if2(true(), x, y, z, u) -> z
  , if2(false(), x, y, z, u) -> lcmIter(x, y, plus(x, z), u)
  , divisible(0(), s(y)) -> true()
  , divisible(s(x), s(y)) -> div(s(x), s(y), s(y))
  , plus(0(), y) -> y
  , plus(s(x), y) -> s(plus(x, y))
  , ifTimes(true(), x, y) -> 0()
  , ifTimes(false(), x, y) -> plus(y, times(y, p(x)))
  , p(0()) -> s(s(0()))
  , p(s(x)) -> x
  , div(x, y, 0()) -> divisible(x, y)
  , div(0(), y, s(z)) -> false()
  , div(s(x), y, s(z)) -> div(x, y, z)
  , a() -> b()
  , a() -> c() }
Obligation:
  innermost runtime complexity
Answer:
  MAYBE

We estimate the number of application of
{4,6,7,8,9,11,13,15,17,20,22,23,24,25} by applications of
Pre({4,6,7,8,9,11,13,15,17,20,22,23,24,25}) =
{2,3,5,10,12,14,18,19,21}. Here rules are labeled as follows:

  DPs:
    { 1: lcm^#(x, y) ->
         c_1(lcmIter^#(x, y, 0(), times(x, y)), times^#(x, y))
    , 2: lcmIter^#(x, y, z, u) ->
         c_2(if^#(or(ge(0(), x), ge(z, u)), x, y, z, u),
             or^#(ge(0(), x), ge(z, u)),
             ge^#(0(), x),
             ge^#(z, u))
    , 3: times^#(x, y) ->
         c_3(ifTimes^#(ge(0(), x), x, y), ge^#(0(), x))
    , 4: if^#(true(), x, y, z, u) -> c_4()
    , 5: if^#(false(), x, y, z, u) ->
         c_5(if2^#(divisible(z, y), x, y, z, u), divisible^#(z, y))
    , 6: or^#(true(), y) -> c_6()
    , 7: or^#(false(), y) -> c_7()
    , 8: ge^#(x, 0()) -> c_8()
    , 9: ge^#(0(), s(y)) -> c_9()
    , 10: ge^#(s(x), s(y)) -> c_10(ge^#(x, y))
    , 11: ifTimes^#(true(), x, y) -> c_17()
    , 12: ifTimes^#(false(), x, y) ->
          c_18(plus^#(y, times(y, p(x))), times^#(y, p(x)), p^#(x))
    , 13: if2^#(true(), x, y, z, u) -> c_11()
    , 14: if2^#(false(), x, y, z, u) ->
          c_12(lcmIter^#(x, y, plus(x, z), u), plus^#(x, z))
    , 15: divisible^#(0(), s(y)) -> c_13()
    , 16: divisible^#(s(x), s(y)) -> c_14(div^#(s(x), s(y), s(y)))
    , 17: plus^#(0(), y) -> c_15()
    , 18: plus^#(s(x), y) -> c_16(plus^#(x, y))
    , 19: div^#(x, y, 0()) -> c_21(divisible^#(x, y))
    , 20: div^#(0(), y, s(z)) -> c_22()
    , 21: div^#(s(x), y, s(z)) -> c_23(div^#(x, y, z))
    , 22: p^#(0()) -> c_19()
    , 23: p^#(s(x)) -> c_20()
    , 24: a^#() -> c_24()
    , 25: a^#() -> c_25() }

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

Strict DPs:
  { lcm^#(x, y) ->
    c_1(lcmIter^#(x, y, 0(), times(x, y)), times^#(x, y))
  , lcmIter^#(x, y, z, u) ->
    c_2(if^#(or(ge(0(), x), ge(z, u)), x, y, z, u),
        or^#(ge(0(), x), ge(z, u)),
        ge^#(0(), x),
        ge^#(z, u))
  , times^#(x, y) -> c_3(ifTimes^#(ge(0(), x), x, y), ge^#(0(), x))
  , if^#(false(), x, y, z, u) ->
    c_5(if2^#(divisible(z, y), x, y, z, u), divisible^#(z, y))
  , ge^#(s(x), s(y)) -> c_10(ge^#(x, y))
  , ifTimes^#(false(), x, y) ->
    c_18(plus^#(y, times(y, p(x))), times^#(y, p(x)), p^#(x))
  , if2^#(false(), x, y, z, u) ->
    c_12(lcmIter^#(x, y, plus(x, z), u), plus^#(x, z))
  , divisible^#(s(x), s(y)) -> c_14(div^#(s(x), s(y), s(y)))
  , plus^#(s(x), y) -> c_16(plus^#(x, y))
  , div^#(x, y, 0()) -> c_21(divisible^#(x, y))
  , div^#(s(x), y, s(z)) -> c_23(div^#(x, y, z)) }
Weak DPs:
  { if^#(true(), x, y, z, u) -> c_4()
  , or^#(true(), y) -> c_6()
  , or^#(false(), y) -> c_7()
  , ge^#(x, 0()) -> c_8()
  , ge^#(0(), s(y)) -> c_9()
  , ifTimes^#(true(), x, y) -> c_17()
  , if2^#(true(), x, y, z, u) -> c_11()
  , divisible^#(0(), s(y)) -> c_13()
  , plus^#(0(), y) -> c_15()
  , div^#(0(), y, s(z)) -> c_22()
  , p^#(0()) -> c_19()
  , p^#(s(x)) -> c_20()
  , a^#() -> c_24()
  , a^#() -> c_25() }
Weak Trs:
  { lcm(x, y) -> lcmIter(x, y, 0(), times(x, y))
  , lcmIter(x, y, z, u) -> if(or(ge(0(), x), ge(z, u)), x, y, z, u)
  , times(x, y) -> ifTimes(ge(0(), x), x, y)
  , if(true(), x, y, z, u) -> z
  , if(false(), x, y, z, u) -> if2(divisible(z, y), x, y, z, u)
  , or(true(), y) -> true()
  , or(false(), y) -> y
  , ge(x, 0()) -> true()
  , ge(0(), s(y)) -> false()
  , ge(s(x), s(y)) -> ge(x, y)
  , if2(true(), x, y, z, u) -> z
  , if2(false(), x, y, z, u) -> lcmIter(x, y, plus(x, z), u)
  , divisible(0(), s(y)) -> true()
  , divisible(s(x), s(y)) -> div(s(x), s(y), s(y))
  , plus(0(), y) -> y
  , plus(s(x), y) -> s(plus(x, y))
  , ifTimes(true(), x, y) -> 0()
  , ifTimes(false(), x, y) -> plus(y, times(y, p(x)))
  , p(0()) -> s(s(0()))
  , p(s(x)) -> x
  , div(x, y, 0()) -> divisible(x, y)
  , div(0(), y, s(z)) -> false()
  , div(s(x), y, s(z)) -> div(x, y, z)
  , a() -> b()
  , a() -> c() }
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.

{ if^#(true(), x, y, z, u) -> c_4()
, or^#(true(), y) -> c_6()
, or^#(false(), y) -> c_7()
, ge^#(x, 0()) -> c_8()
, ge^#(0(), s(y)) -> c_9()
, ifTimes^#(true(), x, y) -> c_17()
, if2^#(true(), x, y, z, u) -> c_11()
, divisible^#(0(), s(y)) -> c_13()
, plus^#(0(), y) -> c_15()
, div^#(0(), y, s(z)) -> c_22()
, p^#(0()) -> c_19()
, p^#(s(x)) -> c_20()
, a^#() -> c_24()
, a^#() -> c_25() }

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

Strict DPs:
  { lcm^#(x, y) ->
    c_1(lcmIter^#(x, y, 0(), times(x, y)), times^#(x, y))
  , lcmIter^#(x, y, z, u) ->
    c_2(if^#(or(ge(0(), x), ge(z, u)), x, y, z, u),
        or^#(ge(0(), x), ge(z, u)),
        ge^#(0(), x),
        ge^#(z, u))
  , times^#(x, y) -> c_3(ifTimes^#(ge(0(), x), x, y), ge^#(0(), x))
  , if^#(false(), x, y, z, u) ->
    c_5(if2^#(divisible(z, y), x, y, z, u), divisible^#(z, y))
  , ge^#(s(x), s(y)) -> c_10(ge^#(x, y))
  , ifTimes^#(false(), x, y) ->
    c_18(plus^#(y, times(y, p(x))), times^#(y, p(x)), p^#(x))
  , if2^#(false(), x, y, z, u) ->
    c_12(lcmIter^#(x, y, plus(x, z), u), plus^#(x, z))
  , divisible^#(s(x), s(y)) -> c_14(div^#(s(x), s(y), s(y)))
  , plus^#(s(x), y) -> c_16(plus^#(x, y))
  , div^#(x, y, 0()) -> c_21(divisible^#(x, y))
  , div^#(s(x), y, s(z)) -> c_23(div^#(x, y, z)) }
Weak Trs:
  { lcm(x, y) -> lcmIter(x, y, 0(), times(x, y))
  , lcmIter(x, y, z, u) -> if(or(ge(0(), x), ge(z, u)), x, y, z, u)
  , times(x, y) -> ifTimes(ge(0(), x), x, y)
  , if(true(), x, y, z, u) -> z
  , if(false(), x, y, z, u) -> if2(divisible(z, y), x, y, z, u)
  , or(true(), y) -> true()
  , or(false(), y) -> y
  , ge(x, 0()) -> true()
  , ge(0(), s(y)) -> false()
  , ge(s(x), s(y)) -> ge(x, y)
  , if2(true(), x, y, z, u) -> z
  , if2(false(), x, y, z, u) -> lcmIter(x, y, plus(x, z), u)
  , divisible(0(), s(y)) -> true()
  , divisible(s(x), s(y)) -> div(s(x), s(y), s(y))
  , plus(0(), y) -> y
  , plus(s(x), y) -> s(plus(x, y))
  , ifTimes(true(), x, y) -> 0()
  , ifTimes(false(), x, y) -> plus(y, times(y, p(x)))
  , p(0()) -> s(s(0()))
  , p(s(x)) -> x
  , div(x, y, 0()) -> divisible(x, y)
  , div(0(), y, s(z)) -> false()
  , div(s(x), y, s(z)) -> div(x, y, z)
  , a() -> b()
  , a() -> c() }
Obligation:
  innermost runtime complexity
Answer:
  MAYBE

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

  { lcmIter^#(x, y, z, u) ->
    c_2(if^#(or(ge(0(), x), ge(z, u)), x, y, z, u),
        or^#(ge(0(), x), ge(z, u)),
        ge^#(0(), x),
        ge^#(z, u))
  , times^#(x, y) -> c_3(ifTimes^#(ge(0(), x), x, y), ge^#(0(), x))
  , ifTimes^#(false(), x, y) ->
    c_18(plus^#(y, times(y, p(x))), times^#(y, p(x)), p^#(x)) }

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

Strict DPs:
  { lcm^#(x, y) ->
    c_1(lcmIter^#(x, y, 0(), times(x, y)), times^#(x, y))
  , lcmIter^#(x, y, z, u) ->
    c_2(if^#(or(ge(0(), x), ge(z, u)), x, y, z, u), ge^#(z, u))
  , times^#(x, y) -> c_3(ifTimes^#(ge(0(), x), x, y))
  , if^#(false(), x, y, z, u) ->
    c_4(if2^#(divisible(z, y), x, y, z, u), divisible^#(z, y))
  , ge^#(s(x), s(y)) -> c_5(ge^#(x, y))
  , ifTimes^#(false(), x, y) ->
    c_6(plus^#(y, times(y, p(x))), times^#(y, p(x)))
  , if2^#(false(), x, y, z, u) ->
    c_7(lcmIter^#(x, y, plus(x, z), u), plus^#(x, z))
  , divisible^#(s(x), s(y)) -> c_8(div^#(s(x), s(y), s(y)))
  , plus^#(s(x), y) -> c_9(plus^#(x, y))
  , div^#(x, y, 0()) -> c_10(divisible^#(x, y))
  , div^#(s(x), y, s(z)) -> c_11(div^#(x, y, z)) }
Weak Trs:
  { lcm(x, y) -> lcmIter(x, y, 0(), times(x, y))
  , lcmIter(x, y, z, u) -> if(or(ge(0(), x), ge(z, u)), x, y, z, u)
  , times(x, y) -> ifTimes(ge(0(), x), x, y)
  , if(true(), x, y, z, u) -> z
  , if(false(), x, y, z, u) -> if2(divisible(z, y), x, y, z, u)
  , or(true(), y) -> true()
  , or(false(), y) -> y
  , ge(x, 0()) -> true()
  , ge(0(), s(y)) -> false()
  , ge(s(x), s(y)) -> ge(x, y)
  , if2(true(), x, y, z, u) -> z
  , if2(false(), x, y, z, u) -> lcmIter(x, y, plus(x, z), u)
  , divisible(0(), s(y)) -> true()
  , divisible(s(x), s(y)) -> div(s(x), s(y), s(y))
  , plus(0(), y) -> y
  , plus(s(x), y) -> s(plus(x, y))
  , ifTimes(true(), x, y) -> 0()
  , ifTimes(false(), x, y) -> plus(y, times(y, p(x)))
  , p(0()) -> s(s(0()))
  , p(s(x)) -> x
  , div(x, y, 0()) -> divisible(x, y)
  , div(0(), y, s(z)) -> false()
  , div(s(x), y, s(z)) -> div(x, y, z)
  , a() -> b()
  , a() -> c() }
Obligation:
  innermost runtime complexity
Answer:
  MAYBE

We replace rewrite rules by usable rules:

  Weak Usable Rules:
    { times(x, y) -> ifTimes(ge(0(), x), x, y)
    , or(true(), y) -> true()
    , or(false(), y) -> y
    , ge(x, 0()) -> true()
    , ge(0(), s(y)) -> false()
    , ge(s(x), s(y)) -> ge(x, y)
    , divisible(0(), s(y)) -> true()
    , divisible(s(x), s(y)) -> div(s(x), s(y), s(y))
    , plus(0(), y) -> y
    , plus(s(x), y) -> s(plus(x, y))
    , ifTimes(true(), x, y) -> 0()
    , ifTimes(false(), x, y) -> plus(y, times(y, p(x)))
    , p(0()) -> s(s(0()))
    , p(s(x)) -> x
    , div(x, y, 0()) -> divisible(x, y)
    , div(0(), y, s(z)) -> false()
    , div(s(x), y, s(z)) -> div(x, y, z) }

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

Strict DPs:
  { lcm^#(x, y) ->
    c_1(lcmIter^#(x, y, 0(), times(x, y)), times^#(x, y))
  , lcmIter^#(x, y, z, u) ->
    c_2(if^#(or(ge(0(), x), ge(z, u)), x, y, z, u), ge^#(z, u))
  , times^#(x, y) -> c_3(ifTimes^#(ge(0(), x), x, y))
  , if^#(false(), x, y, z, u) ->
    c_4(if2^#(divisible(z, y), x, y, z, u), divisible^#(z, y))
  , ge^#(s(x), s(y)) -> c_5(ge^#(x, y))
  , ifTimes^#(false(), x, y) ->
    c_6(plus^#(y, times(y, p(x))), times^#(y, p(x)))
  , if2^#(false(), x, y, z, u) ->
    c_7(lcmIter^#(x, y, plus(x, z), u), plus^#(x, z))
  , divisible^#(s(x), s(y)) -> c_8(div^#(s(x), s(y), s(y)))
  , plus^#(s(x), y) -> c_9(plus^#(x, y))
  , div^#(x, y, 0()) -> c_10(divisible^#(x, y))
  , div^#(s(x), y, s(z)) -> c_11(div^#(x, y, z)) }
Weak Trs:
  { times(x, y) -> ifTimes(ge(0(), x), x, y)
  , or(true(), y) -> true()
  , or(false(), y) -> y
  , ge(x, 0()) -> true()
  , ge(0(), s(y)) -> false()
  , ge(s(x), s(y)) -> ge(x, y)
  , divisible(0(), s(y)) -> true()
  , divisible(s(x), s(y)) -> div(s(x), s(y), s(y))
  , plus(0(), y) -> y
  , plus(s(x), y) -> s(plus(x, y))
  , ifTimes(true(), x, y) -> 0()
  , ifTimes(false(), x, y) -> plus(y, times(y, p(x)))
  , p(0()) -> s(s(0()))
  , p(s(x)) -> x
  , div(x, y, 0()) -> divisible(x, y)
  , div(0(), y, s(z)) -> false()
  , div(s(x), y, s(z)) -> div(x, y, z) }
Obligation:
  innermost runtime complexity
Answer:
  MAYBE

The input cannot be shown compatible

Arrrr..