* Step 1: Sum WORST_CASE(Omega(n^1),?) + Considered Problem: - Strict TRS: *(x,0()) -> 0() *(x,s(y)) -> +(*(x,y),x) +(x,0()) -> x +(x,s(y)) -> s(+(x,y)) -(x,0()) -> x -(s(x),s(y)) -> -(x,y) fact(x) -> iffact(x,ge(x,s(s(0())))) ge(x,0()) -> true() ge(0(),s(y)) -> false() ge(s(x),s(y)) -> ge(x,y) iffact(x,false()) -> s(0()) iffact(x,true()) -> *(x,fact(-(x,s(0())))) - Signature: {*/2,+/2,-/2,fact/1,ge/2,iffact/2} / {0/0,false/0,s/1,true/0} - Obligation: innermost runtime complexity wrt. defined symbols {*,+,-,fact,ge,iffact} 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 +(x,s(y)) -> s(+(x,y)) -(x,0()) -> x -(s(x),s(y)) -> -(x,y) fact(x) -> iffact(x,ge(x,s(s(0())))) ge(x,0()) -> true() ge(0(),s(y)) -> false() ge(s(x),s(y)) -> ge(x,y) iffact(x,false()) -> s(0()) iffact(x,true()) -> *(x,fact(-(x,s(0())))) - Signature: {*/2,+/2,-/2,fact/1,ge/2,iffact/2} / {0/0,false/0,s/1,true/0} - Obligation: innermost runtime complexity wrt. defined symbols {*,+,-,fact,ge,iffact} 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),?)