* Step 1: Sum WORST_CASE(Omega(n^1),?)
    + Considered Problem:
        - Strict TRS:
            app(Cons(x,xs),ys) -> Cons(x,app(xs,ys))
            app(Nil(),ys) -> ys
            goal(xs) -> quicksort(xs)
            notEmpty(Cons(x,xs)) -> True()
            notEmpty(Nil()) -> False()
            part(x,xs) -> app(quicksort(partLt(x,xs)),Cons(x,quicksort(partGt(x,xs))))
            partGt(x,Nil()) -> Nil()
            partGt(x',Cons(x,xs)) -> partGt[Ite][True][Ite](>(x,x'),x',Cons(x,xs))
            partLt(x,Nil()) -> Nil()
            partLt(x',Cons(x,xs)) -> partLt[Ite][True][Ite](<(x,x'),x',Cons(x,xs))
            quicksort(Cons(x,Cons(x',xs))) -> part(x,Cons(x',xs))
            quicksort(Cons(x,Nil())) -> Cons(x,Nil())
            quicksort(Nil()) -> Nil()
        - Weak TRS:
            <(x,0()) -> False()
            <(0(),S(y)) -> True()
            <(S(x),S(y)) -> <(x,y)
            >(0(),y) -> False()
            >(S(x),0()) -> True()
            >(S(x),S(y)) -> >(x,y)
            partGt[Ite][True][Ite](False(),x',Cons(x,xs)) -> partGt(x',xs)
            partGt[Ite][True][Ite](True(),x',Cons(x,xs)) -> Cons(x,partGt(x',xs))
            partLt[Ite][True][Ite](False(),x',Cons(x,xs)) -> partLt(x',xs)
            partLt[Ite][True][Ite](True(),x',Cons(x,xs)) -> Cons(x,partLt(x',xs))
        - Signature:
            {/2,app/2,goal/1,notEmpty/1,part/2,partGt/2,partGt[Ite][True][Ite]/3,partLt/2,partLt[Ite][True][Ite]/3
            ,quicksort/1} / {0/0,Cons/2,False/0,Nil/0,S/1,True/0}
        - Obligation:
            innermost runtime complexity wrt. defined symbols {<,>,app,goal,notEmpty,part,partGt,partGt[Ite][True][Ite]
            ,partLt,partLt[Ite][True][Ite],quicksort} and constructors {0,Cons,False,Nil,S,True}
    + Applied Processor:
        Sum {left = someStrategy, right = someStrategy}
    + Details:
        ()
* Step 2: DecreasingLoops WORST_CASE(Omega(n^1),?)
    + Considered Problem:
        - Strict TRS:
            app(Cons(x,xs),ys) -> Cons(x,app(xs,ys))
            app(Nil(),ys) -> ys
            goal(xs) -> quicksort(xs)
            notEmpty(Cons(x,xs)) -> True()
            notEmpty(Nil()) -> False()
            part(x,xs) -> app(quicksort(partLt(x,xs)),Cons(x,quicksort(partGt(x,xs))))
            partGt(x,Nil()) -> Nil()
            partGt(x',Cons(x,xs)) -> partGt[Ite][True][Ite](>(x,x'),x',Cons(x,xs))
            partLt(x,Nil()) -> Nil()
            partLt(x',Cons(x,xs)) -> partLt[Ite][True][Ite](<(x,x'),x',Cons(x,xs))
            quicksort(Cons(x,Cons(x',xs))) -> part(x,Cons(x',xs))
            quicksort(Cons(x,Nil())) -> Cons(x,Nil())
            quicksort(Nil()) -> Nil()
        - Weak TRS:
            <(x,0()) -> False()
            <(0(),S(y)) -> True()
            <(S(x),S(y)) -> <(x,y)
            >(0(),y) -> False()
            >(S(x),0()) -> True()
            >(S(x),S(y)) -> >(x,y)
            partGt[Ite][True][Ite](False(),x',Cons(x,xs)) -> partGt(x',xs)
            partGt[Ite][True][Ite](True(),x',Cons(x,xs)) -> Cons(x,partGt(x',xs))
            partLt[Ite][True][Ite](False(),x',Cons(x,xs)) -> partLt(x',xs)
            partLt[Ite][True][Ite](True(),x',Cons(x,xs)) -> Cons(x,partLt(x',xs))
        - Signature:
            {/2,app/2,goal/1,notEmpty/1,part/2,partGt/2,partGt[Ite][True][Ite]/3,partLt/2,partLt[Ite][True][Ite]/3
            ,quicksort/1} / {0/0,Cons/2,False/0,Nil/0,S/1,True/0}
        - Obligation:
            innermost runtime complexity wrt. defined symbols {<,>,app,goal,notEmpty,part,partGt,partGt[Ite][True][Ite]
            ,partLt,partLt[Ite][True][Ite],quicksort} and constructors {0,Cons,False,Nil,S,True}
    + Applied Processor:
        DecreasingLoops {bound = AnyLoop, narrow = 10}
    + Details:
        The system has following decreasing Loops:
          app(y,z){y -> Cons(x,y)} =
            app(Cons(x,y),z) ->^+ Cons(x,app(y,z))
              = C[app(y,z) = app(y,z){}]

WORST_CASE(Omega(n^1),?)