* Step 1: Sum WORST_CASE(Omega(n^1),?) + Considered Problem: - Strict TRS: a() -> b() a() -> c() double(0()) -> 0() double(s(x)) -> s(s(double(x))) droplast(cons(x,cons(y,xs))) -> cons(x,droplast(cons(y,xs))) droplast(cons(x,nil())) -> nil() droplast(nil()) -> nil() if(false(),x,y,z) -> loop(x,double(y),s(z)) if(true(),x,y,z) -> z ifmap(false(),xs,ys) -> mapIter(droplast(xs),cons(log(last(xs)),ys)) ifmap(true(),xs,ys) -> ys isempty(cons(x,xs)) -> false() isempty(nil()) -> true() last(cons(x,cons(y,xs))) -> last(cons(y,xs)) last(cons(x,nil())) -> x last(nil()) -> error() le(0(),y) -> true() le(s(x),0()) -> false() le(s(x),s(y)) -> le(x,y) log(0()) -> logError() log(s(x)) -> loop(s(x),s(0()),0()) loop(x,s(y),z) -> if(le(x,s(y)),x,s(y),z) mapIter(xs,ys) -> ifmap(isempty(xs),xs,ys) maplog(xs) -> mapIter(xs,nil()) - Signature: {a/0,double/1,droplast/1,if/4,ifmap/3,isempty/1,last/1,le/2,log/1,loop/3,mapIter/2,maplog/1} / {0/0,b/0,c/0 ,cons/2,error/0,false/0,logError/0,nil/0,s/1,true/0} - Obligation: innermost runtime complexity wrt. defined symbols {a,double,droplast,if,ifmap,isempty,last,le,log,loop ,mapIter,maplog} and constructors {0,b,c,cons,error,false,logError,nil,s,true} + Applied Processor: Sum {left = someStrategy, right = someStrategy} + Details: () * Step 2: DecreasingLoops WORST_CASE(Omega(n^1),?) + Considered Problem: - Strict TRS: a() -> b() a() -> c() double(0()) -> 0() double(s(x)) -> s(s(double(x))) droplast(cons(x,cons(y,xs))) -> cons(x,droplast(cons(y,xs))) droplast(cons(x,nil())) -> nil() droplast(nil()) -> nil() if(false(),x,y,z) -> loop(x,double(y),s(z)) if(true(),x,y,z) -> z ifmap(false(),xs,ys) -> mapIter(droplast(xs),cons(log(last(xs)),ys)) ifmap(true(),xs,ys) -> ys isempty(cons(x,xs)) -> false() isempty(nil()) -> true() last(cons(x,cons(y,xs))) -> last(cons(y,xs)) last(cons(x,nil())) -> x last(nil()) -> error() le(0(),y) -> true() le(s(x),0()) -> false() le(s(x),s(y)) -> le(x,y) log(0()) -> logError() log(s(x)) -> loop(s(x),s(0()),0()) loop(x,s(y),z) -> if(le(x,s(y)),x,s(y),z) mapIter(xs,ys) -> ifmap(isempty(xs),xs,ys) maplog(xs) -> mapIter(xs,nil()) - Signature: {a/0,double/1,droplast/1,if/4,ifmap/3,isempty/1,last/1,le/2,log/1,loop/3,mapIter/2,maplog/1} / {0/0,b/0,c/0 ,cons/2,error/0,false/0,logError/0,nil/0,s/1,true/0} - Obligation: innermost runtime complexity wrt. defined symbols {a,double,droplast,if,ifmap,isempty,last,le,log,loop ,mapIter,maplog} and constructors {0,b,c,cons,error,false,logError,nil,s,true} + Applied Processor: DecreasingLoops {bound = AnyLoop, narrow = 10} + Details: The system has following decreasing Loops: double(x){x -> s(x)} = double(s(x)) ->^+ s(s(double(x))) = C[double(x) = double(x){}] WORST_CASE(Omega(n^1),?)