* Step 1: Sum WORST_CASE(Omega(n^1),?)
+ Considered Problem:
- Strict TRS:
empty(cons(n,x)) -> false()
empty(nil()) -> true()
eq(0(),0()) -> true()
eq(0(),s(m)) -> false()
eq(s(n),0()) -> false()
eq(s(n),s(m)) -> eq(n,m)
head(cons(n,x)) -> n
if(false(),x,y,z) -> sortIter(replace(min(x),head(x),tail(x)),z)
if(true(),x,y,z) -> y
if_min(false(),cons(n,cons(m,x))) -> min(cons(m,x))
if_min(true(),cons(n,cons(m,x))) -> min(cons(n,x))
if_replace(false(),n,m,cons(k,x)) -> cons(k,replace(n,m,x))
if_replace(true(),n,m,cons(k,x)) -> cons(m,x)
le(0(),m) -> true()
le(s(n),0()) -> false()
le(s(n),s(m)) -> le(n,m)
min(cons(n,cons(m,x))) -> if_min(le(n,m),cons(n,cons(m,x)))
min(cons(x,nil())) -> x
replace(n,m,cons(k,x)) -> if_replace(eq(n,k),n,m,cons(k,x))
replace(n,m,nil()) -> nil()
sort(x) -> sortIter(x,nil())
sortIter(x,y) -> if(empty(x),x,y,append(y,cons(min(x),nil())))
tail(cons(n,x)) -> x
tail(nil()) -> nil()
- Signature:
{empty/1,eq/2,head/1,if/4,if_min/2,if_replace/4,le/2,min/1,replace/3,sort/1,sortIter/2,tail/1} / {0/0
,append/2,cons/2,false/0,nil/0,s/1,true/0}
- Obligation:
innermost runtime complexity wrt. defined symbols {empty,eq,head,if,if_min,if_replace,le,min,replace,sort
,sortIter,tail} and constructors {0,append,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:
empty(cons(n,x)) -> false()
empty(nil()) -> true()
eq(0(),0()) -> true()
eq(0(),s(m)) -> false()
eq(s(n),0()) -> false()
eq(s(n),s(m)) -> eq(n,m)
head(cons(n,x)) -> n
if(false(),x,y,z) -> sortIter(replace(min(x),head(x),tail(x)),z)
if(true(),x,y,z) -> y
if_min(false(),cons(n,cons(m,x))) -> min(cons(m,x))
if_min(true(),cons(n,cons(m,x))) -> min(cons(n,x))
if_replace(false(),n,m,cons(k,x)) -> cons(k,replace(n,m,x))
if_replace(true(),n,m,cons(k,x)) -> cons(m,x)
le(0(),m) -> true()
le(s(n),0()) -> false()
le(s(n),s(m)) -> le(n,m)
min(cons(n,cons(m,x))) -> if_min(le(n,m),cons(n,cons(m,x)))
min(cons(x,nil())) -> x
replace(n,m,cons(k,x)) -> if_replace(eq(n,k),n,m,cons(k,x))
replace(n,m,nil()) -> nil()
sort(x) -> sortIter(x,nil())
sortIter(x,y) -> if(empty(x),x,y,append(y,cons(min(x),nil())))
tail(cons(n,x)) -> x
tail(nil()) -> nil()
- Signature:
{empty/1,eq/2,head/1,if/4,if_min/2,if_replace/4,le/2,min/1,replace/3,sort/1,sortIter/2,tail/1} / {0/0
,append/2,cons/2,false/0,nil/0,s/1,true/0}
- Obligation:
innermost runtime complexity wrt. defined symbols {empty,eq,head,if,if_min,if_replace,le,min,replace,sort
,sortIter,tail} and constructors {0,append,cons,false,nil,s,true}
+ Applied Processor:
DecreasingLoops {bound = AnyLoop, narrow = 10}
+ Details:
The system has following decreasing Loops:
eq(x,y){x -> s(x),y -> s(y)} =
eq(s(x),s(y)) ->^+ eq(x,y)
= C[eq(x,y) = eq(x,y){}]
WORST_CASE(Omega(n^1),?)