* Step 1: Sum WORST_CASE(Omega(n^1),?)
+ Considered Problem:
- Strict TRS:
10() -> s(s(s(s(s(s(s(s(s(s(0()))))))))))
gen(x) -> if1(le(x,10()),x)
if1(false(),x) -> nil()
if1(true(),x) -> if2(x,x)
if2(x,y) -> if3(le(y,10()),x,y)
if3(false(),x,y) -> gen(s(x))
if3(true(),x,y) -> cons(entry(x,y,times(x,y)),if2(x,s(y)))
le(0(),y) -> true()
le(s(x),0()) -> false()
le(s(x),s(y)) -> le(x,y)
plus(0(),y) -> y
plus(s(x),y) -> s(plus(x,y))
table() -> gen(s(0()))
times(0(),y) -> 0()
times(s(x),y) -> plus(y,times(x,y))
- Signature:
{10/0,gen/1,if1/2,if2/2,if3/3,le/2,plus/2,table/0,times/2} / {0/0,cons/2,entry/3,false/0,nil/0,s/1,true/0}
- Obligation:
innermost runtime complexity wrt. defined symbols {10,gen,if1,if2,if3,le,plus,table
,times} and constructors {0,cons,entry,false,nil,s,true}
+ Applied Processor:
Sum {left = someStrategy, right = someStrategy}
+ Details:
()
* Step 2: DecreasingLoops WORST_CASE(Omega(n^1),?)
+ Considered Problem:
- Strict TRS:
10() -> s(s(s(s(s(s(s(s(s(s(0()))))))))))
gen(x) -> if1(le(x,10()),x)
if1(false(),x) -> nil()
if1(true(),x) -> if2(x,x)
if2(x,y) -> if3(le(y,10()),x,y)
if3(false(),x,y) -> gen(s(x))
if3(true(),x,y) -> cons(entry(x,y,times(x,y)),if2(x,s(y)))
le(0(),y) -> true()
le(s(x),0()) -> false()
le(s(x),s(y)) -> le(x,y)
plus(0(),y) -> y
plus(s(x),y) -> s(plus(x,y))
table() -> gen(s(0()))
times(0(),y) -> 0()
times(s(x),y) -> plus(y,times(x,y))
- Signature:
{10/0,gen/1,if1/2,if2/2,if3/3,le/2,plus/2,table/0,times/2} / {0/0,cons/2,entry/3,false/0,nil/0,s/1,true/0}
- Obligation:
innermost runtime complexity wrt. defined symbols {10,gen,if1,if2,if3,le,plus,table
,times} and constructors {0,cons,entry,false,nil,s,true}
+ Applied Processor:
DecreasingLoops {bound = AnyLoop, narrow = 10}
+ Details:
The system has following decreasing Loops:
le(x,y){x -> s(x),y -> s(y)} =
le(s(x),s(y)) ->^+ le(x,y)
= C[le(x,y) = le(x,y){}]
WORST_CASE(Omega(n^1),?)