* Step 1: Sum WORST_CASE(Omega(n^1),?)
+ Considered Problem:
- Strict TRS:
concat(cons(u,v),y) -> cons(u,concat(v,y))
concat(leaf(),y) -> y
if1(b,false(),u,v) -> if2(b,u,v)
if1(b,true(),u,v) -> false()
if2(false(),u,v) -> less_leaves(concat(left(u),right(u)),concat(left(v),right(v)))
if2(true(),u,v) -> true()
isLeaf(cons(u,v)) -> false()
isLeaf(leaf()) -> true()
left(cons(u,v)) -> u
less_leaves(u,v) -> if1(isLeaf(u),isLeaf(v),u,v)
right(cons(u,v)) -> v
- Signature:
{concat/2,if1/4,if2/3,isLeaf/1,left/1,less_leaves/2,right/1} / {cons/2,false/0,leaf/0,true/0}
- Obligation:
innermost runtime complexity wrt. defined symbols {concat,if1,if2,isLeaf,left,less_leaves
,right} and constructors {cons,false,leaf,true}
+ Applied Processor:
Sum {left = someStrategy, right = someStrategy}
+ Details:
()
* Step 2: DecreasingLoops WORST_CASE(Omega(n^1),?)
+ Considered Problem:
- Strict TRS:
concat(cons(u,v),y) -> cons(u,concat(v,y))
concat(leaf(),y) -> y
if1(b,false(),u,v) -> if2(b,u,v)
if1(b,true(),u,v) -> false()
if2(false(),u,v) -> less_leaves(concat(left(u),right(u)),concat(left(v),right(v)))
if2(true(),u,v) -> true()
isLeaf(cons(u,v)) -> false()
isLeaf(leaf()) -> true()
left(cons(u,v)) -> u
less_leaves(u,v) -> if1(isLeaf(u),isLeaf(v),u,v)
right(cons(u,v)) -> v
- Signature:
{concat/2,if1/4,if2/3,isLeaf/1,left/1,less_leaves/2,right/1} / {cons/2,false/0,leaf/0,true/0}
- Obligation:
innermost runtime complexity wrt. defined symbols {concat,if1,if2,isLeaf,left,less_leaves
,right} and constructors {cons,false,leaf,true}
+ Applied Processor:
DecreasingLoops {bound = AnyLoop, narrow = 10}
+ Details:
The system has following decreasing Loops:
concat(y,z){y -> cons(x,y)} =
concat(cons(x,y),z) ->^+ cons(x,concat(y,z))
= C[concat(y,z) = concat(y,z){}]
WORST_CASE(Omega(n^1),?)