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