* Step 1: Sum WORST_CASE(Omega(n^1),?) + Considered Problem: - Strict TRS: *(x,0()) -> 0() *(x,s(y)) -> +(*(x,y),x) -(x,0()) -> x -(s(x),s(y)) -> -(x,y) f(x,0(),z) -> z f(x,s(y),z) -> if(odd(s(y)),f(x,y,*(x,z)),f(*(x,x),half(s(y)),z)) half(0()) -> 0() half(s(0())) -> 0() half(s(s(x))) -> s(half(x)) if(false(),x,y) -> y if(false(),x,y) -> false() if(true(),x,y) -> x if(true(),x,y) -> true() odd(0()) -> false() odd(s(0())) -> true() odd(s(s(x))) -> odd(x) pow(x,y) -> f(x,y,s(0())) - Signature: {*/2,-/2,f/3,half/1,if/3,odd/1,pow/2} / {+/2,0/0,false/0,s/1,true/0} - Obligation: innermost runtime complexity wrt. defined symbols {*,-,f,half,if,odd,pow} and constructors {+,0,false,s ,true} + Applied Processor: Sum {left = someStrategy, right = someStrategy} + Details: () * Step 2: DecreasingLoops WORST_CASE(Omega(n^1),?) + Considered Problem: - Strict TRS: *(x,0()) -> 0() *(x,s(y)) -> +(*(x,y),x) -(x,0()) -> x -(s(x),s(y)) -> -(x,y) f(x,0(),z) -> z f(x,s(y),z) -> if(odd(s(y)),f(x,y,*(x,z)),f(*(x,x),half(s(y)),z)) half(0()) -> 0() half(s(0())) -> 0() half(s(s(x))) -> s(half(x)) if(false(),x,y) -> y if(false(),x,y) -> false() if(true(),x,y) -> x if(true(),x,y) -> true() odd(0()) -> false() odd(s(0())) -> true() odd(s(s(x))) -> odd(x) pow(x,y) -> f(x,y,s(0())) - Signature: {*/2,-/2,f/3,half/1,if/3,odd/1,pow/2} / {+/2,0/0,false/0,s/1,true/0} - Obligation: innermost runtime complexity wrt. defined symbols {*,-,f,half,if,odd,pow} and constructors {+,0,false,s ,true} + Applied Processor: DecreasingLoops {bound = AnyLoop, narrow = 10} + Details: The system has following decreasing Loops: *(x,y){y -> s(y)} = *(x,s(y)) ->^+ +(*(x,y),x) = C[*(x,y) = *(x,y){}] WORST_CASE(Omega(n^1),?)