*** 1 Progress [(O(1),O(n^2))]  ***
    Considered Problem:
      Strict DP Rules:
        
      Strict TRS Rules:
        goal(xs,ys) -> overlap(xs,ys)
        member(x,Nil()) -> False()
        member(x',Cons(x,xs)) -> member[Ite][True][Ite](!EQ(x,x'),x',Cons(x,xs))
        notEmpty(Cons(x,xs)) -> True()
        notEmpty(Nil()) -> False()
        overlap(Cons(x,xs),ys) -> overlap[Ite][True][Ite](member(x,ys),Cons(x,xs),ys)
        overlap(Nil(),ys) -> False()
      Weak DP Rules:
        
      Weak TRS Rules:
        !EQ(0(),0()) -> True()
        !EQ(0(),S(y)) -> False()
        !EQ(S(x),0()) -> False()
        !EQ(S(x),S(y)) -> !EQ(x,y)
        member[Ite][True][Ite](False(),x',Cons(x,xs)) -> member(x',xs)
        member[Ite][True][Ite](True(),x,xs) -> True()
        overlap[Ite][True][Ite](False(),Cons(x,xs),ys) -> overlap(xs,ys)
        overlap[Ite][True][Ite](True(),xs,ys) -> True()
      Signature:
        {!EQ/2,goal/2,member/2,member[Ite][True][Ite]/3,notEmpty/1,overlap/2,overlap[Ite][True][Ite]/3} / {0/0,Cons/2,False/0,Nil/0,S/1,True/0}
      Obligation:
        Innermost
        basic terms: {!EQ,goal,member,member[Ite][True][Ite],notEmpty,overlap,overlap[Ite][True][Ite]}/{0,Cons,False,Nil,S,True}
    Applied Processor:
      WeightGap {wgDimension = 1, wgDegree = 1, wgKind = Algebraic, wgUArgs = UArgs, wgOn = WgOnAny}
    Proof:
      The weightgap principle applies using the following nonconstant growth matrix-interpretation:
        We apply a matrix interpretation of kind constructor based matrix interpretation:
        The following argument positions are considered usable:
          uargs(member[Ite][True][Ite]) = {1},
          uargs(overlap[Ite][True][Ite]) = {1}
        
        Following symbols are considered usable:
          {}
        TcT has computed the following interpretation:
                              p(!EQ) = [0]                  
                                p(0) = [0]                  
                             p(Cons) = [1] x1 + [1] x2 + [0]
                            p(False) = [0]                  
                              p(Nil) = [0]                  
                                p(S) = [1] x1 + [0]         
                             p(True) = [0]                  
                             p(goal) = [4] x1 + [0]         
                           p(member) = [0]                  
           p(member[Ite][True][Ite]) = [1] x1 + [0]         
                         p(notEmpty) = [0]                  
                          p(overlap) = [4] x1 + [7]         
          p(overlap[Ite][True][Ite]) = [1] x1 + [4] x2 + [7]
        
        Following rules are strictly oriented:
        overlap(Nil(),ys) = [7]    
                          > [0]    
                          = False()
        
        
        Following rules are (at-least) weakly oriented:
                              !EQ(0(),0()) =  [0]                               
                                           >= [0]                               
                                           =  True()                            
        
                             !EQ(0(),S(y)) =  [0]                               
                                           >= [0]                               
                                           =  False()                           
        
                             !EQ(S(x),0()) =  [0]                               
                                           >= [0]                               
                                           =  False()                           
        
                            !EQ(S(x),S(y)) =  [0]                               
                                           >= [0]                               
                                           =  !EQ(x,y)                          
        
                               goal(xs,ys) =  [4] xs + [0]                      
                                           >= [4] xs + [7]                      
                                           =  overlap(xs,ys)                    
        
                           member(x,Nil()) =  [0]                               
                                           >= [0]                               
                                           =  False()                           
        
                     member(x',Cons(x,xs)) =  [0]                               
                                           >= [0]                               
                                           =  member[Ite][True][Ite](!EQ(x,x')  
                                                                    ,x'         
                                                                    ,Cons(x,xs))
        
            member[Ite][True][Ite](False() =  [0]                               
                                       ,x'                                      
                              ,Cons(x,xs))                                      
                                           >= [0]                               
                                           =  member(x',xs)                     
        
             member[Ite][True][Ite](True() =  [0]                               
                                        ,x                                      
                                      ,xs)                                      
                                           >= [0]                               
                                           =  True()                            
        
                      notEmpty(Cons(x,xs)) =  [0]                               
                                           >= [0]                               
                                           =  True()                            
        
                           notEmpty(Nil()) =  [0]                               
                                           >= [0]                               
                                           =  False()                           
        
                    overlap(Cons(x,xs),ys) =  [4] x + [4] xs + [7]              
                                           >= [4] x + [4] xs + [7]              
                                           =  overlap[Ite][True][Ite](member(x  
                                                                            ,ys)
                                                                     ,Cons(x,xs)
                                                                     ,ys)       
        
           overlap[Ite][True][Ite](False() =  [4] x + [4] xs + [7]              
                               ,Cons(x,xs)                                      
                                      ,ys)                                      
                                           >= [4] xs + [7]                      
                                           =  overlap(xs,ys)                    
        
            overlap[Ite][True][Ite](True() =  [4] xs + [7]                      
                                       ,xs                                      
                                      ,ys)                                      
                                           >= [0]                               
                                           =  True()                            
        
      Further, it can be verified that all rules not oriented are covered by the weightgap condition.
*** 1.1 Progress [(O(1),O(n^2))]  ***
    Considered Problem:
      Strict DP Rules:
        
      Strict TRS Rules:
        goal(xs,ys) -> overlap(xs,ys)
        member(x,Nil()) -> False()
        member(x',Cons(x,xs)) -> member[Ite][True][Ite](!EQ(x,x'),x',Cons(x,xs))
        notEmpty(Cons(x,xs)) -> True()
        notEmpty(Nil()) -> False()
        overlap(Cons(x,xs),ys) -> overlap[Ite][True][Ite](member(x,ys),Cons(x,xs),ys)
      Weak DP Rules:
        
      Weak TRS Rules:
        !EQ(0(),0()) -> True()
        !EQ(0(),S(y)) -> False()
        !EQ(S(x),0()) -> False()
        !EQ(S(x),S(y)) -> !EQ(x,y)
        member[Ite][True][Ite](False(),x',Cons(x,xs)) -> member(x',xs)
        member[Ite][True][Ite](True(),x,xs) -> True()
        overlap(Nil(),ys) -> False()
        overlap[Ite][True][Ite](False(),Cons(x,xs),ys) -> overlap(xs,ys)
        overlap[Ite][True][Ite](True(),xs,ys) -> True()
      Signature:
        {!EQ/2,goal/2,member/2,member[Ite][True][Ite]/3,notEmpty/1,overlap/2,overlap[Ite][True][Ite]/3} / {0/0,Cons/2,False/0,Nil/0,S/1,True/0}
      Obligation:
        Innermost
        basic terms: {!EQ,goal,member,member[Ite][True][Ite],notEmpty,overlap,overlap[Ite][True][Ite]}/{0,Cons,False,Nil,S,True}
    Applied Processor:
      WeightGap {wgDimension = 1, wgDegree = 1, wgKind = Algebraic, wgUArgs = UArgs, wgOn = WgOnAny}
    Proof:
      The weightgap principle applies using the following nonconstant growth matrix-interpretation:
        We apply a matrix interpretation of kind constructor based matrix interpretation:
        The following argument positions are considered usable:
          uargs(member[Ite][True][Ite]) = {1},
          uargs(overlap[Ite][True][Ite]) = {1}
        
        Following symbols are considered usable:
          {}
        TcT has computed the following interpretation:
                              p(!EQ) = [0]                  
                                p(0) = [0]                  
                             p(Cons) = [4]                  
                            p(False) = [0]                  
                              p(Nil) = [0]                  
                                p(S) = [0]                  
                             p(True) = [0]                  
                             p(goal) = [4] x1 + [5]         
                           p(member) = [0]                  
           p(member[Ite][True][Ite]) = [1] x1 + [1] x3 + [0]
                         p(notEmpty) = [0]                  
                          p(overlap) = [3]                  
          p(overlap[Ite][True][Ite]) = [1] x1 + [1] x2 + [0]
        
        Following rules are strictly oriented:
        goal(xs,ys) = [4] xs + [5]  
                    > [3]           
                    = overlap(xs,ys)
        
        
        Following rules are (at-least) weakly oriented:
                              !EQ(0(),0()) =  [0]                               
                                           >= [0]                               
                                           =  True()                            
        
                             !EQ(0(),S(y)) =  [0]                               
                                           >= [0]                               
                                           =  False()                           
        
                             !EQ(S(x),0()) =  [0]                               
                                           >= [0]                               
                                           =  False()                           
        
                            !EQ(S(x),S(y)) =  [0]                               
                                           >= [0]                               
                                           =  !EQ(x,y)                          
        
                           member(x,Nil()) =  [0]                               
                                           >= [0]                               
                                           =  False()                           
        
                     member(x',Cons(x,xs)) =  [0]                               
                                           >= [4]                               
                                           =  member[Ite][True][Ite](!EQ(x,x')  
                                                                    ,x'         
                                                                    ,Cons(x,xs))
        
            member[Ite][True][Ite](False() =  [4]                               
                                       ,x'                                      
                              ,Cons(x,xs))                                      
                                           >= [0]                               
                                           =  member(x',xs)                     
        
             member[Ite][True][Ite](True() =  [1] xs + [0]                      
                                        ,x                                      
                                      ,xs)                                      
                                           >= [0]                               
                                           =  True()                            
        
                      notEmpty(Cons(x,xs)) =  [0]                               
                                           >= [0]                               
                                           =  True()                            
        
                           notEmpty(Nil()) =  [0]                               
                                           >= [0]                               
                                           =  False()                           
        
                    overlap(Cons(x,xs),ys) =  [3]                               
                                           >= [4]                               
                                           =  overlap[Ite][True][Ite](member(x  
                                                                            ,ys)
                                                                     ,Cons(x,xs)
                                                                     ,ys)       
        
                         overlap(Nil(),ys) =  [3]                               
                                           >= [0]                               
                                           =  False()                           
        
           overlap[Ite][True][Ite](False() =  [4]                               
                               ,Cons(x,xs)                                      
                                      ,ys)                                      
                                           >= [3]                               
                                           =  overlap(xs,ys)                    
        
            overlap[Ite][True][Ite](True() =  [1] xs + [0]                      
                                       ,xs                                      
                                      ,ys)                                      
                                           >= [0]                               
                                           =  True()                            
        
      Further, it can be verified that all rules not oriented are covered by the weightgap condition.
*** 1.1.1 Progress [(O(1),O(n^2))]  ***
    Considered Problem:
      Strict DP Rules:
        
      Strict TRS Rules:
        member(x,Nil()) -> False()
        member(x',Cons(x,xs)) -> member[Ite][True][Ite](!EQ(x,x'),x',Cons(x,xs))
        notEmpty(Cons(x,xs)) -> True()
        notEmpty(Nil()) -> False()
        overlap(Cons(x,xs),ys) -> overlap[Ite][True][Ite](member(x,ys),Cons(x,xs),ys)
      Weak DP Rules:
        
      Weak TRS Rules:
        !EQ(0(),0()) -> True()
        !EQ(0(),S(y)) -> False()
        !EQ(S(x),0()) -> False()
        !EQ(S(x),S(y)) -> !EQ(x,y)
        goal(xs,ys) -> overlap(xs,ys)
        member[Ite][True][Ite](False(),x',Cons(x,xs)) -> member(x',xs)
        member[Ite][True][Ite](True(),x,xs) -> True()
        overlap(Nil(),ys) -> False()
        overlap[Ite][True][Ite](False(),Cons(x,xs),ys) -> overlap(xs,ys)
        overlap[Ite][True][Ite](True(),xs,ys) -> True()
      Signature:
        {!EQ/2,goal/2,member/2,member[Ite][True][Ite]/3,notEmpty/1,overlap/2,overlap[Ite][True][Ite]/3} / {0/0,Cons/2,False/0,Nil/0,S/1,True/0}
      Obligation:
        Innermost
        basic terms: {!EQ,goal,member,member[Ite][True][Ite],notEmpty,overlap,overlap[Ite][True][Ite]}/{0,Cons,False,Nil,S,True}
    Applied Processor:
      WeightGap {wgDimension = 1, wgDegree = 1, wgKind = Algebraic, wgUArgs = UArgs, wgOn = WgOnAny}
    Proof:
      The weightgap principle applies using the following nonconstant growth matrix-interpretation:
        We apply a matrix interpretation of kind constructor based matrix interpretation:
        The following argument positions are considered usable:
          uargs(member[Ite][True][Ite]) = {1},
          uargs(overlap[Ite][True][Ite]) = {1}
        
        Following symbols are considered usable:
          {}
        TcT has computed the following interpretation:
                              p(!EQ) = [2]                  
                                p(0) = [0]                  
                             p(Cons) = [1] x1 + [1] x2 + [0]
                            p(False) = [1]                  
                              p(Nil) = [0]                  
                                p(S) = [1] x1 + [0]         
                             p(True) = [2]                  
                             p(goal) = [6] x2 + [5]         
                           p(member) = [0]                  
           p(member[Ite][True][Ite]) = [1] x1 + [0]         
                         p(notEmpty) = [3]                  
                          p(overlap) = [6] x2 + [2]         
          p(overlap[Ite][True][Ite]) = [1] x1 + [6] x3 + [4]
        
        Following rules are strictly oriented:
        notEmpty(Cons(x,xs)) = [3]    
                             > [2]    
                             = True() 
        
             notEmpty(Nil()) = [3]    
                             > [1]    
                             = False()
        
        
        Following rules are (at-least) weakly oriented:
                              !EQ(0(),0()) =  [2]                               
                                           >= [2]                               
                                           =  True()                            
        
                             !EQ(0(),S(y)) =  [2]                               
                                           >= [1]                               
                                           =  False()                           
        
                             !EQ(S(x),0()) =  [2]                               
                                           >= [1]                               
                                           =  False()                           
        
                            !EQ(S(x),S(y)) =  [2]                               
                                           >= [2]                               
                                           =  !EQ(x,y)                          
        
                               goal(xs,ys) =  [6] ys + [5]                      
                                           >= [6] ys + [2]                      
                                           =  overlap(xs,ys)                    
        
                           member(x,Nil()) =  [0]                               
                                           >= [1]                               
                                           =  False()                           
        
                     member(x',Cons(x,xs)) =  [0]                               
                                           >= [2]                               
                                           =  member[Ite][True][Ite](!EQ(x,x')  
                                                                    ,x'         
                                                                    ,Cons(x,xs))
        
            member[Ite][True][Ite](False() =  [1]                               
                                       ,x'                                      
                              ,Cons(x,xs))                                      
                                           >= [0]                               
                                           =  member(x',xs)                     
        
             member[Ite][True][Ite](True() =  [2]                               
                                        ,x                                      
                                      ,xs)                                      
                                           >= [2]                               
                                           =  True()                            
        
                    overlap(Cons(x,xs),ys) =  [6] ys + [2]                      
                                           >= [6] ys + [4]                      
                                           =  overlap[Ite][True][Ite](member(x  
                                                                            ,ys)
                                                                     ,Cons(x,xs)
                                                                     ,ys)       
        
                         overlap(Nil(),ys) =  [6] ys + [2]                      
                                           >= [1]                               
                                           =  False()                           
        
           overlap[Ite][True][Ite](False() =  [6] ys + [5]                      
                               ,Cons(x,xs)                                      
                                      ,ys)                                      
                                           >= [6] ys + [2]                      
                                           =  overlap(xs,ys)                    
        
            overlap[Ite][True][Ite](True() =  [6] ys + [6]                      
                                       ,xs                                      
                                      ,ys)                                      
                                           >= [2]                               
                                           =  True()                            
        
      Further, it can be verified that all rules not oriented are covered by the weightgap condition.
*** 1.1.1.1 Progress [(O(1),O(n^2))]  ***
    Considered Problem:
      Strict DP Rules:
        
      Strict TRS Rules:
        member(x,Nil()) -> False()
        member(x',Cons(x,xs)) -> member[Ite][True][Ite](!EQ(x,x'),x',Cons(x,xs))
        overlap(Cons(x,xs),ys) -> overlap[Ite][True][Ite](member(x,ys),Cons(x,xs),ys)
      Weak DP Rules:
        
      Weak TRS Rules:
        !EQ(0(),0()) -> True()
        !EQ(0(),S(y)) -> False()
        !EQ(S(x),0()) -> False()
        !EQ(S(x),S(y)) -> !EQ(x,y)
        goal(xs,ys) -> overlap(xs,ys)
        member[Ite][True][Ite](False(),x',Cons(x,xs)) -> member(x',xs)
        member[Ite][True][Ite](True(),x,xs) -> True()
        notEmpty(Cons(x,xs)) -> True()
        notEmpty(Nil()) -> False()
        overlap(Nil(),ys) -> False()
        overlap[Ite][True][Ite](False(),Cons(x,xs),ys) -> overlap(xs,ys)
        overlap[Ite][True][Ite](True(),xs,ys) -> True()
      Signature:
        {!EQ/2,goal/2,member/2,member[Ite][True][Ite]/3,notEmpty/1,overlap/2,overlap[Ite][True][Ite]/3} / {0/0,Cons/2,False/0,Nil/0,S/1,True/0}
      Obligation:
        Innermost
        basic terms: {!EQ,goal,member,member[Ite][True][Ite],notEmpty,overlap,overlap[Ite][True][Ite]}/{0,Cons,False,Nil,S,True}
    Applied Processor:
      WeightGap {wgDimension = 1, wgDegree = 1, wgKind = Algebraic, wgUArgs = UArgs, wgOn = WgOnAny}
    Proof:
      The weightgap principle applies using the following nonconstant growth matrix-interpretation:
        We apply a matrix interpretation of kind constructor based matrix interpretation:
        The following argument positions are considered usable:
          uargs(member[Ite][True][Ite]) = {1},
          uargs(overlap[Ite][True][Ite]) = {1}
        
        Following symbols are considered usable:
          {}
        TcT has computed the following interpretation:
                              p(!EQ) = [1]                  
                                p(0) = [0]                  
                             p(Cons) = [1]                  
                            p(False) = [1]                  
                              p(Nil) = [1]                  
                                p(S) = [0]                  
                             p(True) = [1]                  
                             p(goal) = [1]                  
                           p(member) = [2]                  
           p(member[Ite][True][Ite]) = [1] x1 + [5]         
                         p(notEmpty) = [2]                  
                          p(overlap) = [1]                  
          p(overlap[Ite][True][Ite]) = [1] x1 + [2] x2 + [0]
        
        Following rules are strictly oriented:
        member(x,Nil()) = [2]    
                        > [1]    
                        = False()
        
        
        Following rules are (at-least) weakly oriented:
                              !EQ(0(),0()) =  [1]                               
                                           >= [1]                               
                                           =  True()                            
        
                             !EQ(0(),S(y)) =  [1]                               
                                           >= [1]                               
                                           =  False()                           
        
                             !EQ(S(x),0()) =  [1]                               
                                           >= [1]                               
                                           =  False()                           
        
                            !EQ(S(x),S(y)) =  [1]                               
                                           >= [1]                               
                                           =  !EQ(x,y)                          
        
                               goal(xs,ys) =  [1]                               
                                           >= [1]                               
                                           =  overlap(xs,ys)                    
        
                     member(x',Cons(x,xs)) =  [2]                               
                                           >= [6]                               
                                           =  member[Ite][True][Ite](!EQ(x,x')  
                                                                    ,x'         
                                                                    ,Cons(x,xs))
        
            member[Ite][True][Ite](False() =  [6]                               
                                       ,x'                                      
                              ,Cons(x,xs))                                      
                                           >= [2]                               
                                           =  member(x',xs)                     
        
             member[Ite][True][Ite](True() =  [6]                               
                                        ,x                                      
                                      ,xs)                                      
                                           >= [1]                               
                                           =  True()                            
        
                      notEmpty(Cons(x,xs)) =  [2]                               
                                           >= [1]                               
                                           =  True()                            
        
                           notEmpty(Nil()) =  [2]                               
                                           >= [1]                               
                                           =  False()                           
        
                    overlap(Cons(x,xs),ys) =  [1]                               
                                           >= [4]                               
                                           =  overlap[Ite][True][Ite](member(x  
                                                                            ,ys)
                                                                     ,Cons(x,xs)
                                                                     ,ys)       
        
                         overlap(Nil(),ys) =  [1]                               
                                           >= [1]                               
                                           =  False()                           
        
           overlap[Ite][True][Ite](False() =  [3]                               
                               ,Cons(x,xs)                                      
                                      ,ys)                                      
                                           >= [1]                               
                                           =  overlap(xs,ys)                    
        
            overlap[Ite][True][Ite](True() =  [2] xs + [1]                      
                                       ,xs                                      
                                      ,ys)                                      
                                           >= [1]                               
                                           =  True()                            
        
      Further, it can be verified that all rules not oriented are covered by the weightgap condition.
*** 1.1.1.1.1 Progress [(O(1),O(n^2))]  ***
    Considered Problem:
      Strict DP Rules:
        
      Strict TRS Rules:
        member(x',Cons(x,xs)) -> member[Ite][True][Ite](!EQ(x,x'),x',Cons(x,xs))
        overlap(Cons(x,xs),ys) -> overlap[Ite][True][Ite](member(x,ys),Cons(x,xs),ys)
      Weak DP Rules:
        
      Weak TRS Rules:
        !EQ(0(),0()) -> True()
        !EQ(0(),S(y)) -> False()
        !EQ(S(x),0()) -> False()
        !EQ(S(x),S(y)) -> !EQ(x,y)
        goal(xs,ys) -> overlap(xs,ys)
        member(x,Nil()) -> False()
        member[Ite][True][Ite](False(),x',Cons(x,xs)) -> member(x',xs)
        member[Ite][True][Ite](True(),x,xs) -> True()
        notEmpty(Cons(x,xs)) -> True()
        notEmpty(Nil()) -> False()
        overlap(Nil(),ys) -> False()
        overlap[Ite][True][Ite](False(),Cons(x,xs),ys) -> overlap(xs,ys)
        overlap[Ite][True][Ite](True(),xs,ys) -> True()
      Signature:
        {!EQ/2,goal/2,member/2,member[Ite][True][Ite]/3,notEmpty/1,overlap/2,overlap[Ite][True][Ite]/3} / {0/0,Cons/2,False/0,Nil/0,S/1,True/0}
      Obligation:
        Innermost
        basic terms: {!EQ,goal,member,member[Ite][True][Ite],notEmpty,overlap,overlap[Ite][True][Ite]}/{0,Cons,False,Nil,S,True}
    Applied Processor:
      WeightGap {wgDimension = 1, wgDegree = 1, wgKind = Algebraic, wgUArgs = UArgs, wgOn = WgOnAny}
    Proof:
      The weightgap principle applies using the following nonconstant growth matrix-interpretation:
        We apply a matrix interpretation of kind constructor based matrix interpretation:
        The following argument positions are considered usable:
          uargs(member[Ite][True][Ite]) = {1},
          uargs(overlap[Ite][True][Ite]) = {1}
        
        Following symbols are considered usable:
          {}
        TcT has computed the following interpretation:
                              p(!EQ) = [4]                  
                                p(0) = [0]                  
                             p(Cons) = [1] x1 + [1] x2 + [2]
                            p(False) = [0]                  
                              p(Nil) = [1]                  
                                p(S) = [1] x1 + [4]         
                             p(True) = [2]                  
                             p(goal) = [5] x1 + [1] x2 + [7]
                           p(member) = [0]                  
           p(member[Ite][True][Ite]) = [1] x1 + [0]         
                         p(notEmpty) = [5]                  
                          p(overlap) = [5] x1 + [5]         
          p(overlap[Ite][True][Ite]) = [1] x1 + [5] x2 + [4]
        
        Following rules are strictly oriented:
        overlap(Cons(x,xs),ys) = [5] x + [5] xs + [15]             
                               > [5] x + [5] xs + [14]             
                               = overlap[Ite][True][Ite](member(x  
                                                               ,ys)
                                                        ,Cons(x,xs)
                                                        ,ys)       
        
        
        Following rules are (at-least) weakly oriented:
                              !EQ(0(),0()) =  [4]                               
                                           >= [2]                               
                                           =  True()                            
        
                             !EQ(0(),S(y)) =  [4]                               
                                           >= [0]                               
                                           =  False()                           
        
                             !EQ(S(x),0()) =  [4]                               
                                           >= [0]                               
                                           =  False()                           
        
                            !EQ(S(x),S(y)) =  [4]                               
                                           >= [4]                               
                                           =  !EQ(x,y)                          
        
                               goal(xs,ys) =  [5] xs + [1] ys + [7]             
                                           >= [5] xs + [5]                      
                                           =  overlap(xs,ys)                    
        
                           member(x,Nil()) =  [0]                               
                                           >= [0]                               
                                           =  False()                           
        
                     member(x',Cons(x,xs)) =  [0]                               
                                           >= [4]                               
                                           =  member[Ite][True][Ite](!EQ(x,x')  
                                                                    ,x'         
                                                                    ,Cons(x,xs))
        
            member[Ite][True][Ite](False() =  [0]                               
                                       ,x'                                      
                              ,Cons(x,xs))                                      
                                           >= [0]                               
                                           =  member(x',xs)                     
        
             member[Ite][True][Ite](True() =  [2]                               
                                        ,x                                      
                                      ,xs)                                      
                                           >= [2]                               
                                           =  True()                            
        
                      notEmpty(Cons(x,xs)) =  [5]                               
                                           >= [2]                               
                                           =  True()                            
        
                           notEmpty(Nil()) =  [5]                               
                                           >= [0]                               
                                           =  False()                           
        
                         overlap(Nil(),ys) =  [10]                              
                                           >= [0]                               
                                           =  False()                           
        
           overlap[Ite][True][Ite](False() =  [5] x + [5] xs + [14]             
                               ,Cons(x,xs)                                      
                                      ,ys)                                      
                                           >= [5] xs + [5]                      
                                           =  overlap(xs,ys)                    
        
            overlap[Ite][True][Ite](True() =  [5] xs + [6]                      
                                       ,xs                                      
                                      ,ys)                                      
                                           >= [2]                               
                                           =  True()                            
        
      Further, it can be verified that all rules not oriented are covered by the weightgap condition.
*** 1.1.1.1.1.1 Progress [(O(1),O(n^2))]  ***
    Considered Problem:
      Strict DP Rules:
        
      Strict TRS Rules:
        member(x',Cons(x,xs)) -> member[Ite][True][Ite](!EQ(x,x'),x',Cons(x,xs))
      Weak DP Rules:
        
      Weak TRS Rules:
        !EQ(0(),0()) -> True()
        !EQ(0(),S(y)) -> False()
        !EQ(S(x),0()) -> False()
        !EQ(S(x),S(y)) -> !EQ(x,y)
        goal(xs,ys) -> overlap(xs,ys)
        member(x,Nil()) -> False()
        member[Ite][True][Ite](False(),x',Cons(x,xs)) -> member(x',xs)
        member[Ite][True][Ite](True(),x,xs) -> True()
        notEmpty(Cons(x,xs)) -> True()
        notEmpty(Nil()) -> False()
        overlap(Cons(x,xs),ys) -> overlap[Ite][True][Ite](member(x,ys),Cons(x,xs),ys)
        overlap(Nil(),ys) -> False()
        overlap[Ite][True][Ite](False(),Cons(x,xs),ys) -> overlap(xs,ys)
        overlap[Ite][True][Ite](True(),xs,ys) -> True()
      Signature:
        {!EQ/2,goal/2,member/2,member[Ite][True][Ite]/3,notEmpty/1,overlap/2,overlap[Ite][True][Ite]/3} / {0/0,Cons/2,False/0,Nil/0,S/1,True/0}
      Obligation:
        Innermost
        basic terms: {!EQ,goal,member,member[Ite][True][Ite],notEmpty,overlap,overlap[Ite][True][Ite]}/{0,Cons,False,Nil,S,True}
    Applied Processor:
      NaturalPI {shape = Mixed 2, restrict = Restrict, uargs = UArgs, urules = URules, selector = Just any strict-rules, greedy = NoGreedy}
    Proof:
      We apply a polynomial interpretation of kind constructor-based(mixed(2)):
      The following argument positions are considered usable:
        uargs(member[Ite][True][Ite]) = {1},
        uargs(overlap[Ite][True][Ite]) = {1}
      
      Following symbols are considered usable:
        {!EQ,goal,member,member[Ite][True][Ite],notEmpty,overlap,overlap[Ite][True][Ite]}
      TcT has computed the following interpretation:
                            p(!EQ) = 0                                          
                              p(0) = 0                                          
                           p(Cons) = 1 + x2                                     
                          p(False) = 0                                          
                            p(Nil) = 0                                          
                              p(S) = 0                                          
                           p(True) = 0                                          
                           p(goal) = 6 + 6*x1 + 6*x1*x2 + 5*x1^2 + 6*x2 + 4*x2^2
                         p(member) = 2 + 3*x2                                   
         p(member[Ite][True][Ite]) = 2*x1 + 3*x3                                
                       p(notEmpty) = 6*x1 + 4*x1^2                              
                        p(overlap) = 4 + 4*x1 + 6*x1*x2 + 6*x2                  
        p(overlap[Ite][True][Ite]) = 2*x1 + 4*x2 + 6*x2*x3                      
      
      Following rules are strictly oriented:
      member(x',Cons(x,xs)) = 5 + 3*xs                          
                            > 3 + 3*xs                          
                            = member[Ite][True][Ite](!EQ(x,x')  
                                                    ,x'         
                                                    ,Cons(x,xs))
      
      
      Following rules are (at-least) weakly oriented:
                            !EQ(0(),0()) =  0                                          
                                         >= 0                                          
                                         =  True()                                     
      
                           !EQ(0(),S(y)) =  0                                          
                                         >= 0                                          
                                         =  False()                                    
      
                           !EQ(S(x),0()) =  0                                          
                                         >= 0                                          
                                         =  False()                                    
      
                          !EQ(S(x),S(y)) =  0                                          
                                         >= 0                                          
                                         =  !EQ(x,y)                                   
      
                             goal(xs,ys) =  6 + 6*xs + 6*xs*ys + 5*xs^2 + 6*ys + 4*ys^2
                                         >= 4 + 4*xs + 6*xs*ys + 6*ys                  
                                         =  overlap(xs,ys)                             
      
                         member(x,Nil()) =  2                                          
                                         >= 0                                          
                                         =  False()                                    
      
          member[Ite][True][Ite](False() =  3 + 3*xs                                   
                                     ,x'                                               
                            ,Cons(x,xs))                                               
                                         >= 2 + 3*xs                                   
                                         =  member(x',xs)                              
      
           member[Ite][True][Ite](True() =  3*xs                                       
                                      ,x                                               
                                    ,xs)                                               
                                         >= 0                                          
                                         =  True()                                     
      
                    notEmpty(Cons(x,xs)) =  10 + 14*xs + 4*xs^2                        
                                         >= 0                                          
                                         =  True()                                     
      
                         notEmpty(Nil()) =  0                                          
                                         >= 0                                          
                                         =  False()                                    
      
                  overlap(Cons(x,xs),ys) =  8 + 4*xs + 6*xs*ys + 12*ys                 
                                         >= 8 + 4*xs + 6*xs*ys + 12*ys                 
                                         =  overlap[Ite][True][Ite](member(x           
                                                                          ,ys)         
                                                                   ,Cons(x,xs)         
                                                                   ,ys)                
      
                       overlap(Nil(),ys) =  4 + 6*ys                                   
                                         >= 0                                          
                                         =  False()                                    
      
         overlap[Ite][True][Ite](False() =  4 + 4*xs + 6*xs*ys + 6*ys                  
                             ,Cons(x,xs)                                               
                                    ,ys)                                               
                                         >= 4 + 4*xs + 6*xs*ys + 6*ys                  
                                         =  overlap(xs,ys)                             
      
          overlap[Ite][True][Ite](True() =  4*xs + 6*xs*ys                             
                                     ,xs                                               
                                    ,ys)                                               
                                         >= 0                                          
                                         =  True()                                     
      
*** 1.1.1.1.1.1.1 Progress [(O(1),O(1))]  ***
    Considered Problem:
      Strict DP Rules:
        
      Strict TRS Rules:
        
      Weak DP Rules:
        
      Weak TRS Rules:
        !EQ(0(),0()) -> True()
        !EQ(0(),S(y)) -> False()
        !EQ(S(x),0()) -> False()
        !EQ(S(x),S(y)) -> !EQ(x,y)
        goal(xs,ys) -> overlap(xs,ys)
        member(x,Nil()) -> False()
        member(x',Cons(x,xs)) -> member[Ite][True][Ite](!EQ(x,x'),x',Cons(x,xs))
        member[Ite][True][Ite](False(),x',Cons(x,xs)) -> member(x',xs)
        member[Ite][True][Ite](True(),x,xs) -> True()
        notEmpty(Cons(x,xs)) -> True()
        notEmpty(Nil()) -> False()
        overlap(Cons(x,xs),ys) -> overlap[Ite][True][Ite](member(x,ys),Cons(x,xs),ys)
        overlap(Nil(),ys) -> False()
        overlap[Ite][True][Ite](False(),Cons(x,xs),ys) -> overlap(xs,ys)
        overlap[Ite][True][Ite](True(),xs,ys) -> True()
      Signature:
        {!EQ/2,goal/2,member/2,member[Ite][True][Ite]/3,notEmpty/1,overlap/2,overlap[Ite][True][Ite]/3} / {0/0,Cons/2,False/0,Nil/0,S/1,True/0}
      Obligation:
        Innermost
        basic terms: {!EQ,goal,member,member[Ite][True][Ite],notEmpty,overlap,overlap[Ite][True][Ite]}/{0,Cons,False,Nil,S,True}
    Applied Processor:
      EmptyProcessor
    Proof:
      The problem is already closed. The intended complexity is O(1).