* Step 1: Sum WORST_CASE(Omega(n^1),?)
+ Considered Problem:
- Strict TRS:
div(x,y,z) -> if(lt(x,y),x,y,inc(z))
division(x,y) -> div(x,y,0())
if(false(),x,s(y),z) -> div(minus(x,s(y)),s(y),z)
if(true(),x,y,z) -> z
inc(0()) -> s(0())
inc(s(x)) -> s(inc(x))
lt(x,0()) -> false()
lt(0(),s(y)) -> true()
lt(s(x),s(y)) -> lt(x,y)
minus(x,0()) -> x
minus(s(x),s(y)) -> minus(x,y)
- Signature:
{div/3,division/2,if/4,inc/1,lt/2,minus/2} / {0/0,false/0,s/1,true/0}
- Obligation:
innermost runtime complexity wrt. defined symbols {div,division,if,inc,lt,minus} and constructors {0,false,s
,true}
+ Applied Processor:
Sum {left = someStrategy, right = someStrategy}
+ Details:
()
* Step 2: DecreasingLoops WORST_CASE(Omega(n^1),?)
+ Considered Problem:
- Strict TRS:
div(x,y,z) -> if(lt(x,y),x,y,inc(z))
division(x,y) -> div(x,y,0())
if(false(),x,s(y),z) -> div(minus(x,s(y)),s(y),z)
if(true(),x,y,z) -> z
inc(0()) -> s(0())
inc(s(x)) -> s(inc(x))
lt(x,0()) -> false()
lt(0(),s(y)) -> true()
lt(s(x),s(y)) -> lt(x,y)
minus(x,0()) -> x
minus(s(x),s(y)) -> minus(x,y)
- Signature:
{div/3,division/2,if/4,inc/1,lt/2,minus/2} / {0/0,false/0,s/1,true/0}
- Obligation:
innermost runtime complexity wrt. defined symbols {div,division,if,inc,lt,minus} and constructors {0,false,s
,true}
+ Applied Processor:
DecreasingLoops {bound = AnyLoop, narrow = 10}
+ Details:
The system has following decreasing Loops:
inc(x){x -> s(x)} =
inc(s(x)) ->^+ s(inc(x))
= C[inc(x) = inc(x){}]
WORST_CASE(Omega(n^1),?)