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