* Step 1: Sum WORST_CASE(Omega(n^1),?)
+ Considered Problem:
- Strict TRS:
head(cons(x,xs)) -> x
if(false(),false(),y,xs,ys,x) -> sumList(ys,x)
if(false(),true(),y,xs,ys,x) -> sumList(xs,y)
if(true(),b,y,xs,ys,x) -> y
inc(0()) -> s(0())
inc(s(x)) -> s(inc(x))
isEmpty(cons(x,xs)) -> false()
isEmpty(nil()) -> true()
isZero(0()) -> true()
isZero(s(x)) -> false()
p(0()) -> 0()
p(s(0())) -> 0()
p(s(s(x))) -> s(p(s(x)))
sum(xs) -> sumList(xs,0())
sumList(xs,y) -> if(isEmpty(xs),isZero(head(xs)),y,tail(xs),cons(p(head(xs)),tail(xs)),inc(y))
tail(cons(x,xs)) -> xs
tail(nil()) -> nil()
- Signature:
{head/1,if/6,inc/1,isEmpty/1,isZero/1,p/1,sum/1,sumList/2,tail/1} / {0/0,cons/2,false/0,nil/0,s/1,true/0}
- Obligation:
innermost runtime complexity wrt. defined symbols {head,if,inc,isEmpty,isZero,p,sum,sumList
,tail} 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:
head(cons(x,xs)) -> x
if(false(),false(),y,xs,ys,x) -> sumList(ys,x)
if(false(),true(),y,xs,ys,x) -> sumList(xs,y)
if(true(),b,y,xs,ys,x) -> y
inc(0()) -> s(0())
inc(s(x)) -> s(inc(x))
isEmpty(cons(x,xs)) -> false()
isEmpty(nil()) -> true()
isZero(0()) -> true()
isZero(s(x)) -> false()
p(0()) -> 0()
p(s(0())) -> 0()
p(s(s(x))) -> s(p(s(x)))
sum(xs) -> sumList(xs,0())
sumList(xs,y) -> if(isEmpty(xs),isZero(head(xs)),y,tail(xs),cons(p(head(xs)),tail(xs)),inc(y))
tail(cons(x,xs)) -> xs
tail(nil()) -> nil()
- Signature:
{head/1,if/6,inc/1,isEmpty/1,isZero/1,p/1,sum/1,sumList/2,tail/1} / {0/0,cons/2,false/0,nil/0,s/1,true/0}
- Obligation:
innermost runtime complexity wrt. defined symbols {head,if,inc,isEmpty,isZero,p,sum,sumList
,tail} and constructors {0,cons,false,nil,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),?)