* Step 1: Sum WORST_CASE(Omega(n^1),?)
+ Considered Problem:
- Strict TRS:
app(add(n,x),y) -> add(n,app(x,y))
app(nil(),y) -> y
eq(0(),0()) -> true()
eq(0(),s(x)) -> false()
eq(s(x),0()) -> false()
eq(s(x),s(y)) -> eq(x,y)
head(add(n,x)) -> n
if_min(false(),x,y,m) -> minIter(x,y,m)
if_min(true(),x,y,m) -> m
if_minsort(false(),add(n,x),y) -> minsort(x,add(n,y))
if_minsort(true(),add(n,x),y) -> add(n,minsort(app(rm(n,x),y),nil()))
if_rm(false(),n,add(m,x)) -> add(m,rm(n,x))
if_rm(true(),n,add(m,x)) -> rm(n,x)
le(0(),y) -> true()
le(s(x),0()) -> false()
le(s(x),s(y)) -> le(x,y)
min(add(n,x)) -> minIter(add(n,x),add(n,x),0())
min(nil()) -> 0()
minIter(add(n,x),y,m) -> if_min(le(n,m),x,y,m)
minIter(nil(),add(n,y),m) -> minIter(add(n,y),add(n,y),s(m))
minsort(add(n,x),y) -> if_minsort(eq(n,min(add(n,x))),add(n,x),y)
minsort(nil(),nil()) -> nil()
null(add(n,x)) -> false()
null(nil()) -> true()
rm(n,add(m,x)) -> if_rm(eq(n,m),n,add(m,x))
rm(n,nil()) -> nil()
tail(add(n,x)) -> x
tail(nil()) -> nil()
- Signature:
{app/2,eq/2,head/1,if_min/4,if_minsort/3,if_rm/3,le/2,min/1,minIter/3,minsort/2,null/1,rm/2,tail/1} / {0/0
,add/2,false/0,nil/0,s/1,true/0}
- Obligation:
innermost runtime complexity wrt. defined symbols {app,eq,head,if_min,if_minsort,if_rm,le,min,minIter
,minsort,null,rm,tail} and constructors {0,add,false,nil,s,true}
+ Applied Processor:
Sum {left = someStrategy, right = someStrategy}
+ Details:
()
* Step 2: DecreasingLoops WORST_CASE(Omega(n^1),?)
+ Considered Problem:
- Strict TRS:
app(add(n,x),y) -> add(n,app(x,y))
app(nil(),y) -> y
eq(0(),0()) -> true()
eq(0(),s(x)) -> false()
eq(s(x),0()) -> false()
eq(s(x),s(y)) -> eq(x,y)
head(add(n,x)) -> n
if_min(false(),x,y,m) -> minIter(x,y,m)
if_min(true(),x,y,m) -> m
if_minsort(false(),add(n,x),y) -> minsort(x,add(n,y))
if_minsort(true(),add(n,x),y) -> add(n,minsort(app(rm(n,x),y),nil()))
if_rm(false(),n,add(m,x)) -> add(m,rm(n,x))
if_rm(true(),n,add(m,x)) -> rm(n,x)
le(0(),y) -> true()
le(s(x),0()) -> false()
le(s(x),s(y)) -> le(x,y)
min(add(n,x)) -> minIter(add(n,x),add(n,x),0())
min(nil()) -> 0()
minIter(add(n,x),y,m) -> if_min(le(n,m),x,y,m)
minIter(nil(),add(n,y),m) -> minIter(add(n,y),add(n,y),s(m))
minsort(add(n,x),y) -> if_minsort(eq(n,min(add(n,x))),add(n,x),y)
minsort(nil(),nil()) -> nil()
null(add(n,x)) -> false()
null(nil()) -> true()
rm(n,add(m,x)) -> if_rm(eq(n,m),n,add(m,x))
rm(n,nil()) -> nil()
tail(add(n,x)) -> x
tail(nil()) -> nil()
- Signature:
{app/2,eq/2,head/1,if_min/4,if_minsort/3,if_rm/3,le/2,min/1,minIter/3,minsort/2,null/1,rm/2,tail/1} / {0/0
,add/2,false/0,nil/0,s/1,true/0}
- Obligation:
innermost runtime complexity wrt. defined symbols {app,eq,head,if_min,if_minsort,if_rm,le,min,minIter
,minsort,null,rm,tail} and constructors {0,add,false,nil,s,true}
+ Applied Processor:
DecreasingLoops {bound = AnyLoop, narrow = 10}
+ Details:
The system has following decreasing Loops:
app(y,z){y -> add(x,y)} =
app(add(x,y),z) ->^+ add(x,app(y,z))
= C[app(y,z) = app(y,z){}]
WORST_CASE(Omega(n^1),?)