* Step 1: Sum WORST_CASE(Omega(n^1),?)
+ Considered Problem:
- Strict TRS:
app(x,y) -> helpa(0(),plus(length(x),length(y)),x,y)
ge(x,0()) -> true()
ge(0(),s(x)) -> false()
ge(s(x),s(y)) -> ge(x,y)
helpa(c,l,ys,zs) -> if(ge(c,l),c,l,ys,zs)
helpb(c,l,ys,zs) -> cons(take(c,ys,zs),helpa(s(c),l,ys,zs))
if(false(),c,l,ys,zs) -> helpb(c,l,ys,zs)
if(true(),c,l,ys,zs) -> nil()
length(cons(x,y)) -> s(length(y))
length(nil()) -> 0()
plus(x,0()) -> x
plus(x,s(y)) -> s(plus(x,y))
take(0(),cons(x,xs()),ys) -> x
take(0(),nil(),cons(y,ys)) -> y
take(s(c),cons(x,xs()),ys) -> take(c,xs(),ys)
take(s(c),nil(),cons(y,ys)) -> take(c,nil(),ys)
- Signature:
{app/2,ge/2,helpa/4,helpb/4,if/5,length/1,plus/2,take/3} / {0/0,cons/2,false/0,nil/0,s/1,true/0,xs/0}
- Obligation:
innermost runtime complexity wrt. defined symbols {app,ge,helpa,helpb,if,length,plus
,take} and constructors {0,cons,false,nil,s,true,xs}
+ Applied Processor:
Sum {left = someStrategy, right = someStrategy}
+ Details:
()
* Step 2: DecreasingLoops WORST_CASE(Omega(n^1),?)
+ Considered Problem:
- Strict TRS:
app(x,y) -> helpa(0(),plus(length(x),length(y)),x,y)
ge(x,0()) -> true()
ge(0(),s(x)) -> false()
ge(s(x),s(y)) -> ge(x,y)
helpa(c,l,ys,zs) -> if(ge(c,l),c,l,ys,zs)
helpb(c,l,ys,zs) -> cons(take(c,ys,zs),helpa(s(c),l,ys,zs))
if(false(),c,l,ys,zs) -> helpb(c,l,ys,zs)
if(true(),c,l,ys,zs) -> nil()
length(cons(x,y)) -> s(length(y))
length(nil()) -> 0()
plus(x,0()) -> x
plus(x,s(y)) -> s(plus(x,y))
take(0(),cons(x,xs()),ys) -> x
take(0(),nil(),cons(y,ys)) -> y
take(s(c),cons(x,xs()),ys) -> take(c,xs(),ys)
take(s(c),nil(),cons(y,ys)) -> take(c,nil(),ys)
- Signature:
{app/2,ge/2,helpa/4,helpb/4,if/5,length/1,plus/2,take/3} / {0/0,cons/2,false/0,nil/0,s/1,true/0,xs/0}
- Obligation:
innermost runtime complexity wrt. defined symbols {app,ge,helpa,helpb,if,length,plus
,take} and constructors {0,cons,false,nil,s,true,xs}
+ Applied Processor:
DecreasingLoops {bound = AnyLoop, narrow = 10}
+ Details:
The system has following decreasing Loops:
ge(x,y){x -> s(x),y -> s(y)} =
ge(s(x),s(y)) ->^+ ge(x,y)
= C[ge(x,y) = ge(x,y){}]
WORST_CASE(Omega(n^1),?)