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