* Step 1: ToInnermost WORST_CASE(?,O(1))
    + Considered Problem:
        - Strict TRS:
            a__c() -> a__f(g(c()))
            a__c() -> c()
            a__f(X) -> f(X)
            a__f(g(X)) -> g(X)
            mark(c()) -> a__c()
            mark(f(X)) -> a__f(X)
            mark(g(X)) -> g(X)
        - Signature:
            {a__c/0,a__f/1,mark/1} / {c/0,f/1,g/1}
        - Obligation:
             runtime complexity wrt. defined symbols {a__c,a__f,mark} and constructors {c,f,g}
    + Applied Processor:
        ToInnermost
    + Details:
        switch to innermost, as the system is overlay and right linear and does not contain weak rules
* Step 2: DependencyPairs WORST_CASE(?,O(1))
    + Considered Problem:
        - Strict TRS:
            a__c() -> a__f(g(c()))
            a__c() -> c()
            a__f(X) -> f(X)
            a__f(g(X)) -> g(X)
            mark(c()) -> a__c()
            mark(f(X)) -> a__f(X)
            mark(g(X)) -> g(X)
        - Signature:
            {a__c/0,a__f/1,mark/1} / {c/0,f/1,g/1}
        - Obligation:
            innermost runtime complexity wrt. defined symbols {a__c,a__f,mark} and constructors {c,f,g}
    + Applied Processor:
        DependencyPairs {dpKind_ = DT}
    + Details:
        We add the following dependency tuples:
        
        Strict DPs
          a__c#() -> c_1(a__f#(g(c())))
          a__c#() -> c_2()
          a__f#(X) -> c_3()
          a__f#(g(X)) -> c_4()
          mark#(c()) -> c_5(a__c#())
          mark#(f(X)) -> c_6(a__f#(X))
          mark#(g(X)) -> c_7()
        Weak DPs
          
        
        and mark the set of starting terms.
* Step 3: UsableRules WORST_CASE(?,O(1))
    + Considered Problem:
        - Strict DPs:
            a__c#() -> c_1(a__f#(g(c())))
            a__c#() -> c_2()
            a__f#(X) -> c_3()
            a__f#(g(X)) -> c_4()
            mark#(c()) -> c_5(a__c#())
            mark#(f(X)) -> c_6(a__f#(X))
            mark#(g(X)) -> c_7()
        - Weak TRS:
            a__c() -> a__f(g(c()))
            a__c() -> c()
            a__f(X) -> f(X)
            a__f(g(X)) -> g(X)
            mark(c()) -> a__c()
            mark(f(X)) -> a__f(X)
            mark(g(X)) -> g(X)
        - Signature:
            {a__c/0,a__f/1,mark/1,a__c#/0,a__f#/1,mark#/1} / {c/0,f/1,g/1,c_1/1,c_2/0,c_3/0,c_4/0,c_5/1,c_6/1,c_7/0}
        - Obligation:
            innermost runtime complexity wrt. defined symbols {a__c#,a__f#,mark#} and constructors {c,f,g}
    + Applied Processor:
        UsableRules
    + Details:
        We replace rewrite rules by usable rules:
          a__c#() -> c_1(a__f#(g(c())))
          a__c#() -> c_2()
          a__f#(X) -> c_3()
          a__f#(g(X)) -> c_4()
          mark#(c()) -> c_5(a__c#())
          mark#(f(X)) -> c_6(a__f#(X))
          mark#(g(X)) -> c_7()
* Step 4: Trivial WORST_CASE(?,O(1))
    + Considered Problem:
        - Strict DPs:
            a__c#() -> c_1(a__f#(g(c())))
            a__c#() -> c_2()
            a__f#(X) -> c_3()
            a__f#(g(X)) -> c_4()
            mark#(c()) -> c_5(a__c#())
            mark#(f(X)) -> c_6(a__f#(X))
            mark#(g(X)) -> c_7()
        - Signature:
            {a__c/0,a__f/1,mark/1,a__c#/0,a__f#/1,mark#/1} / {c/0,f/1,g/1,c_1/1,c_2/0,c_3/0,c_4/0,c_5/1,c_6/1,c_7/0}
        - Obligation:
            innermost runtime complexity wrt. defined symbols {a__c#,a__f#,mark#} and constructors {c,f,g}
    + Applied Processor:
        Trivial
    + Details:
        Consider the dependency graph
          1:S:a__c#() -> c_1(a__f#(g(c())))
             -->_1 a__f#(g(X)) -> c_4():4
             -->_1 a__f#(X) -> c_3():3
          
          2:S:a__c#() -> c_2()
             
          
          3:S:a__f#(X) -> c_3()
             
          
          4:S:a__f#(g(X)) -> c_4()
             
          
          5:S:mark#(c()) -> c_5(a__c#())
             -->_1 a__c#() -> c_2():2
             -->_1 a__c#() -> c_1(a__f#(g(c()))):1
          
          6:S:mark#(f(X)) -> c_6(a__f#(X))
             -->_1 a__f#(g(X)) -> c_4():4
             -->_1 a__f#(X) -> c_3():3
          
          7:S:mark#(g(X)) -> c_7()
             
          
        The dependency graph contains no loops, we remove all dependency pairs.
* Step 5: EmptyProcessor WORST_CASE(?,O(1))
    + Considered Problem:
        
        - Signature:
            {a__c/0,a__f/1,mark/1,a__c#/0,a__f#/1,mark#/1} / {c/0,f/1,g/1,c_1/1,c_2/0,c_3/0,c_4/0,c_5/1,c_6/1,c_7/0}
        - Obligation:
            innermost runtime complexity wrt. defined symbols {a__c#,a__f#,mark#} and constructors {c,f,g}
    + Applied Processor:
        EmptyProcessor
    + Details:
        The problem is already closed. The intended complexity is O(1).

WORST_CASE(?,O(1))