*** 1 Progress [(?,O(n^3))]  ***
    Considered Problem:
      Strict DP Rules:
        
      Strict TRS Rules:
        +(0(),y) -> y
        +(s(x),y) -> s(+(x,y))
        ++(:(x,xs),ys) -> :(x,++(xs,ys))
        ++(nil(),ys) -> ys
        -(x,0()) -> x
        -(0(),s(y)) -> 0()
        -(s(x),s(y)) -> -(x,y)
        avg(xs) -> quot(hd(sum(xs)),length(xs))
        hd(:(x,xs)) -> x
        length(:(x,xs)) -> s(length(xs))
        length(nil()) -> 0()
        quot(0(),s(y)) -> 0()
        quot(s(x),s(y)) -> s(quot(-(x,y),s(y)))
        sum(++(xs,:(x,:(y,ys)))) -> sum(++(xs,sum(:(x,:(y,ys)))))
        sum(:(x,:(y,xs))) -> sum(:(+(x,y),xs))
        sum(:(x,nil())) -> :(x,nil())
      Weak DP Rules:
        
      Weak TRS Rules:
        
      Signature:
        {+/2,++/2,-/2,avg/1,hd/1,length/1,quot/2,sum/1} / {0/0,:/2,nil/0,s/1}
      Obligation:
        Innermost
        basic terms: {+,++,-,avg,hd,length,quot,sum}/{0,:,nil,s}
    Applied Processor:
      DependencyPairs {dpKind_ = DT}
    Proof:
      We add the following dependency tuples:
      
      Strict DPs
        +#(0(),y) -> c_1()
        +#(s(x),y) -> c_2(+#(x,y))
        ++#(:(x,xs),ys) -> c_3(++#(xs,ys))
        ++#(nil(),ys) -> c_4()
        -#(x,0()) -> c_5()
        -#(0(),s(y)) -> c_6()
        -#(s(x),s(y)) -> c_7(-#(x,y))
        avg#(xs) -> c_8(quot#(hd(sum(xs)),length(xs)),hd#(sum(xs)),sum#(xs),length#(xs))
        hd#(:(x,xs)) -> c_9()
        length#(:(x,xs)) -> c_10(length#(xs))
        length#(nil()) -> c_11()
        quot#(0(),s(y)) -> c_12()
        quot#(s(x),s(y)) -> c_13(quot#(-(x,y),s(y)),-#(x,y))
        sum#(++(xs,:(x,:(y,ys)))) -> c_14(sum#(++(xs,sum(:(x,:(y,ys))))),++#(xs,sum(:(x,:(y,ys)))),sum#(:(x,:(y,ys))))
        sum#(:(x,:(y,xs))) -> c_15(sum#(:(+(x,y),xs)),+#(x,y))
        sum#(:(x,nil())) -> c_16()
      Weak DPs
        
      
      and mark the set of starting terms.
*** 1.1 Progress [(?,O(n^3))]  ***
    Considered Problem:
      Strict DP Rules:
        +#(0(),y) -> c_1()
        +#(s(x),y) -> c_2(+#(x,y))
        ++#(:(x,xs),ys) -> c_3(++#(xs,ys))
        ++#(nil(),ys) -> c_4()
        -#(x,0()) -> c_5()
        -#(0(),s(y)) -> c_6()
        -#(s(x),s(y)) -> c_7(-#(x,y))
        avg#(xs) -> c_8(quot#(hd(sum(xs)),length(xs)),hd#(sum(xs)),sum#(xs),length#(xs))
        hd#(:(x,xs)) -> c_9()
        length#(:(x,xs)) -> c_10(length#(xs))
        length#(nil()) -> c_11()
        quot#(0(),s(y)) -> c_12()
        quot#(s(x),s(y)) -> c_13(quot#(-(x,y),s(y)),-#(x,y))
        sum#(++(xs,:(x,:(y,ys)))) -> c_14(sum#(++(xs,sum(:(x,:(y,ys))))),++#(xs,sum(:(x,:(y,ys)))),sum#(:(x,:(y,ys))))
        sum#(:(x,:(y,xs))) -> c_15(sum#(:(+(x,y),xs)),+#(x,y))
        sum#(:(x,nil())) -> c_16()
      Strict TRS Rules:
        
      Weak DP Rules:
        
      Weak TRS Rules:
        +(0(),y) -> y
        +(s(x),y) -> s(+(x,y))
        ++(:(x,xs),ys) -> :(x,++(xs,ys))
        ++(nil(),ys) -> ys
        -(x,0()) -> x
        -(0(),s(y)) -> 0()
        -(s(x),s(y)) -> -(x,y)
        avg(xs) -> quot(hd(sum(xs)),length(xs))
        hd(:(x,xs)) -> x
        length(:(x,xs)) -> s(length(xs))
        length(nil()) -> 0()
        quot(0(),s(y)) -> 0()
        quot(s(x),s(y)) -> s(quot(-(x,y),s(y)))
        sum(++(xs,:(x,:(y,ys)))) -> sum(++(xs,sum(:(x,:(y,ys)))))
        sum(:(x,:(y,xs))) -> sum(:(+(x,y),xs))
        sum(:(x,nil())) -> :(x,nil())
      Signature:
        {+/2,++/2,-/2,avg/1,hd/1,length/1,quot/2,sum/1,+#/2,++#/2,-#/2,avg#/1,hd#/1,length#/1,quot#/2,sum#/1} / {0/0,:/2,nil/0,s/1,c_1/0,c_2/1,c_3/1,c_4/0,c_5/0,c_6/0,c_7/1,c_8/4,c_9/0,c_10/1,c_11/0,c_12/0,c_13/2,c_14/3,c_15/2,c_16/0}
      Obligation:
        Innermost
        basic terms: {+#,++#,-#,avg#,hd#,length#,quot#,sum#}/{0,:,nil,s}
    Applied Processor:
      UsableRules
    Proof:
      We replace rewrite rules by usable rules:
        +(0(),y) -> y
        +(s(x),y) -> s(+(x,y))
        ++(:(x,xs),ys) -> :(x,++(xs,ys))
        ++(nil(),ys) -> ys
        -(x,0()) -> x
        -(0(),s(y)) -> 0()
        -(s(x),s(y)) -> -(x,y)
        hd(:(x,xs)) -> x
        length(:(x,xs)) -> s(length(xs))
        length(nil()) -> 0()
        sum(++(xs,:(x,:(y,ys)))) -> sum(++(xs,sum(:(x,:(y,ys)))))
        sum(:(x,:(y,xs))) -> sum(:(+(x,y),xs))
        sum(:(x,nil())) -> :(x,nil())
        +#(0(),y) -> c_1()
        +#(s(x),y) -> c_2(+#(x,y))
        ++#(:(x,xs),ys) -> c_3(++#(xs,ys))
        ++#(nil(),ys) -> c_4()
        -#(x,0()) -> c_5()
        -#(0(),s(y)) -> c_6()
        -#(s(x),s(y)) -> c_7(-#(x,y))
        avg#(xs) -> c_8(quot#(hd(sum(xs)),length(xs)),hd#(sum(xs)),sum#(xs),length#(xs))
        hd#(:(x,xs)) -> c_9()
        length#(:(x,xs)) -> c_10(length#(xs))
        length#(nil()) -> c_11()
        quot#(0(),s(y)) -> c_12()
        quot#(s(x),s(y)) -> c_13(quot#(-(x,y),s(y)),-#(x,y))
        sum#(++(xs,:(x,:(y,ys)))) -> c_14(sum#(++(xs,sum(:(x,:(y,ys))))),++#(xs,sum(:(x,:(y,ys)))),sum#(:(x,:(y,ys))))
        sum#(:(x,:(y,xs))) -> c_15(sum#(:(+(x,y),xs)),+#(x,y))
        sum#(:(x,nil())) -> c_16()
*** 1.1.1 Progress [(?,O(n^3))]  ***
    Considered Problem:
      Strict DP Rules:
        +#(0(),y) -> c_1()
        +#(s(x),y) -> c_2(+#(x,y))
        ++#(:(x,xs),ys) -> c_3(++#(xs,ys))
        ++#(nil(),ys) -> c_4()
        -#(x,0()) -> c_5()
        -#(0(),s(y)) -> c_6()
        -#(s(x),s(y)) -> c_7(-#(x,y))
        avg#(xs) -> c_8(quot#(hd(sum(xs)),length(xs)),hd#(sum(xs)),sum#(xs),length#(xs))
        hd#(:(x,xs)) -> c_9()
        length#(:(x,xs)) -> c_10(length#(xs))
        length#(nil()) -> c_11()
        quot#(0(),s(y)) -> c_12()
        quot#(s(x),s(y)) -> c_13(quot#(-(x,y),s(y)),-#(x,y))
        sum#(++(xs,:(x,:(y,ys)))) -> c_14(sum#(++(xs,sum(:(x,:(y,ys))))),++#(xs,sum(:(x,:(y,ys)))),sum#(:(x,:(y,ys))))
        sum#(:(x,:(y,xs))) -> c_15(sum#(:(+(x,y),xs)),+#(x,y))
        sum#(:(x,nil())) -> c_16()
      Strict TRS Rules:
        
      Weak DP Rules:
        
      Weak TRS Rules:
        +(0(),y) -> y
        +(s(x),y) -> s(+(x,y))
        ++(:(x,xs),ys) -> :(x,++(xs,ys))
        ++(nil(),ys) -> ys
        -(x,0()) -> x
        -(0(),s(y)) -> 0()
        -(s(x),s(y)) -> -(x,y)
        hd(:(x,xs)) -> x
        length(:(x,xs)) -> s(length(xs))
        length(nil()) -> 0()
        sum(++(xs,:(x,:(y,ys)))) -> sum(++(xs,sum(:(x,:(y,ys)))))
        sum(:(x,:(y,xs))) -> sum(:(+(x,y),xs))
        sum(:(x,nil())) -> :(x,nil())
      Signature:
        {+/2,++/2,-/2,avg/1,hd/1,length/1,quot/2,sum/1,+#/2,++#/2,-#/2,avg#/1,hd#/1,length#/1,quot#/2,sum#/1} / {0/0,:/2,nil/0,s/1,c_1/0,c_2/1,c_3/1,c_4/0,c_5/0,c_6/0,c_7/1,c_8/4,c_9/0,c_10/1,c_11/0,c_12/0,c_13/2,c_14/3,c_15/2,c_16/0}
      Obligation:
        Innermost
        basic terms: {+#,++#,-#,avg#,hd#,length#,quot#,sum#}/{0,:,nil,s}
    Applied Processor:
      PredecessorEstimation {onSelection = all simple predecessor estimation selector}
    Proof:
      We estimate the number of application of
        {1,4,5,6,9,11,12,16}
      by application of
        Pre({1,4,5,6,9,11,12,16}) = {2,3,7,8,10,13,14,15}.
      Here rules are labelled as follows:
        1:  +#(0(),y) -> c_1()                
        2:  +#(s(x),y) -> c_2(+#(x,y))        
        3:  ++#(:(x,xs),ys) -> c_3(++#(xs     
                                      ,ys))   
        4:  ++#(nil(),ys) -> c_4()            
        5:  -#(x,0()) -> c_5()                
        6:  -#(0(),s(y)) -> c_6()             
        7:  -#(s(x),s(y)) -> c_7(-#(x,y))     
        8:  avg#(xs) ->                       
              c_8(quot#(hd(sum(xs))           
                       ,length(xs))           
                 ,hd#(sum(xs))                
                 ,sum#(xs)                    
                 ,length#(xs))                
        9:  hd#(:(x,xs)) -> c_9()             
        10: length#(:(x,xs)) ->               
              c_10(length#(xs))               
        11: length#(nil()) -> c_11()          
        12: quot#(0(),s(y)) -> c_12()         
        13: quot#(s(x),s(y)) ->               
              c_13(quot#(-(x,y),s(y)),-#(x,y))
        14: sum#(++(xs,:(x,:(y,ys)))) ->      
              c_14(sum#(++(xs                 
                          ,sum(:(x,:(y,ys)))))
                  ,++#(xs,sum(:(x,:(y,ys))))  
                  ,sum#(:(x,:(y,ys))))        
        15: sum#(:(x,:(y,xs))) ->             
              c_15(sum#(:(+(x,y),xs)),+#(x,y))
        16: sum#(:(x,nil())) -> c_16()        
*** 1.1.1.1 Progress [(?,O(n^3))]  ***
    Considered Problem:
      Strict DP Rules:
        +#(s(x),y) -> c_2(+#(x,y))
        ++#(:(x,xs),ys) -> c_3(++#(xs,ys))
        -#(s(x),s(y)) -> c_7(-#(x,y))
        avg#(xs) -> c_8(quot#(hd(sum(xs)),length(xs)),hd#(sum(xs)),sum#(xs),length#(xs))
        length#(:(x,xs)) -> c_10(length#(xs))
        quot#(s(x),s(y)) -> c_13(quot#(-(x,y),s(y)),-#(x,y))
        sum#(++(xs,:(x,:(y,ys)))) -> c_14(sum#(++(xs,sum(:(x,:(y,ys))))),++#(xs,sum(:(x,:(y,ys)))),sum#(:(x,:(y,ys))))
        sum#(:(x,:(y,xs))) -> c_15(sum#(:(+(x,y),xs)),+#(x,y))
      Strict TRS Rules:
        
      Weak DP Rules:
        +#(0(),y) -> c_1()
        ++#(nil(),ys) -> c_4()
        -#(x,0()) -> c_5()
        -#(0(),s(y)) -> c_6()
        hd#(:(x,xs)) -> c_9()
        length#(nil()) -> c_11()
        quot#(0(),s(y)) -> c_12()
        sum#(:(x,nil())) -> c_16()
      Weak TRS Rules:
        +(0(),y) -> y
        +(s(x),y) -> s(+(x,y))
        ++(:(x,xs),ys) -> :(x,++(xs,ys))
        ++(nil(),ys) -> ys
        -(x,0()) -> x
        -(0(),s(y)) -> 0()
        -(s(x),s(y)) -> -(x,y)
        hd(:(x,xs)) -> x
        length(:(x,xs)) -> s(length(xs))
        length(nil()) -> 0()
        sum(++(xs,:(x,:(y,ys)))) -> sum(++(xs,sum(:(x,:(y,ys)))))
        sum(:(x,:(y,xs))) -> sum(:(+(x,y),xs))
        sum(:(x,nil())) -> :(x,nil())
      Signature:
        {+/2,++/2,-/2,avg/1,hd/1,length/1,quot/2,sum/1,+#/2,++#/2,-#/2,avg#/1,hd#/1,length#/1,quot#/2,sum#/1} / {0/0,:/2,nil/0,s/1,c_1/0,c_2/1,c_3/1,c_4/0,c_5/0,c_6/0,c_7/1,c_8/4,c_9/0,c_10/1,c_11/0,c_12/0,c_13/2,c_14/3,c_15/2,c_16/0}
      Obligation:
        Innermost
        basic terms: {+#,++#,-#,avg#,hd#,length#,quot#,sum#}/{0,:,nil,s}
    Applied Processor:
      RemoveWeakSuffixes
    Proof:
      Consider the dependency graph
        1:S:+#(s(x),y) -> c_2(+#(x,y))
           -->_1 +#(0(),y) -> c_1():9
           -->_1 +#(s(x),y) -> c_2(+#(x,y)):1
        
        2:S:++#(:(x,xs),ys) -> c_3(++#(xs,ys))
           -->_1 ++#(nil(),ys) -> c_4():10
           -->_1 ++#(:(x,xs),ys) -> c_3(++#(xs,ys)):2
        
        3:S:-#(s(x),s(y)) -> c_7(-#(x,y))
           -->_1 -#(0(),s(y)) -> c_6():12
           -->_1 -#(x,0()) -> c_5():11
           -->_1 -#(s(x),s(y)) -> c_7(-#(x,y)):3
        
        4:S:avg#(xs) -> c_8(quot#(hd(sum(xs)),length(xs)),hd#(sum(xs)),sum#(xs),length#(xs))
           -->_3 sum#(:(x,:(y,xs))) -> c_15(sum#(:(+(x,y),xs)),+#(x,y)):8
           -->_3 sum#(++(xs,:(x,:(y,ys)))) -> c_14(sum#(++(xs,sum(:(x,:(y,ys))))),++#(xs,sum(:(x,:(y,ys)))),sum#(:(x,:(y,ys)))):7
           -->_1 quot#(s(x),s(y)) -> c_13(quot#(-(x,y),s(y)),-#(x,y)):6
           -->_4 length#(:(x,xs)) -> c_10(length#(xs)):5
           -->_3 sum#(:(x,nil())) -> c_16():16
           -->_1 quot#(0(),s(y)) -> c_12():15
           -->_4 length#(nil()) -> c_11():14
           -->_2 hd#(:(x,xs)) -> c_9():13
        
        5:S:length#(:(x,xs)) -> c_10(length#(xs))
           -->_1 length#(nil()) -> c_11():14
           -->_1 length#(:(x,xs)) -> c_10(length#(xs)):5
        
        6:S:quot#(s(x),s(y)) -> c_13(quot#(-(x,y),s(y)),-#(x,y))
           -->_1 quot#(0(),s(y)) -> c_12():15
           -->_2 -#(0(),s(y)) -> c_6():12
           -->_2 -#(x,0()) -> c_5():11
           -->_1 quot#(s(x),s(y)) -> c_13(quot#(-(x,y),s(y)),-#(x,y)):6
           -->_2 -#(s(x),s(y)) -> c_7(-#(x,y)):3
        
        7:S:sum#(++(xs,:(x,:(y,ys)))) -> c_14(sum#(++(xs,sum(:(x,:(y,ys))))),++#(xs,sum(:(x,:(y,ys)))),sum#(:(x,:(y,ys))))
           -->_3 sum#(:(x,:(y,xs))) -> c_15(sum#(:(+(x,y),xs)),+#(x,y)):8
           -->_1 sum#(:(x,:(y,xs))) -> c_15(sum#(:(+(x,y),xs)),+#(x,y)):8
           -->_1 sum#(:(x,nil())) -> c_16():16
           -->_2 ++#(nil(),ys) -> c_4():10
           -->_1 sum#(++(xs,:(x,:(y,ys)))) -> c_14(sum#(++(xs,sum(:(x,:(y,ys))))),++#(xs,sum(:(x,:(y,ys)))),sum#(:(x,:(y,ys)))):7
           -->_2 ++#(:(x,xs),ys) -> c_3(++#(xs,ys)):2
        
        8:S:sum#(:(x,:(y,xs))) -> c_15(sum#(:(+(x,y),xs)),+#(x,y))
           -->_1 sum#(:(x,nil())) -> c_16():16
           -->_2 +#(0(),y) -> c_1():9
           -->_1 sum#(:(x,:(y,xs))) -> c_15(sum#(:(+(x,y),xs)),+#(x,y)):8
           -->_2 +#(s(x),y) -> c_2(+#(x,y)):1
        
        9:W:+#(0(),y) -> c_1()
           
        
        10:W:++#(nil(),ys) -> c_4()
           
        
        11:W:-#(x,0()) -> c_5()
           
        
        12:W:-#(0(),s(y)) -> c_6()
           
        
        13:W:hd#(:(x,xs)) -> c_9()
           
        
        14:W:length#(nil()) -> c_11()
           
        
        15:W:quot#(0(),s(y)) -> c_12()
           
        
        16:W:sum#(:(x,nil())) -> c_16()
           
        
      The following weak DPs constitute a sub-graph of the DG that is closed under successors. The DPs are removed.
        13: hd#(:(x,xs)) -> c_9()     
        14: length#(nil()) -> c_11()  
        15: quot#(0(),s(y)) -> c_12() 
        16: sum#(:(x,nil())) -> c_16()
        11: -#(x,0()) -> c_5()        
        12: -#(0(),s(y)) -> c_6()     
        10: ++#(nil(),ys) -> c_4()    
        9:  +#(0(),y) -> c_1()        
*** 1.1.1.1.1 Progress [(?,O(n^3))]  ***
    Considered Problem:
      Strict DP Rules:
        +#(s(x),y) -> c_2(+#(x,y))
        ++#(:(x,xs),ys) -> c_3(++#(xs,ys))
        -#(s(x),s(y)) -> c_7(-#(x,y))
        avg#(xs) -> c_8(quot#(hd(sum(xs)),length(xs)),hd#(sum(xs)),sum#(xs),length#(xs))
        length#(:(x,xs)) -> c_10(length#(xs))
        quot#(s(x),s(y)) -> c_13(quot#(-(x,y),s(y)),-#(x,y))
        sum#(++(xs,:(x,:(y,ys)))) -> c_14(sum#(++(xs,sum(:(x,:(y,ys))))),++#(xs,sum(:(x,:(y,ys)))),sum#(:(x,:(y,ys))))
        sum#(:(x,:(y,xs))) -> c_15(sum#(:(+(x,y),xs)),+#(x,y))
      Strict TRS Rules:
        
      Weak DP Rules:
        
      Weak TRS Rules:
        +(0(),y) -> y
        +(s(x),y) -> s(+(x,y))
        ++(:(x,xs),ys) -> :(x,++(xs,ys))
        ++(nil(),ys) -> ys
        -(x,0()) -> x
        -(0(),s(y)) -> 0()
        -(s(x),s(y)) -> -(x,y)
        hd(:(x,xs)) -> x
        length(:(x,xs)) -> s(length(xs))
        length(nil()) -> 0()
        sum(++(xs,:(x,:(y,ys)))) -> sum(++(xs,sum(:(x,:(y,ys)))))
        sum(:(x,:(y,xs))) -> sum(:(+(x,y),xs))
        sum(:(x,nil())) -> :(x,nil())
      Signature:
        {+/2,++/2,-/2,avg/1,hd/1,length/1,quot/2,sum/1,+#/2,++#/2,-#/2,avg#/1,hd#/1,length#/1,quot#/2,sum#/1} / {0/0,:/2,nil/0,s/1,c_1/0,c_2/1,c_3/1,c_4/0,c_5/0,c_6/0,c_7/1,c_8/4,c_9/0,c_10/1,c_11/0,c_12/0,c_13/2,c_14/3,c_15/2,c_16/0}
      Obligation:
        Innermost
        basic terms: {+#,++#,-#,avg#,hd#,length#,quot#,sum#}/{0,:,nil,s}
    Applied Processor:
      SimplifyRHS
    Proof:
      Consider the dependency graph
        1:S:+#(s(x),y) -> c_2(+#(x,y))
           -->_1 +#(s(x),y) -> c_2(+#(x,y)):1
        
        2:S:++#(:(x,xs),ys) -> c_3(++#(xs,ys))
           -->_1 ++#(:(x,xs),ys) -> c_3(++#(xs,ys)):2
        
        3:S:-#(s(x),s(y)) -> c_7(-#(x,y))
           -->_1 -#(s(x),s(y)) -> c_7(-#(x,y)):3
        
        4:S:avg#(xs) -> c_8(quot#(hd(sum(xs)),length(xs)),hd#(sum(xs)),sum#(xs),length#(xs))
           -->_3 sum#(:(x,:(y,xs))) -> c_15(sum#(:(+(x,y),xs)),+#(x,y)):8
           -->_3 sum#(++(xs,:(x,:(y,ys)))) -> c_14(sum#(++(xs,sum(:(x,:(y,ys))))),++#(xs,sum(:(x,:(y,ys)))),sum#(:(x,:(y,ys)))):7
           -->_1 quot#(s(x),s(y)) -> c_13(quot#(-(x,y),s(y)),-#(x,y)):6
           -->_4 length#(:(x,xs)) -> c_10(length#(xs)):5
        
        5:S:length#(:(x,xs)) -> c_10(length#(xs))
           -->_1 length#(:(x,xs)) -> c_10(length#(xs)):5
        
        6:S:quot#(s(x),s(y)) -> c_13(quot#(-(x,y),s(y)),-#(x,y))
           -->_1 quot#(s(x),s(y)) -> c_13(quot#(-(x,y),s(y)),-#(x,y)):6
           -->_2 -#(s(x),s(y)) -> c_7(-#(x,y)):3
        
        7:S:sum#(++(xs,:(x,:(y,ys)))) -> c_14(sum#(++(xs,sum(:(x,:(y,ys))))),++#(xs,sum(:(x,:(y,ys)))),sum#(:(x,:(y,ys))))
           -->_3 sum#(:(x,:(y,xs))) -> c_15(sum#(:(+(x,y),xs)),+#(x,y)):8
           -->_1 sum#(:(x,:(y,xs))) -> c_15(sum#(:(+(x,y),xs)),+#(x,y)):8
           -->_1 sum#(++(xs,:(x,:(y,ys)))) -> c_14(sum#(++(xs,sum(:(x,:(y,ys))))),++#(xs,sum(:(x,:(y,ys)))),sum#(:(x,:(y,ys)))):7
           -->_2 ++#(:(x,xs),ys) -> c_3(++#(xs,ys)):2
        
        8:S:sum#(:(x,:(y,xs))) -> c_15(sum#(:(+(x,y),xs)),+#(x,y))
           -->_1 sum#(:(x,:(y,xs))) -> c_15(sum#(:(+(x,y),xs)),+#(x,y)):8
           -->_2 +#(s(x),y) -> c_2(+#(x,y)):1
        
      Due to missing edges in the depndency graph, the right-hand sides of following rules could be simplified:
        avg#(xs) -> c_8(quot#(hd(sum(xs)),length(xs)),sum#(xs),length#(xs))
*** 1.1.1.1.1.1 Progress [(?,O(n^3))]  ***
    Considered Problem:
      Strict DP Rules:
        +#(s(x),y) -> c_2(+#(x,y))
        ++#(:(x,xs),ys) -> c_3(++#(xs,ys))
        -#(s(x),s(y)) -> c_7(-#(x,y))
        avg#(xs) -> c_8(quot#(hd(sum(xs)),length(xs)),sum#(xs),length#(xs))
        length#(:(x,xs)) -> c_10(length#(xs))
        quot#(s(x),s(y)) -> c_13(quot#(-(x,y),s(y)),-#(x,y))
        sum#(++(xs,:(x,:(y,ys)))) -> c_14(sum#(++(xs,sum(:(x,:(y,ys))))),++#(xs,sum(:(x,:(y,ys)))),sum#(:(x,:(y,ys))))
        sum#(:(x,:(y,xs))) -> c_15(sum#(:(+(x,y),xs)),+#(x,y))
      Strict TRS Rules:
        
      Weak DP Rules:
        
      Weak TRS Rules:
        +(0(),y) -> y
        +(s(x),y) -> s(+(x,y))
        ++(:(x,xs),ys) -> :(x,++(xs,ys))
        ++(nil(),ys) -> ys
        -(x,0()) -> x
        -(0(),s(y)) -> 0()
        -(s(x),s(y)) -> -(x,y)
        hd(:(x,xs)) -> x
        length(:(x,xs)) -> s(length(xs))
        length(nil()) -> 0()
        sum(++(xs,:(x,:(y,ys)))) -> sum(++(xs,sum(:(x,:(y,ys)))))
        sum(:(x,:(y,xs))) -> sum(:(+(x,y),xs))
        sum(:(x,nil())) -> :(x,nil())
      Signature:
        {+/2,++/2,-/2,avg/1,hd/1,length/1,quot/2,sum/1,+#/2,++#/2,-#/2,avg#/1,hd#/1,length#/1,quot#/2,sum#/1} / {0/0,:/2,nil/0,s/1,c_1/0,c_2/1,c_3/1,c_4/0,c_5/0,c_6/0,c_7/1,c_8/3,c_9/0,c_10/1,c_11/0,c_12/0,c_13/2,c_14/3,c_15/2,c_16/0}
      Obligation:
        Innermost
        basic terms: {+#,++#,-#,avg#,hd#,length#,quot#,sum#}/{0,:,nil,s}
    Applied Processor:
      Decompose {onSelection = all cycle independent sub-graph, withBound = RelativeAdd}
    Proof:
      We analyse the complexity of following sub-problems (R) and (S).
      Problem (S) is obtained from the input problem by shifting strict rules from (R) into the weak component.
      
      Problem (R)
        Strict DP Rules:
          +#(s(x),y) -> c_2(+#(x,y))
        Strict TRS Rules:
          
        Weak DP Rules:
          ++#(:(x,xs),ys) -> c_3(++#(xs,ys))
          -#(s(x),s(y)) -> c_7(-#(x,y))
          avg#(xs) -> c_8(quot#(hd(sum(xs)),length(xs)),sum#(xs),length#(xs))
          length#(:(x,xs)) -> c_10(length#(xs))
          quot#(s(x),s(y)) -> c_13(quot#(-(x,y),s(y)),-#(x,y))
          sum#(++(xs,:(x,:(y,ys)))) -> c_14(sum#(++(xs,sum(:(x,:(y,ys))))),++#(xs,sum(:(x,:(y,ys)))),sum#(:(x,:(y,ys))))
          sum#(:(x,:(y,xs))) -> c_15(sum#(:(+(x,y),xs)),+#(x,y))
        Weak TRS Rules:
          +(0(),y) -> y
          +(s(x),y) -> s(+(x,y))
          ++(:(x,xs),ys) -> :(x,++(xs,ys))
          ++(nil(),ys) -> ys
          -(x,0()) -> x
          -(0(),s(y)) -> 0()
          -(s(x),s(y)) -> -(x,y)
          hd(:(x,xs)) -> x
          length(:(x,xs)) -> s(length(xs))
          length(nil()) -> 0()
          sum(++(xs,:(x,:(y,ys)))) -> sum(++(xs,sum(:(x,:(y,ys)))))
          sum(:(x,:(y,xs))) -> sum(:(+(x,y),xs))
          sum(:(x,nil())) -> :(x,nil())
        Signature:
          {+/2,++/2,-/2,avg/1,hd/1,length/1,quot/2,sum/1,+#/2,++#/2,-#/2,avg#/1,hd#/1,length#/1,quot#/2,sum#/1} / {0/0,:/2,nil/0,s/1,c_1/0,c_2/1,c_3/1,c_4/0,c_5/0,c_6/0,c_7/1,c_8/3,c_9/0,c_10/1,c_11/0,c_12/0,c_13/2,c_14/3,c_15/2,c_16/0}
        Obligation:
          Innermost
          basic terms: {+#,++#,-#,avg#,hd#,length#,quot#,sum#}/{0,:,nil,s}
      
      Problem (S)
        Strict DP Rules:
          ++#(:(x,xs),ys) -> c_3(++#(xs,ys))
          -#(s(x),s(y)) -> c_7(-#(x,y))
          avg#(xs) -> c_8(quot#(hd(sum(xs)),length(xs)),sum#(xs),length#(xs))
          length#(:(x,xs)) -> c_10(length#(xs))
          quot#(s(x),s(y)) -> c_13(quot#(-(x,y),s(y)),-#(x,y))
          sum#(++(xs,:(x,:(y,ys)))) -> c_14(sum#(++(xs,sum(:(x,:(y,ys))))),++#(xs,sum(:(x,:(y,ys)))),sum#(:(x,:(y,ys))))
          sum#(:(x,:(y,xs))) -> c_15(sum#(:(+(x,y),xs)),+#(x,y))
        Strict TRS Rules:
          
        Weak DP Rules:
          +#(s(x),y) -> c_2(+#(x,y))
        Weak TRS Rules:
          +(0(),y) -> y
          +(s(x),y) -> s(+(x,y))
          ++(:(x,xs),ys) -> :(x,++(xs,ys))
          ++(nil(),ys) -> ys
          -(x,0()) -> x
          -(0(),s(y)) -> 0()
          -(s(x),s(y)) -> -(x,y)
          hd(:(x,xs)) -> x
          length(:(x,xs)) -> s(length(xs))
          length(nil()) -> 0()
          sum(++(xs,:(x,:(y,ys)))) -> sum(++(xs,sum(:(x,:(y,ys)))))
          sum(:(x,:(y,xs))) -> sum(:(+(x,y),xs))
          sum(:(x,nil())) -> :(x,nil())
        Signature:
          {+/2,++/2,-/2,avg/1,hd/1,length/1,quot/2,sum/1,+#/2,++#/2,-#/2,avg#/1,hd#/1,length#/1,quot#/2,sum#/1} / {0/0,:/2,nil/0,s/1,c_1/0,c_2/1,c_3/1,c_4/0,c_5/0,c_6/0,c_7/1,c_8/3,c_9/0,c_10/1,c_11/0,c_12/0,c_13/2,c_14/3,c_15/2,c_16/0}
        Obligation:
          Innermost
          basic terms: {+#,++#,-#,avg#,hd#,length#,quot#,sum#}/{0,:,nil,s}
  *** 1.1.1.1.1.1.1 Progress [(?,O(n^3))]  ***
      Considered Problem:
        Strict DP Rules:
          +#(s(x),y) -> c_2(+#(x,y))
        Strict TRS Rules:
          
        Weak DP Rules:
          ++#(:(x,xs),ys) -> c_3(++#(xs,ys))
          -#(s(x),s(y)) -> c_7(-#(x,y))
          avg#(xs) -> c_8(quot#(hd(sum(xs)),length(xs)),sum#(xs),length#(xs))
          length#(:(x,xs)) -> c_10(length#(xs))
          quot#(s(x),s(y)) -> c_13(quot#(-(x,y),s(y)),-#(x,y))
          sum#(++(xs,:(x,:(y,ys)))) -> c_14(sum#(++(xs,sum(:(x,:(y,ys))))),++#(xs,sum(:(x,:(y,ys)))),sum#(:(x,:(y,ys))))
          sum#(:(x,:(y,xs))) -> c_15(sum#(:(+(x,y),xs)),+#(x,y))
        Weak TRS Rules:
          +(0(),y) -> y
          +(s(x),y) -> s(+(x,y))
          ++(:(x,xs),ys) -> :(x,++(xs,ys))
          ++(nil(),ys) -> ys
          -(x,0()) -> x
          -(0(),s(y)) -> 0()
          -(s(x),s(y)) -> -(x,y)
          hd(:(x,xs)) -> x
          length(:(x,xs)) -> s(length(xs))
          length(nil()) -> 0()
          sum(++(xs,:(x,:(y,ys)))) -> sum(++(xs,sum(:(x,:(y,ys)))))
          sum(:(x,:(y,xs))) -> sum(:(+(x,y),xs))
          sum(:(x,nil())) -> :(x,nil())
        Signature:
          {+/2,++/2,-/2,avg/1,hd/1,length/1,quot/2,sum/1,+#/2,++#/2,-#/2,avg#/1,hd#/1,length#/1,quot#/2,sum#/1} / {0/0,:/2,nil/0,s/1,c_1/0,c_2/1,c_3/1,c_4/0,c_5/0,c_6/0,c_7/1,c_8/3,c_9/0,c_10/1,c_11/0,c_12/0,c_13/2,c_14/3,c_15/2,c_16/0}
        Obligation:
          Innermost
          basic terms: {+#,++#,-#,avg#,hd#,length#,quot#,sum#}/{0,:,nil,s}
      Applied Processor:
        RemoveWeakSuffixes
      Proof:
        Consider the dependency graph
          1:S:+#(s(x),y) -> c_2(+#(x,y))
             -->_1 +#(s(x),y) -> c_2(+#(x,y)):1
          
          2:W:++#(:(x,xs),ys) -> c_3(++#(xs,ys))
             -->_1 ++#(:(x,xs),ys) -> c_3(++#(xs,ys)):2
          
          3:W:-#(s(x),s(y)) -> c_7(-#(x,y))
             -->_1 -#(s(x),s(y)) -> c_7(-#(x,y)):3
          
          4:W:avg#(xs) -> c_8(quot#(hd(sum(xs)),length(xs)),sum#(xs),length#(xs))
             -->_2 sum#(:(x,:(y,xs))) -> c_15(sum#(:(+(x,y),xs)),+#(x,y)):8
             -->_2 sum#(++(xs,:(x,:(y,ys)))) -> c_14(sum#(++(xs,sum(:(x,:(y,ys))))),++#(xs,sum(:(x,:(y,ys)))),sum#(:(x,:(y,ys)))):7
             -->_1 quot#(s(x),s(y)) -> c_13(quot#(-(x,y),s(y)),-#(x,y)):6
             -->_3 length#(:(x,xs)) -> c_10(length#(xs)):5
          
          5:W:length#(:(x,xs)) -> c_10(length#(xs))
             -->_1 length#(:(x,xs)) -> c_10(length#(xs)):5
          
          6:W:quot#(s(x),s(y)) -> c_13(quot#(-(x,y),s(y)),-#(x,y))
             -->_2 -#(s(x),s(y)) -> c_7(-#(x,y)):3
             -->_1 quot#(s(x),s(y)) -> c_13(quot#(-(x,y),s(y)),-#(x,y)):6
          
          7:W:sum#(++(xs,:(x,:(y,ys)))) -> c_14(sum#(++(xs,sum(:(x,:(y,ys))))),++#(xs,sum(:(x,:(y,ys)))),sum#(:(x,:(y,ys))))
             -->_2 ++#(:(x,xs),ys) -> c_3(++#(xs,ys)):2
             -->_3 sum#(:(x,:(y,xs))) -> c_15(sum#(:(+(x,y),xs)),+#(x,y)):8
             -->_1 sum#(:(x,:(y,xs))) -> c_15(sum#(:(+(x,y),xs)),+#(x,y)):8
             -->_1 sum#(++(xs,:(x,:(y,ys)))) -> c_14(sum#(++(xs,sum(:(x,:(y,ys))))),++#(xs,sum(:(x,:(y,ys)))),sum#(:(x,:(y,ys)))):7
          
          8:W:sum#(:(x,:(y,xs))) -> c_15(sum#(:(+(x,y),xs)),+#(x,y))
             -->_2 +#(s(x),y) -> c_2(+#(x,y)):1
             -->_1 sum#(:(x,:(y,xs))) -> c_15(sum#(:(+(x,y),xs)),+#(x,y)):8
          
        The following weak DPs constitute a sub-graph of the DG that is closed under successors. The DPs are removed.
          5: length#(:(x,xs)) ->               
               c_10(length#(xs))               
          6: quot#(s(x),s(y)) ->               
               c_13(quot#(-(x,y),s(y)),-#(x,y))
          3: -#(s(x),s(y)) -> c_7(-#(x,y))     
          2: ++#(:(x,xs),ys) -> c_3(++#(xs     
                                       ,ys))   
  *** 1.1.1.1.1.1.1.1 Progress [(?,O(n^3))]  ***
      Considered Problem:
        Strict DP Rules:
          +#(s(x),y) -> c_2(+#(x,y))
        Strict TRS Rules:
          
        Weak DP Rules:
          avg#(xs) -> c_8(quot#(hd(sum(xs)),length(xs)),sum#(xs),length#(xs))
          sum#(++(xs,:(x,:(y,ys)))) -> c_14(sum#(++(xs,sum(:(x,:(y,ys))))),++#(xs,sum(:(x,:(y,ys)))),sum#(:(x,:(y,ys))))
          sum#(:(x,:(y,xs))) -> c_15(sum#(:(+(x,y),xs)),+#(x,y))
        Weak TRS Rules:
          +(0(),y) -> y
          +(s(x),y) -> s(+(x,y))
          ++(:(x,xs),ys) -> :(x,++(xs,ys))
          ++(nil(),ys) -> ys
          -(x,0()) -> x
          -(0(),s(y)) -> 0()
          -(s(x),s(y)) -> -(x,y)
          hd(:(x,xs)) -> x
          length(:(x,xs)) -> s(length(xs))
          length(nil()) -> 0()
          sum(++(xs,:(x,:(y,ys)))) -> sum(++(xs,sum(:(x,:(y,ys)))))
          sum(:(x,:(y,xs))) -> sum(:(+(x,y),xs))
          sum(:(x,nil())) -> :(x,nil())
        Signature:
          {+/2,++/2,-/2,avg/1,hd/1,length/1,quot/2,sum/1,+#/2,++#/2,-#/2,avg#/1,hd#/1,length#/1,quot#/2,sum#/1} / {0/0,:/2,nil/0,s/1,c_1/0,c_2/1,c_3/1,c_4/0,c_5/0,c_6/0,c_7/1,c_8/3,c_9/0,c_10/1,c_11/0,c_12/0,c_13/2,c_14/3,c_15/2,c_16/0}
        Obligation:
          Innermost
          basic terms: {+#,++#,-#,avg#,hd#,length#,quot#,sum#}/{0,:,nil,s}
      Applied Processor:
        SimplifyRHS
      Proof:
        Consider the dependency graph
          1:S:+#(s(x),y) -> c_2(+#(x,y))
             -->_1 +#(s(x),y) -> c_2(+#(x,y)):1
          
          4:W:avg#(xs) -> c_8(quot#(hd(sum(xs)),length(xs)),sum#(xs),length#(xs))
             -->_2 sum#(:(x,:(y,xs))) -> c_15(sum#(:(+(x,y),xs)),+#(x,y)):8
             -->_2 sum#(++(xs,:(x,:(y,ys)))) -> c_14(sum#(++(xs,sum(:(x,:(y,ys))))),++#(xs,sum(:(x,:(y,ys)))),sum#(:(x,:(y,ys)))):7
          
          7:W:sum#(++(xs,:(x,:(y,ys)))) -> c_14(sum#(++(xs,sum(:(x,:(y,ys))))),++#(xs,sum(:(x,:(y,ys)))),sum#(:(x,:(y,ys))))
             -->_3 sum#(:(x,:(y,xs))) -> c_15(sum#(:(+(x,y),xs)),+#(x,y)):8
             -->_1 sum#(:(x,:(y,xs))) -> c_15(sum#(:(+(x,y),xs)),+#(x,y)):8
             -->_1 sum#(++(xs,:(x,:(y,ys)))) -> c_14(sum#(++(xs,sum(:(x,:(y,ys))))),++#(xs,sum(:(x,:(y,ys)))),sum#(:(x,:(y,ys)))):7
          
          8:W:sum#(:(x,:(y,xs))) -> c_15(sum#(:(+(x,y),xs)),+#(x,y))
             -->_2 +#(s(x),y) -> c_2(+#(x,y)):1
             -->_1 sum#(:(x,:(y,xs))) -> c_15(sum#(:(+(x,y),xs)),+#(x,y)):8
          
        Due to missing edges in the depndency graph, the right-hand sides of following rules could be simplified:
          avg#(xs) -> c_8(sum#(xs))
          sum#(++(xs,:(x,:(y,ys)))) -> c_14(sum#(++(xs,sum(:(x,:(y,ys))))),sum#(:(x,:(y,ys))))
  *** 1.1.1.1.1.1.1.1.1 Progress [(?,O(n^3))]  ***
      Considered Problem:
        Strict DP Rules:
          +#(s(x),y) -> c_2(+#(x,y))
        Strict TRS Rules:
          
        Weak DP Rules:
          avg#(xs) -> c_8(sum#(xs))
          sum#(++(xs,:(x,:(y,ys)))) -> c_14(sum#(++(xs,sum(:(x,:(y,ys))))),sum#(:(x,:(y,ys))))
          sum#(:(x,:(y,xs))) -> c_15(sum#(:(+(x,y),xs)),+#(x,y))
        Weak TRS Rules:
          +(0(),y) -> y
          +(s(x),y) -> s(+(x,y))
          ++(:(x,xs),ys) -> :(x,++(xs,ys))
          ++(nil(),ys) -> ys
          -(x,0()) -> x
          -(0(),s(y)) -> 0()
          -(s(x),s(y)) -> -(x,y)
          hd(:(x,xs)) -> x
          length(:(x,xs)) -> s(length(xs))
          length(nil()) -> 0()
          sum(++(xs,:(x,:(y,ys)))) -> sum(++(xs,sum(:(x,:(y,ys)))))
          sum(:(x,:(y,xs))) -> sum(:(+(x,y),xs))
          sum(:(x,nil())) -> :(x,nil())
        Signature:
          {+/2,++/2,-/2,avg/1,hd/1,length/1,quot/2,sum/1,+#/2,++#/2,-#/2,avg#/1,hd#/1,length#/1,quot#/2,sum#/1} / {0/0,:/2,nil/0,s/1,c_1/0,c_2/1,c_3/1,c_4/0,c_5/0,c_6/0,c_7/1,c_8/1,c_9/0,c_10/1,c_11/0,c_12/0,c_13/2,c_14/2,c_15/2,c_16/0}
        Obligation:
          Innermost
          basic terms: {+#,++#,-#,avg#,hd#,length#,quot#,sum#}/{0,:,nil,s}
      Applied Processor:
        UsableRules
      Proof:
        We replace rewrite rules by usable rules:
          +(0(),y) -> y
          +(s(x),y) -> s(+(x,y))
          ++(:(x,xs),ys) -> :(x,++(xs,ys))
          ++(nil(),ys) -> ys
          sum(:(x,:(y,xs))) -> sum(:(+(x,y),xs))
          sum(:(x,nil())) -> :(x,nil())
          +#(s(x),y) -> c_2(+#(x,y))
          avg#(xs) -> c_8(sum#(xs))
          sum#(++(xs,:(x,:(y,ys)))) -> c_14(sum#(++(xs,sum(:(x,:(y,ys))))),sum#(:(x,:(y,ys))))
          sum#(:(x,:(y,xs))) -> c_15(sum#(:(+(x,y),xs)),+#(x,y))
  *** 1.1.1.1.1.1.1.1.1.1 Progress [(?,O(n^3))]  ***
      Considered Problem:
        Strict DP Rules:
          +#(s(x),y) -> c_2(+#(x,y))
        Strict TRS Rules:
          
        Weak DP Rules:
          avg#(xs) -> c_8(sum#(xs))
          sum#(++(xs,:(x,:(y,ys)))) -> c_14(sum#(++(xs,sum(:(x,:(y,ys))))),sum#(:(x,:(y,ys))))
          sum#(:(x,:(y,xs))) -> c_15(sum#(:(+(x,y),xs)),+#(x,y))
        Weak TRS Rules:
          +(0(),y) -> y
          +(s(x),y) -> s(+(x,y))
          ++(:(x,xs),ys) -> :(x,++(xs,ys))
          ++(nil(),ys) -> ys
          sum(:(x,:(y,xs))) -> sum(:(+(x,y),xs))
          sum(:(x,nil())) -> :(x,nil())
        Signature:
          {+/2,++/2,-/2,avg/1,hd/1,length/1,quot/2,sum/1,+#/2,++#/2,-#/2,avg#/1,hd#/1,length#/1,quot#/2,sum#/1} / {0/0,:/2,nil/0,s/1,c_1/0,c_2/1,c_3/1,c_4/0,c_5/0,c_6/0,c_7/1,c_8/1,c_9/0,c_10/1,c_11/0,c_12/0,c_13/2,c_14/2,c_15/2,c_16/0}
        Obligation:
          Innermost
          basic terms: {+#,++#,-#,avg#,hd#,length#,quot#,sum#}/{0,:,nil,s}
      Applied Processor:
        DecomposeDG {onSelection = all below first cut in WDG, onUpper = Just someStrategy, onLower = Nothing}
      Proof:
        We decompose the input problem according to the dependency graph into the upper component
          avg#(xs) -> c_8(sum#(xs))
          sum#(++(xs,:(x,:(y,ys)))) -> c_14(sum#(++(xs,sum(:(x,:(y,ys))))),sum#(:(x,:(y,ys))))
        and a lower component
          +#(s(x),y) -> c_2(+#(x,y))
          sum#(:(x,:(y,xs))) -> c_15(sum#(:(+(x,y),xs)),+#(x,y))
        Further, following extension rules are added to the lower component.
          avg#(xs) -> sum#(xs)
          sum#(++(xs,:(x,:(y,ys)))) -> sum#(++(xs,sum(:(x,:(y,ys)))))
          sum#(++(xs,:(x,:(y,ys)))) -> sum#(:(x,:(y,ys)))
    *** 1.1.1.1.1.1.1.1.1.1.1 Progress [(?,O(n^1))]  ***
        Considered Problem:
          Strict DP Rules:
            avg#(xs) -> c_8(sum#(xs))
            sum#(++(xs,:(x,:(y,ys)))) -> c_14(sum#(++(xs,sum(:(x,:(y,ys))))),sum#(:(x,:(y,ys))))
          Strict TRS Rules:
            
          Weak DP Rules:
            
          Weak TRS Rules:
            +(0(),y) -> y
            +(s(x),y) -> s(+(x,y))
            ++(:(x,xs),ys) -> :(x,++(xs,ys))
            ++(nil(),ys) -> ys
            sum(:(x,:(y,xs))) -> sum(:(+(x,y),xs))
            sum(:(x,nil())) -> :(x,nil())
          Signature:
            {+/2,++/2,-/2,avg/1,hd/1,length/1,quot/2,sum/1,+#/2,++#/2,-#/2,avg#/1,hd#/1,length#/1,quot#/2,sum#/1} / {0/0,:/2,nil/0,s/1,c_1/0,c_2/1,c_3/1,c_4/0,c_5/0,c_6/0,c_7/1,c_8/1,c_9/0,c_10/1,c_11/0,c_12/0,c_13/2,c_14/2,c_15/2,c_16/0}
          Obligation:
            Innermost
            basic terms: {+#,++#,-#,avg#,hd#,length#,quot#,sum#}/{0,:,nil,s}
        Applied Processor:
          PredecessorEstimationCP {onSelectionCP = any intersect of rules of CDG leaf and strict-rules, withComplexityPair = NaturalMI {miDimension = 1, miDegree = 1, miKind = Algebraic, uargs = UArgs, urules = URules, selector = Nothing, greedy = NoGreedy}}
        Proof:
          We first use the processor NaturalMI {miDimension = 1, miDegree = 1, miKind = Algebraic, uargs = UArgs, urules = URules, selector = Nothing, greedy = NoGreedy} to orient following rules strictly:
            2: sum#(++(xs,:(x,:(y,ys)))) ->      
                 c_14(sum#(++(xs                 
                             ,sum(:(x,:(y,ys)))))
                     ,sum#(:(x,:(y,ys))))        
            
          Consider the set of all dependency pairs
            1: avg#(xs) -> c_8(sum#(xs))         
            2: sum#(++(xs,:(x,:(y,ys)))) ->      
                 c_14(sum#(++(xs                 
                             ,sum(:(x,:(y,ys)))))
                     ,sum#(:(x,:(y,ys))))        
          Processor NaturalMI {miDimension = 1, miDegree = 1, miKind = Algebraic, uargs = UArgs, urules = URules, selector = Nothing, greedy = NoGreedy}induces the complexity certificateTIME (?,O(n^1))
          SPACE(?,?)on application of the dependency pairs
            {2}
          These cover all (indirect) predecessors of dependency pairs
            {1,2}
          their number of applications is equally bounded.
          The dependency pairs are shifted into the weak component.
      *** 1.1.1.1.1.1.1.1.1.1.1.1 Progress [(?,O(n^1))]  ***
          Considered Problem:
            Strict DP Rules:
              avg#(xs) -> c_8(sum#(xs))
              sum#(++(xs,:(x,:(y,ys)))) -> c_14(sum#(++(xs,sum(:(x,:(y,ys))))),sum#(:(x,:(y,ys))))
            Strict TRS Rules:
              
            Weak DP Rules:
              
            Weak TRS Rules:
              +(0(),y) -> y
              +(s(x),y) -> s(+(x,y))
              ++(:(x,xs),ys) -> :(x,++(xs,ys))
              ++(nil(),ys) -> ys
              sum(:(x,:(y,xs))) -> sum(:(+(x,y),xs))
              sum(:(x,nil())) -> :(x,nil())
            Signature:
              {+/2,++/2,-/2,avg/1,hd/1,length/1,quot/2,sum/1,+#/2,++#/2,-#/2,avg#/1,hd#/1,length#/1,quot#/2,sum#/1} / {0/0,:/2,nil/0,s/1,c_1/0,c_2/1,c_3/1,c_4/0,c_5/0,c_6/0,c_7/1,c_8/1,c_9/0,c_10/1,c_11/0,c_12/0,c_13/2,c_14/2,c_15/2,c_16/0}
            Obligation:
              Innermost
              basic terms: {+#,++#,-#,avg#,hd#,length#,quot#,sum#}/{0,:,nil,s}
          Applied Processor:
            NaturalMI {miDimension = 1, miDegree = 1, miKind = Algebraic, uargs = UArgs, urules = URules, selector = Just first alternative for predecessorEstimation any intersect of rules of CDG leaf and strict-rules, greedy = NoGreedy}
          Proof:
            We apply a matrix interpretation of kind constructor based matrix interpretation:
            The following argument positions are considered usable:
              uargs(c_8) = {1},
              uargs(c_14) = {1}
            
            Following symbols are considered usable:
              {++,sum,+#,++#,-#,avg#,hd#,length#,quot#,sum#}
            TcT has computed the following interpretation:
                    p(+) = [12] x1 + [3]        
                   p(++) = [1] x1 + [1] x2 + [0]
                    p(-) = [1]                  
                    p(0) = [0]                  
                    p(:) = [1] x2 + [8]         
                  p(avg) = [2] x1 + [0]         
                   p(hd) = [1] x1 + [1]         
               p(length) = [2]                  
                  p(nil) = [0]                  
                 p(quot) = [1] x2 + [0]         
                    p(s) = [1] x1 + [0]         
                  p(sum) = [8]                  
                   p(+#) = [1]                  
                  p(++#) = [2] x1 + [2] x2 + [2]
                   p(-#) = [2] x2 + [1]         
                 p(avg#) = [1] x1 + [8]         
                  p(hd#) = [0]                  
              p(length#) = [0]                  
                p(quot#) = [2]                  
                 p(sum#) = [1] x1 + [8]         
                  p(c_1) = [1]                  
                  p(c_2) = [1] x1 + [1]         
                  p(c_3) = [1]                  
                  p(c_4) = [2]                  
                  p(c_5) = [1]                  
                  p(c_6) = [1]                  
                  p(c_7) = [1] x1 + [1]         
                  p(c_8) = [1] x1 + [0]         
                  p(c_9) = [0]                  
                 p(c_10) = [1] x1 + [1]         
                 p(c_11) = [2]                  
                 p(c_12) = [2]                  
                 p(c_13) = [1] x2 + [2]         
                 p(c_14) = [1] x1 + [6]         
                 p(c_15) = [8] x1 + [1]         
                 p(c_16) = [1]                  
            
            Following rules are strictly oriented:
            sum#(++(xs,:(x,:(y,ys)))) = [1] xs + [1] ys + [24]          
                                      > [1] xs + [22]                   
                                      = c_14(sum#(++(xs                 
                                                    ,sum(:(x,:(y,ys)))))
                                            ,sum#(:(x,:(y,ys))))        
            
            
            Following rules are (at-least) weakly oriented:
                     avg#(xs) =  [1] xs + [8]         
                              >= [1] xs + [8]         
                              =  c_8(sum#(xs))        
            
               ++(:(x,xs),ys) =  [1] xs + [1] ys + [8]
                              >= [1] xs + [1] ys + [8]
                              =  :(x,++(xs,ys))       
            
                 ++(nil(),ys) =  [1] ys + [0]         
                              >= [1] ys + [0]         
                              =  ys                   
            
            sum(:(x,:(y,xs))) =  [8]                  
                              >= [8]                  
                              =  sum(:(+(x,y),xs))    
            
              sum(:(x,nil())) =  [8]                  
                              >= [8]                  
                              =  :(x,nil())           
            
      *** 1.1.1.1.1.1.1.1.1.1.1.1.1 Progress [(?,O(1))]  ***
          Considered Problem:
            Strict DP Rules:
              avg#(xs) -> c_8(sum#(xs))
            Strict TRS Rules:
              
            Weak DP Rules:
              sum#(++(xs,:(x,:(y,ys)))) -> c_14(sum#(++(xs,sum(:(x,:(y,ys))))),sum#(:(x,:(y,ys))))
            Weak TRS Rules:
              +(0(),y) -> y
              +(s(x),y) -> s(+(x,y))
              ++(:(x,xs),ys) -> :(x,++(xs,ys))
              ++(nil(),ys) -> ys
              sum(:(x,:(y,xs))) -> sum(:(+(x,y),xs))
              sum(:(x,nil())) -> :(x,nil())
            Signature:
              {+/2,++/2,-/2,avg/1,hd/1,length/1,quot/2,sum/1,+#/2,++#/2,-#/2,avg#/1,hd#/1,length#/1,quot#/2,sum#/1} / {0/0,:/2,nil/0,s/1,c_1/0,c_2/1,c_3/1,c_4/0,c_5/0,c_6/0,c_7/1,c_8/1,c_9/0,c_10/1,c_11/0,c_12/0,c_13/2,c_14/2,c_15/2,c_16/0}
            Obligation:
              Innermost
              basic terms: {+#,++#,-#,avg#,hd#,length#,quot#,sum#}/{0,:,nil,s}
          Applied Processor:
            Assumption
          Proof:
            ()
      
      *** 1.1.1.1.1.1.1.1.1.1.1.2 Progress [(O(1),O(1))]  ***
          Considered Problem:
            Strict DP Rules:
              
            Strict TRS Rules:
              
            Weak DP Rules:
              avg#(xs) -> c_8(sum#(xs))
              sum#(++(xs,:(x,:(y,ys)))) -> c_14(sum#(++(xs,sum(:(x,:(y,ys))))),sum#(:(x,:(y,ys))))
            Weak TRS Rules:
              +(0(),y) -> y
              +(s(x),y) -> s(+(x,y))
              ++(:(x,xs),ys) -> :(x,++(xs,ys))
              ++(nil(),ys) -> ys
              sum(:(x,:(y,xs))) -> sum(:(+(x,y),xs))
              sum(:(x,nil())) -> :(x,nil())
            Signature:
              {+/2,++/2,-/2,avg/1,hd/1,length/1,quot/2,sum/1,+#/2,++#/2,-#/2,avg#/1,hd#/1,length#/1,quot#/2,sum#/1} / {0/0,:/2,nil/0,s/1,c_1/0,c_2/1,c_3/1,c_4/0,c_5/0,c_6/0,c_7/1,c_8/1,c_9/0,c_10/1,c_11/0,c_12/0,c_13/2,c_14/2,c_15/2,c_16/0}
            Obligation:
              Innermost
              basic terms: {+#,++#,-#,avg#,hd#,length#,quot#,sum#}/{0,:,nil,s}
          Applied Processor:
            RemoveWeakSuffixes
          Proof:
            Consider the dependency graph
              1:W:avg#(xs) -> c_8(sum#(xs))
                 -->_1 sum#(++(xs,:(x,:(y,ys)))) -> c_14(sum#(++(xs,sum(:(x,:(y,ys))))),sum#(:(x,:(y,ys)))):2
              
              2:W:sum#(++(xs,:(x,:(y,ys)))) -> c_14(sum#(++(xs,sum(:(x,:(y,ys))))),sum#(:(x,:(y,ys))))
                 -->_1 sum#(++(xs,:(x,:(y,ys)))) -> c_14(sum#(++(xs,sum(:(x,:(y,ys))))),sum#(:(x,:(y,ys)))):2
              
            The following weak DPs constitute a sub-graph of the DG that is closed under successors. The DPs are removed.
              1: avg#(xs) -> c_8(sum#(xs))         
              2: sum#(++(xs,:(x,:(y,ys)))) ->      
                   c_14(sum#(++(xs                 
                               ,sum(:(x,:(y,ys)))))
                       ,sum#(:(x,:(y,ys))))        
      *** 1.1.1.1.1.1.1.1.1.1.1.2.1 Progress [(O(1),O(1))]  ***
          Considered Problem:
            Strict DP Rules:
              
            Strict TRS Rules:
              
            Weak DP Rules:
              
            Weak TRS Rules:
              +(0(),y) -> y
              +(s(x),y) -> s(+(x,y))
              ++(:(x,xs),ys) -> :(x,++(xs,ys))
              ++(nil(),ys) -> ys
              sum(:(x,:(y,xs))) -> sum(:(+(x,y),xs))
              sum(:(x,nil())) -> :(x,nil())
            Signature:
              {+/2,++/2,-/2,avg/1,hd/1,length/1,quot/2,sum/1,+#/2,++#/2,-#/2,avg#/1,hd#/1,length#/1,quot#/2,sum#/1} / {0/0,:/2,nil/0,s/1,c_1/0,c_2/1,c_3/1,c_4/0,c_5/0,c_6/0,c_7/1,c_8/1,c_9/0,c_10/1,c_11/0,c_12/0,c_13/2,c_14/2,c_15/2,c_16/0}
            Obligation:
              Innermost
              basic terms: {+#,++#,-#,avg#,hd#,length#,quot#,sum#}/{0,:,nil,s}
          Applied Processor:
            EmptyProcessor
          Proof:
            The problem is already closed. The intended complexity is O(1).
      
    *** 1.1.1.1.1.1.1.1.1.1.2 Progress [(?,O(n^2))]  ***
        Considered Problem:
          Strict DP Rules:
            +#(s(x),y) -> c_2(+#(x,y))
          Strict TRS Rules:
            
          Weak DP Rules:
            avg#(xs) -> sum#(xs)
            sum#(++(xs,:(x,:(y,ys)))) -> sum#(++(xs,sum(:(x,:(y,ys)))))
            sum#(++(xs,:(x,:(y,ys)))) -> sum#(:(x,:(y,ys)))
            sum#(:(x,:(y,xs))) -> c_15(sum#(:(+(x,y),xs)),+#(x,y))
          Weak TRS Rules:
            +(0(),y) -> y
            +(s(x),y) -> s(+(x,y))
            ++(:(x,xs),ys) -> :(x,++(xs,ys))
            ++(nil(),ys) -> ys
            sum(:(x,:(y,xs))) -> sum(:(+(x,y),xs))
            sum(:(x,nil())) -> :(x,nil())
          Signature:
            {+/2,++/2,-/2,avg/1,hd/1,length/1,quot/2,sum/1,+#/2,++#/2,-#/2,avg#/1,hd#/1,length#/1,quot#/2,sum#/1} / {0/0,:/2,nil/0,s/1,c_1/0,c_2/1,c_3/1,c_4/0,c_5/0,c_6/0,c_7/1,c_8/1,c_9/0,c_10/1,c_11/0,c_12/0,c_13/2,c_14/2,c_15/2,c_16/0}
          Obligation:
            Innermost
            basic terms: {+#,++#,-#,avg#,hd#,length#,quot#,sum#}/{0,:,nil,s}
        Applied Processor:
          DecomposeDG {onSelection = all below first cut in WDG, onUpper = Just someStrategy, onLower = Nothing}
        Proof:
          We decompose the input problem according to the dependency graph into the upper component
            avg#(xs) -> sum#(xs)
            sum#(++(xs,:(x,:(y,ys)))) -> sum#(++(xs,sum(:(x,:(y,ys)))))
            sum#(++(xs,:(x,:(y,ys)))) -> sum#(:(x,:(y,ys)))
            sum#(:(x,:(y,xs))) -> c_15(sum#(:(+(x,y),xs)),+#(x,y))
          and a lower component
            +#(s(x),y) -> c_2(+#(x,y))
          Further, following extension rules are added to the lower component.
            avg#(xs) -> sum#(xs)
            sum#(++(xs,:(x,:(y,ys)))) -> sum#(++(xs,sum(:(x,:(y,ys)))))
            sum#(++(xs,:(x,:(y,ys)))) -> sum#(:(x,:(y,ys)))
            sum#(:(x,:(y,xs))) -> +#(x,y)
            sum#(:(x,:(y,xs))) -> sum#(:(+(x,y),xs))
      *** 1.1.1.1.1.1.1.1.1.1.2.1 Progress [(?,O(n^1))]  ***
          Considered Problem:
            Strict DP Rules:
              sum#(:(x,:(y,xs))) -> c_15(sum#(:(+(x,y),xs)),+#(x,y))
            Strict TRS Rules:
              
            Weak DP Rules:
              avg#(xs) -> sum#(xs)
              sum#(++(xs,:(x,:(y,ys)))) -> sum#(++(xs,sum(:(x,:(y,ys)))))
              sum#(++(xs,:(x,:(y,ys)))) -> sum#(:(x,:(y,ys)))
            Weak TRS Rules:
              +(0(),y) -> y
              +(s(x),y) -> s(+(x,y))
              ++(:(x,xs),ys) -> :(x,++(xs,ys))
              ++(nil(),ys) -> ys
              sum(:(x,:(y,xs))) -> sum(:(+(x,y),xs))
              sum(:(x,nil())) -> :(x,nil())
            Signature:
              {+/2,++/2,-/2,avg/1,hd/1,length/1,quot/2,sum/1,+#/2,++#/2,-#/2,avg#/1,hd#/1,length#/1,quot#/2,sum#/1} / {0/0,:/2,nil/0,s/1,c_1/0,c_2/1,c_3/1,c_4/0,c_5/0,c_6/0,c_7/1,c_8/1,c_9/0,c_10/1,c_11/0,c_12/0,c_13/2,c_14/2,c_15/2,c_16/0}
            Obligation:
              Innermost
              basic terms: {+#,++#,-#,avg#,hd#,length#,quot#,sum#}/{0,:,nil,s}
          Applied Processor:
            PredecessorEstimationCP {onSelectionCP = any intersect of rules of CDG leaf and strict-rules, withComplexityPair = NaturalMI {miDimension = 1, miDegree = 1, miKind = Algebraic, uargs = UArgs, urules = URules, selector = Nothing, greedy = NoGreedy}}
          Proof:
            We first use the processor NaturalMI {miDimension = 1, miDegree = 1, miKind = Algebraic, uargs = UArgs, urules = URules, selector = Nothing, greedy = NoGreedy} to orient following rules strictly:
              1: sum#(:(x,:(y,xs))) ->             
                   c_15(sum#(:(+(x,y),xs)),+#(x,y))
              
            Consider the set of all dependency pairs
              1: sum#(:(x,:(y,xs))) ->             
                   c_15(sum#(:(+(x,y),xs)),+#(x,y))
              2: avg#(xs) -> sum#(xs)              
              3: sum#(++(xs,:(x,:(y,ys)))) ->      
                   sum#(++(xs,sum(:(x,:(y,ys)))))  
              4: sum#(++(xs,:(x,:(y,ys)))) ->      
                   sum#(:(x,:(y,ys)))              
            Processor NaturalMI {miDimension = 1, miDegree = 1, miKind = Algebraic, uargs = UArgs, urules = URules, selector = Nothing, greedy = NoGreedy}induces the complexity certificateTIME (?,O(n^1))
            SPACE(?,?)on application of the dependency pairs
              {1}
            These cover all (indirect) predecessors of dependency pairs
              {1,2}
            their number of applications is equally bounded.
            The dependency pairs are shifted into the weak component.
        *** 1.1.1.1.1.1.1.1.1.1.2.1.1 Progress [(?,O(n^1))]  ***
            Considered Problem:
              Strict DP Rules:
                sum#(:(x,:(y,xs))) -> c_15(sum#(:(+(x,y),xs)),+#(x,y))
              Strict TRS Rules:
                
              Weak DP Rules:
                avg#(xs) -> sum#(xs)
                sum#(++(xs,:(x,:(y,ys)))) -> sum#(++(xs,sum(:(x,:(y,ys)))))
                sum#(++(xs,:(x,:(y,ys)))) -> sum#(:(x,:(y,ys)))
              Weak TRS Rules:
                +(0(),y) -> y
                +(s(x),y) -> s(+(x,y))
                ++(:(x,xs),ys) -> :(x,++(xs,ys))
                ++(nil(),ys) -> ys
                sum(:(x,:(y,xs))) -> sum(:(+(x,y),xs))
                sum(:(x,nil())) -> :(x,nil())
              Signature:
                {+/2,++/2,-/2,avg/1,hd/1,length/1,quot/2,sum/1,+#/2,++#/2,-#/2,avg#/1,hd#/1,length#/1,quot#/2,sum#/1} / {0/0,:/2,nil/0,s/1,c_1/0,c_2/1,c_3/1,c_4/0,c_5/0,c_6/0,c_7/1,c_8/1,c_9/0,c_10/1,c_11/0,c_12/0,c_13/2,c_14/2,c_15/2,c_16/0}
              Obligation:
                Innermost
                basic terms: {+#,++#,-#,avg#,hd#,length#,quot#,sum#}/{0,:,nil,s}
            Applied Processor:
              NaturalMI {miDimension = 1, miDegree = 1, miKind = Algebraic, uargs = UArgs, urules = URules, selector = Just first alternative for predecessorEstimation any intersect of rules of CDG leaf and strict-rules, greedy = NoGreedy}
            Proof:
              We apply a matrix interpretation of kind constructor based matrix interpretation:
              The following argument positions are considered usable:
                uargs(c_15) = {1}
              
              Following symbols are considered usable:
                {++,sum,+#,++#,-#,avg#,hd#,length#,quot#,sum#}
              TcT has computed the following interpretation:
                      p(+) = [13]                 
                     p(++) = [2] x1 + [1] x2 + [5]
                      p(-) = [2] x1 + [0]         
                      p(0) = [0]                  
                      p(:) = [1] x2 + [8]         
                    p(avg) = [0]                  
                     p(hd) = [0]                  
                 p(length) = [0]                  
                    p(nil) = [0]                  
                   p(quot) = [0]                  
                      p(s) = [1] x1 + [0]         
                    p(sum) = [11]                 
                     p(+#) = [1]                  
                    p(++#) = [1] x2 + [0]         
                     p(-#) = [1] x1 + [0]         
                   p(avg#) = [1] x1 + [9]         
                    p(hd#) = [2]                  
                p(length#) = [4] x1 + [1]         
                  p(quot#) = [1] x2 + [1]         
                   p(sum#) = [1] x1 + [0]         
                    p(c_1) = [1]                  
                    p(c_2) = [1] x1 + [1]         
                    p(c_3) = [0]                  
                    p(c_4) = [1]                  
                    p(c_5) = [1]                  
                    p(c_6) = [1]                  
                    p(c_7) = [1] x1 + [1]         
                    p(c_8) = [0]                  
                    p(c_9) = [1]                  
                   p(c_10) = [1] x1 + [0]         
                   p(c_11) = [2]                  
                   p(c_12) = [0]                  
                   p(c_13) = [1] x2 + [0]         
                   p(c_14) = [1] x1 + [1] x2 + [4]
                   p(c_15) = [1] x1 + [6] x2 + [0]
                   p(c_16) = [0]                  
              
              Following rules are strictly oriented:
              sum#(:(x,:(y,xs))) = [1] xs + [16]                   
                                 > [1] xs + [14]                   
                                 = c_15(sum#(:(+(x,y),xs)),+#(x,y))
              
              
              Following rules are (at-least) weakly oriented:
                               avg#(xs) =  [1] xs + [9]                  
                                        >= [1] xs + [0]                  
                                        =  sum#(xs)                      
              
              sum#(++(xs,:(x,:(y,ys)))) =  [2] xs + [1] ys + [21]        
                                        >= [2] xs + [16]                 
                                        =  sum#(++(xs,sum(:(x,:(y,ys)))))
              
              sum#(++(xs,:(x,:(y,ys)))) =  [2] xs + [1] ys + [21]        
                                        >= [1] ys + [16]                 
                                        =  sum#(:(x,:(y,ys)))            
              
                         ++(:(x,xs),ys) =  [2] xs + [1] ys + [21]        
                                        >= [2] xs + [1] ys + [13]        
                                        =  :(x,++(xs,ys))                
              
                           ++(nil(),ys) =  [1] ys + [5]                  
                                        >= [1] ys + [0]                  
                                        =  ys                            
              
                      sum(:(x,:(y,xs))) =  [11]                          
                                        >= [11]                          
                                        =  sum(:(+(x,y),xs))             
              
                        sum(:(x,nil())) =  [11]                          
                                        >= [8]                           
                                        =  :(x,nil())                    
              
        *** 1.1.1.1.1.1.1.1.1.1.2.1.1.1 Progress [(?,O(1))]  ***
            Considered Problem:
              Strict DP Rules:
                
              Strict TRS Rules:
                
              Weak DP Rules:
                avg#(xs) -> sum#(xs)
                sum#(++(xs,:(x,:(y,ys)))) -> sum#(++(xs,sum(:(x,:(y,ys)))))
                sum#(++(xs,:(x,:(y,ys)))) -> sum#(:(x,:(y,ys)))
                sum#(:(x,:(y,xs))) -> c_15(sum#(:(+(x,y),xs)),+#(x,y))
              Weak TRS Rules:
                +(0(),y) -> y
                +(s(x),y) -> s(+(x,y))
                ++(:(x,xs),ys) -> :(x,++(xs,ys))
                ++(nil(),ys) -> ys
                sum(:(x,:(y,xs))) -> sum(:(+(x,y),xs))
                sum(:(x,nil())) -> :(x,nil())
              Signature:
                {+/2,++/2,-/2,avg/1,hd/1,length/1,quot/2,sum/1,+#/2,++#/2,-#/2,avg#/1,hd#/1,length#/1,quot#/2,sum#/1} / {0/0,:/2,nil/0,s/1,c_1/0,c_2/1,c_3/1,c_4/0,c_5/0,c_6/0,c_7/1,c_8/1,c_9/0,c_10/1,c_11/0,c_12/0,c_13/2,c_14/2,c_15/2,c_16/0}
              Obligation:
                Innermost
                basic terms: {+#,++#,-#,avg#,hd#,length#,quot#,sum#}/{0,:,nil,s}
            Applied Processor:
              Assumption
            Proof:
              ()
        
        *** 1.1.1.1.1.1.1.1.1.1.2.1.2 Progress [(O(1),O(1))]  ***
            Considered Problem:
              Strict DP Rules:
                
              Strict TRS Rules:
                
              Weak DP Rules:
                avg#(xs) -> sum#(xs)
                sum#(++(xs,:(x,:(y,ys)))) -> sum#(++(xs,sum(:(x,:(y,ys)))))
                sum#(++(xs,:(x,:(y,ys)))) -> sum#(:(x,:(y,ys)))
                sum#(:(x,:(y,xs))) -> c_15(sum#(:(+(x,y),xs)),+#(x,y))
              Weak TRS Rules:
                +(0(),y) -> y
                +(s(x),y) -> s(+(x,y))
                ++(:(x,xs),ys) -> :(x,++(xs,ys))
                ++(nil(),ys) -> ys
                sum(:(x,:(y,xs))) -> sum(:(+(x,y),xs))
                sum(:(x,nil())) -> :(x,nil())
              Signature:
                {+/2,++/2,-/2,avg/1,hd/1,length/1,quot/2,sum/1,+#/2,++#/2,-#/2,avg#/1,hd#/1,length#/1,quot#/2,sum#/1} / {0/0,:/2,nil/0,s/1,c_1/0,c_2/1,c_3/1,c_4/0,c_5/0,c_6/0,c_7/1,c_8/1,c_9/0,c_10/1,c_11/0,c_12/0,c_13/2,c_14/2,c_15/2,c_16/0}
              Obligation:
                Innermost
                basic terms: {+#,++#,-#,avg#,hd#,length#,quot#,sum#}/{0,:,nil,s}
            Applied Processor:
              RemoveWeakSuffixes
            Proof:
              Consider the dependency graph
                1:W:avg#(xs) -> sum#(xs)
                   -->_1 sum#(:(x,:(y,xs))) -> c_15(sum#(:(+(x,y),xs)),+#(x,y)):4
                   -->_1 sum#(++(xs,:(x,:(y,ys)))) -> sum#(:(x,:(y,ys))):3
                   -->_1 sum#(++(xs,:(x,:(y,ys)))) -> sum#(++(xs,sum(:(x,:(y,ys))))):2
                
                2:W:sum#(++(xs,:(x,:(y,ys)))) -> sum#(++(xs,sum(:(x,:(y,ys)))))
                   -->_1 sum#(:(x,:(y,xs))) -> c_15(sum#(:(+(x,y),xs)),+#(x,y)):4
                   -->_1 sum#(++(xs,:(x,:(y,ys)))) -> sum#(:(x,:(y,ys))):3
                   -->_1 sum#(++(xs,:(x,:(y,ys)))) -> sum#(++(xs,sum(:(x,:(y,ys))))):2
                
                3:W:sum#(++(xs,:(x,:(y,ys)))) -> sum#(:(x,:(y,ys)))
                   -->_1 sum#(:(x,:(y,xs))) -> c_15(sum#(:(+(x,y),xs)),+#(x,y)):4
                
                4:W:sum#(:(x,:(y,xs))) -> c_15(sum#(:(+(x,y),xs)),+#(x,y))
                   -->_1 sum#(:(x,:(y,xs))) -> c_15(sum#(:(+(x,y),xs)),+#(x,y)):4
                
              The following weak DPs constitute a sub-graph of the DG that is closed under successors. The DPs are removed.
                1: avg#(xs) -> sum#(xs)              
                2: sum#(++(xs,:(x,:(y,ys)))) ->      
                     sum#(++(xs,sum(:(x,:(y,ys)))))  
                3: sum#(++(xs,:(x,:(y,ys)))) ->      
                     sum#(:(x,:(y,ys)))              
                4: sum#(:(x,:(y,xs))) ->             
                     c_15(sum#(:(+(x,y),xs)),+#(x,y))
        *** 1.1.1.1.1.1.1.1.1.1.2.1.2.1 Progress [(O(1),O(1))]  ***
            Considered Problem:
              Strict DP Rules:
                
              Strict TRS Rules:
                
              Weak DP Rules:
                
              Weak TRS Rules:
                +(0(),y) -> y
                +(s(x),y) -> s(+(x,y))
                ++(:(x,xs),ys) -> :(x,++(xs,ys))
                ++(nil(),ys) -> ys
                sum(:(x,:(y,xs))) -> sum(:(+(x,y),xs))
                sum(:(x,nil())) -> :(x,nil())
              Signature:
                {+/2,++/2,-/2,avg/1,hd/1,length/1,quot/2,sum/1,+#/2,++#/2,-#/2,avg#/1,hd#/1,length#/1,quot#/2,sum#/1} / {0/0,:/2,nil/0,s/1,c_1/0,c_2/1,c_3/1,c_4/0,c_5/0,c_6/0,c_7/1,c_8/1,c_9/0,c_10/1,c_11/0,c_12/0,c_13/2,c_14/2,c_15/2,c_16/0}
              Obligation:
                Innermost
                basic terms: {+#,++#,-#,avg#,hd#,length#,quot#,sum#}/{0,:,nil,s}
            Applied Processor:
              EmptyProcessor
            Proof:
              The problem is already closed. The intended complexity is O(1).
        
      *** 1.1.1.1.1.1.1.1.1.1.2.2 Progress [(?,O(n^1))]  ***
          Considered Problem:
            Strict DP Rules:
              +#(s(x),y) -> c_2(+#(x,y))
            Strict TRS Rules:
              
            Weak DP Rules:
              avg#(xs) -> sum#(xs)
              sum#(++(xs,:(x,:(y,ys)))) -> sum#(++(xs,sum(:(x,:(y,ys)))))
              sum#(++(xs,:(x,:(y,ys)))) -> sum#(:(x,:(y,ys)))
              sum#(:(x,:(y,xs))) -> +#(x,y)
              sum#(:(x,:(y,xs))) -> sum#(:(+(x,y),xs))
            Weak TRS Rules:
              +(0(),y) -> y
              +(s(x),y) -> s(+(x,y))
              ++(:(x,xs),ys) -> :(x,++(xs,ys))
              ++(nil(),ys) -> ys
              sum(:(x,:(y,xs))) -> sum(:(+(x,y),xs))
              sum(:(x,nil())) -> :(x,nil())
            Signature:
              {+/2,++/2,-/2,avg/1,hd/1,length/1,quot/2,sum/1,+#/2,++#/2,-#/2,avg#/1,hd#/1,length#/1,quot#/2,sum#/1} / {0/0,:/2,nil/0,s/1,c_1/0,c_2/1,c_3/1,c_4/0,c_5/0,c_6/0,c_7/1,c_8/1,c_9/0,c_10/1,c_11/0,c_12/0,c_13/2,c_14/2,c_15/2,c_16/0}
            Obligation:
              Innermost
              basic terms: {+#,++#,-#,avg#,hd#,length#,quot#,sum#}/{0,:,nil,s}
          Applied Processor:
            PredecessorEstimationCP {onSelectionCP = any intersect of rules of CDG leaf and strict-rules, withComplexityPair = NaturalMI {miDimension = 1, miDegree = 1, miKind = Algebraic, uargs = UArgs, urules = URules, selector = Nothing, greedy = NoGreedy}}
          Proof:
            We first use the processor NaturalMI {miDimension = 1, miDegree = 1, miKind = Algebraic, uargs = UArgs, urules = URules, selector = Nothing, greedy = NoGreedy} to orient following rules strictly:
              1: +#(s(x),y) -> c_2(+#(x,y))
              
            Consider the set of all dependency pairs
              1: +#(s(x),y) -> c_2(+#(x,y))       
              2: avg#(xs) -> sum#(xs)             
              3: sum#(++(xs,:(x,:(y,ys)))) ->     
                   sum#(++(xs,sum(:(x,:(y,ys))))) 
              4: sum#(++(xs,:(x,:(y,ys)))) ->     
                   sum#(:(x,:(y,ys)))             
              5: sum#(:(x,:(y,xs))) -> +#(x,y)    
              6: sum#(:(x,:(y,xs))) -> sum#(:(+(x 
                                               ,y)
                                             ,xs))
            Processor NaturalMI {miDimension = 1, miDegree = 1, miKind = Algebraic, uargs = UArgs, urules = URules, selector = Nothing, greedy = NoGreedy}induces the complexity certificateTIME (?,O(n^1))
            SPACE(?,?)on application of the dependency pairs
              {1}
            These cover all (indirect) predecessors of dependency pairs
              {1,2}
            their number of applications is equally bounded.
            The dependency pairs are shifted into the weak component.
        *** 1.1.1.1.1.1.1.1.1.1.2.2.1 Progress [(?,O(n^1))]  ***
            Considered Problem:
              Strict DP Rules:
                +#(s(x),y) -> c_2(+#(x,y))
              Strict TRS Rules:
                
              Weak DP Rules:
                avg#(xs) -> sum#(xs)
                sum#(++(xs,:(x,:(y,ys)))) -> sum#(++(xs,sum(:(x,:(y,ys)))))
                sum#(++(xs,:(x,:(y,ys)))) -> sum#(:(x,:(y,ys)))
                sum#(:(x,:(y,xs))) -> +#(x,y)
                sum#(:(x,:(y,xs))) -> sum#(:(+(x,y),xs))
              Weak TRS Rules:
                +(0(),y) -> y
                +(s(x),y) -> s(+(x,y))
                ++(:(x,xs),ys) -> :(x,++(xs,ys))
                ++(nil(),ys) -> ys
                sum(:(x,:(y,xs))) -> sum(:(+(x,y),xs))
                sum(:(x,nil())) -> :(x,nil())
              Signature:
                {+/2,++/2,-/2,avg/1,hd/1,length/1,quot/2,sum/1,+#/2,++#/2,-#/2,avg#/1,hd#/1,length#/1,quot#/2,sum#/1} / {0/0,:/2,nil/0,s/1,c_1/0,c_2/1,c_3/1,c_4/0,c_5/0,c_6/0,c_7/1,c_8/1,c_9/0,c_10/1,c_11/0,c_12/0,c_13/2,c_14/2,c_15/2,c_16/0}
              Obligation:
                Innermost
                basic terms: {+#,++#,-#,avg#,hd#,length#,quot#,sum#}/{0,:,nil,s}
            Applied Processor:
              NaturalMI {miDimension = 1, miDegree = 1, miKind = Algebraic, uargs = UArgs, urules = URules, selector = Just first alternative for predecessorEstimation any intersect of rules of CDG leaf and strict-rules, greedy = NoGreedy}
            Proof:
              We apply a matrix interpretation of kind constructor based matrix interpretation:
              The following argument positions are considered usable:
                uargs(c_2) = {1}
              
              Following symbols are considered usable:
                {+,++,sum,+#,++#,-#,avg#,hd#,length#,quot#,sum#}
              TcT has computed the following interpretation:
                      p(+) = [1] x1 + [1] x2 + [0]
                     p(++) = [1] x1 + [1] x2 + [0]
                      p(-) = [0]                  
                      p(0) = [0]                  
                      p(:) = [1] x1 + [1] x2 + [0]
                    p(avg) = [0]                  
                     p(hd) = [0]                  
                 p(length) = [0]                  
                    p(nil) = [0]                  
                   p(quot) = [0]                  
                      p(s) = [1] x1 + [3]         
                    p(sum) = [1] x1 + [0]         
                     p(+#) = [2] x1 + [2] x2 + [2]
                    p(++#) = [0]                  
                     p(-#) = [0]                  
                   p(avg#) = [2] x1 + [3]         
                    p(hd#) = [0]                  
                p(length#) = [0]                  
                  p(quot#) = [4] x1 + [1] x2 + [0]
                   p(sum#) = [2] x1 + [2]         
                    p(c_1) = [0]                  
                    p(c_2) = [1] x1 + [2]         
                    p(c_3) = [1] x1 + [0]         
                    p(c_4) = [0]                  
                    p(c_5) = [0]                  
                    p(c_6) = [0]                  
                    p(c_7) = [2] x1 + [0]         
                    p(c_8) = [0]                  
                    p(c_9) = [0]                  
                   p(c_10) = [1] x1 + [0]         
                   p(c_11) = [0]                  
                   p(c_12) = [0]                  
                   p(c_13) = [4] x2 + [0]         
                   p(c_14) = [1] x1 + [0]         
                   p(c_15) = [1] x1 + [2] x2 + [0]
                   p(c_16) = [0]                  
              
              Following rules are strictly oriented:
              +#(s(x),y) = [2] x + [2] y + [8]
                         > [2] x + [2] y + [4]
                         = c_2(+#(x,y))       
              
              
              Following rules are (at-least) weakly oriented:
                               avg#(xs) =  [2] xs + [3]                         
                                        >= [2] xs + [2]                         
                                        =  sum#(xs)                             
              
              sum#(++(xs,:(x,:(y,ys)))) =  [2] x + [2] xs + [2] y + [2] ys + [2]
                                        >= [2] x + [2] xs + [2] y + [2] ys + [2]
                                        =  sum#(++(xs,sum(:(x,:(y,ys)))))       
              
              sum#(++(xs,:(x,:(y,ys)))) =  [2] x + [2] xs + [2] y + [2] ys + [2]
                                        >= [2] x + [2] y + [2] ys + [2]         
                                        =  sum#(:(x,:(y,ys)))                   
              
                     sum#(:(x,:(y,xs))) =  [2] x + [2] xs + [2] y + [2]         
                                        >= [2] x + [2] y + [2]                  
                                        =  +#(x,y)                              
              
                     sum#(:(x,:(y,xs))) =  [2] x + [2] xs + [2] y + [2]         
                                        >= [2] x + [2] xs + [2] y + [2]         
                                        =  sum#(:(+(x,y),xs))                   
              
                               +(0(),y) =  [1] y + [0]                          
                                        >= [1] y + [0]                          
                                        =  y                                    
              
                              +(s(x),y) =  [1] x + [1] y + [3]                  
                                        >= [1] x + [1] y + [3]                  
                                        =  s(+(x,y))                            
              
                         ++(:(x,xs),ys) =  [1] x + [1] xs + [1] ys + [0]        
                                        >= [1] x + [1] xs + [1] ys + [0]        
                                        =  :(x,++(xs,ys))                       
              
                           ++(nil(),ys) =  [1] ys + [0]                         
                                        >= [1] ys + [0]                         
                                        =  ys                                   
              
                      sum(:(x,:(y,xs))) =  [1] x + [1] xs + [1] y + [0]         
                                        >= [1] x + [1] xs + [1] y + [0]         
                                        =  sum(:(+(x,y),xs))                    
              
                        sum(:(x,nil())) =  [1] x + [0]                          
                                        >= [1] x + [0]                          
                                        =  :(x,nil())                           
              
        *** 1.1.1.1.1.1.1.1.1.1.2.2.1.1 Progress [(?,O(1))]  ***
            Considered Problem:
              Strict DP Rules:
                
              Strict TRS Rules:
                
              Weak DP Rules:
                +#(s(x),y) -> c_2(+#(x,y))
                avg#(xs) -> sum#(xs)
                sum#(++(xs,:(x,:(y,ys)))) -> sum#(++(xs,sum(:(x,:(y,ys)))))
                sum#(++(xs,:(x,:(y,ys)))) -> sum#(:(x,:(y,ys)))
                sum#(:(x,:(y,xs))) -> +#(x,y)
                sum#(:(x,:(y,xs))) -> sum#(:(+(x,y),xs))
              Weak TRS Rules:
                +(0(),y) -> y
                +(s(x),y) -> s(+(x,y))
                ++(:(x,xs),ys) -> :(x,++(xs,ys))
                ++(nil(),ys) -> ys
                sum(:(x,:(y,xs))) -> sum(:(+(x,y),xs))
                sum(:(x,nil())) -> :(x,nil())
              Signature:
                {+/2,++/2,-/2,avg/1,hd/1,length/1,quot/2,sum/1,+#/2,++#/2,-#/2,avg#/1,hd#/1,length#/1,quot#/2,sum#/1} / {0/0,:/2,nil/0,s/1,c_1/0,c_2/1,c_3/1,c_4/0,c_5/0,c_6/0,c_7/1,c_8/1,c_9/0,c_10/1,c_11/0,c_12/0,c_13/2,c_14/2,c_15/2,c_16/0}
              Obligation:
                Innermost
                basic terms: {+#,++#,-#,avg#,hd#,length#,quot#,sum#}/{0,:,nil,s}
            Applied Processor:
              Assumption
            Proof:
              ()
        
        *** 1.1.1.1.1.1.1.1.1.1.2.2.2 Progress [(O(1),O(1))]  ***
            Considered Problem:
              Strict DP Rules:
                
              Strict TRS Rules:
                
              Weak DP Rules:
                +#(s(x),y) -> c_2(+#(x,y))
                avg#(xs) -> sum#(xs)
                sum#(++(xs,:(x,:(y,ys)))) -> sum#(++(xs,sum(:(x,:(y,ys)))))
                sum#(++(xs,:(x,:(y,ys)))) -> sum#(:(x,:(y,ys)))
                sum#(:(x,:(y,xs))) -> +#(x,y)
                sum#(:(x,:(y,xs))) -> sum#(:(+(x,y),xs))
              Weak TRS Rules:
                +(0(),y) -> y
                +(s(x),y) -> s(+(x,y))
                ++(:(x,xs),ys) -> :(x,++(xs,ys))
                ++(nil(),ys) -> ys
                sum(:(x,:(y,xs))) -> sum(:(+(x,y),xs))
                sum(:(x,nil())) -> :(x,nil())
              Signature:
                {+/2,++/2,-/2,avg/1,hd/1,length/1,quot/2,sum/1,+#/2,++#/2,-#/2,avg#/1,hd#/1,length#/1,quot#/2,sum#/1} / {0/0,:/2,nil/0,s/1,c_1/0,c_2/1,c_3/1,c_4/0,c_5/0,c_6/0,c_7/1,c_8/1,c_9/0,c_10/1,c_11/0,c_12/0,c_13/2,c_14/2,c_15/2,c_16/0}
              Obligation:
                Innermost
                basic terms: {+#,++#,-#,avg#,hd#,length#,quot#,sum#}/{0,:,nil,s}
            Applied Processor:
              RemoveWeakSuffixes
            Proof:
              Consider the dependency graph
                1:W:+#(s(x),y) -> c_2(+#(x,y))
                   -->_1 +#(s(x),y) -> c_2(+#(x,y)):1
                
                2:W:avg#(xs) -> sum#(xs)
                   -->_1 sum#(:(x,:(y,xs))) -> sum#(:(+(x,y),xs)):6
                   -->_1 sum#(:(x,:(y,xs))) -> +#(x,y):5
                   -->_1 sum#(++(xs,:(x,:(y,ys)))) -> sum#(:(x,:(y,ys))):4
                   -->_1 sum#(++(xs,:(x,:(y,ys)))) -> sum#(++(xs,sum(:(x,:(y,ys))))):3
                
                3:W:sum#(++(xs,:(x,:(y,ys)))) -> sum#(++(xs,sum(:(x,:(y,ys)))))
                   -->_1 sum#(:(x,:(y,xs))) -> sum#(:(+(x,y),xs)):6
                   -->_1 sum#(:(x,:(y,xs))) -> +#(x,y):5
                   -->_1 sum#(++(xs,:(x,:(y,ys)))) -> sum#(:(x,:(y,ys))):4
                   -->_1 sum#(++(xs,:(x,:(y,ys)))) -> sum#(++(xs,sum(:(x,:(y,ys))))):3
                
                4:W:sum#(++(xs,:(x,:(y,ys)))) -> sum#(:(x,:(y,ys)))
                   -->_1 sum#(:(x,:(y,xs))) -> sum#(:(+(x,y),xs)):6
                   -->_1 sum#(:(x,:(y,xs))) -> +#(x,y):5
                
                5:W:sum#(:(x,:(y,xs))) -> +#(x,y)
                   -->_1 +#(s(x),y) -> c_2(+#(x,y)):1
                
                6:W:sum#(:(x,:(y,xs))) -> sum#(:(+(x,y),xs))
                   -->_1 sum#(:(x,:(y,xs))) -> sum#(:(+(x,y),xs)):6
                   -->_1 sum#(:(x,:(y,xs))) -> +#(x,y):5
                
              The following weak DPs constitute a sub-graph of the DG that is closed under successors. The DPs are removed.
                2: avg#(xs) -> sum#(xs)             
                3: sum#(++(xs,:(x,:(y,ys)))) ->     
                     sum#(++(xs,sum(:(x,:(y,ys))))) 
                4: sum#(++(xs,:(x,:(y,ys)))) ->     
                     sum#(:(x,:(y,ys)))             
                6: sum#(:(x,:(y,xs))) -> sum#(:(+(x 
                                                 ,y)
                                               ,xs))
                5: sum#(:(x,:(y,xs))) -> +#(x,y)    
                1: +#(s(x),y) -> c_2(+#(x,y))       
        *** 1.1.1.1.1.1.1.1.1.1.2.2.2.1 Progress [(O(1),O(1))]  ***
            Considered Problem:
              Strict DP Rules:
                
              Strict TRS Rules:
                
              Weak DP Rules:
                
              Weak TRS Rules:
                +(0(),y) -> y
                +(s(x),y) -> s(+(x,y))
                ++(:(x,xs),ys) -> :(x,++(xs,ys))
                ++(nil(),ys) -> ys
                sum(:(x,:(y,xs))) -> sum(:(+(x,y),xs))
                sum(:(x,nil())) -> :(x,nil())
              Signature:
                {+/2,++/2,-/2,avg/1,hd/1,length/1,quot/2,sum/1,+#/2,++#/2,-#/2,avg#/1,hd#/1,length#/1,quot#/2,sum#/1} / {0/0,:/2,nil/0,s/1,c_1/0,c_2/1,c_3/1,c_4/0,c_5/0,c_6/0,c_7/1,c_8/1,c_9/0,c_10/1,c_11/0,c_12/0,c_13/2,c_14/2,c_15/2,c_16/0}
              Obligation:
                Innermost
                basic terms: {+#,++#,-#,avg#,hd#,length#,quot#,sum#}/{0,:,nil,s}
            Applied Processor:
              EmptyProcessor
            Proof:
              The problem is already closed. The intended complexity is O(1).
        
  *** 1.1.1.1.1.1.2 Progress [(?,O(n^2))]  ***
      Considered Problem:
        Strict DP Rules:
          ++#(:(x,xs),ys) -> c_3(++#(xs,ys))
          -#(s(x),s(y)) -> c_7(-#(x,y))
          avg#(xs) -> c_8(quot#(hd(sum(xs)),length(xs)),sum#(xs),length#(xs))
          length#(:(x,xs)) -> c_10(length#(xs))
          quot#(s(x),s(y)) -> c_13(quot#(-(x,y),s(y)),-#(x,y))
          sum#(++(xs,:(x,:(y,ys)))) -> c_14(sum#(++(xs,sum(:(x,:(y,ys))))),++#(xs,sum(:(x,:(y,ys)))),sum#(:(x,:(y,ys))))
          sum#(:(x,:(y,xs))) -> c_15(sum#(:(+(x,y),xs)),+#(x,y))
        Strict TRS Rules:
          
        Weak DP Rules:
          +#(s(x),y) -> c_2(+#(x,y))
        Weak TRS Rules:
          +(0(),y) -> y
          +(s(x),y) -> s(+(x,y))
          ++(:(x,xs),ys) -> :(x,++(xs,ys))
          ++(nil(),ys) -> ys
          -(x,0()) -> x
          -(0(),s(y)) -> 0()
          -(s(x),s(y)) -> -(x,y)
          hd(:(x,xs)) -> x
          length(:(x,xs)) -> s(length(xs))
          length(nil()) -> 0()
          sum(++(xs,:(x,:(y,ys)))) -> sum(++(xs,sum(:(x,:(y,ys)))))
          sum(:(x,:(y,xs))) -> sum(:(+(x,y),xs))
          sum(:(x,nil())) -> :(x,nil())
        Signature:
          {+/2,++/2,-/2,avg/1,hd/1,length/1,quot/2,sum/1,+#/2,++#/2,-#/2,avg#/1,hd#/1,length#/1,quot#/2,sum#/1} / {0/0,:/2,nil/0,s/1,c_1/0,c_2/1,c_3/1,c_4/0,c_5/0,c_6/0,c_7/1,c_8/3,c_9/0,c_10/1,c_11/0,c_12/0,c_13/2,c_14/3,c_15/2,c_16/0}
        Obligation:
          Innermost
          basic terms: {+#,++#,-#,avg#,hd#,length#,quot#,sum#}/{0,:,nil,s}
      Applied Processor:
        RemoveWeakSuffixes
      Proof:
        Consider the dependency graph
          1:S:++#(:(x,xs),ys) -> c_3(++#(xs,ys))
             -->_1 ++#(:(x,xs),ys) -> c_3(++#(xs,ys)):1
          
          2:S:-#(s(x),s(y)) -> c_7(-#(x,y))
             -->_1 -#(s(x),s(y)) -> c_7(-#(x,y)):2
          
          3:S:avg#(xs) -> c_8(quot#(hd(sum(xs)),length(xs)),sum#(xs),length#(xs))
             -->_2 sum#(:(x,:(y,xs))) -> c_15(sum#(:(+(x,y),xs)),+#(x,y)):7
             -->_2 sum#(++(xs,:(x,:(y,ys)))) -> c_14(sum#(++(xs,sum(:(x,:(y,ys))))),++#(xs,sum(:(x,:(y,ys)))),sum#(:(x,:(y,ys)))):6
             -->_1 quot#(s(x),s(y)) -> c_13(quot#(-(x,y),s(y)),-#(x,y)):5
             -->_3 length#(:(x,xs)) -> c_10(length#(xs)):4
          
          4:S:length#(:(x,xs)) -> c_10(length#(xs))
             -->_1 length#(:(x,xs)) -> c_10(length#(xs)):4
          
          5:S:quot#(s(x),s(y)) -> c_13(quot#(-(x,y),s(y)),-#(x,y))
             -->_1 quot#(s(x),s(y)) -> c_13(quot#(-(x,y),s(y)),-#(x,y)):5
             -->_2 -#(s(x),s(y)) -> c_7(-#(x,y)):2
          
          6:S:sum#(++(xs,:(x,:(y,ys)))) -> c_14(sum#(++(xs,sum(:(x,:(y,ys))))),++#(xs,sum(:(x,:(y,ys)))),sum#(:(x,:(y,ys))))
             -->_3 sum#(:(x,:(y,xs))) -> c_15(sum#(:(+(x,y),xs)),+#(x,y)):7
             -->_1 sum#(:(x,:(y,xs))) -> c_15(sum#(:(+(x,y),xs)),+#(x,y)):7
             -->_1 sum#(++(xs,:(x,:(y,ys)))) -> c_14(sum#(++(xs,sum(:(x,:(y,ys))))),++#(xs,sum(:(x,:(y,ys)))),sum#(:(x,:(y,ys)))):6
             -->_2 ++#(:(x,xs),ys) -> c_3(++#(xs,ys)):1
          
          7:S:sum#(:(x,:(y,xs))) -> c_15(sum#(:(+(x,y),xs)),+#(x,y))
             -->_2 +#(s(x),y) -> c_2(+#(x,y)):8
             -->_1 sum#(:(x,:(y,xs))) -> c_15(sum#(:(+(x,y),xs)),+#(x,y)):7
          
          8:W:+#(s(x),y) -> c_2(+#(x,y))
             -->_1 +#(s(x),y) -> c_2(+#(x,y)):8
          
        The following weak DPs constitute a sub-graph of the DG that is closed under successors. The DPs are removed.
          8: +#(s(x),y) -> c_2(+#(x,y))
  *** 1.1.1.1.1.1.2.1 Progress [(?,O(n^2))]  ***
      Considered Problem:
        Strict DP Rules:
          ++#(:(x,xs),ys) -> c_3(++#(xs,ys))
          -#(s(x),s(y)) -> c_7(-#(x,y))
          avg#(xs) -> c_8(quot#(hd(sum(xs)),length(xs)),sum#(xs),length#(xs))
          length#(:(x,xs)) -> c_10(length#(xs))
          quot#(s(x),s(y)) -> c_13(quot#(-(x,y),s(y)),-#(x,y))
          sum#(++(xs,:(x,:(y,ys)))) -> c_14(sum#(++(xs,sum(:(x,:(y,ys))))),++#(xs,sum(:(x,:(y,ys)))),sum#(:(x,:(y,ys))))
          sum#(:(x,:(y,xs))) -> c_15(sum#(:(+(x,y),xs)),+#(x,y))
        Strict TRS Rules:
          
        Weak DP Rules:
          
        Weak TRS Rules:
          +(0(),y) -> y
          +(s(x),y) -> s(+(x,y))
          ++(:(x,xs),ys) -> :(x,++(xs,ys))
          ++(nil(),ys) -> ys
          -(x,0()) -> x
          -(0(),s(y)) -> 0()
          -(s(x),s(y)) -> -(x,y)
          hd(:(x,xs)) -> x
          length(:(x,xs)) -> s(length(xs))
          length(nil()) -> 0()
          sum(++(xs,:(x,:(y,ys)))) -> sum(++(xs,sum(:(x,:(y,ys)))))
          sum(:(x,:(y,xs))) -> sum(:(+(x,y),xs))
          sum(:(x,nil())) -> :(x,nil())
        Signature:
          {+/2,++/2,-/2,avg/1,hd/1,length/1,quot/2,sum/1,+#/2,++#/2,-#/2,avg#/1,hd#/1,length#/1,quot#/2,sum#/1} / {0/0,:/2,nil/0,s/1,c_1/0,c_2/1,c_3/1,c_4/0,c_5/0,c_6/0,c_7/1,c_8/3,c_9/0,c_10/1,c_11/0,c_12/0,c_13/2,c_14/3,c_15/2,c_16/0}
        Obligation:
          Innermost
          basic terms: {+#,++#,-#,avg#,hd#,length#,quot#,sum#}/{0,:,nil,s}
      Applied Processor:
        SimplifyRHS
      Proof:
        Consider the dependency graph
          1:S:++#(:(x,xs),ys) -> c_3(++#(xs,ys))
             -->_1 ++#(:(x,xs),ys) -> c_3(++#(xs,ys)):1
          
          2:S:-#(s(x),s(y)) -> c_7(-#(x,y))
             -->_1 -#(s(x),s(y)) -> c_7(-#(x,y)):2
          
          3:S:avg#(xs) -> c_8(quot#(hd(sum(xs)),length(xs)),sum#(xs),length#(xs))
             -->_2 sum#(:(x,:(y,xs))) -> c_15(sum#(:(+(x,y),xs)),+#(x,y)):7
             -->_2 sum#(++(xs,:(x,:(y,ys)))) -> c_14(sum#(++(xs,sum(:(x,:(y,ys))))),++#(xs,sum(:(x,:(y,ys)))),sum#(:(x,:(y,ys)))):6
             -->_1 quot#(s(x),s(y)) -> c_13(quot#(-(x,y),s(y)),-#(x,y)):5
             -->_3 length#(:(x,xs)) -> c_10(length#(xs)):4
          
          4:S:length#(:(x,xs)) -> c_10(length#(xs))
             -->_1 length#(:(x,xs)) -> c_10(length#(xs)):4
          
          5:S:quot#(s(x),s(y)) -> c_13(quot#(-(x,y),s(y)),-#(x,y))
             -->_1 quot#(s(x),s(y)) -> c_13(quot#(-(x,y),s(y)),-#(x,y)):5
             -->_2 -#(s(x),s(y)) -> c_7(-#(x,y)):2
          
          6:S:sum#(++(xs,:(x,:(y,ys)))) -> c_14(sum#(++(xs,sum(:(x,:(y,ys))))),++#(xs,sum(:(x,:(y,ys)))),sum#(:(x,:(y,ys))))
             -->_3 sum#(:(x,:(y,xs))) -> c_15(sum#(:(+(x,y),xs)),+#(x,y)):7
             -->_1 sum#(:(x,:(y,xs))) -> c_15(sum#(:(+(x,y),xs)),+#(x,y)):7
             -->_1 sum#(++(xs,:(x,:(y,ys)))) -> c_14(sum#(++(xs,sum(:(x,:(y,ys))))),++#(xs,sum(:(x,:(y,ys)))),sum#(:(x,:(y,ys)))):6
             -->_2 ++#(:(x,xs),ys) -> c_3(++#(xs,ys)):1
          
          7:S:sum#(:(x,:(y,xs))) -> c_15(sum#(:(+(x,y),xs)),+#(x,y))
             -->_1 sum#(:(x,:(y,xs))) -> c_15(sum#(:(+(x,y),xs)),+#(x,y)):7
          
        Due to missing edges in the depndency graph, the right-hand sides of following rules could be simplified:
          sum#(:(x,:(y,xs))) -> c_15(sum#(:(+(x,y),xs)))
  *** 1.1.1.1.1.1.2.1.1 Progress [(?,O(n^2))]  ***
      Considered Problem:
        Strict DP Rules:
          ++#(:(x,xs),ys) -> c_3(++#(xs,ys))
          -#(s(x),s(y)) -> c_7(-#(x,y))
          avg#(xs) -> c_8(quot#(hd(sum(xs)),length(xs)),sum#(xs),length#(xs))
          length#(:(x,xs)) -> c_10(length#(xs))
          quot#(s(x),s(y)) -> c_13(quot#(-(x,y),s(y)),-#(x,y))
          sum#(++(xs,:(x,:(y,ys)))) -> c_14(sum#(++(xs,sum(:(x,:(y,ys))))),++#(xs,sum(:(x,:(y,ys)))),sum#(:(x,:(y,ys))))
          sum#(:(x,:(y,xs))) -> c_15(sum#(:(+(x,y),xs)))
        Strict TRS Rules:
          
        Weak DP Rules:
          
        Weak TRS Rules:
          +(0(),y) -> y
          +(s(x),y) -> s(+(x,y))
          ++(:(x,xs),ys) -> :(x,++(xs,ys))
          ++(nil(),ys) -> ys
          -(x,0()) -> x
          -(0(),s(y)) -> 0()
          -(s(x),s(y)) -> -(x,y)
          hd(:(x,xs)) -> x
          length(:(x,xs)) -> s(length(xs))
          length(nil()) -> 0()
          sum(++(xs,:(x,:(y,ys)))) -> sum(++(xs,sum(:(x,:(y,ys)))))
          sum(:(x,:(y,xs))) -> sum(:(+(x,y),xs))
          sum(:(x,nil())) -> :(x,nil())
        Signature:
          {+/2,++/2,-/2,avg/1,hd/1,length/1,quot/2,sum/1,+#/2,++#/2,-#/2,avg#/1,hd#/1,length#/1,quot#/2,sum#/1} / {0/0,:/2,nil/0,s/1,c_1/0,c_2/1,c_3/1,c_4/0,c_5/0,c_6/0,c_7/1,c_8/3,c_9/0,c_10/1,c_11/0,c_12/0,c_13/2,c_14/3,c_15/1,c_16/0}
        Obligation:
          Innermost
          basic terms: {+#,++#,-#,avg#,hd#,length#,quot#,sum#}/{0,:,nil,s}
      Applied Processor:
        Decompose {onSelection = all cycle independent sub-graph, withBound = RelativeAdd}
      Proof:
        We analyse the complexity of following sub-problems (R) and (S).
        Problem (S) is obtained from the input problem by shifting strict rules from (R) into the weak component.
        
        Problem (R)
          Strict DP Rules:
            ++#(:(x,xs),ys) -> c_3(++#(xs,ys))
          Strict TRS Rules:
            
          Weak DP Rules:
            -#(s(x),s(y)) -> c_7(-#(x,y))
            avg#(xs) -> c_8(quot#(hd(sum(xs)),length(xs)),sum#(xs),length#(xs))
            length#(:(x,xs)) -> c_10(length#(xs))
            quot#(s(x),s(y)) -> c_13(quot#(-(x,y),s(y)),-#(x,y))
            sum#(++(xs,:(x,:(y,ys)))) -> c_14(sum#(++(xs,sum(:(x,:(y,ys))))),++#(xs,sum(:(x,:(y,ys)))),sum#(:(x,:(y,ys))))
            sum#(:(x,:(y,xs))) -> c_15(sum#(:(+(x,y),xs)))
          Weak TRS Rules:
            +(0(),y) -> y
            +(s(x),y) -> s(+(x,y))
            ++(:(x,xs),ys) -> :(x,++(xs,ys))
            ++(nil(),ys) -> ys
            -(x,0()) -> x
            -(0(),s(y)) -> 0()
            -(s(x),s(y)) -> -(x,y)
            hd(:(x,xs)) -> x
            length(:(x,xs)) -> s(length(xs))
            length(nil()) -> 0()
            sum(++(xs,:(x,:(y,ys)))) -> sum(++(xs,sum(:(x,:(y,ys)))))
            sum(:(x,:(y,xs))) -> sum(:(+(x,y),xs))
            sum(:(x,nil())) -> :(x,nil())
          Signature:
            {+/2,++/2,-/2,avg/1,hd/1,length/1,quot/2,sum/1,+#/2,++#/2,-#/2,avg#/1,hd#/1,length#/1,quot#/2,sum#/1} / {0/0,:/2,nil/0,s/1,c_1/0,c_2/1,c_3/1,c_4/0,c_5/0,c_6/0,c_7/1,c_8/3,c_9/0,c_10/1,c_11/0,c_12/0,c_13/2,c_14/3,c_15/1,c_16/0}
          Obligation:
            Innermost
            basic terms: {+#,++#,-#,avg#,hd#,length#,quot#,sum#}/{0,:,nil,s}
        
        Problem (S)
          Strict DP Rules:
            -#(s(x),s(y)) -> c_7(-#(x,y))
            avg#(xs) -> c_8(quot#(hd(sum(xs)),length(xs)),sum#(xs),length#(xs))
            length#(:(x,xs)) -> c_10(length#(xs))
            quot#(s(x),s(y)) -> c_13(quot#(-(x,y),s(y)),-#(x,y))
            sum#(++(xs,:(x,:(y,ys)))) -> c_14(sum#(++(xs,sum(:(x,:(y,ys))))),++#(xs,sum(:(x,:(y,ys)))),sum#(:(x,:(y,ys))))
            sum#(:(x,:(y,xs))) -> c_15(sum#(:(+(x,y),xs)))
          Strict TRS Rules:
            
          Weak DP Rules:
            ++#(:(x,xs),ys) -> c_3(++#(xs,ys))
          Weak TRS Rules:
            +(0(),y) -> y
            +(s(x),y) -> s(+(x,y))
            ++(:(x,xs),ys) -> :(x,++(xs,ys))
            ++(nil(),ys) -> ys
            -(x,0()) -> x
            -(0(),s(y)) -> 0()
            -(s(x),s(y)) -> -(x,y)
            hd(:(x,xs)) -> x
            length(:(x,xs)) -> s(length(xs))
            length(nil()) -> 0()
            sum(++(xs,:(x,:(y,ys)))) -> sum(++(xs,sum(:(x,:(y,ys)))))
            sum(:(x,:(y,xs))) -> sum(:(+(x,y),xs))
            sum(:(x,nil())) -> :(x,nil())
          Signature:
            {+/2,++/2,-/2,avg/1,hd/1,length/1,quot/2,sum/1,+#/2,++#/2,-#/2,avg#/1,hd#/1,length#/1,quot#/2,sum#/1} / {0/0,:/2,nil/0,s/1,c_1/0,c_2/1,c_3/1,c_4/0,c_5/0,c_6/0,c_7/1,c_8/3,c_9/0,c_10/1,c_11/0,c_12/0,c_13/2,c_14/3,c_15/1,c_16/0}
          Obligation:
            Innermost
            basic terms: {+#,++#,-#,avg#,hd#,length#,quot#,sum#}/{0,:,nil,s}
    *** 1.1.1.1.1.1.2.1.1.1 Progress [(?,O(n^2))]  ***
        Considered Problem:
          Strict DP Rules:
            ++#(:(x,xs),ys) -> c_3(++#(xs,ys))
          Strict TRS Rules:
            
          Weak DP Rules:
            -#(s(x),s(y)) -> c_7(-#(x,y))
            avg#(xs) -> c_8(quot#(hd(sum(xs)),length(xs)),sum#(xs),length#(xs))
            length#(:(x,xs)) -> c_10(length#(xs))
            quot#(s(x),s(y)) -> c_13(quot#(-(x,y),s(y)),-#(x,y))
            sum#(++(xs,:(x,:(y,ys)))) -> c_14(sum#(++(xs,sum(:(x,:(y,ys))))),++#(xs,sum(:(x,:(y,ys)))),sum#(:(x,:(y,ys))))
            sum#(:(x,:(y,xs))) -> c_15(sum#(:(+(x,y),xs)))
          Weak TRS Rules:
            +(0(),y) -> y
            +(s(x),y) -> s(+(x,y))
            ++(:(x,xs),ys) -> :(x,++(xs,ys))
            ++(nil(),ys) -> ys
            -(x,0()) -> x
            -(0(),s(y)) -> 0()
            -(s(x),s(y)) -> -(x,y)
            hd(:(x,xs)) -> x
            length(:(x,xs)) -> s(length(xs))
            length(nil()) -> 0()
            sum(++(xs,:(x,:(y,ys)))) -> sum(++(xs,sum(:(x,:(y,ys)))))
            sum(:(x,:(y,xs))) -> sum(:(+(x,y),xs))
            sum(:(x,nil())) -> :(x,nil())
          Signature:
            {+/2,++/2,-/2,avg/1,hd/1,length/1,quot/2,sum/1,+#/2,++#/2,-#/2,avg#/1,hd#/1,length#/1,quot#/2,sum#/1} / {0/0,:/2,nil/0,s/1,c_1/0,c_2/1,c_3/1,c_4/0,c_5/0,c_6/0,c_7/1,c_8/3,c_9/0,c_10/1,c_11/0,c_12/0,c_13/2,c_14/3,c_15/1,c_16/0}
          Obligation:
            Innermost
            basic terms: {+#,++#,-#,avg#,hd#,length#,quot#,sum#}/{0,:,nil,s}
        Applied Processor:
          RemoveWeakSuffixes
        Proof:
          Consider the dependency graph
            1:S:++#(:(x,xs),ys) -> c_3(++#(xs,ys))
               -->_1 ++#(:(x,xs),ys) -> c_3(++#(xs,ys)):1
            
            2:W:-#(s(x),s(y)) -> c_7(-#(x,y))
               -->_1 -#(s(x),s(y)) -> c_7(-#(x,y)):2
            
            3:W:avg#(xs) -> c_8(quot#(hd(sum(xs)),length(xs)),sum#(xs),length#(xs))
               -->_2 sum#(:(x,:(y,xs))) -> c_15(sum#(:(+(x,y),xs))):7
               -->_2 sum#(++(xs,:(x,:(y,ys)))) -> c_14(sum#(++(xs,sum(:(x,:(y,ys))))),++#(xs,sum(:(x,:(y,ys)))),sum#(:(x,:(y,ys)))):6
               -->_1 quot#(s(x),s(y)) -> c_13(quot#(-(x,y),s(y)),-#(x,y)):5
               -->_3 length#(:(x,xs)) -> c_10(length#(xs)):4
            
            4:W:length#(:(x,xs)) -> c_10(length#(xs))
               -->_1 length#(:(x,xs)) -> c_10(length#(xs)):4
            
            5:W:quot#(s(x),s(y)) -> c_13(quot#(-(x,y),s(y)),-#(x,y))
               -->_1 quot#(s(x),s(y)) -> c_13(quot#(-(x,y),s(y)),-#(x,y)):5
               -->_2 -#(s(x),s(y)) -> c_7(-#(x,y)):2
            
            6:W:sum#(++(xs,:(x,:(y,ys)))) -> c_14(sum#(++(xs,sum(:(x,:(y,ys))))),++#(xs,sum(:(x,:(y,ys)))),sum#(:(x,:(y,ys))))
               -->_3 sum#(:(x,:(y,xs))) -> c_15(sum#(:(+(x,y),xs))):7
               -->_1 sum#(:(x,:(y,xs))) -> c_15(sum#(:(+(x,y),xs))):7
               -->_1 sum#(++(xs,:(x,:(y,ys)))) -> c_14(sum#(++(xs,sum(:(x,:(y,ys))))),++#(xs,sum(:(x,:(y,ys)))),sum#(:(x,:(y,ys)))):6
               -->_2 ++#(:(x,xs),ys) -> c_3(++#(xs,ys)):1
            
            7:W:sum#(:(x,:(y,xs))) -> c_15(sum#(:(+(x,y),xs)))
               -->_1 sum#(:(x,:(y,xs))) -> c_15(sum#(:(+(x,y),xs))):7
            
          The following weak DPs constitute a sub-graph of the DG that is closed under successors. The DPs are removed.
            4: length#(:(x,xs)) ->               
                 c_10(length#(xs))               
            5: quot#(s(x),s(y)) ->               
                 c_13(quot#(-(x,y),s(y)),-#(x,y))
            7: sum#(:(x,:(y,xs))) ->             
                 c_15(sum#(:(+(x,y),xs)))        
            2: -#(s(x),s(y)) -> c_7(-#(x,y))     
    *** 1.1.1.1.1.1.2.1.1.1.1 Progress [(?,O(n^2))]  ***
        Considered Problem:
          Strict DP Rules:
            ++#(:(x,xs),ys) -> c_3(++#(xs,ys))
          Strict TRS Rules:
            
          Weak DP Rules:
            avg#(xs) -> c_8(quot#(hd(sum(xs)),length(xs)),sum#(xs),length#(xs))
            sum#(++(xs,:(x,:(y,ys)))) -> c_14(sum#(++(xs,sum(:(x,:(y,ys))))),++#(xs,sum(:(x,:(y,ys)))),sum#(:(x,:(y,ys))))
          Weak TRS Rules:
            +(0(),y) -> y
            +(s(x),y) -> s(+(x,y))
            ++(:(x,xs),ys) -> :(x,++(xs,ys))
            ++(nil(),ys) -> ys
            -(x,0()) -> x
            -(0(),s(y)) -> 0()
            -(s(x),s(y)) -> -(x,y)
            hd(:(x,xs)) -> x
            length(:(x,xs)) -> s(length(xs))
            length(nil()) -> 0()
            sum(++(xs,:(x,:(y,ys)))) -> sum(++(xs,sum(:(x,:(y,ys)))))
            sum(:(x,:(y,xs))) -> sum(:(+(x,y),xs))
            sum(:(x,nil())) -> :(x,nil())
          Signature:
            {+/2,++/2,-/2,avg/1,hd/1,length/1,quot/2,sum/1,+#/2,++#/2,-#/2,avg#/1,hd#/1,length#/1,quot#/2,sum#/1} / {0/0,:/2,nil/0,s/1,c_1/0,c_2/1,c_3/1,c_4/0,c_5/0,c_6/0,c_7/1,c_8/3,c_9/0,c_10/1,c_11/0,c_12/0,c_13/2,c_14/3,c_15/1,c_16/0}
          Obligation:
            Innermost
            basic terms: {+#,++#,-#,avg#,hd#,length#,quot#,sum#}/{0,:,nil,s}
        Applied Processor:
          SimplifyRHS
        Proof:
          Consider the dependency graph
            1:S:++#(:(x,xs),ys) -> c_3(++#(xs,ys))
               -->_1 ++#(:(x,xs),ys) -> c_3(++#(xs,ys)):1
            
            3:W:avg#(xs) -> c_8(quot#(hd(sum(xs)),length(xs)),sum#(xs),length#(xs))
               -->_2 sum#(++(xs,:(x,:(y,ys)))) -> c_14(sum#(++(xs,sum(:(x,:(y,ys))))),++#(xs,sum(:(x,:(y,ys)))),sum#(:(x,:(y,ys)))):6
            
            6:W:sum#(++(xs,:(x,:(y,ys)))) -> c_14(sum#(++(xs,sum(:(x,:(y,ys))))),++#(xs,sum(:(x,:(y,ys)))),sum#(:(x,:(y,ys))))
               -->_1 sum#(++(xs,:(x,:(y,ys)))) -> c_14(sum#(++(xs,sum(:(x,:(y,ys))))),++#(xs,sum(:(x,:(y,ys)))),sum#(:(x,:(y,ys)))):6
               -->_2 ++#(:(x,xs),ys) -> c_3(++#(xs,ys)):1
            
          Due to missing edges in the depndency graph, the right-hand sides of following rules could be simplified:
            avg#(xs) -> c_8(sum#(xs))
            sum#(++(xs,:(x,:(y,ys)))) -> c_14(sum#(++(xs,sum(:(x,:(y,ys))))),++#(xs,sum(:(x,:(y,ys)))))
    *** 1.1.1.1.1.1.2.1.1.1.1.1 Progress [(?,O(n^2))]  ***
        Considered Problem:
          Strict DP Rules:
            ++#(:(x,xs),ys) -> c_3(++#(xs,ys))
          Strict TRS Rules:
            
          Weak DP Rules:
            avg#(xs) -> c_8(sum#(xs))
            sum#(++(xs,:(x,:(y,ys)))) -> c_14(sum#(++(xs,sum(:(x,:(y,ys))))),++#(xs,sum(:(x,:(y,ys)))))
          Weak TRS Rules:
            +(0(),y) -> y
            +(s(x),y) -> s(+(x,y))
            ++(:(x,xs),ys) -> :(x,++(xs,ys))
            ++(nil(),ys) -> ys
            -(x,0()) -> x
            -(0(),s(y)) -> 0()
            -(s(x),s(y)) -> -(x,y)
            hd(:(x,xs)) -> x
            length(:(x,xs)) -> s(length(xs))
            length(nil()) -> 0()
            sum(++(xs,:(x,:(y,ys)))) -> sum(++(xs,sum(:(x,:(y,ys)))))
            sum(:(x,:(y,xs))) -> sum(:(+(x,y),xs))
            sum(:(x,nil())) -> :(x,nil())
          Signature:
            {+/2,++/2,-/2,avg/1,hd/1,length/1,quot/2,sum/1,+#/2,++#/2,-#/2,avg#/1,hd#/1,length#/1,quot#/2,sum#/1} / {0/0,:/2,nil/0,s/1,c_1/0,c_2/1,c_3/1,c_4/0,c_5/0,c_6/0,c_7/1,c_8/1,c_9/0,c_10/1,c_11/0,c_12/0,c_13/2,c_14/2,c_15/1,c_16/0}
          Obligation:
            Innermost
            basic terms: {+#,++#,-#,avg#,hd#,length#,quot#,sum#}/{0,:,nil,s}
        Applied Processor:
          UsableRules
        Proof:
          We replace rewrite rules by usable rules:
            +(0(),y) -> y
            +(s(x),y) -> s(+(x,y))
            ++(:(x,xs),ys) -> :(x,++(xs,ys))
            ++(nil(),ys) -> ys
            sum(:(x,:(y,xs))) -> sum(:(+(x,y),xs))
            sum(:(x,nil())) -> :(x,nil())
            ++#(:(x,xs),ys) -> c_3(++#(xs,ys))
            avg#(xs) -> c_8(sum#(xs))
            sum#(++(xs,:(x,:(y,ys)))) -> c_14(sum#(++(xs,sum(:(x,:(y,ys))))),++#(xs,sum(:(x,:(y,ys)))))
    *** 1.1.1.1.1.1.2.1.1.1.1.1.1 Progress [(?,O(n^2))]  ***
        Considered Problem:
          Strict DP Rules:
            ++#(:(x,xs),ys) -> c_3(++#(xs,ys))
          Strict TRS Rules:
            
          Weak DP Rules:
            avg#(xs) -> c_8(sum#(xs))
            sum#(++(xs,:(x,:(y,ys)))) -> c_14(sum#(++(xs,sum(:(x,:(y,ys))))),++#(xs,sum(:(x,:(y,ys)))))
          Weak TRS Rules:
            +(0(),y) -> y
            +(s(x),y) -> s(+(x,y))
            ++(:(x,xs),ys) -> :(x,++(xs,ys))
            ++(nil(),ys) -> ys
            sum(:(x,:(y,xs))) -> sum(:(+(x,y),xs))
            sum(:(x,nil())) -> :(x,nil())
          Signature:
            {+/2,++/2,-/2,avg/1,hd/1,length/1,quot/2,sum/1,+#/2,++#/2,-#/2,avg#/1,hd#/1,length#/1,quot#/2,sum#/1} / {0/0,:/2,nil/0,s/1,c_1/0,c_2/1,c_3/1,c_4/0,c_5/0,c_6/0,c_7/1,c_8/1,c_9/0,c_10/1,c_11/0,c_12/0,c_13/2,c_14/2,c_15/1,c_16/0}
          Obligation:
            Innermost
            basic terms: {+#,++#,-#,avg#,hd#,length#,quot#,sum#}/{0,:,nil,s}
        Applied Processor:
          DecomposeDG {onSelection = all below first cut in WDG, onUpper = Just someStrategy, onLower = Nothing}
        Proof:
          We decompose the input problem according to the dependency graph into the upper component
            avg#(xs) -> c_8(sum#(xs))
            sum#(++(xs,:(x,:(y,ys)))) -> c_14(sum#(++(xs,sum(:(x,:(y,ys))))),++#(xs,sum(:(x,:(y,ys)))))
          and a lower component
            ++#(:(x,xs),ys) -> c_3(++#(xs,ys))
          Further, following extension rules are added to the lower component.
            avg#(xs) -> sum#(xs)
            sum#(++(xs,:(x,:(y,ys)))) -> ++#(xs,sum(:(x,:(y,ys))))
            sum#(++(xs,:(x,:(y,ys)))) -> sum#(++(xs,sum(:(x,:(y,ys)))))
      *** 1.1.1.1.1.1.2.1.1.1.1.1.1.1 Progress [(?,O(n^1))]  ***
          Considered Problem:
            Strict DP Rules:
              sum#(++(xs,:(x,:(y,ys)))) -> c_14(sum#(++(xs,sum(:(x,:(y,ys))))),++#(xs,sum(:(x,:(y,ys)))))
            Strict TRS Rules:
              
            Weak DP Rules:
              avg#(xs) -> c_8(sum#(xs))
            Weak TRS Rules:
              +(0(),y) -> y
              +(s(x),y) -> s(+(x,y))
              ++(:(x,xs),ys) -> :(x,++(xs,ys))
              ++(nil(),ys) -> ys
              sum(:(x,:(y,xs))) -> sum(:(+(x,y),xs))
              sum(:(x,nil())) -> :(x,nil())
            Signature:
              {+/2,++/2,-/2,avg/1,hd/1,length/1,quot/2,sum/1,+#/2,++#/2,-#/2,avg#/1,hd#/1,length#/1,quot#/2,sum#/1} / {0/0,:/2,nil/0,s/1,c_1/0,c_2/1,c_3/1,c_4/0,c_5/0,c_6/0,c_7/1,c_8/1,c_9/0,c_10/1,c_11/0,c_12/0,c_13/2,c_14/2,c_15/1,c_16/0}
            Obligation:
              Innermost
              basic terms: {+#,++#,-#,avg#,hd#,length#,quot#,sum#}/{0,:,nil,s}
          Applied Processor:
            PredecessorEstimationCP {onSelectionCP = any intersect of rules of CDG leaf and strict-rules, withComplexityPair = NaturalMI {miDimension = 1, miDegree = 1, miKind = Algebraic, uargs = UArgs, urules = URules, selector = Nothing, greedy = NoGreedy}}
          Proof:
            We first use the processor NaturalMI {miDimension = 1, miDegree = 1, miKind = Algebraic, uargs = UArgs, urules = URules, selector = Nothing, greedy = NoGreedy} to orient following rules strictly:
              1: sum#(++(xs,:(x,:(y,ys)))) ->      
                   c_14(sum#(++(xs                 
                               ,sum(:(x,:(y,ys)))))
                       ,++#(xs,sum(:(x,:(y,ys))))) 
              
            Consider the set of all dependency pairs
              1: sum#(++(xs,:(x,:(y,ys)))) ->      
                   c_14(sum#(++(xs                 
                               ,sum(:(x,:(y,ys)))))
                       ,++#(xs,sum(:(x,:(y,ys))))) 
              2: avg#(xs) -> c_8(sum#(xs))         
            Processor NaturalMI {miDimension = 1, miDegree = 1, miKind = Algebraic, uargs = UArgs, urules = URules, selector = Nothing, greedy = NoGreedy}induces the complexity certificateTIME (?,O(n^1))
            SPACE(?,?)on application of the dependency pairs
              {1}
            These cover all (indirect) predecessors of dependency pairs
              {1,2}
            their number of applications is equally bounded.
            The dependency pairs are shifted into the weak component.
        *** 1.1.1.1.1.1.2.1.1.1.1.1.1.1.1 Progress [(?,O(n^1))]  ***
            Considered Problem:
              Strict DP Rules:
                sum#(++(xs,:(x,:(y,ys)))) -> c_14(sum#(++(xs,sum(:(x,:(y,ys))))),++#(xs,sum(:(x,:(y,ys)))))
              Strict TRS Rules:
                
              Weak DP Rules:
                avg#(xs) -> c_8(sum#(xs))
              Weak TRS Rules:
                +(0(),y) -> y
                +(s(x),y) -> s(+(x,y))
                ++(:(x,xs),ys) -> :(x,++(xs,ys))
                ++(nil(),ys) -> ys
                sum(:(x,:(y,xs))) -> sum(:(+(x,y),xs))
                sum(:(x,nil())) -> :(x,nil())
              Signature:
                {+/2,++/2,-/2,avg/1,hd/1,length/1,quot/2,sum/1,+#/2,++#/2,-#/2,avg#/1,hd#/1,length#/1,quot#/2,sum#/1} / {0/0,:/2,nil/0,s/1,c_1/0,c_2/1,c_3/1,c_4/0,c_5/0,c_6/0,c_7/1,c_8/1,c_9/0,c_10/1,c_11/0,c_12/0,c_13/2,c_14/2,c_15/1,c_16/0}
              Obligation:
                Innermost
                basic terms: {+#,++#,-#,avg#,hd#,length#,quot#,sum#}/{0,:,nil,s}
            Applied Processor:
              NaturalMI {miDimension = 1, miDegree = 1, miKind = Algebraic, uargs = UArgs, urules = URules, selector = Just first alternative for predecessorEstimation any intersect of rules of CDG leaf and strict-rules, greedy = NoGreedy}
            Proof:
              We apply a matrix interpretation of kind constructor based matrix interpretation:
              The following argument positions are considered usable:
                uargs(c_8) = {1},
                uargs(c_14) = {1,2}
              
              Following symbols are considered usable:
                {++,sum,+#,++#,-#,avg#,hd#,length#,quot#,sum#}
              TcT has computed the following interpretation:
                      p(+) = [2] x1 + [1] x2 + [6] 
                     p(++) = [10] x1 + [4] x2 + [2]
                      p(-) = [1] x2 + [2]          
                      p(0) = [1]                   
                      p(:) = [1] x2 + [1]          
                    p(avg) = [1] x1 + [1]          
                     p(hd) = [1] x1 + [1]          
                 p(length) = [1] x1 + [0]          
                    p(nil) = [0]                   
                   p(quot) = [0]                   
                      p(s) = [0]                   
                    p(sum) = [1]                   
                     p(+#) = [1]                   
                    p(++#) = [1] x2 + [0]          
                     p(-#) = [1] x1 + [1]          
                   p(avg#) = [5] x1 + [0]          
                    p(hd#) = [1] x1 + [8]          
                p(length#) = [1] x1 + [2]          
                  p(quot#) = [2] x2 + [1]          
                   p(sum#) = [2] x1 + [0]          
                    p(c_1) = [0]                   
                    p(c_2) = [2]                   
                    p(c_3) = [4]                   
                    p(c_4) = [1]                   
                    p(c_5) = [1]                   
                    p(c_6) = [0]                   
                    p(c_7) = [1] x1 + [1]          
                    p(c_8) = [2] x1 + [0]          
                    p(c_9) = [1]                   
                   p(c_10) = [1]                   
                   p(c_11) = [2]                   
                   p(c_12) = [2]                   
                   p(c_13) = [2] x1 + [1]          
                   p(c_14) = [1] x1 + [1] x2 + [1] 
                   p(c_15) = [1]                   
                   p(c_16) = [0]                   
              
              Following rules are strictly oriented:
              sum#(++(xs,:(x,:(y,ys)))) = [20] xs + [8] ys + [20]         
                                        > [20] xs + [14]                  
                                        = c_14(sum#(++(xs                 
                                                      ,sum(:(x,:(y,ys)))))
                                              ,++#(xs,sum(:(x,:(y,ys))))) 
              
              
              Following rules are (at-least) weakly oriented:
                       avg#(xs) =  [5] xs + [0]           
                                >= [4] xs + [0]           
                                =  c_8(sum#(xs))          
              
                 ++(:(x,xs),ys) =  [10] xs + [4] ys + [12]
                                >= [10] xs + [4] ys + [3] 
                                =  :(x,++(xs,ys))         
              
                   ++(nil(),ys) =  [4] ys + [2]           
                                >= [1] ys + [0]           
                                =  ys                     
              
              sum(:(x,:(y,xs))) =  [1]                    
                                >= [1]                    
                                =  sum(:(+(x,y),xs))      
              
                sum(:(x,nil())) =  [1]                    
                                >= [1]                    
                                =  :(x,nil())             
              
        *** 1.1.1.1.1.1.2.1.1.1.1.1.1.1.1.1 Progress [(?,O(1))]  ***
            Considered Problem:
              Strict DP Rules:
                
              Strict TRS Rules:
                
              Weak DP Rules:
                avg#(xs) -> c_8(sum#(xs))
                sum#(++(xs,:(x,:(y,ys)))) -> c_14(sum#(++(xs,sum(:(x,:(y,ys))))),++#(xs,sum(:(x,:(y,ys)))))
              Weak TRS Rules:
                +(0(),y) -> y
                +(s(x),y) -> s(+(x,y))
                ++(:(x,xs),ys) -> :(x,++(xs,ys))
                ++(nil(),ys) -> ys
                sum(:(x,:(y,xs))) -> sum(:(+(x,y),xs))
                sum(:(x,nil())) -> :(x,nil())
              Signature:
                {+/2,++/2,-/2,avg/1,hd/1,length/1,quot/2,sum/1,+#/2,++#/2,-#/2,avg#/1,hd#/1,length#/1,quot#/2,sum#/1} / {0/0,:/2,nil/0,s/1,c_1/0,c_2/1,c_3/1,c_4/0,c_5/0,c_6/0,c_7/1,c_8/1,c_9/0,c_10/1,c_11/0,c_12/0,c_13/2,c_14/2,c_15/1,c_16/0}
              Obligation:
                Innermost
                basic terms: {+#,++#,-#,avg#,hd#,length#,quot#,sum#}/{0,:,nil,s}
            Applied Processor:
              Assumption
            Proof:
              ()
        
        *** 1.1.1.1.1.1.2.1.1.1.1.1.1.1.2 Progress [(O(1),O(1))]  ***
            Considered Problem:
              Strict DP Rules:
                
              Strict TRS Rules:
                
              Weak DP Rules:
                avg#(xs) -> c_8(sum#(xs))
                sum#(++(xs,:(x,:(y,ys)))) -> c_14(sum#(++(xs,sum(:(x,:(y,ys))))),++#(xs,sum(:(x,:(y,ys)))))
              Weak TRS Rules:
                +(0(),y) -> y
                +(s(x),y) -> s(+(x,y))
                ++(:(x,xs),ys) -> :(x,++(xs,ys))
                ++(nil(),ys) -> ys
                sum(:(x,:(y,xs))) -> sum(:(+(x,y),xs))
                sum(:(x,nil())) -> :(x,nil())
              Signature:
                {+/2,++/2,-/2,avg/1,hd/1,length/1,quot/2,sum/1,+#/2,++#/2,-#/2,avg#/1,hd#/1,length#/1,quot#/2,sum#/1} / {0/0,:/2,nil/0,s/1,c_1/0,c_2/1,c_3/1,c_4/0,c_5/0,c_6/0,c_7/1,c_8/1,c_9/0,c_10/1,c_11/0,c_12/0,c_13/2,c_14/2,c_15/1,c_16/0}
              Obligation:
                Innermost
                basic terms: {+#,++#,-#,avg#,hd#,length#,quot#,sum#}/{0,:,nil,s}
            Applied Processor:
              RemoveWeakSuffixes
            Proof:
              Consider the dependency graph
                1:W:avg#(xs) -> c_8(sum#(xs))
                   -->_1 sum#(++(xs,:(x,:(y,ys)))) -> c_14(sum#(++(xs,sum(:(x,:(y,ys))))),++#(xs,sum(:(x,:(y,ys))))):2
                
                2:W:sum#(++(xs,:(x,:(y,ys)))) -> c_14(sum#(++(xs,sum(:(x,:(y,ys))))),++#(xs,sum(:(x,:(y,ys)))))
                   -->_1 sum#(++(xs,:(x,:(y,ys)))) -> c_14(sum#(++(xs,sum(:(x,:(y,ys))))),++#(xs,sum(:(x,:(y,ys))))):2
                
              The following weak DPs constitute a sub-graph of the DG that is closed under successors. The DPs are removed.
                1: avg#(xs) -> c_8(sum#(xs))         
                2: sum#(++(xs,:(x,:(y,ys)))) ->      
                     c_14(sum#(++(xs                 
                                 ,sum(:(x,:(y,ys)))))
                         ,++#(xs,sum(:(x,:(y,ys))))) 
        *** 1.1.1.1.1.1.2.1.1.1.1.1.1.1.2.1 Progress [(O(1),O(1))]  ***
            Considered Problem:
              Strict DP Rules:
                
              Strict TRS Rules:
                
              Weak DP Rules:
                
              Weak TRS Rules:
                +(0(),y) -> y
                +(s(x),y) -> s(+(x,y))
                ++(:(x,xs),ys) -> :(x,++(xs,ys))
                ++(nil(),ys) -> ys
                sum(:(x,:(y,xs))) -> sum(:(+(x,y),xs))
                sum(:(x,nil())) -> :(x,nil())
              Signature:
                {+/2,++/2,-/2,avg/1,hd/1,length/1,quot/2,sum/1,+#/2,++#/2,-#/2,avg#/1,hd#/1,length#/1,quot#/2,sum#/1} / {0/0,:/2,nil/0,s/1,c_1/0,c_2/1,c_3/1,c_4/0,c_5/0,c_6/0,c_7/1,c_8/1,c_9/0,c_10/1,c_11/0,c_12/0,c_13/2,c_14/2,c_15/1,c_16/0}
              Obligation:
                Innermost
                basic terms: {+#,++#,-#,avg#,hd#,length#,quot#,sum#}/{0,:,nil,s}
            Applied Processor:
              EmptyProcessor
            Proof:
              The problem is already closed. The intended complexity is O(1).
        
      *** 1.1.1.1.1.1.2.1.1.1.1.1.1.2 Progress [(?,O(n^1))]  ***
          Considered Problem:
            Strict DP Rules:
              ++#(:(x,xs),ys) -> c_3(++#(xs,ys))
            Strict TRS Rules:
              
            Weak DP Rules:
              avg#(xs) -> sum#(xs)
              sum#(++(xs,:(x,:(y,ys)))) -> ++#(xs,sum(:(x,:(y,ys))))
              sum#(++(xs,:(x,:(y,ys)))) -> sum#(++(xs,sum(:(x,:(y,ys)))))
            Weak TRS Rules:
              +(0(),y) -> y
              +(s(x),y) -> s(+(x,y))
              ++(:(x,xs),ys) -> :(x,++(xs,ys))
              ++(nil(),ys) -> ys
              sum(:(x,:(y,xs))) -> sum(:(+(x,y),xs))
              sum(:(x,nil())) -> :(x,nil())
            Signature:
              {+/2,++/2,-/2,avg/1,hd/1,length/1,quot/2,sum/1,+#/2,++#/2,-#/2,avg#/1,hd#/1,length#/1,quot#/2,sum#/1} / {0/0,:/2,nil/0,s/1,c_1/0,c_2/1,c_3/1,c_4/0,c_5/0,c_6/0,c_7/1,c_8/1,c_9/0,c_10/1,c_11/0,c_12/0,c_13/2,c_14/2,c_15/1,c_16/0}
            Obligation:
              Innermost
              basic terms: {+#,++#,-#,avg#,hd#,length#,quot#,sum#}/{0,:,nil,s}
          Applied Processor:
            PredecessorEstimationCP {onSelectionCP = any intersect of rules of CDG leaf and strict-rules, withComplexityPair = NaturalMI {miDimension = 1, miDegree = 1, miKind = Algebraic, uargs = UArgs, urules = URules, selector = Nothing, greedy = NoGreedy}}
          Proof:
            We first use the processor NaturalMI {miDimension = 1, miDegree = 1, miKind = Algebraic, uargs = UArgs, urules = URules, selector = Nothing, greedy = NoGreedy} to orient following rules strictly:
              1: ++#(:(x,xs),ys) -> c_3(++#(xs  
                                           ,ys))
              
            Consider the set of all dependency pairs
              1: ++#(:(x,xs),ys) -> c_3(++#(xs   
                                           ,ys)) 
              2: avg#(xs) -> sum#(xs)            
              3: sum#(++(xs,:(x,:(y,ys)))) ->    
                   ++#(xs,sum(:(x,:(y,ys))))     
              4: sum#(++(xs,:(x,:(y,ys)))) ->    
                   sum#(++(xs,sum(:(x,:(y,ys)))))
            Processor NaturalMI {miDimension = 1, miDegree = 1, miKind = Algebraic, uargs = UArgs, urules = URules, selector = Nothing, greedy = NoGreedy}induces the complexity certificateTIME (?,O(n^1))
            SPACE(?,?)on application of the dependency pairs
              {1}
            These cover all (indirect) predecessors of dependency pairs
              {1,2}
            their number of applications is equally bounded.
            The dependency pairs are shifted into the weak component.
        *** 1.1.1.1.1.1.2.1.1.1.1.1.1.2.1 Progress [(?,O(n^1))]  ***
            Considered Problem:
              Strict DP Rules:
                ++#(:(x,xs),ys) -> c_3(++#(xs,ys))
              Strict TRS Rules:
                
              Weak DP Rules:
                avg#(xs) -> sum#(xs)
                sum#(++(xs,:(x,:(y,ys)))) -> ++#(xs,sum(:(x,:(y,ys))))
                sum#(++(xs,:(x,:(y,ys)))) -> sum#(++(xs,sum(:(x,:(y,ys)))))
              Weak TRS Rules:
                +(0(),y) -> y
                +(s(x),y) -> s(+(x,y))
                ++(:(x,xs),ys) -> :(x,++(xs,ys))
                ++(nil(),ys) -> ys
                sum(:(x,:(y,xs))) -> sum(:(+(x,y),xs))
                sum(:(x,nil())) -> :(x,nil())
              Signature:
                {+/2,++/2,-/2,avg/1,hd/1,length/1,quot/2,sum/1,+#/2,++#/2,-#/2,avg#/1,hd#/1,length#/1,quot#/2,sum#/1} / {0/0,:/2,nil/0,s/1,c_1/0,c_2/1,c_3/1,c_4/0,c_5/0,c_6/0,c_7/1,c_8/1,c_9/0,c_10/1,c_11/0,c_12/0,c_13/2,c_14/2,c_15/1,c_16/0}
              Obligation:
                Innermost
                basic terms: {+#,++#,-#,avg#,hd#,length#,quot#,sum#}/{0,:,nil,s}
            Applied Processor:
              NaturalMI {miDimension = 1, miDegree = 1, miKind = Algebraic, uargs = UArgs, urules = URules, selector = Just first alternative for predecessorEstimation any intersect of rules of CDG leaf and strict-rules, greedy = NoGreedy}
            Proof:
              We apply a matrix interpretation of kind constructor based matrix interpretation:
              The following argument positions are considered usable:
                uargs(c_3) = {1}
              
              Following symbols are considered usable:
                {++,sum,+#,++#,-#,avg#,hd#,length#,quot#,sum#}
              TcT has computed the following interpretation:
                      p(+) = [0]                  
                     p(++) = [2] x1 + [1] x2 + [2]
                      p(-) = [0]                  
                      p(0) = [0]                  
                      p(:) = [1] x2 + [8]         
                    p(avg) = [8]                  
                     p(hd) = [4] x1 + [0]         
                 p(length) = [1]                  
                    p(nil) = [4]                  
                   p(quot) = [1]                  
                      p(s) = [1] x1 + [4]         
                    p(sum) = [12]                 
                     p(+#) = [2] x1 + [0]         
                    p(++#) = [2] x1 + [0]         
                     p(-#) = [0]                  
                   p(avg#) = [4] x1 + [1]         
                    p(hd#) = [1]                  
                p(length#) = [0]                  
                  p(quot#) = [1] x2 + [2]         
                   p(sum#) = [1] x1 + [0]         
                    p(c_1) = [1]                  
                    p(c_2) = [2] x1 + [1]         
                    p(c_3) = [1] x1 + [8]         
                    p(c_4) = [0]                  
                    p(c_5) = [1]                  
                    p(c_6) = [0]                  
                    p(c_7) = [8] x1 + [1]         
                    p(c_8) = [8] x1 + [1]         
                    p(c_9) = [2]                  
                   p(c_10) = [1] x1 + [0]         
                   p(c_11) = [0]                  
                   p(c_12) = [0]                  
                   p(c_13) = [1] x1 + [1]         
                   p(c_14) = [1] x2 + [2]         
                   p(c_15) = [8]                  
                   p(c_16) = [2]                  
              
              Following rules are strictly oriented:
              ++#(:(x,xs),ys) = [2] xs + [16]  
                              > [2] xs + [8]   
                              = c_3(++#(xs,ys))
              
              
              Following rules are (at-least) weakly oriented:
                               avg#(xs) =  [4] xs + [1]                  
                                        >= [1] xs + [0]                  
                                        =  sum#(xs)                      
              
              sum#(++(xs,:(x,:(y,ys)))) =  [2] xs + [1] ys + [18]        
                                        >= [2] xs + [0]                  
                                        =  ++#(xs,sum(:(x,:(y,ys))))     
              
              sum#(++(xs,:(x,:(y,ys)))) =  [2] xs + [1] ys + [18]        
                                        >= [2] xs + [14]                 
                                        =  sum#(++(xs,sum(:(x,:(y,ys)))))
              
                         ++(:(x,xs),ys) =  [2] xs + [1] ys + [18]        
                                        >= [2] xs + [1] ys + [10]        
                                        =  :(x,++(xs,ys))                
              
                           ++(nil(),ys) =  [1] ys + [10]                 
                                        >= [1] ys + [0]                  
                                        =  ys                            
              
                      sum(:(x,:(y,xs))) =  [12]                          
                                        >= [12]                          
                                        =  sum(:(+(x,y),xs))             
              
                        sum(:(x,nil())) =  [12]                          
                                        >= [12]                          
                                        =  :(x,nil())                    
              
        *** 1.1.1.1.1.1.2.1.1.1.1.1.1.2.1.1 Progress [(?,O(1))]  ***
            Considered Problem:
              Strict DP Rules:
                
              Strict TRS Rules:
                
              Weak DP Rules:
                ++#(:(x,xs),ys) -> c_3(++#(xs,ys))
                avg#(xs) -> sum#(xs)
                sum#(++(xs,:(x,:(y,ys)))) -> ++#(xs,sum(:(x,:(y,ys))))
                sum#(++(xs,:(x,:(y,ys)))) -> sum#(++(xs,sum(:(x,:(y,ys)))))
              Weak TRS Rules:
                +(0(),y) -> y
                +(s(x),y) -> s(+(x,y))
                ++(:(x,xs),ys) -> :(x,++(xs,ys))
                ++(nil(),ys) -> ys
                sum(:(x,:(y,xs))) -> sum(:(+(x,y),xs))
                sum(:(x,nil())) -> :(x,nil())
              Signature:
                {+/2,++/2,-/2,avg/1,hd/1,length/1,quot/2,sum/1,+#/2,++#/2,-#/2,avg#/1,hd#/1,length#/1,quot#/2,sum#/1} / {0/0,:/2,nil/0,s/1,c_1/0,c_2/1,c_3/1,c_4/0,c_5/0,c_6/0,c_7/1,c_8/1,c_9/0,c_10/1,c_11/0,c_12/0,c_13/2,c_14/2,c_15/1,c_16/0}
              Obligation:
                Innermost
                basic terms: {+#,++#,-#,avg#,hd#,length#,quot#,sum#}/{0,:,nil,s}
            Applied Processor:
              Assumption
            Proof:
              ()
        
        *** 1.1.1.1.1.1.2.1.1.1.1.1.1.2.2 Progress [(O(1),O(1))]  ***
            Considered Problem:
              Strict DP Rules:
                
              Strict TRS Rules:
                
              Weak DP Rules:
                ++#(:(x,xs),ys) -> c_3(++#(xs,ys))
                avg#(xs) -> sum#(xs)
                sum#(++(xs,:(x,:(y,ys)))) -> ++#(xs,sum(:(x,:(y,ys))))
                sum#(++(xs,:(x,:(y,ys)))) -> sum#(++(xs,sum(:(x,:(y,ys)))))
              Weak TRS Rules:
                +(0(),y) -> y
                +(s(x),y) -> s(+(x,y))
                ++(:(x,xs),ys) -> :(x,++(xs,ys))
                ++(nil(),ys) -> ys
                sum(:(x,:(y,xs))) -> sum(:(+(x,y),xs))
                sum(:(x,nil())) -> :(x,nil())
              Signature:
                {+/2,++/2,-/2,avg/1,hd/1,length/1,quot/2,sum/1,+#/2,++#/2,-#/2,avg#/1,hd#/1,length#/1,quot#/2,sum#/1} / {0/0,:/2,nil/0,s/1,c_1/0,c_2/1,c_3/1,c_4/0,c_5/0,c_6/0,c_7/1,c_8/1,c_9/0,c_10/1,c_11/0,c_12/0,c_13/2,c_14/2,c_15/1,c_16/0}
              Obligation:
                Innermost
                basic terms: {+#,++#,-#,avg#,hd#,length#,quot#,sum#}/{0,:,nil,s}
            Applied Processor:
              RemoveWeakSuffixes
            Proof:
              Consider the dependency graph
                1:W:++#(:(x,xs),ys) -> c_3(++#(xs,ys))
                   -->_1 ++#(:(x,xs),ys) -> c_3(++#(xs,ys)):1
                
                2:W:avg#(xs) -> sum#(xs)
                   -->_1 sum#(++(xs,:(x,:(y,ys)))) -> sum#(++(xs,sum(:(x,:(y,ys))))):4
                   -->_1 sum#(++(xs,:(x,:(y,ys)))) -> ++#(xs,sum(:(x,:(y,ys)))):3
                
                3:W:sum#(++(xs,:(x,:(y,ys)))) -> ++#(xs,sum(:(x,:(y,ys))))
                   -->_1 ++#(:(x,xs),ys) -> c_3(++#(xs,ys)):1
                
                4:W:sum#(++(xs,:(x,:(y,ys)))) -> sum#(++(xs,sum(:(x,:(y,ys)))))
                   -->_1 sum#(++(xs,:(x,:(y,ys)))) -> sum#(++(xs,sum(:(x,:(y,ys))))):4
                   -->_1 sum#(++(xs,:(x,:(y,ys)))) -> ++#(xs,sum(:(x,:(y,ys)))):3
                
              The following weak DPs constitute a sub-graph of the DG that is closed under successors. The DPs are removed.
                2: avg#(xs) -> sum#(xs)            
                4: sum#(++(xs,:(x,:(y,ys)))) ->    
                     sum#(++(xs,sum(:(x,:(y,ys)))))
                3: sum#(++(xs,:(x,:(y,ys)))) ->    
                     ++#(xs,sum(:(x,:(y,ys))))     
                1: ++#(:(x,xs),ys) -> c_3(++#(xs   
                                             ,ys)) 
        *** 1.1.1.1.1.1.2.1.1.1.1.1.1.2.2.1 Progress [(O(1),O(1))]  ***
            Considered Problem:
              Strict DP Rules:
                
              Strict TRS Rules:
                
              Weak DP Rules:
                
              Weak TRS Rules:
                +(0(),y) -> y
                +(s(x),y) -> s(+(x,y))
                ++(:(x,xs),ys) -> :(x,++(xs,ys))
                ++(nil(),ys) -> ys
                sum(:(x,:(y,xs))) -> sum(:(+(x,y),xs))
                sum(:(x,nil())) -> :(x,nil())
              Signature:
                {+/2,++/2,-/2,avg/1,hd/1,length/1,quot/2,sum/1,+#/2,++#/2,-#/2,avg#/1,hd#/1,length#/1,quot#/2,sum#/1} / {0/0,:/2,nil/0,s/1,c_1/0,c_2/1,c_3/1,c_4/0,c_5/0,c_6/0,c_7/1,c_8/1,c_9/0,c_10/1,c_11/0,c_12/0,c_13/2,c_14/2,c_15/1,c_16/0}
              Obligation:
                Innermost
                basic terms: {+#,++#,-#,avg#,hd#,length#,quot#,sum#}/{0,:,nil,s}
            Applied Processor:
              EmptyProcessor
            Proof:
              The problem is already closed. The intended complexity is O(1).
        
    *** 1.1.1.1.1.1.2.1.1.2 Progress [(?,O(n^2))]  ***
        Considered Problem:
          Strict DP Rules:
            -#(s(x),s(y)) -> c_7(-#(x,y))
            avg#(xs) -> c_8(quot#(hd(sum(xs)),length(xs)),sum#(xs),length#(xs))
            length#(:(x,xs)) -> c_10(length#(xs))
            quot#(s(x),s(y)) -> c_13(quot#(-(x,y),s(y)),-#(x,y))
            sum#(++(xs,:(x,:(y,ys)))) -> c_14(sum#(++(xs,sum(:(x,:(y,ys))))),++#(xs,sum(:(x,:(y,ys)))),sum#(:(x,:(y,ys))))
            sum#(:(x,:(y,xs))) -> c_15(sum#(:(+(x,y),xs)))
          Strict TRS Rules:
            
          Weak DP Rules:
            ++#(:(x,xs),ys) -> c_3(++#(xs,ys))
          Weak TRS Rules:
            +(0(),y) -> y
            +(s(x),y) -> s(+(x,y))
            ++(:(x,xs),ys) -> :(x,++(xs,ys))
            ++(nil(),ys) -> ys
            -(x,0()) -> x
            -(0(),s(y)) -> 0()
            -(s(x),s(y)) -> -(x,y)
            hd(:(x,xs)) -> x
            length(:(x,xs)) -> s(length(xs))
            length(nil()) -> 0()
            sum(++(xs,:(x,:(y,ys)))) -> sum(++(xs,sum(:(x,:(y,ys)))))
            sum(:(x,:(y,xs))) -> sum(:(+(x,y),xs))
            sum(:(x,nil())) -> :(x,nil())
          Signature:
            {+/2,++/2,-/2,avg/1,hd/1,length/1,quot/2,sum/1,+#/2,++#/2,-#/2,avg#/1,hd#/1,length#/1,quot#/2,sum#/1} / {0/0,:/2,nil/0,s/1,c_1/0,c_2/1,c_3/1,c_4/0,c_5/0,c_6/0,c_7/1,c_8/3,c_9/0,c_10/1,c_11/0,c_12/0,c_13/2,c_14/3,c_15/1,c_16/0}
          Obligation:
            Innermost
            basic terms: {+#,++#,-#,avg#,hd#,length#,quot#,sum#}/{0,:,nil,s}
        Applied Processor:
          RemoveWeakSuffixes
        Proof:
          Consider the dependency graph
            1:S:-#(s(x),s(y)) -> c_7(-#(x,y))
               -->_1 -#(s(x),s(y)) -> c_7(-#(x,y)):1
            
            2:S:avg#(xs) -> c_8(quot#(hd(sum(xs)),length(xs)),sum#(xs),length#(xs))
               -->_2 sum#(:(x,:(y,xs))) -> c_15(sum#(:(+(x,y),xs))):6
               -->_2 sum#(++(xs,:(x,:(y,ys)))) -> c_14(sum#(++(xs,sum(:(x,:(y,ys))))),++#(xs,sum(:(x,:(y,ys)))),sum#(:(x,:(y,ys)))):5
               -->_1 quot#(s(x),s(y)) -> c_13(quot#(-(x,y),s(y)),-#(x,y)):4
               -->_3 length#(:(x,xs)) -> c_10(length#(xs)):3
            
            3:S:length#(:(x,xs)) -> c_10(length#(xs))
               -->_1 length#(:(x,xs)) -> c_10(length#(xs)):3
            
            4:S:quot#(s(x),s(y)) -> c_13(quot#(-(x,y),s(y)),-#(x,y))
               -->_1 quot#(s(x),s(y)) -> c_13(quot#(-(x,y),s(y)),-#(x,y)):4
               -->_2 -#(s(x),s(y)) -> c_7(-#(x,y)):1
            
            5:S:sum#(++(xs,:(x,:(y,ys)))) -> c_14(sum#(++(xs,sum(:(x,:(y,ys))))),++#(xs,sum(:(x,:(y,ys)))),sum#(:(x,:(y,ys))))
               -->_2 ++#(:(x,xs),ys) -> c_3(++#(xs,ys)):7
               -->_3 sum#(:(x,:(y,xs))) -> c_15(sum#(:(+(x,y),xs))):6
               -->_1 sum#(:(x,:(y,xs))) -> c_15(sum#(:(+(x,y),xs))):6
               -->_1 sum#(++(xs,:(x,:(y,ys)))) -> c_14(sum#(++(xs,sum(:(x,:(y,ys))))),++#(xs,sum(:(x,:(y,ys)))),sum#(:(x,:(y,ys)))):5
            
            6:S:sum#(:(x,:(y,xs))) -> c_15(sum#(:(+(x,y),xs)))
               -->_1 sum#(:(x,:(y,xs))) -> c_15(sum#(:(+(x,y),xs))):6
            
            7:W:++#(:(x,xs),ys) -> c_3(++#(xs,ys))
               -->_1 ++#(:(x,xs),ys) -> c_3(++#(xs,ys)):7
            
          The following weak DPs constitute a sub-graph of the DG that is closed under successors. The DPs are removed.
            7: ++#(:(x,xs),ys) -> c_3(++#(xs  
                                         ,ys))
    *** 1.1.1.1.1.1.2.1.1.2.1 Progress [(?,O(n^2))]  ***
        Considered Problem:
          Strict DP Rules:
            -#(s(x),s(y)) -> c_7(-#(x,y))
            avg#(xs) -> c_8(quot#(hd(sum(xs)),length(xs)),sum#(xs),length#(xs))
            length#(:(x,xs)) -> c_10(length#(xs))
            quot#(s(x),s(y)) -> c_13(quot#(-(x,y),s(y)),-#(x,y))
            sum#(++(xs,:(x,:(y,ys)))) -> c_14(sum#(++(xs,sum(:(x,:(y,ys))))),++#(xs,sum(:(x,:(y,ys)))),sum#(:(x,:(y,ys))))
            sum#(:(x,:(y,xs))) -> c_15(sum#(:(+(x,y),xs)))
          Strict TRS Rules:
            
          Weak DP Rules:
            
          Weak TRS Rules:
            +(0(),y) -> y
            +(s(x),y) -> s(+(x,y))
            ++(:(x,xs),ys) -> :(x,++(xs,ys))
            ++(nil(),ys) -> ys
            -(x,0()) -> x
            -(0(),s(y)) -> 0()
            -(s(x),s(y)) -> -(x,y)
            hd(:(x,xs)) -> x
            length(:(x,xs)) -> s(length(xs))
            length(nil()) -> 0()
            sum(++(xs,:(x,:(y,ys)))) -> sum(++(xs,sum(:(x,:(y,ys)))))
            sum(:(x,:(y,xs))) -> sum(:(+(x,y),xs))
            sum(:(x,nil())) -> :(x,nil())
          Signature:
            {+/2,++/2,-/2,avg/1,hd/1,length/1,quot/2,sum/1,+#/2,++#/2,-#/2,avg#/1,hd#/1,length#/1,quot#/2,sum#/1} / {0/0,:/2,nil/0,s/1,c_1/0,c_2/1,c_3/1,c_4/0,c_5/0,c_6/0,c_7/1,c_8/3,c_9/0,c_10/1,c_11/0,c_12/0,c_13/2,c_14/3,c_15/1,c_16/0}
          Obligation:
            Innermost
            basic terms: {+#,++#,-#,avg#,hd#,length#,quot#,sum#}/{0,:,nil,s}
        Applied Processor:
          SimplifyRHS
        Proof:
          Consider the dependency graph
            1:S:-#(s(x),s(y)) -> c_7(-#(x,y))
               -->_1 -#(s(x),s(y)) -> c_7(-#(x,y)):1
            
            2:S:avg#(xs) -> c_8(quot#(hd(sum(xs)),length(xs)),sum#(xs),length#(xs))
               -->_2 sum#(:(x,:(y,xs))) -> c_15(sum#(:(+(x,y),xs))):6
               -->_2 sum#(++(xs,:(x,:(y,ys)))) -> c_14(sum#(++(xs,sum(:(x,:(y,ys))))),++#(xs,sum(:(x,:(y,ys)))),sum#(:(x,:(y,ys)))):5
               -->_1 quot#(s(x),s(y)) -> c_13(quot#(-(x,y),s(y)),-#(x,y)):4
               -->_3 length#(:(x,xs)) -> c_10(length#(xs)):3
            
            3:S:length#(:(x,xs)) -> c_10(length#(xs))
               -->_1 length#(:(x,xs)) -> c_10(length#(xs)):3
            
            4:S:quot#(s(x),s(y)) -> c_13(quot#(-(x,y),s(y)),-#(x,y))
               -->_1 quot#(s(x),s(y)) -> c_13(quot#(-(x,y),s(y)),-#(x,y)):4
               -->_2 -#(s(x),s(y)) -> c_7(-#(x,y)):1
            
            5:S:sum#(++(xs,:(x,:(y,ys)))) -> c_14(sum#(++(xs,sum(:(x,:(y,ys))))),++#(xs,sum(:(x,:(y,ys)))),sum#(:(x,:(y,ys))))
               -->_3 sum#(:(x,:(y,xs))) -> c_15(sum#(:(+(x,y),xs))):6
               -->_1 sum#(:(x,:(y,xs))) -> c_15(sum#(:(+(x,y),xs))):6
               -->_1 sum#(++(xs,:(x,:(y,ys)))) -> c_14(sum#(++(xs,sum(:(x,:(y,ys))))),++#(xs,sum(:(x,:(y,ys)))),sum#(:(x,:(y,ys)))):5
            
            6:S:sum#(:(x,:(y,xs))) -> c_15(sum#(:(+(x,y),xs)))
               -->_1 sum#(:(x,:(y,xs))) -> c_15(sum#(:(+(x,y),xs))):6
            
          Due to missing edges in the depndency graph, the right-hand sides of following rules could be simplified:
            sum#(++(xs,:(x,:(y,ys)))) -> c_14(sum#(++(xs,sum(:(x,:(y,ys))))),sum#(:(x,:(y,ys))))
    *** 1.1.1.1.1.1.2.1.1.2.1.1 Progress [(?,O(n^2))]  ***
        Considered Problem:
          Strict DP Rules:
            -#(s(x),s(y)) -> c_7(-#(x,y))
            avg#(xs) -> c_8(quot#(hd(sum(xs)),length(xs)),sum#(xs),length#(xs))
            length#(:(x,xs)) -> c_10(length#(xs))
            quot#(s(x),s(y)) -> c_13(quot#(-(x,y),s(y)),-#(x,y))
            sum#(++(xs,:(x,:(y,ys)))) -> c_14(sum#(++(xs,sum(:(x,:(y,ys))))),sum#(:(x,:(y,ys))))
            sum#(:(x,:(y,xs))) -> c_15(sum#(:(+(x,y),xs)))
          Strict TRS Rules:
            
          Weak DP Rules:
            
          Weak TRS Rules:
            +(0(),y) -> y
            +(s(x),y) -> s(+(x,y))
            ++(:(x,xs),ys) -> :(x,++(xs,ys))
            ++(nil(),ys) -> ys
            -(x,0()) -> x
            -(0(),s(y)) -> 0()
            -(s(x),s(y)) -> -(x,y)
            hd(:(x,xs)) -> x
            length(:(x,xs)) -> s(length(xs))
            length(nil()) -> 0()
            sum(++(xs,:(x,:(y,ys)))) -> sum(++(xs,sum(:(x,:(y,ys)))))
            sum(:(x,:(y,xs))) -> sum(:(+(x,y),xs))
            sum(:(x,nil())) -> :(x,nil())
          Signature:
            {+/2,++/2,-/2,avg/1,hd/1,length/1,quot/2,sum/1,+#/2,++#/2,-#/2,avg#/1,hd#/1,length#/1,quot#/2,sum#/1} / {0/0,:/2,nil/0,s/1,c_1/0,c_2/1,c_3/1,c_4/0,c_5/0,c_6/0,c_7/1,c_8/3,c_9/0,c_10/1,c_11/0,c_12/0,c_13/2,c_14/2,c_15/1,c_16/0}
          Obligation:
            Innermost
            basic terms: {+#,++#,-#,avg#,hd#,length#,quot#,sum#}/{0,:,nil,s}
        Applied Processor:
          Decompose {onSelection = all cycle independent sub-graph, withBound = RelativeAdd}
        Proof:
          We analyse the complexity of following sub-problems (R) and (S).
          Problem (S) is obtained from the input problem by shifting strict rules from (R) into the weak component.
          
          Problem (R)
            Strict DP Rules:
              -#(s(x),s(y)) -> c_7(-#(x,y))
            Strict TRS Rules:
              
            Weak DP Rules:
              avg#(xs) -> c_8(quot#(hd(sum(xs)),length(xs)),sum#(xs),length#(xs))
              length#(:(x,xs)) -> c_10(length#(xs))
              quot#(s(x),s(y)) -> c_13(quot#(-(x,y),s(y)),-#(x,y))
              sum#(++(xs,:(x,:(y,ys)))) -> c_14(sum#(++(xs,sum(:(x,:(y,ys))))),sum#(:(x,:(y,ys))))
              sum#(:(x,:(y,xs))) -> c_15(sum#(:(+(x,y),xs)))
            Weak TRS Rules:
              +(0(),y) -> y
              +(s(x),y) -> s(+(x,y))
              ++(:(x,xs),ys) -> :(x,++(xs,ys))
              ++(nil(),ys) -> ys
              -(x,0()) -> x
              -(0(),s(y)) -> 0()
              -(s(x),s(y)) -> -(x,y)
              hd(:(x,xs)) -> x
              length(:(x,xs)) -> s(length(xs))
              length(nil()) -> 0()
              sum(++(xs,:(x,:(y,ys)))) -> sum(++(xs,sum(:(x,:(y,ys)))))
              sum(:(x,:(y,xs))) -> sum(:(+(x,y),xs))
              sum(:(x,nil())) -> :(x,nil())
            Signature:
              {+/2,++/2,-/2,avg/1,hd/1,length/1,quot/2,sum/1,+#/2,++#/2,-#/2,avg#/1,hd#/1,length#/1,quot#/2,sum#/1} / {0/0,:/2,nil/0,s/1,c_1/0,c_2/1,c_3/1,c_4/0,c_5/0,c_6/0,c_7/1,c_8/3,c_9/0,c_10/1,c_11/0,c_12/0,c_13/2,c_14/2,c_15/1,c_16/0}
            Obligation:
              Innermost
              basic terms: {+#,++#,-#,avg#,hd#,length#,quot#,sum#}/{0,:,nil,s}
          
          Problem (S)
            Strict DP Rules:
              avg#(xs) -> c_8(quot#(hd(sum(xs)),length(xs)),sum#(xs),length#(xs))
              length#(:(x,xs)) -> c_10(length#(xs))
              quot#(s(x),s(y)) -> c_13(quot#(-(x,y),s(y)),-#(x,y))
              sum#(++(xs,:(x,:(y,ys)))) -> c_14(sum#(++(xs,sum(:(x,:(y,ys))))),sum#(:(x,:(y,ys))))
              sum#(:(x,:(y,xs))) -> c_15(sum#(:(+(x,y),xs)))
            Strict TRS Rules:
              
            Weak DP Rules:
              -#(s(x),s(y)) -> c_7(-#(x,y))
            Weak TRS Rules:
              +(0(),y) -> y
              +(s(x),y) -> s(+(x,y))
              ++(:(x,xs),ys) -> :(x,++(xs,ys))
              ++(nil(),ys) -> ys
              -(x,0()) -> x
              -(0(),s(y)) -> 0()
              -(s(x),s(y)) -> -(x,y)
              hd(:(x,xs)) -> x
              length(:(x,xs)) -> s(length(xs))
              length(nil()) -> 0()
              sum(++(xs,:(x,:(y,ys)))) -> sum(++(xs,sum(:(x,:(y,ys)))))
              sum(:(x,:(y,xs))) -> sum(:(+(x,y),xs))
              sum(:(x,nil())) -> :(x,nil())
            Signature:
              {+/2,++/2,-/2,avg/1,hd/1,length/1,quot/2,sum/1,+#/2,++#/2,-#/2,avg#/1,hd#/1,length#/1,quot#/2,sum#/1} / {0/0,:/2,nil/0,s/1,c_1/0,c_2/1,c_3/1,c_4/0,c_5/0,c_6/0,c_7/1,c_8/3,c_9/0,c_10/1,c_11/0,c_12/0,c_13/2,c_14/2,c_15/1,c_16/0}
            Obligation:
              Innermost
              basic terms: {+#,++#,-#,avg#,hd#,length#,quot#,sum#}/{0,:,nil,s}
      *** 1.1.1.1.1.1.2.1.1.2.1.1.1 Progress [(?,O(n^2))]  ***
          Considered Problem:
            Strict DP Rules:
              -#(s(x),s(y)) -> c_7(-#(x,y))
            Strict TRS Rules:
              
            Weak DP Rules:
              avg#(xs) -> c_8(quot#(hd(sum(xs)),length(xs)),sum#(xs),length#(xs))
              length#(:(x,xs)) -> c_10(length#(xs))
              quot#(s(x),s(y)) -> c_13(quot#(-(x,y),s(y)),-#(x,y))
              sum#(++(xs,:(x,:(y,ys)))) -> c_14(sum#(++(xs,sum(:(x,:(y,ys))))),sum#(:(x,:(y,ys))))
              sum#(:(x,:(y,xs))) -> c_15(sum#(:(+(x,y),xs)))
            Weak TRS Rules:
              +(0(),y) -> y
              +(s(x),y) -> s(+(x,y))
              ++(:(x,xs),ys) -> :(x,++(xs,ys))
              ++(nil(),ys) -> ys
              -(x,0()) -> x
              -(0(),s(y)) -> 0()
              -(s(x),s(y)) -> -(x,y)
              hd(:(x,xs)) -> x
              length(:(x,xs)) -> s(length(xs))
              length(nil()) -> 0()
              sum(++(xs,:(x,:(y,ys)))) -> sum(++(xs,sum(:(x,:(y,ys)))))
              sum(:(x,:(y,xs))) -> sum(:(+(x,y),xs))
              sum(:(x,nil())) -> :(x,nil())
            Signature:
              {+/2,++/2,-/2,avg/1,hd/1,length/1,quot/2,sum/1,+#/2,++#/2,-#/2,avg#/1,hd#/1,length#/1,quot#/2,sum#/1} / {0/0,:/2,nil/0,s/1,c_1/0,c_2/1,c_3/1,c_4/0,c_5/0,c_6/0,c_7/1,c_8/3,c_9/0,c_10/1,c_11/0,c_12/0,c_13/2,c_14/2,c_15/1,c_16/0}
            Obligation:
              Innermost
              basic terms: {+#,++#,-#,avg#,hd#,length#,quot#,sum#}/{0,:,nil,s}
          Applied Processor:
            RemoveWeakSuffixes
          Proof:
            Consider the dependency graph
              1:S:-#(s(x),s(y)) -> c_7(-#(x,y))
                 -->_1 -#(s(x),s(y)) -> c_7(-#(x,y)):1
              
              2:W:avg#(xs) -> c_8(quot#(hd(sum(xs)),length(xs)),sum#(xs),length#(xs))
                 -->_3 length#(:(x,xs)) -> c_10(length#(xs)):3
                 -->_2 sum#(:(x,:(y,xs))) -> c_15(sum#(:(+(x,y),xs))):6
                 -->_2 sum#(++(xs,:(x,:(y,ys)))) -> c_14(sum#(++(xs,sum(:(x,:(y,ys))))),sum#(:(x,:(y,ys)))):5
                 -->_1 quot#(s(x),s(y)) -> c_13(quot#(-(x,y),s(y)),-#(x,y)):4
              
              3:W:length#(:(x,xs)) -> c_10(length#(xs))
                 -->_1 length#(:(x,xs)) -> c_10(length#(xs)):3
              
              4:W:quot#(s(x),s(y)) -> c_13(quot#(-(x,y),s(y)),-#(x,y))
                 -->_1 quot#(s(x),s(y)) -> c_13(quot#(-(x,y),s(y)),-#(x,y)):4
                 -->_2 -#(s(x),s(y)) -> c_7(-#(x,y)):1
              
              5:W:sum#(++(xs,:(x,:(y,ys)))) -> c_14(sum#(++(xs,sum(:(x,:(y,ys))))),sum#(:(x,:(y,ys))))
                 -->_2 sum#(:(x,:(y,xs))) -> c_15(sum#(:(+(x,y),xs))):6
                 -->_1 sum#(:(x,:(y,xs))) -> c_15(sum#(:(+(x,y),xs))):6
                 -->_1 sum#(++(xs,:(x,:(y,ys)))) -> c_14(sum#(++(xs,sum(:(x,:(y,ys))))),sum#(:(x,:(y,ys)))):5
              
              6:W:sum#(:(x,:(y,xs))) -> c_15(sum#(:(+(x,y),xs)))
                 -->_1 sum#(:(x,:(y,xs))) -> c_15(sum#(:(+(x,y),xs))):6
              
            The following weak DPs constitute a sub-graph of the DG that is closed under successors. The DPs are removed.
              3: length#(:(x,xs)) ->               
                   c_10(length#(xs))               
              5: sum#(++(xs,:(x,:(y,ys)))) ->      
                   c_14(sum#(++(xs                 
                               ,sum(:(x,:(y,ys)))))
                       ,sum#(:(x,:(y,ys))))        
              6: sum#(:(x,:(y,xs))) ->             
                   c_15(sum#(:(+(x,y),xs)))        
      *** 1.1.1.1.1.1.2.1.1.2.1.1.1.1 Progress [(?,O(n^2))]  ***
          Considered Problem:
            Strict DP Rules:
              -#(s(x),s(y)) -> c_7(-#(x,y))
            Strict TRS Rules:
              
            Weak DP Rules:
              avg#(xs) -> c_8(quot#(hd(sum(xs)),length(xs)),sum#(xs),length#(xs))
              quot#(s(x),s(y)) -> c_13(quot#(-(x,y),s(y)),-#(x,y))
            Weak TRS Rules:
              +(0(),y) -> y
              +(s(x),y) -> s(+(x,y))
              ++(:(x,xs),ys) -> :(x,++(xs,ys))
              ++(nil(),ys) -> ys
              -(x,0()) -> x
              -(0(),s(y)) -> 0()
              -(s(x),s(y)) -> -(x,y)
              hd(:(x,xs)) -> x
              length(:(x,xs)) -> s(length(xs))
              length(nil()) -> 0()
              sum(++(xs,:(x,:(y,ys)))) -> sum(++(xs,sum(:(x,:(y,ys)))))
              sum(:(x,:(y,xs))) -> sum(:(+(x,y),xs))
              sum(:(x,nil())) -> :(x,nil())
            Signature:
              {+/2,++/2,-/2,avg/1,hd/1,length/1,quot/2,sum/1,+#/2,++#/2,-#/2,avg#/1,hd#/1,length#/1,quot#/2,sum#/1} / {0/0,:/2,nil/0,s/1,c_1/0,c_2/1,c_3/1,c_4/0,c_5/0,c_6/0,c_7/1,c_8/3,c_9/0,c_10/1,c_11/0,c_12/0,c_13/2,c_14/2,c_15/1,c_16/0}
            Obligation:
              Innermost
              basic terms: {+#,++#,-#,avg#,hd#,length#,quot#,sum#}/{0,:,nil,s}
          Applied Processor:
            SimplifyRHS
          Proof:
            Consider the dependency graph
              1:S:-#(s(x),s(y)) -> c_7(-#(x,y))
                 -->_1 -#(s(x),s(y)) -> c_7(-#(x,y)):1
              
              2:W:avg#(xs) -> c_8(quot#(hd(sum(xs)),length(xs)),sum#(xs),length#(xs))
                 -->_1 quot#(s(x),s(y)) -> c_13(quot#(-(x,y),s(y)),-#(x,y)):4
              
              4:W:quot#(s(x),s(y)) -> c_13(quot#(-(x,y),s(y)),-#(x,y))
                 -->_1 quot#(s(x),s(y)) -> c_13(quot#(-(x,y),s(y)),-#(x,y)):4
                 -->_2 -#(s(x),s(y)) -> c_7(-#(x,y)):1
              
            Due to missing edges in the depndency graph, the right-hand sides of following rules could be simplified:
              avg#(xs) -> c_8(quot#(hd(sum(xs)),length(xs)))
      *** 1.1.1.1.1.1.2.1.1.2.1.1.1.1.1 Progress [(?,O(n^2))]  ***
          Considered Problem:
            Strict DP Rules:
              -#(s(x),s(y)) -> c_7(-#(x,y))
            Strict TRS Rules:
              
            Weak DP Rules:
              avg#(xs) -> c_8(quot#(hd(sum(xs)),length(xs)))
              quot#(s(x),s(y)) -> c_13(quot#(-(x,y),s(y)),-#(x,y))
            Weak TRS Rules:
              +(0(),y) -> y
              +(s(x),y) -> s(+(x,y))
              ++(:(x,xs),ys) -> :(x,++(xs,ys))
              ++(nil(),ys) -> ys
              -(x,0()) -> x
              -(0(),s(y)) -> 0()
              -(s(x),s(y)) -> -(x,y)
              hd(:(x,xs)) -> x
              length(:(x,xs)) -> s(length(xs))
              length(nil()) -> 0()
              sum(++(xs,:(x,:(y,ys)))) -> sum(++(xs,sum(:(x,:(y,ys)))))
              sum(:(x,:(y,xs))) -> sum(:(+(x,y),xs))
              sum(:(x,nil())) -> :(x,nil())
            Signature:
              {+/2,++/2,-/2,avg/1,hd/1,length/1,quot/2,sum/1,+#/2,++#/2,-#/2,avg#/1,hd#/1,length#/1,quot#/2,sum#/1} / {0/0,:/2,nil/0,s/1,c_1/0,c_2/1,c_3/1,c_4/0,c_5/0,c_6/0,c_7/1,c_8/1,c_9/0,c_10/1,c_11/0,c_12/0,c_13/2,c_14/2,c_15/1,c_16/0}
            Obligation:
              Innermost
              basic terms: {+#,++#,-#,avg#,hd#,length#,quot#,sum#}/{0,:,nil,s}
          Applied Processor:
            PredecessorEstimationCP {onSelectionCP = any intersect of rules of CDG leaf and strict-rules, withComplexityPair = NaturalPI {shape = Mixed 2, restrict = Restrict, uargs = UArgs, urules = URules, selector = Nothing, greedy = NoGreedy}}
          Proof:
            We first use the processor NaturalPI {shape = Mixed 2, restrict = Restrict, uargs = UArgs, urules = URules, selector = Nothing, greedy = NoGreedy} to orient following rules strictly:
              1: -#(s(x),s(y)) -> c_7(-#(x,y))
              
            Consider the set of all dependency pairs
              1: -#(s(x),s(y)) -> c_7(-#(x,y))     
              2: avg#(xs) ->                       
                   c_8(quot#(hd(sum(xs))           
                            ,length(xs)))          
              3: quot#(s(x),s(y)) ->               
                   c_13(quot#(-(x,y),s(y)),-#(x,y))
            Processor NaturalPI {shape = Mixed 2, restrict = Restrict, uargs = UArgs, urules = URules, selector = Nothing, greedy = NoGreedy}induces the complexity certificateTIME (?,O(n^2))
            SPACE(?,?)on application of the dependency pairs
              {1}
            These cover all (indirect) predecessors of dependency pairs
              {1,2}
            their number of applications is equally bounded.
            The dependency pairs are shifted into the weak component.
        *** 1.1.1.1.1.1.2.1.1.2.1.1.1.1.1.1 Progress [(?,O(n^2))]  ***
            Considered Problem:
              Strict DP Rules:
                -#(s(x),s(y)) -> c_7(-#(x,y))
              Strict TRS Rules:
                
              Weak DP Rules:
                avg#(xs) -> c_8(quot#(hd(sum(xs)),length(xs)))
                quot#(s(x),s(y)) -> c_13(quot#(-(x,y),s(y)),-#(x,y))
              Weak TRS Rules:
                +(0(),y) -> y
                +(s(x),y) -> s(+(x,y))
                ++(:(x,xs),ys) -> :(x,++(xs,ys))
                ++(nil(),ys) -> ys
                -(x,0()) -> x
                -(0(),s(y)) -> 0()
                -(s(x),s(y)) -> -(x,y)
                hd(:(x,xs)) -> x
                length(:(x,xs)) -> s(length(xs))
                length(nil()) -> 0()
                sum(++(xs,:(x,:(y,ys)))) -> sum(++(xs,sum(:(x,:(y,ys)))))
                sum(:(x,:(y,xs))) -> sum(:(+(x,y),xs))
                sum(:(x,nil())) -> :(x,nil())
              Signature:
                {+/2,++/2,-/2,avg/1,hd/1,length/1,quot/2,sum/1,+#/2,++#/2,-#/2,avg#/1,hd#/1,length#/1,quot#/2,sum#/1} / {0/0,:/2,nil/0,s/1,c_1/0,c_2/1,c_3/1,c_4/0,c_5/0,c_6/0,c_7/1,c_8/1,c_9/0,c_10/1,c_11/0,c_12/0,c_13/2,c_14/2,c_15/1,c_16/0}
              Obligation:
                Innermost
                basic terms: {+#,++#,-#,avg#,hd#,length#,quot#,sum#}/{0,:,nil,s}
            Applied Processor:
              NaturalPI {shape = Mixed 2, restrict = Restrict, uargs = UArgs, urules = URules, selector = Just first alternative for predecessorEstimation any intersect of rules of CDG leaf and strict-rules, greedy = NoGreedy}
            Proof:
              We apply a polynomial interpretation of kind constructor-based(mixed(2)):
              The following argument positions are considered usable:
                uargs(c_7) = {1},
                uargs(c_8) = {1},
                uargs(c_13) = {1,2}
              
              Following symbols are considered usable:
                {+,++,-,hd,sum,+#,++#,-#,avg#,hd#,length#,quot#,sum#}
              TcT has computed the following interpretation:
                      p(+) = x1 + x2       
                     p(++) = x1 + x1^2 + x2
                      p(-) = x1            
                      p(0) = 0             
                      p(:) = x1 + x2       
                    p(avg) = 0             
                     p(hd) = x1            
                 p(length) = 0             
                    p(nil) = 0             
                   p(quot) = 0             
                      p(s) = 1 + x1        
                    p(sum) = x1            
                     p(+#) = 0             
                    p(++#) = 0             
                     p(-#) = 1 + x1        
                   p(avg#) = x1^2          
                    p(hd#) = 0             
                p(length#) = 0             
                  p(quot#) = x1^2          
                   p(sum#) = 0             
                    p(c_1) = 0             
                    p(c_2) = 0             
                    p(c_3) = 0             
                    p(c_4) = 0             
                    p(c_5) = 0             
                    p(c_6) = 0             
                    p(c_7) = x1            
                    p(c_8) = x1            
                    p(c_9) = 0             
                   p(c_10) = 0             
                   p(c_11) = 0             
                   p(c_12) = 0             
                   p(c_13) = x1 + x2       
                   p(c_14) = 0             
                   p(c_15) = 0             
                   p(c_16) = 0             
              
              Following rules are strictly oriented:
              -#(s(x),s(y)) = 2 + x       
                            > 1 + x       
                            = c_7(-#(x,y))
              
              
              Following rules are (at-least) weakly oriented:
                              avg#(xs) =  xs^2                             
                                       >= xs^2                             
                                       =  c_8(quot#(hd(sum(xs))            
                                                   ,length(xs)))           
              
                      quot#(s(x),s(y)) =  1 + 2*x + x^2                    
                                       >= 1 + x + x^2                      
                                       =  c_13(quot#(-(x,y),s(y)),-#(x,y)) 
              
                              +(0(),y) =  y                                
                                       >= y                                
                                       =  y                                
              
                             +(s(x),y) =  1 + x + y                        
                                       >= 1 + x + y                        
                                       =  s(+(x,y))                        
              
                        ++(:(x,xs),ys) =  x + 2*x*xs + x^2 + xs + xs^2 + ys
                                       >= x + xs + xs^2 + ys               
                                       =  :(x,++(xs,ys))                   
              
                          ++(nil(),ys) =  ys                               
                                       >= ys                               
                                       =  ys                               
              
                              -(x,0()) =  x                                
                                       >= x                                
                                       =  x                                
              
                           -(0(),s(y)) =  0                                
                                       >= 0                                
                                       =  0()                              
              
                          -(s(x),s(y)) =  1 + x                            
                                       >= x                                
                                       =  -(x,y)                           
              
                           hd(:(x,xs)) =  x + xs                           
                                       >= x                                
                                       =  x                                
              
              sum(++(xs,:(x,:(y,ys)))) =  x + xs + xs^2 + y + ys           
                                       >= x + xs + xs^2 + y + ys           
                                       =  sum(++(xs,sum(:(x,:(y,ys)))))    
              
                     sum(:(x,:(y,xs))) =  x + xs + y                       
                                       >= x + xs + y                       
                                       =  sum(:(+(x,y),xs))                
              
                       sum(:(x,nil())) =  x                                
                                       >= x                                
                                       =  :(x,nil())                       
              
        *** 1.1.1.1.1.1.2.1.1.2.1.1.1.1.1.1.1 Progress [(?,O(1))]  ***
            Considered Problem:
              Strict DP Rules:
                
              Strict TRS Rules:
                
              Weak DP Rules:
                -#(s(x),s(y)) -> c_7(-#(x,y))
                avg#(xs) -> c_8(quot#(hd(sum(xs)),length(xs)))
                quot#(s(x),s(y)) -> c_13(quot#(-(x,y),s(y)),-#(x,y))
              Weak TRS Rules:
                +(0(),y) -> y
                +(s(x),y) -> s(+(x,y))
                ++(:(x,xs),ys) -> :(x,++(xs,ys))
                ++(nil(),ys) -> ys
                -(x,0()) -> x
                -(0(),s(y)) -> 0()
                -(s(x),s(y)) -> -(x,y)
                hd(:(x,xs)) -> x
                length(:(x,xs)) -> s(length(xs))
                length(nil()) -> 0()
                sum(++(xs,:(x,:(y,ys)))) -> sum(++(xs,sum(:(x,:(y,ys)))))
                sum(:(x,:(y,xs))) -> sum(:(+(x,y),xs))
                sum(:(x,nil())) -> :(x,nil())
              Signature:
                {+/2,++/2,-/2,avg/1,hd/1,length/1,quot/2,sum/1,+#/2,++#/2,-#/2,avg#/1,hd#/1,length#/1,quot#/2,sum#/1} / {0/0,:/2,nil/0,s/1,c_1/0,c_2/1,c_3/1,c_4/0,c_5/0,c_6/0,c_7/1,c_8/1,c_9/0,c_10/1,c_11/0,c_12/0,c_13/2,c_14/2,c_15/1,c_16/0}
              Obligation:
                Innermost
                basic terms: {+#,++#,-#,avg#,hd#,length#,quot#,sum#}/{0,:,nil,s}
            Applied Processor:
              Assumption
            Proof:
              ()
        
        *** 1.1.1.1.1.1.2.1.1.2.1.1.1.1.1.2 Progress [(O(1),O(1))]  ***
            Considered Problem:
              Strict DP Rules:
                
              Strict TRS Rules:
                
              Weak DP Rules:
                -#(s(x),s(y)) -> c_7(-#(x,y))
                avg#(xs) -> c_8(quot#(hd(sum(xs)),length(xs)))
                quot#(s(x),s(y)) -> c_13(quot#(-(x,y),s(y)),-#(x,y))
              Weak TRS Rules:
                +(0(),y) -> y
                +(s(x),y) -> s(+(x,y))
                ++(:(x,xs),ys) -> :(x,++(xs,ys))
                ++(nil(),ys) -> ys
                -(x,0()) -> x
                -(0(),s(y)) -> 0()
                -(s(x),s(y)) -> -(x,y)
                hd(:(x,xs)) -> x
                length(:(x,xs)) -> s(length(xs))
                length(nil()) -> 0()
                sum(++(xs,:(x,:(y,ys)))) -> sum(++(xs,sum(:(x,:(y,ys)))))
                sum(:(x,:(y,xs))) -> sum(:(+(x,y),xs))
                sum(:(x,nil())) -> :(x,nil())
              Signature:
                {+/2,++/2,-/2,avg/1,hd/1,length/1,quot/2,sum/1,+#/2,++#/2,-#/2,avg#/1,hd#/1,length#/1,quot#/2,sum#/1} / {0/0,:/2,nil/0,s/1,c_1/0,c_2/1,c_3/1,c_4/0,c_5/0,c_6/0,c_7/1,c_8/1,c_9/0,c_10/1,c_11/0,c_12/0,c_13/2,c_14/2,c_15/1,c_16/0}
              Obligation:
                Innermost
                basic terms: {+#,++#,-#,avg#,hd#,length#,quot#,sum#}/{0,:,nil,s}
            Applied Processor:
              RemoveWeakSuffixes
            Proof:
              Consider the dependency graph
                1:W:-#(s(x),s(y)) -> c_7(-#(x,y))
                   -->_1 -#(s(x),s(y)) -> c_7(-#(x,y)):1
                
                2:W:avg#(xs) -> c_8(quot#(hd(sum(xs)),length(xs)))
                   -->_1 quot#(s(x),s(y)) -> c_13(quot#(-(x,y),s(y)),-#(x,y)):3
                
                3:W:quot#(s(x),s(y)) -> c_13(quot#(-(x,y),s(y)),-#(x,y))
                   -->_1 quot#(s(x),s(y)) -> c_13(quot#(-(x,y),s(y)),-#(x,y)):3
                   -->_2 -#(s(x),s(y)) -> c_7(-#(x,y)):1
                
              The following weak DPs constitute a sub-graph of the DG that is closed under successors. The DPs are removed.
                2: avg#(xs) ->                       
                     c_8(quot#(hd(sum(xs))           
                              ,length(xs)))          
                3: quot#(s(x),s(y)) ->               
                     c_13(quot#(-(x,y),s(y)),-#(x,y))
                1: -#(s(x),s(y)) -> c_7(-#(x,y))     
        *** 1.1.1.1.1.1.2.1.1.2.1.1.1.1.1.2.1 Progress [(O(1),O(1))]  ***
            Considered Problem:
              Strict DP Rules:
                
              Strict TRS Rules:
                
              Weak DP Rules:
                
              Weak TRS Rules:
                +(0(),y) -> y
                +(s(x),y) -> s(+(x,y))
                ++(:(x,xs),ys) -> :(x,++(xs,ys))
                ++(nil(),ys) -> ys
                -(x,0()) -> x
                -(0(),s(y)) -> 0()
                -(s(x),s(y)) -> -(x,y)
                hd(:(x,xs)) -> x
                length(:(x,xs)) -> s(length(xs))
                length(nil()) -> 0()
                sum(++(xs,:(x,:(y,ys)))) -> sum(++(xs,sum(:(x,:(y,ys)))))
                sum(:(x,:(y,xs))) -> sum(:(+(x,y),xs))
                sum(:(x,nil())) -> :(x,nil())
              Signature:
                {+/2,++/2,-/2,avg/1,hd/1,length/1,quot/2,sum/1,+#/2,++#/2,-#/2,avg#/1,hd#/1,length#/1,quot#/2,sum#/1} / {0/0,:/2,nil/0,s/1,c_1/0,c_2/1,c_3/1,c_4/0,c_5/0,c_6/0,c_7/1,c_8/1,c_9/0,c_10/1,c_11/0,c_12/0,c_13/2,c_14/2,c_15/1,c_16/0}
              Obligation:
                Innermost
                basic terms: {+#,++#,-#,avg#,hd#,length#,quot#,sum#}/{0,:,nil,s}
            Applied Processor:
              EmptyProcessor
            Proof:
              The problem is already closed. The intended complexity is O(1).
        
      *** 1.1.1.1.1.1.2.1.1.2.1.1.2 Progress [(?,O(n^1))]  ***
          Considered Problem:
            Strict DP Rules:
              avg#(xs) -> c_8(quot#(hd(sum(xs)),length(xs)),sum#(xs),length#(xs))
              length#(:(x,xs)) -> c_10(length#(xs))
              quot#(s(x),s(y)) -> c_13(quot#(-(x,y),s(y)),-#(x,y))
              sum#(++(xs,:(x,:(y,ys)))) -> c_14(sum#(++(xs,sum(:(x,:(y,ys))))),sum#(:(x,:(y,ys))))
              sum#(:(x,:(y,xs))) -> c_15(sum#(:(+(x,y),xs)))
            Strict TRS Rules:
              
            Weak DP Rules:
              -#(s(x),s(y)) -> c_7(-#(x,y))
            Weak TRS Rules:
              +(0(),y) -> y
              +(s(x),y) -> s(+(x,y))
              ++(:(x,xs),ys) -> :(x,++(xs,ys))
              ++(nil(),ys) -> ys
              -(x,0()) -> x
              -(0(),s(y)) -> 0()
              -(s(x),s(y)) -> -(x,y)
              hd(:(x,xs)) -> x
              length(:(x,xs)) -> s(length(xs))
              length(nil()) -> 0()
              sum(++(xs,:(x,:(y,ys)))) -> sum(++(xs,sum(:(x,:(y,ys)))))
              sum(:(x,:(y,xs))) -> sum(:(+(x,y),xs))
              sum(:(x,nil())) -> :(x,nil())
            Signature:
              {+/2,++/2,-/2,avg/1,hd/1,length/1,quot/2,sum/1,+#/2,++#/2,-#/2,avg#/1,hd#/1,length#/1,quot#/2,sum#/1} / {0/0,:/2,nil/0,s/1,c_1/0,c_2/1,c_3/1,c_4/0,c_5/0,c_6/0,c_7/1,c_8/3,c_9/0,c_10/1,c_11/0,c_12/0,c_13/2,c_14/2,c_15/1,c_16/0}
            Obligation:
              Innermost
              basic terms: {+#,++#,-#,avg#,hd#,length#,quot#,sum#}/{0,:,nil,s}
          Applied Processor:
            RemoveWeakSuffixes
          Proof:
            Consider the dependency graph
              1:S:avg#(xs) -> c_8(quot#(hd(sum(xs)),length(xs)),sum#(xs),length#(xs))
                 -->_2 sum#(:(x,:(y,xs))) -> c_15(sum#(:(+(x,y),xs))):5
                 -->_2 sum#(++(xs,:(x,:(y,ys)))) -> c_14(sum#(++(xs,sum(:(x,:(y,ys))))),sum#(:(x,:(y,ys)))):4
                 -->_1 quot#(s(x),s(y)) -> c_13(quot#(-(x,y),s(y)),-#(x,y)):3
                 -->_3 length#(:(x,xs)) -> c_10(length#(xs)):2
              
              2:S:length#(:(x,xs)) -> c_10(length#(xs))
                 -->_1 length#(:(x,xs)) -> c_10(length#(xs)):2
              
              3:S:quot#(s(x),s(y)) -> c_13(quot#(-(x,y),s(y)),-#(x,y))
                 -->_2 -#(s(x),s(y)) -> c_7(-#(x,y)):6
                 -->_1 quot#(s(x),s(y)) -> c_13(quot#(-(x,y),s(y)),-#(x,y)):3
              
              4:S:sum#(++(xs,:(x,:(y,ys)))) -> c_14(sum#(++(xs,sum(:(x,:(y,ys))))),sum#(:(x,:(y,ys))))
                 -->_2 sum#(:(x,:(y,xs))) -> c_15(sum#(:(+(x,y),xs))):5
                 -->_1 sum#(:(x,:(y,xs))) -> c_15(sum#(:(+(x,y),xs))):5
                 -->_1 sum#(++(xs,:(x,:(y,ys)))) -> c_14(sum#(++(xs,sum(:(x,:(y,ys))))),sum#(:(x,:(y,ys)))):4
              
              5:S:sum#(:(x,:(y,xs))) -> c_15(sum#(:(+(x,y),xs)))
                 -->_1 sum#(:(x,:(y,xs))) -> c_15(sum#(:(+(x,y),xs))):5
              
              6:W:-#(s(x),s(y)) -> c_7(-#(x,y))
                 -->_1 -#(s(x),s(y)) -> c_7(-#(x,y)):6
              
            The following weak DPs constitute a sub-graph of the DG that is closed under successors. The DPs are removed.
              6: -#(s(x),s(y)) -> c_7(-#(x,y))
      *** 1.1.1.1.1.1.2.1.1.2.1.1.2.1 Progress [(?,O(n^1))]  ***
          Considered Problem:
            Strict DP Rules:
              avg#(xs) -> c_8(quot#(hd(sum(xs)),length(xs)),sum#(xs),length#(xs))
              length#(:(x,xs)) -> c_10(length#(xs))
              quot#(s(x),s(y)) -> c_13(quot#(-(x,y),s(y)),-#(x,y))
              sum#(++(xs,:(x,:(y,ys)))) -> c_14(sum#(++(xs,sum(:(x,:(y,ys))))),sum#(:(x,:(y,ys))))
              sum#(:(x,:(y,xs))) -> c_15(sum#(:(+(x,y),xs)))
            Strict TRS Rules:
              
            Weak DP Rules:
              
            Weak TRS Rules:
              +(0(),y) -> y
              +(s(x),y) -> s(+(x,y))
              ++(:(x,xs),ys) -> :(x,++(xs,ys))
              ++(nil(),ys) -> ys
              -(x,0()) -> x
              -(0(),s(y)) -> 0()
              -(s(x),s(y)) -> -(x,y)
              hd(:(x,xs)) -> x
              length(:(x,xs)) -> s(length(xs))
              length(nil()) -> 0()
              sum(++(xs,:(x,:(y,ys)))) -> sum(++(xs,sum(:(x,:(y,ys)))))
              sum(:(x,:(y,xs))) -> sum(:(+(x,y),xs))
              sum(:(x,nil())) -> :(x,nil())
            Signature:
              {+/2,++/2,-/2,avg/1,hd/1,length/1,quot/2,sum/1,+#/2,++#/2,-#/2,avg#/1,hd#/1,length#/1,quot#/2,sum#/1} / {0/0,:/2,nil/0,s/1,c_1/0,c_2/1,c_3/1,c_4/0,c_5/0,c_6/0,c_7/1,c_8/3,c_9/0,c_10/1,c_11/0,c_12/0,c_13/2,c_14/2,c_15/1,c_16/0}
            Obligation:
              Innermost
              basic terms: {+#,++#,-#,avg#,hd#,length#,quot#,sum#}/{0,:,nil,s}
          Applied Processor:
            SimplifyRHS
          Proof:
            Consider the dependency graph
              1:S:avg#(xs) -> c_8(quot#(hd(sum(xs)),length(xs)),sum#(xs),length#(xs))
                 -->_2 sum#(:(x,:(y,xs))) -> c_15(sum#(:(+(x,y),xs))):5
                 -->_2 sum#(++(xs,:(x,:(y,ys)))) -> c_14(sum#(++(xs,sum(:(x,:(y,ys))))),sum#(:(x,:(y,ys)))):4
                 -->_1 quot#(s(x),s(y)) -> c_13(quot#(-(x,y),s(y)),-#(x,y)):3
                 -->_3 length#(:(x,xs)) -> c_10(length#(xs)):2
              
              2:S:length#(:(x,xs)) -> c_10(length#(xs))
                 -->_1 length#(:(x,xs)) -> c_10(length#(xs)):2
              
              3:S:quot#(s(x),s(y)) -> c_13(quot#(-(x,y),s(y)),-#(x,y))
                 -->_1 quot#(s(x),s(y)) -> c_13(quot#(-(x,y),s(y)),-#(x,y)):3
              
              4:S:sum#(++(xs,:(x,:(y,ys)))) -> c_14(sum#(++(xs,sum(:(x,:(y,ys))))),sum#(:(x,:(y,ys))))
                 -->_2 sum#(:(x,:(y,xs))) -> c_15(sum#(:(+(x,y),xs))):5
                 -->_1 sum#(:(x,:(y,xs))) -> c_15(sum#(:(+(x,y),xs))):5
                 -->_1 sum#(++(xs,:(x,:(y,ys)))) -> c_14(sum#(++(xs,sum(:(x,:(y,ys))))),sum#(:(x,:(y,ys)))):4
              
              5:S:sum#(:(x,:(y,xs))) -> c_15(sum#(:(+(x,y),xs)))
                 -->_1 sum#(:(x,:(y,xs))) -> c_15(sum#(:(+(x,y),xs))):5
              
            Due to missing edges in the depndency graph, the right-hand sides of following rules could be simplified:
              quot#(s(x),s(y)) -> c_13(quot#(-(x,y),s(y)))
      *** 1.1.1.1.1.1.2.1.1.2.1.1.2.1.1 Progress [(?,O(n^1))]  ***
          Considered Problem:
            Strict DP Rules:
              avg#(xs) -> c_8(quot#(hd(sum(xs)),length(xs)),sum#(xs),length#(xs))
              length#(:(x,xs)) -> c_10(length#(xs))
              quot#(s(x),s(y)) -> c_13(quot#(-(x,y),s(y)))
              sum#(++(xs,:(x,:(y,ys)))) -> c_14(sum#(++(xs,sum(:(x,:(y,ys))))),sum#(:(x,:(y,ys))))
              sum#(:(x,:(y,xs))) -> c_15(sum#(:(+(x,y),xs)))
            Strict TRS Rules:
              
            Weak DP Rules:
              
            Weak TRS Rules:
              +(0(),y) -> y
              +(s(x),y) -> s(+(x,y))
              ++(:(x,xs),ys) -> :(x,++(xs,ys))
              ++(nil(),ys) -> ys
              -(x,0()) -> x
              -(0(),s(y)) -> 0()
              -(s(x),s(y)) -> -(x,y)
              hd(:(x,xs)) -> x
              length(:(x,xs)) -> s(length(xs))
              length(nil()) -> 0()
              sum(++(xs,:(x,:(y,ys)))) -> sum(++(xs,sum(:(x,:(y,ys)))))
              sum(:(x,:(y,xs))) -> sum(:(+(x,y),xs))
              sum(:(x,nil())) -> :(x,nil())
            Signature:
              {+/2,++/2,-/2,avg/1,hd/1,length/1,quot/2,sum/1,+#/2,++#/2,-#/2,avg#/1,hd#/1,length#/1,quot#/2,sum#/1} / {0/0,:/2,nil/0,s/1,c_1/0,c_2/1,c_3/1,c_4/0,c_5/0,c_6/0,c_7/1,c_8/3,c_9/0,c_10/1,c_11/0,c_12/0,c_13/1,c_14/2,c_15/1,c_16/0}
            Obligation:
              Innermost
              basic terms: {+#,++#,-#,avg#,hd#,length#,quot#,sum#}/{0,:,nil,s}
          Applied Processor:
            Decompose {onSelection = all cycle independent sub-graph, withBound = RelativeAdd}
          Proof:
            We analyse the complexity of following sub-problems (R) and (S).
            Problem (S) is obtained from the input problem by shifting strict rules from (R) into the weak component.
            
            Problem (R)
              Strict DP Rules:
                avg#(xs) -> c_8(quot#(hd(sum(xs)),length(xs)),sum#(xs),length#(xs))
                sum#(:(x,:(y,xs))) -> c_15(sum#(:(+(x,y),xs)))
              Strict TRS Rules:
                
              Weak DP Rules:
                length#(:(x,xs)) -> c_10(length#(xs))
                quot#(s(x),s(y)) -> c_13(quot#(-(x,y),s(y)))
                sum#(++(xs,:(x,:(y,ys)))) -> c_14(sum#(++(xs,sum(:(x,:(y,ys))))),sum#(:(x,:(y,ys))))
              Weak TRS Rules:
                +(0(),y) -> y
                +(s(x),y) -> s(+(x,y))
                ++(:(x,xs),ys) -> :(x,++(xs,ys))
                ++(nil(),ys) -> ys
                -(x,0()) -> x
                -(0(),s(y)) -> 0()
                -(s(x),s(y)) -> -(x,y)
                hd(:(x,xs)) -> x
                length(:(x,xs)) -> s(length(xs))
                length(nil()) -> 0()
                sum(++(xs,:(x,:(y,ys)))) -> sum(++(xs,sum(:(x,:(y,ys)))))
                sum(:(x,:(y,xs))) -> sum(:(+(x,y),xs))
                sum(:(x,nil())) -> :(x,nil())
              Signature:
                {+/2,++/2,-/2,avg/1,hd/1,length/1,quot/2,sum/1,+#/2,++#/2,-#/2,avg#/1,hd#/1,length#/1,quot#/2,sum#/1} / {0/0,:/2,nil/0,s/1,c_1/0,c_2/1,c_3/1,c_4/0,c_5/0,c_6/0,c_7/1,c_8/3,c_9/0,c_10/1,c_11/0,c_12/0,c_13/1,c_14/2,c_15/1,c_16/0}
              Obligation:
                Innermost
                basic terms: {+#,++#,-#,avg#,hd#,length#,quot#,sum#}/{0,:,nil,s}
            
            Problem (S)
              Strict DP Rules:
                length#(:(x,xs)) -> c_10(length#(xs))
                quot#(s(x),s(y)) -> c_13(quot#(-(x,y),s(y)))
                sum#(++(xs,:(x,:(y,ys)))) -> c_14(sum#(++(xs,sum(:(x,:(y,ys))))),sum#(:(x,:(y,ys))))
              Strict TRS Rules:
                
              Weak DP Rules:
                avg#(xs) -> c_8(quot#(hd(sum(xs)),length(xs)),sum#(xs),length#(xs))
                sum#(:(x,:(y,xs))) -> c_15(sum#(:(+(x,y),xs)))
              Weak TRS Rules:
                +(0(),y) -> y
                +(s(x),y) -> s(+(x,y))
                ++(:(x,xs),ys) -> :(x,++(xs,ys))
                ++(nil(),ys) -> ys
                -(x,0()) -> x
                -(0(),s(y)) -> 0()
                -(s(x),s(y)) -> -(x,y)
                hd(:(x,xs)) -> x
                length(:(x,xs)) -> s(length(xs))
                length(nil()) -> 0()
                sum(++(xs,:(x,:(y,ys)))) -> sum(++(xs,sum(:(x,:(y,ys)))))
                sum(:(x,:(y,xs))) -> sum(:(+(x,y),xs))
                sum(:(x,nil())) -> :(x,nil())
              Signature:
                {+/2,++/2,-/2,avg/1,hd/1,length/1,quot/2,sum/1,+#/2,++#/2,-#/2,avg#/1,hd#/1,length#/1,quot#/2,sum#/1} / {0/0,:/2,nil/0,s/1,c_1/0,c_2/1,c_3/1,c_4/0,c_5/0,c_6/0,c_7/1,c_8/3,c_9/0,c_10/1,c_11/0,c_12/0,c_13/1,c_14/2,c_15/1,c_16/0}
              Obligation:
                Innermost
                basic terms: {+#,++#,-#,avg#,hd#,length#,quot#,sum#}/{0,:,nil,s}
        *** 1.1.1.1.1.1.2.1.1.2.1.1.2.1.1.1 Progress [(?,O(n^1))]  ***
            Considered Problem:
              Strict DP Rules:
                avg#(xs) -> c_8(quot#(hd(sum(xs)),length(xs)),sum#(xs),length#(xs))
                sum#(:(x,:(y,xs))) -> c_15(sum#(:(+(x,y),xs)))
              Strict TRS Rules:
                
              Weak DP Rules:
                length#(:(x,xs)) -> c_10(length#(xs))
                quot#(s(x),s(y)) -> c_13(quot#(-(x,y),s(y)))
                sum#(++(xs,:(x,:(y,ys)))) -> c_14(sum#(++(xs,sum(:(x,:(y,ys))))),sum#(:(x,:(y,ys))))
              Weak TRS Rules:
                +(0(),y) -> y
                +(s(x),y) -> s(+(x,y))
                ++(:(x,xs),ys) -> :(x,++(xs,ys))
                ++(nil(),ys) -> ys
                -(x,0()) -> x
                -(0(),s(y)) -> 0()
                -(s(x),s(y)) -> -(x,y)
                hd(:(x,xs)) -> x
                length(:(x,xs)) -> s(length(xs))
                length(nil()) -> 0()
                sum(++(xs,:(x,:(y,ys)))) -> sum(++(xs,sum(:(x,:(y,ys)))))
                sum(:(x,:(y,xs))) -> sum(:(+(x,y),xs))
                sum(:(x,nil())) -> :(x,nil())
              Signature:
                {+/2,++/2,-/2,avg/1,hd/1,length/1,quot/2,sum/1,+#/2,++#/2,-#/2,avg#/1,hd#/1,length#/1,quot#/2,sum#/1} / {0/0,:/2,nil/0,s/1,c_1/0,c_2/1,c_3/1,c_4/0,c_5/0,c_6/0,c_7/1,c_8/3,c_9/0,c_10/1,c_11/0,c_12/0,c_13/1,c_14/2,c_15/1,c_16/0}
              Obligation:
                Innermost
                basic terms: {+#,++#,-#,avg#,hd#,length#,quot#,sum#}/{0,:,nil,s}
            Applied Processor:
              RemoveWeakSuffixes
            Proof:
              Consider the dependency graph
                1:S:avg#(xs) -> c_8(quot#(hd(sum(xs)),length(xs)),sum#(xs),length#(xs))
                   -->_1 quot#(s(x),s(y)) -> c_13(quot#(-(x,y),s(y))):3
                   -->_3 length#(:(x,xs)) -> c_10(length#(xs)):2
                   -->_2 sum#(++(xs,:(x,:(y,ys)))) -> c_14(sum#(++(xs,sum(:(x,:(y,ys))))),sum#(:(x,:(y,ys)))):4
                   -->_2 sum#(:(x,:(y,xs))) -> c_15(sum#(:(+(x,y),xs))):5
                
                2:W:length#(:(x,xs)) -> c_10(length#(xs))
                   -->_1 length#(:(x,xs)) -> c_10(length#(xs)):2
                
                3:W:quot#(s(x),s(y)) -> c_13(quot#(-(x,y),s(y)))
                   -->_1 quot#(s(x),s(y)) -> c_13(quot#(-(x,y),s(y))):3
                
                4:W:sum#(++(xs,:(x,:(y,ys)))) -> c_14(sum#(++(xs,sum(:(x,:(y,ys))))),sum#(:(x,:(y,ys))))
                   -->_2 sum#(:(x,:(y,xs))) -> c_15(sum#(:(+(x,y),xs))):5
                   -->_1 sum#(:(x,:(y,xs))) -> c_15(sum#(:(+(x,y),xs))):5
                   -->_1 sum#(++(xs,:(x,:(y,ys)))) -> c_14(sum#(++(xs,sum(:(x,:(y,ys))))),sum#(:(x,:(y,ys)))):4
                
                5:S:sum#(:(x,:(y,xs))) -> c_15(sum#(:(+(x,y),xs)))
                   -->_1 sum#(:(x,:(y,xs))) -> c_15(sum#(:(+(x,y),xs))):5
                
              The following weak DPs constitute a sub-graph of the DG that is closed under successors. The DPs are removed.
                2: length#(:(x,xs)) ->       
                     c_10(length#(xs))       
                3: quot#(s(x),s(y)) ->       
                     c_13(quot#(-(x,y),s(y)))
        *** 1.1.1.1.1.1.2.1.1.2.1.1.2.1.1.1.1 Progress [(?,O(n^1))]  ***
            Considered Problem:
              Strict DP Rules:
                avg#(xs) -> c_8(quot#(hd(sum(xs)),length(xs)),sum#(xs),length#(xs))
                sum#(:(x,:(y,xs))) -> c_15(sum#(:(+(x,y),xs)))
              Strict TRS Rules:
                
              Weak DP Rules:
                sum#(++(xs,:(x,:(y,ys)))) -> c_14(sum#(++(xs,sum(:(x,:(y,ys))))),sum#(:(x,:(y,ys))))
              Weak TRS Rules:
                +(0(),y) -> y
                +(s(x),y) -> s(+(x,y))
                ++(:(x,xs),ys) -> :(x,++(xs,ys))
                ++(nil(),ys) -> ys
                -(x,0()) -> x
                -(0(),s(y)) -> 0()
                -(s(x),s(y)) -> -(x,y)
                hd(:(x,xs)) -> x
                length(:(x,xs)) -> s(length(xs))
                length(nil()) -> 0()
                sum(++(xs,:(x,:(y,ys)))) -> sum(++(xs,sum(:(x,:(y,ys)))))
                sum(:(x,:(y,xs))) -> sum(:(+(x,y),xs))
                sum(:(x,nil())) -> :(x,nil())
              Signature:
                {+/2,++/2,-/2,avg/1,hd/1,length/1,quot/2,sum/1,+#/2,++#/2,-#/2,avg#/1,hd#/1,length#/1,quot#/2,sum#/1} / {0/0,:/2,nil/0,s/1,c_1/0,c_2/1,c_3/1,c_4/0,c_5/0,c_6/0,c_7/1,c_8/3,c_9/0,c_10/1,c_11/0,c_12/0,c_13/1,c_14/2,c_15/1,c_16/0}
              Obligation:
                Innermost
                basic terms: {+#,++#,-#,avg#,hd#,length#,quot#,sum#}/{0,:,nil,s}
            Applied Processor:
              SimplifyRHS
            Proof:
              Consider the dependency graph
                1:S:avg#(xs) -> c_8(quot#(hd(sum(xs)),length(xs)),sum#(xs),length#(xs))
                   -->_2 sum#(++(xs,:(x,:(y,ys)))) -> c_14(sum#(++(xs,sum(:(x,:(y,ys))))),sum#(:(x,:(y,ys)))):4
                   -->_2 sum#(:(x,:(y,xs))) -> c_15(sum#(:(+(x,y),xs))):5
                
                4:W:sum#(++(xs,:(x,:(y,ys)))) -> c_14(sum#(++(xs,sum(:(x,:(y,ys))))),sum#(:(x,:(y,ys))))
                   -->_2 sum#(:(x,:(y,xs))) -> c_15(sum#(:(+(x,y),xs))):5
                   -->_1 sum#(:(x,:(y,xs))) -> c_15(sum#(:(+(x,y),xs))):5
                   -->_1 sum#(++(xs,:(x,:(y,ys)))) -> c_14(sum#(++(xs,sum(:(x,:(y,ys))))),sum#(:(x,:(y,ys)))):4
                
                5:S:sum#(:(x,:(y,xs))) -> c_15(sum#(:(+(x,y),xs)))
                   -->_1 sum#(:(x,:(y,xs))) -> c_15(sum#(:(+(x,y),xs))):5
                
              Due to missing edges in the depndency graph, the right-hand sides of following rules could be simplified:
                avg#(xs) -> c_8(sum#(xs))
        *** 1.1.1.1.1.1.2.1.1.2.1.1.2.1.1.1.1.1 Progress [(?,O(n^1))]  ***
            Considered Problem:
              Strict DP Rules:
                avg#(xs) -> c_8(sum#(xs))
                sum#(:(x,:(y,xs))) -> c_15(sum#(:(+(x,y),xs)))
              Strict TRS Rules:
                
              Weak DP Rules:
                sum#(++(xs,:(x,:(y,ys)))) -> c_14(sum#(++(xs,sum(:(x,:(y,ys))))),sum#(:(x,:(y,ys))))
              Weak TRS Rules:
                +(0(),y) -> y
                +(s(x),y) -> s(+(x,y))
                ++(:(x,xs),ys) -> :(x,++(xs,ys))
                ++(nil(),ys) -> ys
                -(x,0()) -> x
                -(0(),s(y)) -> 0()
                -(s(x),s(y)) -> -(x,y)
                hd(:(x,xs)) -> x
                length(:(x,xs)) -> s(length(xs))
                length(nil()) -> 0()
                sum(++(xs,:(x,:(y,ys)))) -> sum(++(xs,sum(:(x,:(y,ys)))))
                sum(:(x,:(y,xs))) -> sum(:(+(x,y),xs))
                sum(:(x,nil())) -> :(x,nil())
              Signature:
                {+/2,++/2,-/2,avg/1,hd/1,length/1,quot/2,sum/1,+#/2,++#/2,-#/2,avg#/1,hd#/1,length#/1,quot#/2,sum#/1} / {0/0,:/2,nil/0,s/1,c_1/0,c_2/1,c_3/1,c_4/0,c_5/0,c_6/0,c_7/1,c_8/1,c_9/0,c_10/1,c_11/0,c_12/0,c_13/1,c_14/2,c_15/1,c_16/0}
              Obligation:
                Innermost
                basic terms: {+#,++#,-#,avg#,hd#,length#,quot#,sum#}/{0,:,nil,s}
            Applied Processor:
              UsableRules
            Proof:
              We replace rewrite rules by usable rules:
                +(0(),y) -> y
                +(s(x),y) -> s(+(x,y))
                ++(:(x,xs),ys) -> :(x,++(xs,ys))
                ++(nil(),ys) -> ys
                sum(:(x,:(y,xs))) -> sum(:(+(x,y),xs))
                sum(:(x,nil())) -> :(x,nil())
                avg#(xs) -> c_8(sum#(xs))
                sum#(++(xs,:(x,:(y,ys)))) -> c_14(sum#(++(xs,sum(:(x,:(y,ys))))),sum#(:(x,:(y,ys))))
                sum#(:(x,:(y,xs))) -> c_15(sum#(:(+(x,y),xs)))
        *** 1.1.1.1.1.1.2.1.1.2.1.1.2.1.1.1.1.1.1 Progress [(?,O(n^1))]  ***
            Considered Problem:
              Strict DP Rules:
                avg#(xs) -> c_8(sum#(xs))
                sum#(:(x,:(y,xs))) -> c_15(sum#(:(+(x,y),xs)))
              Strict TRS Rules:
                
              Weak DP Rules:
                sum#(++(xs,:(x,:(y,ys)))) -> c_14(sum#(++(xs,sum(:(x,:(y,ys))))),sum#(:(x,:(y,ys))))
              Weak TRS Rules:
                +(0(),y) -> y
                +(s(x),y) -> s(+(x,y))
                ++(:(x,xs),ys) -> :(x,++(xs,ys))
                ++(nil(),ys) -> ys
                sum(:(x,:(y,xs))) -> sum(:(+(x,y),xs))
                sum(:(x,nil())) -> :(x,nil())
              Signature:
                {+/2,++/2,-/2,avg/1,hd/1,length/1,quot/2,sum/1,+#/2,++#/2,-#/2,avg#/1,hd#/1,length#/1,quot#/2,sum#/1} / {0/0,:/2,nil/0,s/1,c_1/0,c_2/1,c_3/1,c_4/0,c_5/0,c_6/0,c_7/1,c_8/1,c_9/0,c_10/1,c_11/0,c_12/0,c_13/1,c_14/2,c_15/1,c_16/0}
              Obligation:
                Innermost
                basic terms: {+#,++#,-#,avg#,hd#,length#,quot#,sum#}/{0,:,nil,s}
            Applied Processor:
              PredecessorEstimationCP {onSelectionCP = any intersect of rules of CDG leaf and strict-rules, withComplexityPair = NaturalMI {miDimension = 1, miDegree = 1, miKind = Algebraic, uargs = UArgs, urules = URules, selector = Nothing, greedy = NoGreedy}}
            Proof:
              We first use the processor NaturalMI {miDimension = 1, miDegree = 1, miKind = Algebraic, uargs = UArgs, urules = URules, selector = Nothing, greedy = NoGreedy} to orient following rules strictly:
                1: avg#(xs) -> c_8(sum#(xs)) 
                2: sum#(:(x,:(y,xs))) ->     
                     c_15(sum#(:(+(x,y),xs)))
                
              The strictly oriented rules are moved into the weak component.
          *** 1.1.1.1.1.1.2.1.1.2.1.1.2.1.1.1.1.1.1.1 Progress [(?,O(n^1))]  ***
              Considered Problem:
                Strict DP Rules:
                  avg#(xs) -> c_8(sum#(xs))
                  sum#(:(x,:(y,xs))) -> c_15(sum#(:(+(x,y),xs)))
                Strict TRS Rules:
                  
                Weak DP Rules:
                  sum#(++(xs,:(x,:(y,ys)))) -> c_14(sum#(++(xs,sum(:(x,:(y,ys))))),sum#(:(x,:(y,ys))))
                Weak TRS Rules:
                  +(0(),y) -> y
                  +(s(x),y) -> s(+(x,y))
                  ++(:(x,xs),ys) -> :(x,++(xs,ys))
                  ++(nil(),ys) -> ys
                  sum(:(x,:(y,xs))) -> sum(:(+(x,y),xs))
                  sum(:(x,nil())) -> :(x,nil())
                Signature:
                  {+/2,++/2,-/2,avg/1,hd/1,length/1,quot/2,sum/1,+#/2,++#/2,-#/2,avg#/1,hd#/1,length#/1,quot#/2,sum#/1} / {0/0,:/2,nil/0,s/1,c_1/0,c_2/1,c_3/1,c_4/0,c_5/0,c_6/0,c_7/1,c_8/1,c_9/0,c_10/1,c_11/0,c_12/0,c_13/1,c_14/2,c_15/1,c_16/0}
                Obligation:
                  Innermost
                  basic terms: {+#,++#,-#,avg#,hd#,length#,quot#,sum#}/{0,:,nil,s}
              Applied Processor:
                NaturalMI {miDimension = 1, miDegree = 1, miKind = Algebraic, uargs = UArgs, urules = URules, selector = Just first alternative for predecessorEstimation any intersect of rules of CDG leaf and strict-rules, greedy = NoGreedy}
              Proof:
                We apply a matrix interpretation of kind constructor based matrix interpretation:
                The following argument positions are considered usable:
                  uargs(c_8) = {1},
                  uargs(c_14) = {1,2},
                  uargs(c_15) = {1}
                
                Following symbols are considered usable:
                  {++,sum,+#,++#,-#,avg#,hd#,length#,quot#,sum#}
                TcT has computed the following interpretation:
                        p(+) = [4] x1 + [1]         
                       p(++) = [8] x1 + [2] x2 + [0]
                        p(-) = [0]                  
                        p(0) = [4]                  
                        p(:) = [1] x2 + [2]         
                      p(avg) = [1]                  
                       p(hd) = [1]                  
                   p(length) = [0]                  
                      p(nil) = [0]                  
                     p(quot) = [1] x1 + [1]         
                        p(s) = [1] x1 + [4]         
                      p(sum) = [2]                  
                       p(+#) = [1] x1 + [2]         
                      p(++#) = [1] x2 + [0]         
                       p(-#) = [2] x2 + [0]         
                     p(avg#) = [4] x1 + [8]         
                      p(hd#) = [1] x1 + [2]         
                  p(length#) = [2] x1 + [4]         
                    p(quot#) = [2] x1 + [0]         
                     p(sum#) = [2] x1 + [0]         
                      p(c_1) = [1]                  
                      p(c_2) = [8] x1 + [2]         
                      p(c_3) = [1] x1 + [0]         
                      p(c_4) = [1]                  
                      p(c_5) = [0]                  
                      p(c_6) = [0]                  
                      p(c_7) = [2]                  
                      p(c_8) = [2] x1 + [0]         
                      p(c_9) = [1]                  
                     p(c_10) = [1] x1 + [1]         
                     p(c_11) = [1]                  
                     p(c_12) = [0]                  
                     p(c_13) = [1]                  
                     p(c_14) = [1] x1 + [1] x2 + [0]
                     p(c_15) = [1] x1 + [2]         
                     p(c_16) = [0]                  
                
                Following rules are strictly oriented:
                          avg#(xs) = [4] xs + [8]            
                                   > [4] xs + [0]            
                                   = c_8(sum#(xs))           
                
                sum#(:(x,:(y,xs))) = [2] xs + [8]            
                                   > [2] xs + [6]            
                                   = c_15(sum#(:(+(x,y),xs)))
                
                
                Following rules are (at-least) weakly oriented:
                sum#(++(xs,:(x,:(y,ys)))) =  [16] xs + [4] ys + [16]         
                                          >= [16] xs + [2] ys + [16]         
                                          =  c_14(sum#(++(xs                 
                                                         ,sum(:(x,:(y,ys)))))
                                                 ,sum#(:(x,:(y,ys))))        
                
                           ++(:(x,xs),ys) =  [8] xs + [2] ys + [16]          
                                          >= [8] xs + [2] ys + [2]           
                                          =  :(x,++(xs,ys))                  
                
                             ++(nil(),ys) =  [2] ys + [0]                    
                                          >= [1] ys + [0]                    
                                          =  ys                              
                
                        sum(:(x,:(y,xs))) =  [2]                             
                                          >= [2]                             
                                          =  sum(:(+(x,y),xs))               
                
                          sum(:(x,nil())) =  [2]                             
                                          >= [2]                             
                                          =  :(x,nil())                      
                
          *** 1.1.1.1.1.1.2.1.1.2.1.1.2.1.1.1.1.1.1.1.1 Progress [(?,O(1))]  ***
              Considered Problem:
                Strict DP Rules:
                  
                Strict TRS Rules:
                  
                Weak DP Rules:
                  avg#(xs) -> c_8(sum#(xs))
                  sum#(++(xs,:(x,:(y,ys)))) -> c_14(sum#(++(xs,sum(:(x,:(y,ys))))),sum#(:(x,:(y,ys))))
                  sum#(:(x,:(y,xs))) -> c_15(sum#(:(+(x,y),xs)))
                Weak TRS Rules:
                  +(0(),y) -> y
                  +(s(x),y) -> s(+(x,y))
                  ++(:(x,xs),ys) -> :(x,++(xs,ys))
                  ++(nil(),ys) -> ys
                  sum(:(x,:(y,xs))) -> sum(:(+(x,y),xs))
                  sum(:(x,nil())) -> :(x,nil())
                Signature:
                  {+/2,++/2,-/2,avg/1,hd/1,length/1,quot/2,sum/1,+#/2,++#/2,-#/2,avg#/1,hd#/1,length#/1,quot#/2,sum#/1} / {0/0,:/2,nil/0,s/1,c_1/0,c_2/1,c_3/1,c_4/0,c_5/0,c_6/0,c_7/1,c_8/1,c_9/0,c_10/1,c_11/0,c_12/0,c_13/1,c_14/2,c_15/1,c_16/0}
                Obligation:
                  Innermost
                  basic terms: {+#,++#,-#,avg#,hd#,length#,quot#,sum#}/{0,:,nil,s}
              Applied Processor:
                Assumption
              Proof:
                ()
          
          *** 1.1.1.1.1.1.2.1.1.2.1.1.2.1.1.1.1.1.1.2 Progress [(O(1),O(1))]  ***
              Considered Problem:
                Strict DP Rules:
                  
                Strict TRS Rules:
                  
                Weak DP Rules:
                  avg#(xs) -> c_8(sum#(xs))
                  sum#(++(xs,:(x,:(y,ys)))) -> c_14(sum#(++(xs,sum(:(x,:(y,ys))))),sum#(:(x,:(y,ys))))
                  sum#(:(x,:(y,xs))) -> c_15(sum#(:(+(x,y),xs)))
                Weak TRS Rules:
                  +(0(),y) -> y
                  +(s(x),y) -> s(+(x,y))
                  ++(:(x,xs),ys) -> :(x,++(xs,ys))
                  ++(nil(),ys) -> ys
                  sum(:(x,:(y,xs))) -> sum(:(+(x,y),xs))
                  sum(:(x,nil())) -> :(x,nil())
                Signature:
                  {+/2,++/2,-/2,avg/1,hd/1,length/1,quot/2,sum/1,+#/2,++#/2,-#/2,avg#/1,hd#/1,length#/1,quot#/2,sum#/1} / {0/0,:/2,nil/0,s/1,c_1/0,c_2/1,c_3/1,c_4/0,c_5/0,c_6/0,c_7/1,c_8/1,c_9/0,c_10/1,c_11/0,c_12/0,c_13/1,c_14/2,c_15/1,c_16/0}
                Obligation:
                  Innermost
                  basic terms: {+#,++#,-#,avg#,hd#,length#,quot#,sum#}/{0,:,nil,s}
              Applied Processor:
                RemoveWeakSuffixes
              Proof:
                Consider the dependency graph
                  1:W:avg#(xs) -> c_8(sum#(xs))
                     -->_1 sum#(:(x,:(y,xs))) -> c_15(sum#(:(+(x,y),xs))):3
                     -->_1 sum#(++(xs,:(x,:(y,ys)))) -> c_14(sum#(++(xs,sum(:(x,:(y,ys))))),sum#(:(x,:(y,ys)))):2
                  
                  2:W:sum#(++(xs,:(x,:(y,ys)))) -> c_14(sum#(++(xs,sum(:(x,:(y,ys))))),sum#(:(x,:(y,ys))))
                     -->_2 sum#(:(x,:(y,xs))) -> c_15(sum#(:(+(x,y),xs))):3
                     -->_1 sum#(:(x,:(y,xs))) -> c_15(sum#(:(+(x,y),xs))):3
                     -->_1 sum#(++(xs,:(x,:(y,ys)))) -> c_14(sum#(++(xs,sum(:(x,:(y,ys))))),sum#(:(x,:(y,ys)))):2
                  
                  3:W:sum#(:(x,:(y,xs))) -> c_15(sum#(:(+(x,y),xs)))
                     -->_1 sum#(:(x,:(y,xs))) -> c_15(sum#(:(+(x,y),xs))):3
                  
                The following weak DPs constitute a sub-graph of the DG that is closed under successors. The DPs are removed.
                  1: avg#(xs) -> c_8(sum#(xs))         
                  2: sum#(++(xs,:(x,:(y,ys)))) ->      
                       c_14(sum#(++(xs                 
                                   ,sum(:(x,:(y,ys)))))
                           ,sum#(:(x,:(y,ys))))        
                  3: sum#(:(x,:(y,xs))) ->             
                       c_15(sum#(:(+(x,y),xs)))        
          *** 1.1.1.1.1.1.2.1.1.2.1.1.2.1.1.1.1.1.1.2.1 Progress [(O(1),O(1))]  ***
              Considered Problem:
                Strict DP Rules:
                  
                Strict TRS Rules:
                  
                Weak DP Rules:
                  
                Weak TRS Rules:
                  +(0(),y) -> y
                  +(s(x),y) -> s(+(x,y))
                  ++(:(x,xs),ys) -> :(x,++(xs,ys))
                  ++(nil(),ys) -> ys
                  sum(:(x,:(y,xs))) -> sum(:(+(x,y),xs))
                  sum(:(x,nil())) -> :(x,nil())
                Signature:
                  {+/2,++/2,-/2,avg/1,hd/1,length/1,quot/2,sum/1,+#/2,++#/2,-#/2,avg#/1,hd#/1,length#/1,quot#/2,sum#/1} / {0/0,:/2,nil/0,s/1,c_1/0,c_2/1,c_3/1,c_4/0,c_5/0,c_6/0,c_7/1,c_8/1,c_9/0,c_10/1,c_11/0,c_12/0,c_13/1,c_14/2,c_15/1,c_16/0}
                Obligation:
                  Innermost
                  basic terms: {+#,++#,-#,avg#,hd#,length#,quot#,sum#}/{0,:,nil,s}
              Applied Processor:
                EmptyProcessor
              Proof:
                The problem is already closed. The intended complexity is O(1).
          
        *** 1.1.1.1.1.1.2.1.1.2.1.1.2.1.1.2 Progress [(?,O(n^1))]  ***
            Considered Problem:
              Strict DP Rules:
                length#(:(x,xs)) -> c_10(length#(xs))
                quot#(s(x),s(y)) -> c_13(quot#(-(x,y),s(y)))
                sum#(++(xs,:(x,:(y,ys)))) -> c_14(sum#(++(xs,sum(:(x,:(y,ys))))),sum#(:(x,:(y,ys))))
              Strict TRS Rules:
                
              Weak DP Rules:
                avg#(xs) -> c_8(quot#(hd(sum(xs)),length(xs)),sum#(xs),length#(xs))
                sum#(:(x,:(y,xs))) -> c_15(sum#(:(+(x,y),xs)))
              Weak TRS Rules:
                +(0(),y) -> y
                +(s(x),y) -> s(+(x,y))
                ++(:(x,xs),ys) -> :(x,++(xs,ys))
                ++(nil(),ys) -> ys
                -(x,0()) -> x
                -(0(),s(y)) -> 0()
                -(s(x),s(y)) -> -(x,y)
                hd(:(x,xs)) -> x
                length(:(x,xs)) -> s(length(xs))
                length(nil()) -> 0()
                sum(++(xs,:(x,:(y,ys)))) -> sum(++(xs,sum(:(x,:(y,ys)))))
                sum(:(x,:(y,xs))) -> sum(:(+(x,y),xs))
                sum(:(x,nil())) -> :(x,nil())
              Signature:
                {+/2,++/2,-/2,avg/1,hd/1,length/1,quot/2,sum/1,+#/2,++#/2,-#/2,avg#/1,hd#/1,length#/1,quot#/2,sum#/1} / {0/0,:/2,nil/0,s/1,c_1/0,c_2/1,c_3/1,c_4/0,c_5/0,c_6/0,c_7/1,c_8/3,c_9/0,c_10/1,c_11/0,c_12/0,c_13/1,c_14/2,c_15/1,c_16/0}
              Obligation:
                Innermost
                basic terms: {+#,++#,-#,avg#,hd#,length#,quot#,sum#}/{0,:,nil,s}
            Applied Processor:
              RemoveWeakSuffixes
            Proof:
              Consider the dependency graph
                1:S:length#(:(x,xs)) -> c_10(length#(xs))
                   -->_1 length#(:(x,xs)) -> c_10(length#(xs)):1
                
                2:S:quot#(s(x),s(y)) -> c_13(quot#(-(x,y),s(y)))
                   -->_1 quot#(s(x),s(y)) -> c_13(quot#(-(x,y),s(y))):2
                
                3:S:sum#(++(xs,:(x,:(y,ys)))) -> c_14(sum#(++(xs,sum(:(x,:(y,ys))))),sum#(:(x,:(y,ys))))
                   -->_2 sum#(:(x,:(y,xs))) -> c_15(sum#(:(+(x,y),xs))):5
                   -->_1 sum#(:(x,:(y,xs))) -> c_15(sum#(:(+(x,y),xs))):5
                   -->_1 sum#(++(xs,:(x,:(y,ys)))) -> c_14(sum#(++(xs,sum(:(x,:(y,ys))))),sum#(:(x,:(y,ys)))):3
                
                4:W:avg#(xs) -> c_8(quot#(hd(sum(xs)),length(xs)),sum#(xs),length#(xs))
                   -->_2 sum#(:(x,:(y,xs))) -> c_15(sum#(:(+(x,y),xs))):5
                   -->_2 sum#(++(xs,:(x,:(y,ys)))) -> c_14(sum#(++(xs,sum(:(x,:(y,ys))))),sum#(:(x,:(y,ys)))):3
                   -->_1 quot#(s(x),s(y)) -> c_13(quot#(-(x,y),s(y))):2
                   -->_3 length#(:(x,xs)) -> c_10(length#(xs)):1
                
                5:W:sum#(:(x,:(y,xs))) -> c_15(sum#(:(+(x,y),xs)))
                   -->_1 sum#(:(x,:(y,xs))) -> c_15(sum#(:(+(x,y),xs))):5
                
              The following weak DPs constitute a sub-graph of the DG that is closed under successors. The DPs are removed.
                5: sum#(:(x,:(y,xs))) ->     
                     c_15(sum#(:(+(x,y),xs)))
        *** 1.1.1.1.1.1.2.1.1.2.1.1.2.1.1.2.1 Progress [(?,O(n^1))]  ***
            Considered Problem:
              Strict DP Rules:
                length#(:(x,xs)) -> c_10(length#(xs))
                quot#(s(x),s(y)) -> c_13(quot#(-(x,y),s(y)))
                sum#(++(xs,:(x,:(y,ys)))) -> c_14(sum#(++(xs,sum(:(x,:(y,ys))))),sum#(:(x,:(y,ys))))
              Strict TRS Rules:
                
              Weak DP Rules:
                avg#(xs) -> c_8(quot#(hd(sum(xs)),length(xs)),sum#(xs),length#(xs))
              Weak TRS Rules:
                +(0(),y) -> y
                +(s(x),y) -> s(+(x,y))
                ++(:(x,xs),ys) -> :(x,++(xs,ys))
                ++(nil(),ys) -> ys
                -(x,0()) -> x
                -(0(),s(y)) -> 0()
                -(s(x),s(y)) -> -(x,y)
                hd(:(x,xs)) -> x
                length(:(x,xs)) -> s(length(xs))
                length(nil()) -> 0()
                sum(++(xs,:(x,:(y,ys)))) -> sum(++(xs,sum(:(x,:(y,ys)))))
                sum(:(x,:(y,xs))) -> sum(:(+(x,y),xs))
                sum(:(x,nil())) -> :(x,nil())
              Signature:
                {+/2,++/2,-/2,avg/1,hd/1,length/1,quot/2,sum/1,+#/2,++#/2,-#/2,avg#/1,hd#/1,length#/1,quot#/2,sum#/1} / {0/0,:/2,nil/0,s/1,c_1/0,c_2/1,c_3/1,c_4/0,c_5/0,c_6/0,c_7/1,c_8/3,c_9/0,c_10/1,c_11/0,c_12/0,c_13/1,c_14/2,c_15/1,c_16/0}
              Obligation:
                Innermost
                basic terms: {+#,++#,-#,avg#,hd#,length#,quot#,sum#}/{0,:,nil,s}
            Applied Processor:
              SimplifyRHS
            Proof:
              Consider the dependency graph
                1:S:length#(:(x,xs)) -> c_10(length#(xs))
                   -->_1 length#(:(x,xs)) -> c_10(length#(xs)):1
                
                2:S:quot#(s(x),s(y)) -> c_13(quot#(-(x,y),s(y)))
                   -->_1 quot#(s(x),s(y)) -> c_13(quot#(-(x,y),s(y))):2
                
                3:S:sum#(++(xs,:(x,:(y,ys)))) -> c_14(sum#(++(xs,sum(:(x,:(y,ys))))),sum#(:(x,:(y,ys))))
                   -->_1 sum#(++(xs,:(x,:(y,ys)))) -> c_14(sum#(++(xs,sum(:(x,:(y,ys))))),sum#(:(x,:(y,ys)))):3
                
                4:W:avg#(xs) -> c_8(quot#(hd(sum(xs)),length(xs)),sum#(xs),length#(xs))
                   -->_2 sum#(++(xs,:(x,:(y,ys)))) -> c_14(sum#(++(xs,sum(:(x,:(y,ys))))),sum#(:(x,:(y,ys)))):3
                   -->_1 quot#(s(x),s(y)) -> c_13(quot#(-(x,y),s(y))):2
                   -->_3 length#(:(x,xs)) -> c_10(length#(xs)):1
                
              Due to missing edges in the depndency graph, the right-hand sides of following rules could be simplified:
                sum#(++(xs,:(x,:(y,ys)))) -> c_14(sum#(++(xs,sum(:(x,:(y,ys))))))
        *** 1.1.1.1.1.1.2.1.1.2.1.1.2.1.1.2.1.1 Progress [(?,O(n^1))]  ***
            Considered Problem:
              Strict DP Rules:
                length#(:(x,xs)) -> c_10(length#(xs))
                quot#(s(x),s(y)) -> c_13(quot#(-(x,y),s(y)))
                sum#(++(xs,:(x,:(y,ys)))) -> c_14(sum#(++(xs,sum(:(x,:(y,ys))))))
              Strict TRS Rules:
                
              Weak DP Rules:
                avg#(xs) -> c_8(quot#(hd(sum(xs)),length(xs)),sum#(xs),length#(xs))
              Weak TRS Rules:
                +(0(),y) -> y
                +(s(x),y) -> s(+(x,y))
                ++(:(x,xs),ys) -> :(x,++(xs,ys))
                ++(nil(),ys) -> ys
                -(x,0()) -> x
                -(0(),s(y)) -> 0()
                -(s(x),s(y)) -> -(x,y)
                hd(:(x,xs)) -> x
                length(:(x,xs)) -> s(length(xs))
                length(nil()) -> 0()
                sum(++(xs,:(x,:(y,ys)))) -> sum(++(xs,sum(:(x,:(y,ys)))))
                sum(:(x,:(y,xs))) -> sum(:(+(x,y),xs))
                sum(:(x,nil())) -> :(x,nil())
              Signature:
                {+/2,++/2,-/2,avg/1,hd/1,length/1,quot/2,sum/1,+#/2,++#/2,-#/2,avg#/1,hd#/1,length#/1,quot#/2,sum#/1} / {0/0,:/2,nil/0,s/1,c_1/0,c_2/1,c_3/1,c_4/0,c_5/0,c_6/0,c_7/1,c_8/3,c_9/0,c_10/1,c_11/0,c_12/0,c_13/1,c_14/1,c_15/1,c_16/0}
              Obligation:
                Innermost
                basic terms: {+#,++#,-#,avg#,hd#,length#,quot#,sum#}/{0,:,nil,s}
            Applied Processor:
              Decompose {onSelection = all cycle independent sub-graph, withBound = RelativeAdd}
            Proof:
              We analyse the complexity of following sub-problems (R) and (S).
              Problem (S) is obtained from the input problem by shifting strict rules from (R) into the weak component.
              
              Problem (R)
                Strict DP Rules:
                  length#(:(x,xs)) -> c_10(length#(xs))
                Strict TRS Rules:
                  
                Weak DP Rules:
                  avg#(xs) -> c_8(quot#(hd(sum(xs)),length(xs)),sum#(xs),length#(xs))
                  quot#(s(x),s(y)) -> c_13(quot#(-(x,y),s(y)))
                  sum#(++(xs,:(x,:(y,ys)))) -> c_14(sum#(++(xs,sum(:(x,:(y,ys))))))
                Weak TRS Rules:
                  +(0(),y) -> y
                  +(s(x),y) -> s(+(x,y))
                  ++(:(x,xs),ys) -> :(x,++(xs,ys))
                  ++(nil(),ys) -> ys
                  -(x,0()) -> x
                  -(0(),s(y)) -> 0()
                  -(s(x),s(y)) -> -(x,y)
                  hd(:(x,xs)) -> x
                  length(:(x,xs)) -> s(length(xs))
                  length(nil()) -> 0()
                  sum(++(xs,:(x,:(y,ys)))) -> sum(++(xs,sum(:(x,:(y,ys)))))
                  sum(:(x,:(y,xs))) -> sum(:(+(x,y),xs))
                  sum(:(x,nil())) -> :(x,nil())
                Signature:
                  {+/2,++/2,-/2,avg/1,hd/1,length/1,quot/2,sum/1,+#/2,++#/2,-#/2,avg#/1,hd#/1,length#/1,quot#/2,sum#/1} / {0/0,:/2,nil/0,s/1,c_1/0,c_2/1,c_3/1,c_4/0,c_5/0,c_6/0,c_7/1,c_8/3,c_9/0,c_10/1,c_11/0,c_12/0,c_13/1,c_14/1,c_15/1,c_16/0}
                Obligation:
                  Innermost
                  basic terms: {+#,++#,-#,avg#,hd#,length#,quot#,sum#}/{0,:,nil,s}
              
              Problem (S)
                Strict DP Rules:
                  quot#(s(x),s(y)) -> c_13(quot#(-(x,y),s(y)))
                  sum#(++(xs,:(x,:(y,ys)))) -> c_14(sum#(++(xs,sum(:(x,:(y,ys))))))
                Strict TRS Rules:
                  
                Weak DP Rules:
                  avg#(xs) -> c_8(quot#(hd(sum(xs)),length(xs)),sum#(xs),length#(xs))
                  length#(:(x,xs)) -> c_10(length#(xs))
                Weak TRS Rules:
                  +(0(),y) -> y
                  +(s(x),y) -> s(+(x,y))
                  ++(:(x,xs),ys) -> :(x,++(xs,ys))
                  ++(nil(),ys) -> ys
                  -(x,0()) -> x
                  -(0(),s(y)) -> 0()
                  -(s(x),s(y)) -> -(x,y)
                  hd(:(x,xs)) -> x
                  length(:(x,xs)) -> s(length(xs))
                  length(nil()) -> 0()
                  sum(++(xs,:(x,:(y,ys)))) -> sum(++(xs,sum(:(x,:(y,ys)))))
                  sum(:(x,:(y,xs))) -> sum(:(+(x,y),xs))
                  sum(:(x,nil())) -> :(x,nil())
                Signature:
                  {+/2,++/2,-/2,avg/1,hd/1,length/1,quot/2,sum/1,+#/2,++#/2,-#/2,avg#/1,hd#/1,length#/1,quot#/2,sum#/1} / {0/0,:/2,nil/0,s/1,c_1/0,c_2/1,c_3/1,c_4/0,c_5/0,c_6/0,c_7/1,c_8/3,c_9/0,c_10/1,c_11/0,c_12/0,c_13/1,c_14/1,c_15/1,c_16/0}
                Obligation:
                  Innermost
                  basic terms: {+#,++#,-#,avg#,hd#,length#,quot#,sum#}/{0,:,nil,s}
          *** 1.1.1.1.1.1.2.1.1.2.1.1.2.1.1.2.1.1.1 Progress [(?,O(n^1))]  ***
              Considered Problem:
                Strict DP Rules:
                  length#(:(x,xs)) -> c_10(length#(xs))
                Strict TRS Rules:
                  
                Weak DP Rules:
                  avg#(xs) -> c_8(quot#(hd(sum(xs)),length(xs)),sum#(xs),length#(xs))
                  quot#(s(x),s(y)) -> c_13(quot#(-(x,y),s(y)))
                  sum#(++(xs,:(x,:(y,ys)))) -> c_14(sum#(++(xs,sum(:(x,:(y,ys))))))
                Weak TRS Rules:
                  +(0(),y) -> y
                  +(s(x),y) -> s(+(x,y))
                  ++(:(x,xs),ys) -> :(x,++(xs,ys))
                  ++(nil(),ys) -> ys
                  -(x,0()) -> x
                  -(0(),s(y)) -> 0()
                  -(s(x),s(y)) -> -(x,y)
                  hd(:(x,xs)) -> x
                  length(:(x,xs)) -> s(length(xs))
                  length(nil()) -> 0()
                  sum(++(xs,:(x,:(y,ys)))) -> sum(++(xs,sum(:(x,:(y,ys)))))
                  sum(:(x,:(y,xs))) -> sum(:(+(x,y),xs))
                  sum(:(x,nil())) -> :(x,nil())
                Signature:
                  {+/2,++/2,-/2,avg/1,hd/1,length/1,quot/2,sum/1,+#/2,++#/2,-#/2,avg#/1,hd#/1,length#/1,quot#/2,sum#/1} / {0/0,:/2,nil/0,s/1,c_1/0,c_2/1,c_3/1,c_4/0,c_5/0,c_6/0,c_7/1,c_8/3,c_9/0,c_10/1,c_11/0,c_12/0,c_13/1,c_14/1,c_15/1,c_16/0}
                Obligation:
                  Innermost
                  basic terms: {+#,++#,-#,avg#,hd#,length#,quot#,sum#}/{0,:,nil,s}
              Applied Processor:
                RemoveWeakSuffixes
              Proof:
                Consider the dependency graph
                  1:S:length#(:(x,xs)) -> c_10(length#(xs))
                     -->_1 length#(:(x,xs)) -> c_10(length#(xs)):1
                  
                  2:W:quot#(s(x),s(y)) -> c_13(quot#(-(x,y),s(y)))
                     -->_1 quot#(s(x),s(y)) -> c_13(quot#(-(x,y),s(y))):2
                  
                  3:W:sum#(++(xs,:(x,:(y,ys)))) -> c_14(sum#(++(xs,sum(:(x,:(y,ys))))))
                     -->_1 sum#(++(xs,:(x,:(y,ys)))) -> c_14(sum#(++(xs,sum(:(x,:(y,ys)))))):3
                  
                  4:W:avg#(xs) -> c_8(quot#(hd(sum(xs)),length(xs)),sum#(xs),length#(xs))
                     -->_1 quot#(s(x),s(y)) -> c_13(quot#(-(x,y),s(y))):2
                     -->_2 sum#(++(xs,:(x,:(y,ys)))) -> c_14(sum#(++(xs,sum(:(x,:(y,ys)))))):3
                     -->_3 length#(:(x,xs)) -> c_10(length#(xs)):1
                  
                The following weak DPs constitute a sub-graph of the DG that is closed under successors. The DPs are removed.
                  3: sum#(++(xs,:(x,:(y,ys)))) ->       
                       c_14(sum#(++(xs                  
                                   ,sum(:(x,:(y,ys))))))
                  2: quot#(s(x),s(y)) ->                
                       c_13(quot#(-(x,y),s(y)))         
          *** 1.1.1.1.1.1.2.1.1.2.1.1.2.1.1.2.1.1.1.1 Progress [(?,O(n^1))]  ***
              Considered Problem:
                Strict DP Rules:
                  length#(:(x,xs)) -> c_10(length#(xs))
                Strict TRS Rules:
                  
                Weak DP Rules:
                  avg#(xs) -> c_8(quot#(hd(sum(xs)),length(xs)),sum#(xs),length#(xs))
                Weak TRS Rules:
                  +(0(),y) -> y
                  +(s(x),y) -> s(+(x,y))
                  ++(:(x,xs),ys) -> :(x,++(xs,ys))
                  ++(nil(),ys) -> ys
                  -(x,0()) -> x
                  -(0(),s(y)) -> 0()
                  -(s(x),s(y)) -> -(x,y)
                  hd(:(x,xs)) -> x
                  length(:(x,xs)) -> s(length(xs))
                  length(nil()) -> 0()
                  sum(++(xs,:(x,:(y,ys)))) -> sum(++(xs,sum(:(x,:(y,ys)))))
                  sum(:(x,:(y,xs))) -> sum(:(+(x,y),xs))
                  sum(:(x,nil())) -> :(x,nil())
                Signature:
                  {+/2,++/2,-/2,avg/1,hd/1,length/1,quot/2,sum/1,+#/2,++#/2,-#/2,avg#/1,hd#/1,length#/1,quot#/2,sum#/1} / {0/0,:/2,nil/0,s/1,c_1/0,c_2/1,c_3/1,c_4/0,c_5/0,c_6/0,c_7/1,c_8/3,c_9/0,c_10/1,c_11/0,c_12/0,c_13/1,c_14/1,c_15/1,c_16/0}
                Obligation:
                  Innermost
                  basic terms: {+#,++#,-#,avg#,hd#,length#,quot#,sum#}/{0,:,nil,s}
              Applied Processor:
                SimplifyRHS
              Proof:
                Consider the dependency graph
                  1:S:length#(:(x,xs)) -> c_10(length#(xs))
                     -->_1 length#(:(x,xs)) -> c_10(length#(xs)):1
                  
                  4:W:avg#(xs) -> c_8(quot#(hd(sum(xs)),length(xs)),sum#(xs),length#(xs))
                     -->_3 length#(:(x,xs)) -> c_10(length#(xs)):1
                  
                Due to missing edges in the depndency graph, the right-hand sides of following rules could be simplified:
                  avg#(xs) -> c_8(length#(xs))
          *** 1.1.1.1.1.1.2.1.1.2.1.1.2.1.1.2.1.1.1.1.1 Progress [(?,O(n^1))]  ***
              Considered Problem:
                Strict DP Rules:
                  length#(:(x,xs)) -> c_10(length#(xs))
                Strict TRS Rules:
                  
                Weak DP Rules:
                  avg#(xs) -> c_8(length#(xs))
                Weak TRS Rules:
                  +(0(),y) -> y
                  +(s(x),y) -> s(+(x,y))
                  ++(:(x,xs),ys) -> :(x,++(xs,ys))
                  ++(nil(),ys) -> ys
                  -(x,0()) -> x
                  -(0(),s(y)) -> 0()
                  -(s(x),s(y)) -> -(x,y)
                  hd(:(x,xs)) -> x
                  length(:(x,xs)) -> s(length(xs))
                  length(nil()) -> 0()
                  sum(++(xs,:(x,:(y,ys)))) -> sum(++(xs,sum(:(x,:(y,ys)))))
                  sum(:(x,:(y,xs))) -> sum(:(+(x,y),xs))
                  sum(:(x,nil())) -> :(x,nil())
                Signature:
                  {+/2,++/2,-/2,avg/1,hd/1,length/1,quot/2,sum/1,+#/2,++#/2,-#/2,avg#/1,hd#/1,length#/1,quot#/2,sum#/1} / {0/0,:/2,nil/0,s/1,c_1/0,c_2/1,c_3/1,c_4/0,c_5/0,c_6/0,c_7/1,c_8/1,c_9/0,c_10/1,c_11/0,c_12/0,c_13/1,c_14/1,c_15/1,c_16/0}
                Obligation:
                  Innermost
                  basic terms: {+#,++#,-#,avg#,hd#,length#,quot#,sum#}/{0,:,nil,s}
              Applied Processor:
                UsableRules
              Proof:
                We replace rewrite rules by usable rules:
                  avg#(xs) -> c_8(length#(xs))
                  length#(:(x,xs)) -> c_10(length#(xs))
          *** 1.1.1.1.1.1.2.1.1.2.1.1.2.1.1.2.1.1.1.1.1.1 Progress [(?,O(n^1))]  ***
              Considered Problem:
                Strict DP Rules:
                  length#(:(x,xs)) -> c_10(length#(xs))
                Strict TRS Rules:
                  
                Weak DP Rules:
                  avg#(xs) -> c_8(length#(xs))
                Weak TRS Rules:
                  
                Signature:
                  {+/2,++/2,-/2,avg/1,hd/1,length/1,quot/2,sum/1,+#/2,++#/2,-#/2,avg#/1,hd#/1,length#/1,quot#/2,sum#/1} / {0/0,:/2,nil/0,s/1,c_1/0,c_2/1,c_3/1,c_4/0,c_5/0,c_6/0,c_7/1,c_8/1,c_9/0,c_10/1,c_11/0,c_12/0,c_13/1,c_14/1,c_15/1,c_16/0}
                Obligation:
                  Innermost
                  basic terms: {+#,++#,-#,avg#,hd#,length#,quot#,sum#}/{0,:,nil,s}
              Applied Processor:
                PredecessorEstimationCP {onSelectionCP = any intersect of rules of CDG leaf and strict-rules, withComplexityPair = NaturalMI {miDimension = 1, miDegree = 1, miKind = Algebraic, uargs = UArgs, urules = URules, selector = Nothing, greedy = NoGreedy}}
              Proof:
                We first use the processor NaturalMI {miDimension = 1, miDegree = 1, miKind = Algebraic, uargs = UArgs, urules = URules, selector = Nothing, greedy = NoGreedy} to orient following rules strictly:
                  1: length#(:(x,xs)) ->
                       c_10(length#(xs))
                  
                Consider the set of all dependency pairs
                  1: length#(:(x,xs)) ->         
                       c_10(length#(xs))         
                  2: avg#(xs) -> c_8(length#(xs))
                Processor NaturalMI {miDimension = 1, miDegree = 1, miKind = Algebraic, uargs = UArgs, urules = URules, selector = Nothing, greedy = NoGreedy}induces the complexity certificateTIME (?,O(n^1))
                SPACE(?,?)on application of the dependency pairs
                  {1}
                These cover all (indirect) predecessors of dependency pairs
                  {1,2}
                their number of applications is equally bounded.
                The dependency pairs are shifted into the weak component.
            *** 1.1.1.1.1.1.2.1.1.2.1.1.2.1.1.2.1.1.1.1.1.1.1 Progress [(?,O(n^1))]  ***
                Considered Problem:
                  Strict DP Rules:
                    length#(:(x,xs)) -> c_10(length#(xs))
                  Strict TRS Rules:
                    
                  Weak DP Rules:
                    avg#(xs) -> c_8(length#(xs))
                  Weak TRS Rules:
                    
                  Signature:
                    {+/2,++/2,-/2,avg/1,hd/1,length/1,quot/2,sum/1,+#/2,++#/2,-#/2,avg#/1,hd#/1,length#/1,quot#/2,sum#/1} / {0/0,:/2,nil/0,s/1,c_1/0,c_2/1,c_3/1,c_4/0,c_5/0,c_6/0,c_7/1,c_8/1,c_9/0,c_10/1,c_11/0,c_12/0,c_13/1,c_14/1,c_15/1,c_16/0}
                  Obligation:
                    Innermost
                    basic terms: {+#,++#,-#,avg#,hd#,length#,quot#,sum#}/{0,:,nil,s}
                Applied Processor:
                  NaturalMI {miDimension = 1, miDegree = 1, miKind = Algebraic, uargs = UArgs, urules = URules, selector = Just first alternative for predecessorEstimation any intersect of rules of CDG leaf and strict-rules, greedy = NoGreedy}
                Proof:
                  We apply a matrix interpretation of kind constructor based matrix interpretation:
                  The following argument positions are considered usable:
                    uargs(c_8) = {1},
                    uargs(c_10) = {1}
                  
                  Following symbols are considered usable:
                    {+#,++#,-#,avg#,hd#,length#,quot#,sum#}
                  TcT has computed the following interpretation:
                          p(+) = [0]                  
                         p(++) = [0]                  
                          p(-) = [0]                  
                          p(0) = [0]                  
                          p(:) = [1] x1 + [1] x2 + [2]
                        p(avg) = [0]                  
                         p(hd) = [0]                  
                     p(length) = [0]                  
                        p(nil) = [0]                  
                       p(quot) = [0]                  
                          p(s) = [1] x1 + [0]         
                        p(sum) = [0]                  
                         p(+#) = [0]                  
                        p(++#) = [0]                  
                         p(-#) = [0]                  
                       p(avg#) = [8] x1 + [9]         
                        p(hd#) = [0]                  
                    p(length#) = [8] x1 + [7]         
                      p(quot#) = [0]                  
                       p(sum#) = [0]                  
                        p(c_1) = [0]                  
                        p(c_2) = [0]                  
                        p(c_3) = [0]                  
                        p(c_4) = [0]                  
                        p(c_5) = [0]                  
                        p(c_6) = [0]                  
                        p(c_7) = [0]                  
                        p(c_8) = [1] x1 + [2]         
                        p(c_9) = [0]                  
                       p(c_10) = [1] x1 + [14]        
                       p(c_11) = [0]                  
                       p(c_12) = [0]                  
                       p(c_13) = [8]                  
                       p(c_14) = [1]                  
                       p(c_15) = [2]                  
                       p(c_16) = [0]                  
                  
                  Following rules are strictly oriented:
                  length#(:(x,xs)) = [8] x + [8] xs + [23]
                                   > [8] xs + [21]        
                                   = c_10(length#(xs))    
                  
                  
                  Following rules are (at-least) weakly oriented:
                  avg#(xs) =  [8] xs + [9]    
                           >= [8] xs + [9]    
                           =  c_8(length#(xs))
                  
            *** 1.1.1.1.1.1.2.1.1.2.1.1.2.1.1.2.1.1.1.1.1.1.1.1 Progress [(?,O(1))]  ***
                Considered Problem:
                  Strict DP Rules:
                    
                  Strict TRS Rules:
                    
                  Weak DP Rules:
                    avg#(xs) -> c_8(length#(xs))
                    length#(:(x,xs)) -> c_10(length#(xs))
                  Weak TRS Rules:
                    
                  Signature:
                    {+/2,++/2,-/2,avg/1,hd/1,length/1,quot/2,sum/1,+#/2,++#/2,-#/2,avg#/1,hd#/1,length#/1,quot#/2,sum#/1} / {0/0,:/2,nil/0,s/1,c_1/0,c_2/1,c_3/1,c_4/0,c_5/0,c_6/0,c_7/1,c_8/1,c_9/0,c_10/1,c_11/0,c_12/0,c_13/1,c_14/1,c_15/1,c_16/0}
                  Obligation:
                    Innermost
                    basic terms: {+#,++#,-#,avg#,hd#,length#,quot#,sum#}/{0,:,nil,s}
                Applied Processor:
                  Assumption
                Proof:
                  ()
            
            *** 1.1.1.1.1.1.2.1.1.2.1.1.2.1.1.2.1.1.1.1.1.1.2 Progress [(O(1),O(1))]  ***
                Considered Problem:
                  Strict DP Rules:
                    
                  Strict TRS Rules:
                    
                  Weak DP Rules:
                    avg#(xs) -> c_8(length#(xs))
                    length#(:(x,xs)) -> c_10(length#(xs))
                  Weak TRS Rules:
                    
                  Signature:
                    {+/2,++/2,-/2,avg/1,hd/1,length/1,quot/2,sum/1,+#/2,++#/2,-#/2,avg#/1,hd#/1,length#/1,quot#/2,sum#/1} / {0/0,:/2,nil/0,s/1,c_1/0,c_2/1,c_3/1,c_4/0,c_5/0,c_6/0,c_7/1,c_8/1,c_9/0,c_10/1,c_11/0,c_12/0,c_13/1,c_14/1,c_15/1,c_16/0}
                  Obligation:
                    Innermost
                    basic terms: {+#,++#,-#,avg#,hd#,length#,quot#,sum#}/{0,:,nil,s}
                Applied Processor:
                  RemoveWeakSuffixes
                Proof:
                  Consider the dependency graph
                    1:W:avg#(xs) -> c_8(length#(xs))
                       -->_1 length#(:(x,xs)) -> c_10(length#(xs)):2
                    
                    2:W:length#(:(x,xs)) -> c_10(length#(xs))
                       -->_1 length#(:(x,xs)) -> c_10(length#(xs)):2
                    
                  The following weak DPs constitute a sub-graph of the DG that is closed under successors. The DPs are removed.
                    1: avg#(xs) -> c_8(length#(xs))
                    2: length#(:(x,xs)) ->         
                         c_10(length#(xs))         
            *** 1.1.1.1.1.1.2.1.1.2.1.1.2.1.1.2.1.1.1.1.1.1.2.1 Progress [(O(1),O(1))]  ***
                Considered Problem:
                  Strict DP Rules:
                    
                  Strict TRS Rules:
                    
                  Weak DP Rules:
                    
                  Weak TRS Rules:
                    
                  Signature:
                    {+/2,++/2,-/2,avg/1,hd/1,length/1,quot/2,sum/1,+#/2,++#/2,-#/2,avg#/1,hd#/1,length#/1,quot#/2,sum#/1} / {0/0,:/2,nil/0,s/1,c_1/0,c_2/1,c_3/1,c_4/0,c_5/0,c_6/0,c_7/1,c_8/1,c_9/0,c_10/1,c_11/0,c_12/0,c_13/1,c_14/1,c_15/1,c_16/0}
                  Obligation:
                    Innermost
                    basic terms: {+#,++#,-#,avg#,hd#,length#,quot#,sum#}/{0,:,nil,s}
                Applied Processor:
                  EmptyProcessor
                Proof:
                  The problem is already closed. The intended complexity is O(1).
            
          *** 1.1.1.1.1.1.2.1.1.2.1.1.2.1.1.2.1.1.2 Progress [(?,O(n^1))]  ***
              Considered Problem:
                Strict DP Rules:
                  quot#(s(x),s(y)) -> c_13(quot#(-(x,y),s(y)))
                  sum#(++(xs,:(x,:(y,ys)))) -> c_14(sum#(++(xs,sum(:(x,:(y,ys))))))
                Strict TRS Rules:
                  
                Weak DP Rules:
                  avg#(xs) -> c_8(quot#(hd(sum(xs)),length(xs)),sum#(xs),length#(xs))
                  length#(:(x,xs)) -> c_10(length#(xs))
                Weak TRS Rules:
                  +(0(),y) -> y
                  +(s(x),y) -> s(+(x,y))
                  ++(:(x,xs),ys) -> :(x,++(xs,ys))
                  ++(nil(),ys) -> ys
                  -(x,0()) -> x
                  -(0(),s(y)) -> 0()
                  -(s(x),s(y)) -> -(x,y)
                  hd(:(x,xs)) -> x
                  length(:(x,xs)) -> s(length(xs))
                  length(nil()) -> 0()
                  sum(++(xs,:(x,:(y,ys)))) -> sum(++(xs,sum(:(x,:(y,ys)))))
                  sum(:(x,:(y,xs))) -> sum(:(+(x,y),xs))
                  sum(:(x,nil())) -> :(x,nil())
                Signature:
                  {+/2,++/2,-/2,avg/1,hd/1,length/1,quot/2,sum/1,+#/2,++#/2,-#/2,avg#/1,hd#/1,length#/1,quot#/2,sum#/1} / {0/0,:/2,nil/0,s/1,c_1/0,c_2/1,c_3/1,c_4/0,c_5/0,c_6/0,c_7/1,c_8/3,c_9/0,c_10/1,c_11/0,c_12/0,c_13/1,c_14/1,c_15/1,c_16/0}
                Obligation:
                  Innermost
                  basic terms: {+#,++#,-#,avg#,hd#,length#,quot#,sum#}/{0,:,nil,s}
              Applied Processor:
                RemoveWeakSuffixes
              Proof:
                Consider the dependency graph
                  1:S:quot#(s(x),s(y)) -> c_13(quot#(-(x,y),s(y)))
                     -->_1 quot#(s(x),s(y)) -> c_13(quot#(-(x,y),s(y))):1
                  
                  2:S:sum#(++(xs,:(x,:(y,ys)))) -> c_14(sum#(++(xs,sum(:(x,:(y,ys))))))
                     -->_1 sum#(++(xs,:(x,:(y,ys)))) -> c_14(sum#(++(xs,sum(:(x,:(y,ys)))))):2
                  
                  3:W:avg#(xs) -> c_8(quot#(hd(sum(xs)),length(xs)),sum#(xs),length#(xs))
                     -->_3 length#(:(x,xs)) -> c_10(length#(xs)):4
                     -->_2 sum#(++(xs,:(x,:(y,ys)))) -> c_14(sum#(++(xs,sum(:(x,:(y,ys)))))):2
                     -->_1 quot#(s(x),s(y)) -> c_13(quot#(-(x,y),s(y))):1
                  
                  4:W:length#(:(x,xs)) -> c_10(length#(xs))
                     -->_1 length#(:(x,xs)) -> c_10(length#(xs)):4
                  
                The following weak DPs constitute a sub-graph of the DG that is closed under successors. The DPs are removed.
                  4: length#(:(x,xs)) ->
                       c_10(length#(xs))
          *** 1.1.1.1.1.1.2.1.1.2.1.1.2.1.1.2.1.1.2.1 Progress [(?,O(n^1))]  ***
              Considered Problem:
                Strict DP Rules:
                  quot#(s(x),s(y)) -> c_13(quot#(-(x,y),s(y)))
                  sum#(++(xs,:(x,:(y,ys)))) -> c_14(sum#(++(xs,sum(:(x,:(y,ys))))))
                Strict TRS Rules:
                  
                Weak DP Rules:
                  avg#(xs) -> c_8(quot#(hd(sum(xs)),length(xs)),sum#(xs),length#(xs))
                Weak TRS Rules:
                  +(0(),y) -> y
                  +(s(x),y) -> s(+(x,y))
                  ++(:(x,xs),ys) -> :(x,++(xs,ys))
                  ++(nil(),ys) -> ys
                  -(x,0()) -> x
                  -(0(),s(y)) -> 0()
                  -(s(x),s(y)) -> -(x,y)
                  hd(:(x,xs)) -> x
                  length(:(x,xs)) -> s(length(xs))
                  length(nil()) -> 0()
                  sum(++(xs,:(x,:(y,ys)))) -> sum(++(xs,sum(:(x,:(y,ys)))))
                  sum(:(x,:(y,xs))) -> sum(:(+(x,y),xs))
                  sum(:(x,nil())) -> :(x,nil())
                Signature:
                  {+/2,++/2,-/2,avg/1,hd/1,length/1,quot/2,sum/1,+#/2,++#/2,-#/2,avg#/1,hd#/1,length#/1,quot#/2,sum#/1} / {0/0,:/2,nil/0,s/1,c_1/0,c_2/1,c_3/1,c_4/0,c_5/0,c_6/0,c_7/1,c_8/3,c_9/0,c_10/1,c_11/0,c_12/0,c_13/1,c_14/1,c_15/1,c_16/0}
                Obligation:
                  Innermost
                  basic terms: {+#,++#,-#,avg#,hd#,length#,quot#,sum#}/{0,:,nil,s}
              Applied Processor:
                SimplifyRHS
              Proof:
                Consider the dependency graph
                  1:S:quot#(s(x),s(y)) -> c_13(quot#(-(x,y),s(y)))
                     -->_1 quot#(s(x),s(y)) -> c_13(quot#(-(x,y),s(y))):1
                  
                  2:S:sum#(++(xs,:(x,:(y,ys)))) -> c_14(sum#(++(xs,sum(:(x,:(y,ys))))))
                     -->_1 sum#(++(xs,:(x,:(y,ys)))) -> c_14(sum#(++(xs,sum(:(x,:(y,ys)))))):2
                  
                  3:W:avg#(xs) -> c_8(quot#(hd(sum(xs)),length(xs)),sum#(xs),length#(xs))
                     -->_2 sum#(++(xs,:(x,:(y,ys)))) -> c_14(sum#(++(xs,sum(:(x,:(y,ys)))))):2
                     -->_1 quot#(s(x),s(y)) -> c_13(quot#(-(x,y),s(y))):1
                  
                Due to missing edges in the depndency graph, the right-hand sides of following rules could be simplified:
                  avg#(xs) -> c_8(quot#(hd(sum(xs)),length(xs)),sum#(xs))
          *** 1.1.1.1.1.1.2.1.1.2.1.1.2.1.1.2.1.1.2.1.1 Progress [(?,O(n^1))]  ***
              Considered Problem:
                Strict DP Rules:
                  quot#(s(x),s(y)) -> c_13(quot#(-(x,y),s(y)))
                  sum#(++(xs,:(x,:(y,ys)))) -> c_14(sum#(++(xs,sum(:(x,:(y,ys))))))
                Strict TRS Rules:
                  
                Weak DP Rules:
                  avg#(xs) -> c_8(quot#(hd(sum(xs)),length(xs)),sum#(xs))
                Weak TRS Rules:
                  +(0(),y) -> y
                  +(s(x),y) -> s(+(x,y))
                  ++(:(x,xs),ys) -> :(x,++(xs,ys))
                  ++(nil(),ys) -> ys
                  -(x,0()) -> x
                  -(0(),s(y)) -> 0()
                  -(s(x),s(y)) -> -(x,y)
                  hd(:(x,xs)) -> x
                  length(:(x,xs)) -> s(length(xs))
                  length(nil()) -> 0()
                  sum(++(xs,:(x,:(y,ys)))) -> sum(++(xs,sum(:(x,:(y,ys)))))
                  sum(:(x,:(y,xs))) -> sum(:(+(x,y),xs))
                  sum(:(x,nil())) -> :(x,nil())
                Signature:
                  {+/2,++/2,-/2,avg/1,hd/1,length/1,quot/2,sum/1,+#/2,++#/2,-#/2,avg#/1,hd#/1,length#/1,quot#/2,sum#/1} / {0/0,:/2,nil/0,s/1,c_1/0,c_2/1,c_3/1,c_4/0,c_5/0,c_6/0,c_7/1,c_8/2,c_9/0,c_10/1,c_11/0,c_12/0,c_13/1,c_14/1,c_15/1,c_16/0}
                Obligation:
                  Innermost
                  basic terms: {+#,++#,-#,avg#,hd#,length#,quot#,sum#}/{0,:,nil,s}
              Applied Processor:
                Decompose {onSelection = all cycle independent sub-graph, withBound = RelativeAdd}
              Proof:
                We analyse the complexity of following sub-problems (R) and (S).
                Problem (S) is obtained from the input problem by shifting strict rules from (R) into the weak component.
                
                Problem (R)
                  Strict DP Rules:
                    quot#(s(x),s(y)) -> c_13(quot#(-(x,y),s(y)))
                  Strict TRS Rules:
                    
                  Weak DP Rules:
                    avg#(xs) -> c_8(quot#(hd(sum(xs)),length(xs)),sum#(xs))
                    sum#(++(xs,:(x,:(y,ys)))) -> c_14(sum#(++(xs,sum(:(x,:(y,ys))))))
                  Weak TRS Rules:
                    +(0(),y) -> y
                    +(s(x),y) -> s(+(x,y))
                    ++(:(x,xs),ys) -> :(x,++(xs,ys))
                    ++(nil(),ys) -> ys
                    -(x,0()) -> x
                    -(0(),s(y)) -> 0()
                    -(s(x),s(y)) -> -(x,y)
                    hd(:(x,xs)) -> x
                    length(:(x,xs)) -> s(length(xs))
                    length(nil()) -> 0()
                    sum(++(xs,:(x,:(y,ys)))) -> sum(++(xs,sum(:(x,:(y,ys)))))
                    sum(:(x,:(y,xs))) -> sum(:(+(x,y),xs))
                    sum(:(x,nil())) -> :(x,nil())
                  Signature:
                    {+/2,++/2,-/2,avg/1,hd/1,length/1,quot/2,sum/1,+#/2,++#/2,-#/2,avg#/1,hd#/1,length#/1,quot#/2,sum#/1} / {0/0,:/2,nil/0,s/1,c_1/0,c_2/1,c_3/1,c_4/0,c_5/0,c_6/0,c_7/1,c_8/2,c_9/0,c_10/1,c_11/0,c_12/0,c_13/1,c_14/1,c_15/1,c_16/0}
                  Obligation:
                    Innermost
                    basic terms: {+#,++#,-#,avg#,hd#,length#,quot#,sum#}/{0,:,nil,s}
                
                Problem (S)
                  Strict DP Rules:
                    sum#(++(xs,:(x,:(y,ys)))) -> c_14(sum#(++(xs,sum(:(x,:(y,ys))))))
                  Strict TRS Rules:
                    
                  Weak DP Rules:
                    avg#(xs) -> c_8(quot#(hd(sum(xs)),length(xs)),sum#(xs))
                    quot#(s(x),s(y)) -> c_13(quot#(-(x,y),s(y)))
                  Weak TRS Rules:
                    +(0(),y) -> y
                    +(s(x),y) -> s(+(x,y))
                    ++(:(x,xs),ys) -> :(x,++(xs,ys))
                    ++(nil(),ys) -> ys
                    -(x,0()) -> x
                    -(0(),s(y)) -> 0()
                    -(s(x),s(y)) -> -(x,y)
                    hd(:(x,xs)) -> x
                    length(:(x,xs)) -> s(length(xs))
                    length(nil()) -> 0()
                    sum(++(xs,:(x,:(y,ys)))) -> sum(++(xs,sum(:(x,:(y,ys)))))
                    sum(:(x,:(y,xs))) -> sum(:(+(x,y),xs))
                    sum(:(x,nil())) -> :(x,nil())
                  Signature:
                    {+/2,++/2,-/2,avg/1,hd/1,length/1,quot/2,sum/1,+#/2,++#/2,-#/2,avg#/1,hd#/1,length#/1,quot#/2,sum#/1} / {0/0,:/2,nil/0,s/1,c_1/0,c_2/1,c_3/1,c_4/0,c_5/0,c_6/0,c_7/1,c_8/2,c_9/0,c_10/1,c_11/0,c_12/0,c_13/1,c_14/1,c_15/1,c_16/0}
                  Obligation:
                    Innermost
                    basic terms: {+#,++#,-#,avg#,hd#,length#,quot#,sum#}/{0,:,nil,s}
            *** 1.1.1.1.1.1.2.1.1.2.1.1.2.1.1.2.1.1.2.1.1.1 Progress [(?,O(n^1))]  ***
                Considered Problem:
                  Strict DP Rules:
                    quot#(s(x),s(y)) -> c_13(quot#(-(x,y),s(y)))
                  Strict TRS Rules:
                    
                  Weak DP Rules:
                    avg#(xs) -> c_8(quot#(hd(sum(xs)),length(xs)),sum#(xs))
                    sum#(++(xs,:(x,:(y,ys)))) -> c_14(sum#(++(xs,sum(:(x,:(y,ys))))))
                  Weak TRS Rules:
                    +(0(),y) -> y
                    +(s(x),y) -> s(+(x,y))
                    ++(:(x,xs),ys) -> :(x,++(xs,ys))
                    ++(nil(),ys) -> ys
                    -(x,0()) -> x
                    -(0(),s(y)) -> 0()
                    -(s(x),s(y)) -> -(x,y)
                    hd(:(x,xs)) -> x
                    length(:(x,xs)) -> s(length(xs))
                    length(nil()) -> 0()
                    sum(++(xs,:(x,:(y,ys)))) -> sum(++(xs,sum(:(x,:(y,ys)))))
                    sum(:(x,:(y,xs))) -> sum(:(+(x,y),xs))
                    sum(:(x,nil())) -> :(x,nil())
                  Signature:
                    {+/2,++/2,-/2,avg/1,hd/1,length/1,quot/2,sum/1,+#/2,++#/2,-#/2,avg#/1,hd#/1,length#/1,quot#/2,sum#/1} / {0/0,:/2,nil/0,s/1,c_1/0,c_2/1,c_3/1,c_4/0,c_5/0,c_6/0,c_7/1,c_8/2,c_9/0,c_10/1,c_11/0,c_12/0,c_13/1,c_14/1,c_15/1,c_16/0}
                  Obligation:
                    Innermost
                    basic terms: {+#,++#,-#,avg#,hd#,length#,quot#,sum#}/{0,:,nil,s}
                Applied Processor:
                  RemoveWeakSuffixes
                Proof:
                  Consider the dependency graph
                    1:S:quot#(s(x),s(y)) -> c_13(quot#(-(x,y),s(y)))
                       -->_1 quot#(s(x),s(y)) -> c_13(quot#(-(x,y),s(y))):1
                    
                    2:W:sum#(++(xs,:(x,:(y,ys)))) -> c_14(sum#(++(xs,sum(:(x,:(y,ys))))))
                       -->_1 sum#(++(xs,:(x,:(y,ys)))) -> c_14(sum#(++(xs,sum(:(x,:(y,ys)))))):2
                    
                    3:W:avg#(xs) -> c_8(quot#(hd(sum(xs)),length(xs)),sum#(xs))
                       -->_2 sum#(++(xs,:(x,:(y,ys)))) -> c_14(sum#(++(xs,sum(:(x,:(y,ys)))))):2
                       -->_1 quot#(s(x),s(y)) -> c_13(quot#(-(x,y),s(y))):1
                    
                  The following weak DPs constitute a sub-graph of the DG that is closed under successors. The DPs are removed.
                    2: sum#(++(xs,:(x,:(y,ys)))) ->       
                         c_14(sum#(++(xs                  
                                     ,sum(:(x,:(y,ys))))))
            *** 1.1.1.1.1.1.2.1.1.2.1.1.2.1.1.2.1.1.2.1.1.1.1 Progress [(?,O(n^1))]  ***
                Considered Problem:
                  Strict DP Rules:
                    quot#(s(x),s(y)) -> c_13(quot#(-(x,y),s(y)))
                  Strict TRS Rules:
                    
                  Weak DP Rules:
                    avg#(xs) -> c_8(quot#(hd(sum(xs)),length(xs)),sum#(xs))
                  Weak TRS Rules:
                    +(0(),y) -> y
                    +(s(x),y) -> s(+(x,y))
                    ++(:(x,xs),ys) -> :(x,++(xs,ys))
                    ++(nil(),ys) -> ys
                    -(x,0()) -> x
                    -(0(),s(y)) -> 0()
                    -(s(x),s(y)) -> -(x,y)
                    hd(:(x,xs)) -> x
                    length(:(x,xs)) -> s(length(xs))
                    length(nil()) -> 0()
                    sum(++(xs,:(x,:(y,ys)))) -> sum(++(xs,sum(:(x,:(y,ys)))))
                    sum(:(x,:(y,xs))) -> sum(:(+(x,y),xs))
                    sum(:(x,nil())) -> :(x,nil())
                  Signature:
                    {+/2,++/2,-/2,avg/1,hd/1,length/1,quot/2,sum/1,+#/2,++#/2,-#/2,avg#/1,hd#/1,length#/1,quot#/2,sum#/1} / {0/0,:/2,nil/0,s/1,c_1/0,c_2/1,c_3/1,c_4/0,c_5/0,c_6/0,c_7/1,c_8/2,c_9/0,c_10/1,c_11/0,c_12/0,c_13/1,c_14/1,c_15/1,c_16/0}
                  Obligation:
                    Innermost
                    basic terms: {+#,++#,-#,avg#,hd#,length#,quot#,sum#}/{0,:,nil,s}
                Applied Processor:
                  SimplifyRHS
                Proof:
                  Consider the dependency graph
                    1:S:quot#(s(x),s(y)) -> c_13(quot#(-(x,y),s(y)))
                       -->_1 quot#(s(x),s(y)) -> c_13(quot#(-(x,y),s(y))):1
                    
                    3:W:avg#(xs) -> c_8(quot#(hd(sum(xs)),length(xs)),sum#(xs))
                       -->_1 quot#(s(x),s(y)) -> c_13(quot#(-(x,y),s(y))):1
                    
                  Due to missing edges in the depndency graph, the right-hand sides of following rules could be simplified:
                    avg#(xs) -> c_8(quot#(hd(sum(xs)),length(xs)))
            *** 1.1.1.1.1.1.2.1.1.2.1.1.2.1.1.2.1.1.2.1.1.1.1.1 Progress [(?,O(n^1))]  ***
                Considered Problem:
                  Strict DP Rules:
                    quot#(s(x),s(y)) -> c_13(quot#(-(x,y),s(y)))
                  Strict TRS Rules:
                    
                  Weak DP Rules:
                    avg#(xs) -> c_8(quot#(hd(sum(xs)),length(xs)))
                  Weak TRS Rules:
                    +(0(),y) -> y
                    +(s(x),y) -> s(+(x,y))
                    ++(:(x,xs),ys) -> :(x,++(xs,ys))
                    ++(nil(),ys) -> ys
                    -(x,0()) -> x
                    -(0(),s(y)) -> 0()
                    -(s(x),s(y)) -> -(x,y)
                    hd(:(x,xs)) -> x
                    length(:(x,xs)) -> s(length(xs))
                    length(nil()) -> 0()
                    sum(++(xs,:(x,:(y,ys)))) -> sum(++(xs,sum(:(x,:(y,ys)))))
                    sum(:(x,:(y,xs))) -> sum(:(+(x,y),xs))
                    sum(:(x,nil())) -> :(x,nil())
                  Signature:
                    {+/2,++/2,-/2,avg/1,hd/1,length/1,quot/2,sum/1,+#/2,++#/2,-#/2,avg#/1,hd#/1,length#/1,quot#/2,sum#/1} / {0/0,:/2,nil/0,s/1,c_1/0,c_2/1,c_3/1,c_4/0,c_5/0,c_6/0,c_7/1,c_8/1,c_9/0,c_10/1,c_11/0,c_12/0,c_13/1,c_14/1,c_15/1,c_16/0}
                  Obligation:
                    Innermost
                    basic terms: {+#,++#,-#,avg#,hd#,length#,quot#,sum#}/{0,:,nil,s}
                Applied Processor:
                  PredecessorEstimationCP {onSelectionCP = any intersect of rules of CDG leaf and strict-rules, withComplexityPair = NaturalMI {miDimension = 1, miDegree = 1, miKind = Algebraic, uargs = UArgs, urules = URules, selector = Nothing, greedy = NoGreedy}}
                Proof:
                  We first use the processor NaturalMI {miDimension = 1, miDegree = 1, miKind = Algebraic, uargs = UArgs, urules = URules, selector = Nothing, greedy = NoGreedy} to orient following rules strictly:
                    1: quot#(s(x),s(y)) ->       
                         c_13(quot#(-(x,y),s(y)))
                    
                  Consider the set of all dependency pairs
                    1: quot#(s(x),s(y)) ->       
                         c_13(quot#(-(x,y),s(y)))
                    2: avg#(xs) ->               
                         c_8(quot#(hd(sum(xs))   
                                  ,length(xs)))  
                  Processor NaturalMI {miDimension = 1, miDegree = 1, miKind = Algebraic, uargs = UArgs, urules = URules, selector = Nothing, greedy = NoGreedy}induces the complexity certificateTIME (?,O(n^1))
                  SPACE(?,?)on application of the dependency pairs
                    {1}
                  These cover all (indirect) predecessors of dependency pairs
                    {1,2}
                  their number of applications is equally bounded.
                  The dependency pairs are shifted into the weak component.
              *** 1.1.1.1.1.1.2.1.1.2.1.1.2.1.1.2.1.1.2.1.1.1.1.1.1 Progress [(?,O(n^1))]  ***
                  Considered Problem:
                    Strict DP Rules:
                      quot#(s(x),s(y)) -> c_13(quot#(-(x,y),s(y)))
                    Strict TRS Rules:
                      
                    Weak DP Rules:
                      avg#(xs) -> c_8(quot#(hd(sum(xs)),length(xs)))
                    Weak TRS Rules:
                      +(0(),y) -> y
                      +(s(x),y) -> s(+(x,y))
                      ++(:(x,xs),ys) -> :(x,++(xs,ys))
                      ++(nil(),ys) -> ys
                      -(x,0()) -> x
                      -(0(),s(y)) -> 0()
                      -(s(x),s(y)) -> -(x,y)
                      hd(:(x,xs)) -> x
                      length(:(x,xs)) -> s(length(xs))
                      length(nil()) -> 0()
                      sum(++(xs,:(x,:(y,ys)))) -> sum(++(xs,sum(:(x,:(y,ys)))))
                      sum(:(x,:(y,xs))) -> sum(:(+(x,y),xs))
                      sum(:(x,nil())) -> :(x,nil())
                    Signature:
                      {+/2,++/2,-/2,avg/1,hd/1,length/1,quot/2,sum/1,+#/2,++#/2,-#/2,avg#/1,hd#/1,length#/1,quot#/2,sum#/1} / {0/0,:/2,nil/0,s/1,c_1/0,c_2/1,c_3/1,c_4/0,c_5/0,c_6/0,c_7/1,c_8/1,c_9/0,c_10/1,c_11/0,c_12/0,c_13/1,c_14/1,c_15/1,c_16/0}
                    Obligation:
                      Innermost
                      basic terms: {+#,++#,-#,avg#,hd#,length#,quot#,sum#}/{0,:,nil,s}
                  Applied Processor:
                    NaturalMI {miDimension = 1, miDegree = 1, miKind = Algebraic, uargs = UArgs, urules = URules, selector = Just first alternative for predecessorEstimation any intersect of rules of CDG leaf and strict-rules, greedy = NoGreedy}
                  Proof:
                    We apply a matrix interpretation of kind constructor based matrix interpretation:
                    The following argument positions are considered usable:
                      uargs(c_8) = {1},
                      uargs(c_13) = {1}
                    
                    Following symbols are considered usable:
                      {+,++,-,hd,length,sum,+#,++#,-#,avg#,hd#,length#,quot#,sum#}
                    TcT has computed the following interpretation:
                            p(+) = [1] x1 + [1] x2 + [0] 
                           p(++) = [1] x1 + [1] x2 + [15]
                            p(-) = [1] x1 + [0]          
                            p(0) = [0]                   
                            p(:) = [1] x1 + [1] x2 + [2] 
                          p(avg) = [1] x1 + [1]          
                           p(hd) = [4] x1 + [3]          
                       p(length) = [2] x1 + [1]          
                          p(nil) = [1]                   
                         p(quot) = [1] x1 + [2]          
                            p(s) = [1] x1 + [4]          
                          p(sum) = [1] x1 + [0]          
                           p(+#) = [1] x1 + [1] x2 + [0] 
                          p(++#) = [1] x1 + [2] x2 + [0] 
                           p(-#) = [0]                   
                         p(avg#) = [9] x1 + [11]         
                          p(hd#) = [1] x1 + [0]          
                      p(length#) = [1]                   
                        p(quot#) = [1] x1 + [2] x2 + [4] 
                         p(sum#) = [1] x1 + [1]          
                          p(c_1) = [0]                   
                          p(c_2) = [1]                   
                          p(c_3) = [1]                   
                          p(c_4) = [0]                   
                          p(c_5) = [1]                   
                          p(c_6) = [2]                   
                          p(c_7) = [1]                   
                          p(c_8) = [1] x1 + [1]          
                          p(c_9) = [1]                   
                         p(c_10) = [1] x1 + [1]          
                         p(c_11) = [0]                   
                         p(c_12) = [1]                   
                         p(c_13) = [1] x1 + [2]          
                         p(c_14) = [1]                   
                         p(c_15) = [1] x1 + [0]          
                         p(c_16) = [0]                   
                    
                    Following rules are strictly oriented:
                    quot#(s(x),s(y)) = [1] x + [2] y + [16]    
                                     > [1] x + [2] y + [14]    
                                     = c_13(quot#(-(x,y),s(y)))
                    
                    
                    Following rules are (at-least) weakly oriented:
                                    avg#(xs) =  [9] xs + [11]                         
                                             >= [8] xs + [10]                         
                                             =  c_8(quot#(hd(sum(xs))                 
                                                         ,length(xs)))                
                    
                                    +(0(),y) =  [1] y + [0]                           
                                             >= [1] y + [0]                           
                                             =  y                                     
                    
                                   +(s(x),y) =  [1] x + [1] y + [4]                   
                                             >= [1] x + [1] y + [4]                   
                                             =  s(+(x,y))                             
                    
                              ++(:(x,xs),ys) =  [1] x + [1] xs + [1] ys + [17]        
                                             >= [1] x + [1] xs + [1] ys + [17]        
                                             =  :(x,++(xs,ys))                        
                    
                                ++(nil(),ys) =  [1] ys + [16]                         
                                             >= [1] ys + [0]                          
                                             =  ys                                    
                    
                                    -(x,0()) =  [1] x + [0]                           
                                             >= [1] x + [0]                           
                                             =  x                                     
                    
                                 -(0(),s(y)) =  [0]                                   
                                             >= [0]                                   
                                             =  0()                                   
                    
                                -(s(x),s(y)) =  [1] x + [4]                           
                                             >= [1] x + [0]                           
                                             =  -(x,y)                                
                    
                                 hd(:(x,xs)) =  [4] x + [4] xs + [11]                 
                                             >= [1] x + [0]                           
                                             =  x                                     
                    
                             length(:(x,xs)) =  [2] x + [2] xs + [5]                  
                                             >= [2] xs + [5]                          
                                             =  s(length(xs))                         
                    
                               length(nil()) =  [3]                                   
                                             >= [0]                                   
                                             =  0()                                   
                    
                    sum(++(xs,:(x,:(y,ys)))) =  [1] x + [1] xs + [1] y + [1] ys + [19]
                                             >= [1] x + [1] xs + [1] y + [1] ys + [19]
                                             =  sum(++(xs,sum(:(x,:(y,ys)))))         
                    
                           sum(:(x,:(y,xs))) =  [1] x + [1] xs + [1] y + [4]          
                                             >= [1] x + [1] xs + [1] y + [2]          
                                             =  sum(:(+(x,y),xs))                     
                    
                             sum(:(x,nil())) =  [1] x + [3]                           
                                             >= [1] x + [3]                           
                                             =  :(x,nil())                            
                    
              *** 1.1.1.1.1.1.2.1.1.2.1.1.2.1.1.2.1.1.2.1.1.1.1.1.1.1 Progress [(?,O(1))]  ***
                  Considered Problem:
                    Strict DP Rules:
                      
                    Strict TRS Rules:
                      
                    Weak DP Rules:
                      avg#(xs) -> c_8(quot#(hd(sum(xs)),length(xs)))
                      quot#(s(x),s(y)) -> c_13(quot#(-(x,y),s(y)))
                    Weak TRS Rules:
                      +(0(),y) -> y
                      +(s(x),y) -> s(+(x,y))
                      ++(:(x,xs),ys) -> :(x,++(xs,ys))
                      ++(nil(),ys) -> ys
                      -(x,0()) -> x
                      -(0(),s(y)) -> 0()
                      -(s(x),s(y)) -> -(x,y)
                      hd(:(x,xs)) -> x
                      length(:(x,xs)) -> s(length(xs))
                      length(nil()) -> 0()
                      sum(++(xs,:(x,:(y,ys)))) -> sum(++(xs,sum(:(x,:(y,ys)))))
                      sum(:(x,:(y,xs))) -> sum(:(+(x,y),xs))
                      sum(:(x,nil())) -> :(x,nil())
                    Signature:
                      {+/2,++/2,-/2,avg/1,hd/1,length/1,quot/2,sum/1,+#/2,++#/2,-#/2,avg#/1,hd#/1,length#/1,quot#/2,sum#/1} / {0/0,:/2,nil/0,s/1,c_1/0,c_2/1,c_3/1,c_4/0,c_5/0,c_6/0,c_7/1,c_8/1,c_9/0,c_10/1,c_11/0,c_12/0,c_13/1,c_14/1,c_15/1,c_16/0}
                    Obligation:
                      Innermost
                      basic terms: {+#,++#,-#,avg#,hd#,length#,quot#,sum#}/{0,:,nil,s}
                  Applied Processor:
                    Assumption
                  Proof:
                    ()
              
              *** 1.1.1.1.1.1.2.1.1.2.1.1.2.1.1.2.1.1.2.1.1.1.1.1.2 Progress [(O(1),O(1))]  ***
                  Considered Problem:
                    Strict DP Rules:
                      
                    Strict TRS Rules:
                      
                    Weak DP Rules:
                      avg#(xs) -> c_8(quot#(hd(sum(xs)),length(xs)))
                      quot#(s(x),s(y)) -> c_13(quot#(-(x,y),s(y)))
                    Weak TRS Rules:
                      +(0(),y) -> y
                      +(s(x),y) -> s(+(x,y))
                      ++(:(x,xs),ys) -> :(x,++(xs,ys))
                      ++(nil(),ys) -> ys
                      -(x,0()) -> x
                      -(0(),s(y)) -> 0()
                      -(s(x),s(y)) -> -(x,y)
                      hd(:(x,xs)) -> x
                      length(:(x,xs)) -> s(length(xs))
                      length(nil()) -> 0()
                      sum(++(xs,:(x,:(y,ys)))) -> sum(++(xs,sum(:(x,:(y,ys)))))
                      sum(:(x,:(y,xs))) -> sum(:(+(x,y),xs))
                      sum(:(x,nil())) -> :(x,nil())
                    Signature:
                      {+/2,++/2,-/2,avg/1,hd/1,length/1,quot/2,sum/1,+#/2,++#/2,-#/2,avg#/1,hd#/1,length#/1,quot#/2,sum#/1} / {0/0,:/2,nil/0,s/1,c_1/0,c_2/1,c_3/1,c_4/0,c_5/0,c_6/0,c_7/1,c_8/1,c_9/0,c_10/1,c_11/0,c_12/0,c_13/1,c_14/1,c_15/1,c_16/0}
                    Obligation:
                      Innermost
                      basic terms: {+#,++#,-#,avg#,hd#,length#,quot#,sum#}/{0,:,nil,s}
                  Applied Processor:
                    RemoveWeakSuffixes
                  Proof:
                    Consider the dependency graph
                      1:W:avg#(xs) -> c_8(quot#(hd(sum(xs)),length(xs)))
                         -->_1 quot#(s(x),s(y)) -> c_13(quot#(-(x,y),s(y))):2
                      
                      2:W:quot#(s(x),s(y)) -> c_13(quot#(-(x,y),s(y)))
                         -->_1 quot#(s(x),s(y)) -> c_13(quot#(-(x,y),s(y))):2
                      
                    The following weak DPs constitute a sub-graph of the DG that is closed under successors. The DPs are removed.
                      1: avg#(xs) ->               
                           c_8(quot#(hd(sum(xs))   
                                    ,length(xs)))  
                      2: quot#(s(x),s(y)) ->       
                           c_13(quot#(-(x,y),s(y)))
              *** 1.1.1.1.1.1.2.1.1.2.1.1.2.1.1.2.1.1.2.1.1.1.1.1.2.1 Progress [(O(1),O(1))]  ***
                  Considered Problem:
                    Strict DP Rules:
                      
                    Strict TRS Rules:
                      
                    Weak DP Rules:
                      
                    Weak TRS Rules:
                      +(0(),y) -> y
                      +(s(x),y) -> s(+(x,y))
                      ++(:(x,xs),ys) -> :(x,++(xs,ys))
                      ++(nil(),ys) -> ys
                      -(x,0()) -> x
                      -(0(),s(y)) -> 0()
                      -(s(x),s(y)) -> -(x,y)
                      hd(:(x,xs)) -> x
                      length(:(x,xs)) -> s(length(xs))
                      length(nil()) -> 0()
                      sum(++(xs,:(x,:(y,ys)))) -> sum(++(xs,sum(:(x,:(y,ys)))))
                      sum(:(x,:(y,xs))) -> sum(:(+(x,y),xs))
                      sum(:(x,nil())) -> :(x,nil())
                    Signature:
                      {+/2,++/2,-/2,avg/1,hd/1,length/1,quot/2,sum/1,+#/2,++#/2,-#/2,avg#/1,hd#/1,length#/1,quot#/2,sum#/1} / {0/0,:/2,nil/0,s/1,c_1/0,c_2/1,c_3/1,c_4/0,c_5/0,c_6/0,c_7/1,c_8/1,c_9/0,c_10/1,c_11/0,c_12/0,c_13/1,c_14/1,c_15/1,c_16/0}
                    Obligation:
                      Innermost
                      basic terms: {+#,++#,-#,avg#,hd#,length#,quot#,sum#}/{0,:,nil,s}
                  Applied Processor:
                    EmptyProcessor
                  Proof:
                    The problem is already closed. The intended complexity is O(1).
              
            *** 1.1.1.1.1.1.2.1.1.2.1.1.2.1.1.2.1.1.2.1.1.2 Progress [(?,O(n^1))]  ***
                Considered Problem:
                  Strict DP Rules:
                    sum#(++(xs,:(x,:(y,ys)))) -> c_14(sum#(++(xs,sum(:(x,:(y,ys))))))
                  Strict TRS Rules:
                    
                  Weak DP Rules:
                    avg#(xs) -> c_8(quot#(hd(sum(xs)),length(xs)),sum#(xs))
                    quot#(s(x),s(y)) -> c_13(quot#(-(x,y),s(y)))
                  Weak TRS Rules:
                    +(0(),y) -> y
                    +(s(x),y) -> s(+(x,y))
                    ++(:(x,xs),ys) -> :(x,++(xs,ys))
                    ++(nil(),ys) -> ys
                    -(x,0()) -> x
                    -(0(),s(y)) -> 0()
                    -(s(x),s(y)) -> -(x,y)
                    hd(:(x,xs)) -> x
                    length(:(x,xs)) -> s(length(xs))
                    length(nil()) -> 0()
                    sum(++(xs,:(x,:(y,ys)))) -> sum(++(xs,sum(:(x,:(y,ys)))))
                    sum(:(x,:(y,xs))) -> sum(:(+(x,y),xs))
                    sum(:(x,nil())) -> :(x,nil())
                  Signature:
                    {+/2,++/2,-/2,avg/1,hd/1,length/1,quot/2,sum/1,+#/2,++#/2,-#/2,avg#/1,hd#/1,length#/1,quot#/2,sum#/1} / {0/0,:/2,nil/0,s/1,c_1/0,c_2/1,c_3/1,c_4/0,c_5/0,c_6/0,c_7/1,c_8/2,c_9/0,c_10/1,c_11/0,c_12/0,c_13/1,c_14/1,c_15/1,c_16/0}
                  Obligation:
                    Innermost
                    basic terms: {+#,++#,-#,avg#,hd#,length#,quot#,sum#}/{0,:,nil,s}
                Applied Processor:
                  RemoveWeakSuffixes
                Proof:
                  Consider the dependency graph
                    1:S:sum#(++(xs,:(x,:(y,ys)))) -> c_14(sum#(++(xs,sum(:(x,:(y,ys))))))
                       -->_1 sum#(++(xs,:(x,:(y,ys)))) -> c_14(sum#(++(xs,sum(:(x,:(y,ys)))))):1
                    
                    2:W:avg#(xs) -> c_8(quot#(hd(sum(xs)),length(xs)),sum#(xs))
                       -->_1 quot#(s(x),s(y)) -> c_13(quot#(-(x,y),s(y))):3
                       -->_2 sum#(++(xs,:(x,:(y,ys)))) -> c_14(sum#(++(xs,sum(:(x,:(y,ys)))))):1
                    
                    3:W:quot#(s(x),s(y)) -> c_13(quot#(-(x,y),s(y)))
                       -->_1 quot#(s(x),s(y)) -> c_13(quot#(-(x,y),s(y))):3
                    
                  The following weak DPs constitute a sub-graph of the DG that is closed under successors. The DPs are removed.
                    3: quot#(s(x),s(y)) ->       
                         c_13(quot#(-(x,y),s(y)))
            *** 1.1.1.1.1.1.2.1.1.2.1.1.2.1.1.2.1.1.2.1.1.2.1 Progress [(?,O(n^1))]  ***
                Considered Problem:
                  Strict DP Rules:
                    sum#(++(xs,:(x,:(y,ys)))) -> c_14(sum#(++(xs,sum(:(x,:(y,ys))))))
                  Strict TRS Rules:
                    
                  Weak DP Rules:
                    avg#(xs) -> c_8(quot#(hd(sum(xs)),length(xs)),sum#(xs))
                  Weak TRS Rules:
                    +(0(),y) -> y
                    +(s(x),y) -> s(+(x,y))
                    ++(:(x,xs),ys) -> :(x,++(xs,ys))
                    ++(nil(),ys) -> ys
                    -(x,0()) -> x
                    -(0(),s(y)) -> 0()
                    -(s(x),s(y)) -> -(x,y)
                    hd(:(x,xs)) -> x
                    length(:(x,xs)) -> s(length(xs))
                    length(nil()) -> 0()
                    sum(++(xs,:(x,:(y,ys)))) -> sum(++(xs,sum(:(x,:(y,ys)))))
                    sum(:(x,:(y,xs))) -> sum(:(+(x,y),xs))
                    sum(:(x,nil())) -> :(x,nil())
                  Signature:
                    {+/2,++/2,-/2,avg/1,hd/1,length/1,quot/2,sum/1,+#/2,++#/2,-#/2,avg#/1,hd#/1,length#/1,quot#/2,sum#/1} / {0/0,:/2,nil/0,s/1,c_1/0,c_2/1,c_3/1,c_4/0,c_5/0,c_6/0,c_7/1,c_8/2,c_9/0,c_10/1,c_11/0,c_12/0,c_13/1,c_14/1,c_15/1,c_16/0}
                  Obligation:
                    Innermost
                    basic terms: {+#,++#,-#,avg#,hd#,length#,quot#,sum#}/{0,:,nil,s}
                Applied Processor:
                  SimplifyRHS
                Proof:
                  Consider the dependency graph
                    1:S:sum#(++(xs,:(x,:(y,ys)))) -> c_14(sum#(++(xs,sum(:(x,:(y,ys))))))
                       -->_1 sum#(++(xs,:(x,:(y,ys)))) -> c_14(sum#(++(xs,sum(:(x,:(y,ys)))))):1
                    
                    2:W:avg#(xs) -> c_8(quot#(hd(sum(xs)),length(xs)),sum#(xs))
                       -->_2 sum#(++(xs,:(x,:(y,ys)))) -> c_14(sum#(++(xs,sum(:(x,:(y,ys)))))):1
                    
                  Due to missing edges in the depndency graph, the right-hand sides of following rules could be simplified:
                    avg#(xs) -> c_8(sum#(xs))
            *** 1.1.1.1.1.1.2.1.1.2.1.1.2.1.1.2.1.1.2.1.1.2.1.1 Progress [(?,O(n^1))]  ***
                Considered Problem:
                  Strict DP Rules:
                    sum#(++(xs,:(x,:(y,ys)))) -> c_14(sum#(++(xs,sum(:(x,:(y,ys))))))
                  Strict TRS Rules:
                    
                  Weak DP Rules:
                    avg#(xs) -> c_8(sum#(xs))
                  Weak TRS Rules:
                    +(0(),y) -> y
                    +(s(x),y) -> s(+(x,y))
                    ++(:(x,xs),ys) -> :(x,++(xs,ys))
                    ++(nil(),ys) -> ys
                    -(x,0()) -> x
                    -(0(),s(y)) -> 0()
                    -(s(x),s(y)) -> -(x,y)
                    hd(:(x,xs)) -> x
                    length(:(x,xs)) -> s(length(xs))
                    length(nil()) -> 0()
                    sum(++(xs,:(x,:(y,ys)))) -> sum(++(xs,sum(:(x,:(y,ys)))))
                    sum(:(x,:(y,xs))) -> sum(:(+(x,y),xs))
                    sum(:(x,nil())) -> :(x,nil())
                  Signature:
                    {+/2,++/2,-/2,avg/1,hd/1,length/1,quot/2,sum/1,+#/2,++#/2,-#/2,avg#/1,hd#/1,length#/1,quot#/2,sum#/1} / {0/0,:/2,nil/0,s/1,c_1/0,c_2/1,c_3/1,c_4/0,c_5/0,c_6/0,c_7/1,c_8/1,c_9/0,c_10/1,c_11/0,c_12/0,c_13/1,c_14/1,c_15/1,c_16/0}
                  Obligation:
                    Innermost
                    basic terms: {+#,++#,-#,avg#,hd#,length#,quot#,sum#}/{0,:,nil,s}
                Applied Processor:
                  UsableRules
                Proof:
                  We replace rewrite rules by usable rules:
                    +(0(),y) -> y
                    +(s(x),y) -> s(+(x,y))
                    ++(:(x,xs),ys) -> :(x,++(xs,ys))
                    ++(nil(),ys) -> ys
                    sum(:(x,:(y,xs))) -> sum(:(+(x,y),xs))
                    sum(:(x,nil())) -> :(x,nil())
                    avg#(xs) -> c_8(sum#(xs))
                    sum#(++(xs,:(x,:(y,ys)))) -> c_14(sum#(++(xs,sum(:(x,:(y,ys))))))
            *** 1.1.1.1.1.1.2.1.1.2.1.1.2.1.1.2.1.1.2.1.1.2.1.1.1 Progress [(?,O(n^1))]  ***
                Considered Problem:
                  Strict DP Rules:
                    sum#(++(xs,:(x,:(y,ys)))) -> c_14(sum#(++(xs,sum(:(x,:(y,ys))))))
                  Strict TRS Rules:
                    
                  Weak DP Rules:
                    avg#(xs) -> c_8(sum#(xs))
                  Weak TRS Rules:
                    +(0(),y) -> y
                    +(s(x),y) -> s(+(x,y))
                    ++(:(x,xs),ys) -> :(x,++(xs,ys))
                    ++(nil(),ys) -> ys
                    sum(:(x,:(y,xs))) -> sum(:(+(x,y),xs))
                    sum(:(x,nil())) -> :(x,nil())
                  Signature:
                    {+/2,++/2,-/2,avg/1,hd/1,length/1,quot/2,sum/1,+#/2,++#/2,-#/2,avg#/1,hd#/1,length#/1,quot#/2,sum#/1} / {0/0,:/2,nil/0,s/1,c_1/0,c_2/1,c_3/1,c_4/0,c_5/0,c_6/0,c_7/1,c_8/1,c_9/0,c_10/1,c_11/0,c_12/0,c_13/1,c_14/1,c_15/1,c_16/0}
                  Obligation:
                    Innermost
                    basic terms: {+#,++#,-#,avg#,hd#,length#,quot#,sum#}/{0,:,nil,s}
                Applied Processor:
                  PredecessorEstimationCP {onSelectionCP = any intersect of rules of CDG leaf and strict-rules, withComplexityPair = NaturalMI {miDimension = 1, miDegree = 1, miKind = Algebraic, uargs = UArgs, urules = URules, selector = Nothing, greedy = NoGreedy}}
                Proof:
                  We first use the processor NaturalMI {miDimension = 1, miDegree = 1, miKind = Algebraic, uargs = UArgs, urules = URules, selector = Nothing, greedy = NoGreedy} to orient following rules strictly:
                    1: sum#(++(xs,:(x,:(y,ys)))) ->       
                         c_14(sum#(++(xs                  
                                     ,sum(:(x,:(y,ys))))))
                    
                  Consider the set of all dependency pairs
                    1: sum#(++(xs,:(x,:(y,ys)))) ->       
                         c_14(sum#(++(xs                  
                                     ,sum(:(x,:(y,ys))))))
                    2: avg#(xs) -> c_8(sum#(xs))          
                  Processor NaturalMI {miDimension = 1, miDegree = 1, miKind = Algebraic, uargs = UArgs, urules = URules, selector = Nothing, greedy = NoGreedy}induces the complexity certificateTIME (?,O(n^1))
                  SPACE(?,?)on application of the dependency pairs
                    {1}
                  These cover all (indirect) predecessors of dependency pairs
                    {1,2}
                  their number of applications is equally bounded.
                  The dependency pairs are shifted into the weak component.
              *** 1.1.1.1.1.1.2.1.1.2.1.1.2.1.1.2.1.1.2.1.1.2.1.1.1.1 Progress [(?,O(n^1))]  ***
                  Considered Problem:
                    Strict DP Rules:
                      sum#(++(xs,:(x,:(y,ys)))) -> c_14(sum#(++(xs,sum(:(x,:(y,ys))))))
                    Strict TRS Rules:
                      
                    Weak DP Rules:
                      avg#(xs) -> c_8(sum#(xs))
                    Weak TRS Rules:
                      +(0(),y) -> y
                      +(s(x),y) -> s(+(x,y))
                      ++(:(x,xs),ys) -> :(x,++(xs,ys))
                      ++(nil(),ys) -> ys
                      sum(:(x,:(y,xs))) -> sum(:(+(x,y),xs))
                      sum(:(x,nil())) -> :(x,nil())
                    Signature:
                      {+/2,++/2,-/2,avg/1,hd/1,length/1,quot/2,sum/1,+#/2,++#/2,-#/2,avg#/1,hd#/1,length#/1,quot#/2,sum#/1} / {0/0,:/2,nil/0,s/1,c_1/0,c_2/1,c_3/1,c_4/0,c_5/0,c_6/0,c_7/1,c_8/1,c_9/0,c_10/1,c_11/0,c_12/0,c_13/1,c_14/1,c_15/1,c_16/0}
                    Obligation:
                      Innermost
                      basic terms: {+#,++#,-#,avg#,hd#,length#,quot#,sum#}/{0,:,nil,s}
                  Applied Processor:
                    NaturalMI {miDimension = 1, miDegree = 1, miKind = Algebraic, uargs = UArgs, urules = URules, selector = Just first alternative for predecessorEstimation any intersect of rules of CDG leaf and strict-rules, greedy = NoGreedy}
                  Proof:
                    We apply a matrix interpretation of kind constructor based matrix interpretation:
                    The following argument positions are considered usable:
                      uargs(c_8) = {1},
                      uargs(c_14) = {1}
                    
                    Following symbols are considered usable:
                      {++,sum,+#,++#,-#,avg#,hd#,length#,quot#,sum#}
                    TcT has computed the following interpretation:
                            p(+) = [8] x1 + [9]          
                           p(++) = [13] x1 + [4] x2 + [4]
                            p(-) = [2] x1 + [1]          
                            p(0) = [2]                   
                            p(:) = [1] x2 + [1]          
                          p(avg) = [8]                   
                           p(hd) = [2]                   
                       p(length) = [1] x1 + [0]          
                          p(nil) = [0]                   
                         p(quot) = [2] x1 + [2]          
                            p(s) = [1]                   
                          p(sum) = [1]                   
                           p(+#) = [1] x1 + [1] x2 + [1] 
                          p(++#) = [2] x1 + [2] x2 + [1] 
                           p(-#) = [4] x1 + [8]          
                         p(avg#) = [2] x1 + [10]         
                          p(hd#) = [1] x1 + [1]          
                      p(length#) = [0]                   
                        p(quot#) = [2]                   
                         p(sum#) = [2] x1 + [0]          
                          p(c_1) = [1]                   
                          p(c_2) = [2] x1 + [1]          
                          p(c_3) = [2]                   
                          p(c_4) = [1]                   
                          p(c_5) = [1]                   
                          p(c_6) = [0]                   
                          p(c_7) = [2]                   
                          p(c_8) = [1] x1 + [0]          
                          p(c_9) = [1]                   
                         p(c_10) = [1] x1 + [0]          
                         p(c_11) = [1]                   
                         p(c_12) = [0]                   
                         p(c_13) = [1]                   
                         p(c_14) = [1] x1 + [0]          
                         p(c_15) = [8]                   
                         p(c_16) = [8]                   
                    
                    Following rules are strictly oriented:
                    sum#(++(xs,:(x,:(y,ys)))) = [26] xs + [8] ys + [24]          
                                              > [26] xs + [16]                   
                                              = c_14(sum#(++(xs                  
                                                            ,sum(:(x,:(y,ys))))))
                    
                    
                    Following rules are (at-least) weakly oriented:
                             avg#(xs) =  [2] xs + [10]          
                                      >= [2] xs + [0]           
                                      =  c_8(sum#(xs))          
                    
                       ++(:(x,xs),ys) =  [13] xs + [4] ys + [17]
                                      >= [13] xs + [4] ys + [5] 
                                      =  :(x,++(xs,ys))         
                    
                         ++(nil(),ys) =  [4] ys + [4]           
                                      >= [1] ys + [0]           
                                      =  ys                     
                    
                    sum(:(x,:(y,xs))) =  [1]                    
                                      >= [1]                    
                                      =  sum(:(+(x,y),xs))      
                    
                      sum(:(x,nil())) =  [1]                    
                                      >= [1]                    
                                      =  :(x,nil())             
                    
              *** 1.1.1.1.1.1.2.1.1.2.1.1.2.1.1.2.1.1.2.1.1.2.1.1.1.1.1 Progress [(?,O(1))]  ***
                  Considered Problem:
                    Strict DP Rules:
                      
                    Strict TRS Rules:
                      
                    Weak DP Rules:
                      avg#(xs) -> c_8(sum#(xs))
                      sum#(++(xs,:(x,:(y,ys)))) -> c_14(sum#(++(xs,sum(:(x,:(y,ys))))))
                    Weak TRS Rules:
                      +(0(),y) -> y
                      +(s(x),y) -> s(+(x,y))
                      ++(:(x,xs),ys) -> :(x,++(xs,ys))
                      ++(nil(),ys) -> ys
                      sum(:(x,:(y,xs))) -> sum(:(+(x,y),xs))
                      sum(:(x,nil())) -> :(x,nil())
                    Signature:
                      {+/2,++/2,-/2,avg/1,hd/1,length/1,quot/2,sum/1,+#/2,++#/2,-#/2,avg#/1,hd#/1,length#/1,quot#/2,sum#/1} / {0/0,:/2,nil/0,s/1,c_1/0,c_2/1,c_3/1,c_4/0,c_5/0,c_6/0,c_7/1,c_8/1,c_9/0,c_10/1,c_11/0,c_12/0,c_13/1,c_14/1,c_15/1,c_16/0}
                    Obligation:
                      Innermost
                      basic terms: {+#,++#,-#,avg#,hd#,length#,quot#,sum#}/{0,:,nil,s}
                  Applied Processor:
                    Assumption
                  Proof:
                    ()
              
              *** 1.1.1.1.1.1.2.1.1.2.1.1.2.1.1.2.1.1.2.1.1.2.1.1.1.2 Progress [(O(1),O(1))]  ***
                  Considered Problem:
                    Strict DP Rules:
                      
                    Strict TRS Rules:
                      
                    Weak DP Rules:
                      avg#(xs) -> c_8(sum#(xs))
                      sum#(++(xs,:(x,:(y,ys)))) -> c_14(sum#(++(xs,sum(:(x,:(y,ys))))))
                    Weak TRS Rules:
                      +(0(),y) -> y
                      +(s(x),y) -> s(+(x,y))
                      ++(:(x,xs),ys) -> :(x,++(xs,ys))
                      ++(nil(),ys) -> ys
                      sum(:(x,:(y,xs))) -> sum(:(+(x,y),xs))
                      sum(:(x,nil())) -> :(x,nil())
                    Signature:
                      {+/2,++/2,-/2,avg/1,hd/1,length/1,quot/2,sum/1,+#/2,++#/2,-#/2,avg#/1,hd#/1,length#/1,quot#/2,sum#/1} / {0/0,:/2,nil/0,s/1,c_1/0,c_2/1,c_3/1,c_4/0,c_5/0,c_6/0,c_7/1,c_8/1,c_9/0,c_10/1,c_11/0,c_12/0,c_13/1,c_14/1,c_15/1,c_16/0}
                    Obligation:
                      Innermost
                      basic terms: {+#,++#,-#,avg#,hd#,length#,quot#,sum#}/{0,:,nil,s}
                  Applied Processor:
                    RemoveWeakSuffixes
                  Proof:
                    Consider the dependency graph
                      1:W:avg#(xs) -> c_8(sum#(xs))
                         -->_1 sum#(++(xs,:(x,:(y,ys)))) -> c_14(sum#(++(xs,sum(:(x,:(y,ys)))))):2
                      
                      2:W:sum#(++(xs,:(x,:(y,ys)))) -> c_14(sum#(++(xs,sum(:(x,:(y,ys))))))
                         -->_1 sum#(++(xs,:(x,:(y,ys)))) -> c_14(sum#(++(xs,sum(:(x,:(y,ys)))))):2
                      
                    The following weak DPs constitute a sub-graph of the DG that is closed under successors. The DPs are removed.
                      1: avg#(xs) -> c_8(sum#(xs))          
                      2: sum#(++(xs,:(x,:(y,ys)))) ->       
                           c_14(sum#(++(xs                  
                                       ,sum(:(x,:(y,ys))))))
              *** 1.1.1.1.1.1.2.1.1.2.1.1.2.1.1.2.1.1.2.1.1.2.1.1.1.2.1 Progress [(O(1),O(1))]  ***
                  Considered Problem:
                    Strict DP Rules:
                      
                    Strict TRS Rules:
                      
                    Weak DP Rules:
                      
                    Weak TRS Rules:
                      +(0(),y) -> y
                      +(s(x),y) -> s(+(x,y))
                      ++(:(x,xs),ys) -> :(x,++(xs,ys))
                      ++(nil(),ys) -> ys
                      sum(:(x,:(y,xs))) -> sum(:(+(x,y),xs))
                      sum(:(x,nil())) -> :(x,nil())
                    Signature:
                      {+/2,++/2,-/2,avg/1,hd/1,length/1,quot/2,sum/1,+#/2,++#/2,-#/2,avg#/1,hd#/1,length#/1,quot#/2,sum#/1} / {0/0,:/2,nil/0,s/1,c_1/0,c_2/1,c_3/1,c_4/0,c_5/0,c_6/0,c_7/1,c_8/1,c_9/0,c_10/1,c_11/0,c_12/0,c_13/1,c_14/1,c_15/1,c_16/0}
                    Obligation:
                      Innermost
                      basic terms: {+#,++#,-#,avg#,hd#,length#,quot#,sum#}/{0,:,nil,s}
                  Applied Processor:
                    EmptyProcessor
                  Proof:
                    The problem is already closed. The intended complexity is O(1).