* Step 1: DependencyPairs WORST_CASE(?,O(1))
    + Considered Problem:
        - Strict TRS:
            *(x,+(y,z)) -> +(*(x,y),*(x,z))
            *(+(x,y),z) -> +(*(x,z),*(y,z))
            +(x,0()) -> x
            +(x,i(x)) -> 0()
            +(+(x,y),z) -> +(x,+(y,z))
        - Signature:
            {*/2,+/2} / {0/0,i/1}
        - Obligation:
             runtime complexity wrt. defined symbols {*,+} and constructors {0,i}
    + Applied Processor:
        DependencyPairs {dpKind_ = DT}
    + Details:
        We add the following weak dependency pairs:
        
        Strict DPs
          *#(x,+(y,z)) -> c_1(+#(*(x,y),*(x,z)))
          *#(+(x,y),z) -> c_2(+#(*(x,z),*(y,z)))
          +#(x,0()) -> c_3(x)
          +#(x,i(x)) -> c_4()
          +#(+(x,y),z) -> c_5(+#(x,+(y,z)))
        Weak DPs
          
        
        and mark the set of starting terms.
* Step 2: UsableRules WORST_CASE(?,O(1))
    + Considered Problem:
        - Strict DPs:
            *#(x,+(y,z)) -> c_1(+#(*(x,y),*(x,z)))
            *#(+(x,y),z) -> c_2(+#(*(x,z),*(y,z)))
            +#(x,0()) -> c_3(x)
            +#(x,i(x)) -> c_4()
            +#(+(x,y),z) -> c_5(+#(x,+(y,z)))
        - Strict TRS:
            *(x,+(y,z)) -> +(*(x,y),*(x,z))
            *(+(x,y),z) -> +(*(x,z),*(y,z))
            +(x,0()) -> x
            +(x,i(x)) -> 0()
            +(+(x,y),z) -> +(x,+(y,z))
        - Signature:
            {*/2,+/2,*#/2,+#/2} / {0/0,i/1,c_1/1,c_2/1,c_3/1,c_4/0,c_5/1}
        - Obligation:
             runtime complexity wrt. defined symbols {*#,+#} and constructors {0,i}
    + Applied Processor:
        UsableRules
    + Details:
        We replace rewrite rules by usable rules:
          +#(x,0()) -> c_3(x)
          +#(x,i(x)) -> c_4()
* Step 3: PredecessorEstimation WORST_CASE(?,O(1))
    + Considered Problem:
        - Strict DPs:
            +#(x,0()) -> c_3(x)
            +#(x,i(x)) -> c_4()
        - Signature:
            {*/2,+/2,*#/2,+#/2} / {0/0,i/1,c_1/1,c_2/1,c_3/1,c_4/0,c_5/1}
        - Obligation:
             runtime complexity wrt. defined symbols {*#,+#} and constructors {0,i}
    + Applied Processor:
        PredecessorEstimation {onSelection = all simple predecessor estimation selector}
    + Details:
        We estimate the number of application of
          {2}
        by application of
          Pre({2}) = {1}.
        Here rules are labelled as follows:
          1: +#(x,0()) -> c_3(x)
          2: +#(x,i(x)) -> c_4()
* Step 4: RemoveWeakSuffixes WORST_CASE(?,O(1))
    + Considered Problem:
        - Strict DPs:
            +#(x,0()) -> c_3(x)
        - Weak DPs:
            +#(x,i(x)) -> c_4()
        - Signature:
            {*/2,+/2,*#/2,+#/2} / {0/0,i/1,c_1/1,c_2/1,c_3/1,c_4/0,c_5/1}
        - Obligation:
             runtime complexity wrt. defined symbols {*#,+#} and constructors {0,i}
    + Applied Processor:
        RemoveWeakSuffixes
    + Details:
        Consider the dependency graph
          1:S:+#(x,0()) -> c_3(x)
             -->_1 +#(x,i(x)) -> c_4():2
             -->_1 +#(x,0()) -> c_3(x):1
          
          2:W:+#(x,i(x)) -> c_4()
             
          
        The following weak DPs constitute a sub-graph of the DG that is closed under successors. The DPs are removed.
          2: +#(x,i(x)) -> c_4()
* Step 5: MI WORST_CASE(?,O(1))
    + Considered Problem:
        - Strict DPs:
            +#(x,0()) -> c_3(x)
        - Signature:
            {*/2,+/2,*#/2,+#/2} / {0/0,i/1,c_1/1,c_2/1,c_3/1,c_4/0,c_5/1}
        - Obligation:
             runtime complexity wrt. defined symbols {*#,+#} and constructors {0,i}
    + Applied Processor:
        MI {miKind = MaximalMatrix (UpperTriangular (Multiplicity (Just 0))), miDimension = 1, miUArgs = UArgs, miURules = URules, miSelector = Just any strict-rules}
    + Details:
        We apply a matrix interpretation of kind MaximalMatrix (UpperTriangular (Multiplicity (Just 0))):
        
        The following argument positions are considered usable:
          none
        
        Following symbols are considered usable:
          all
        TcT has computed the following interpretation:
            p(*) = [0]                    
            p(+) = [0]                    
            p(0) = [2]                    
            p(i) = [0]                    
           p(*#) = [8]                    
           p(+#) = [1] x_1 + [2] x_2 + [0]
          p(c_1) = [0]                    
          p(c_2) = [0]                    
          p(c_3) = [0]                    
          p(c_4) = [0]                    
          p(c_5) = [0]                    
        
        Following rules are strictly oriented:
        +#(x,0()) = [1] x + [4]
                  > [0]        
                  = c_3(x)     
        
        
        Following rules are (at-least) weakly oriented:
        
* Step 6: EmptyProcessor WORST_CASE(?,O(1))
    + Considered Problem:
        - Weak DPs:
            +#(x,0()) -> c_3(x)
        - Signature:
            {*/2,+/2,*#/2,+#/2} / {0/0,i/1,c_1/1,c_2/1,c_3/1,c_4/0,c_5/1}
        - Obligation:
             runtime complexity wrt. defined symbols {*#,+#} and constructors {0,i}
    + Applied Processor:
        EmptyProcessor
    + Details:
        The problem is already closed. The intended complexity is O(1).

WORST_CASE(?,O(1))