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