WORST_CASE(Omega(n^1),O(n^2))
* Step 1: Sum WORST_CASE(Omega(n^1),O(n^2))
    + Considered Problem:
        - Strict TRS:
            gcd(0(),y) -> y
            gcd(s(x),0()) -> s(x)
            gcd(s(x),s(y)) -> if_gcd(le(y,x),s(x),s(y))
            if_gcd(false(),s(x),s(y)) -> gcd(minus(y,x),s(x))
            if_gcd(true(),s(x),s(y)) -> gcd(minus(x,y),s(y))
            le(0(),y) -> true()
            le(s(x),0()) -> false()
            le(s(x),s(y)) -> le(x,y)
            minus(x,0()) -> x
            minus(s(x),s(y)) -> minus(x,y)
        - Signature:
            {gcd/2,if_gcd/3,le/2,minus/2} / {0/0,false/0,s/1,true/0}
        - Obligation:
            innermost runtime complexity wrt. defined symbols {gcd,if_gcd,le,minus} and constructors {0,false,s,true}
    + Applied Processor:
        Sum {left = someStrategy, right = someStrategy}
    + Details:
        ()
** Step 1.a:1: DecreasingLoops WORST_CASE(Omega(n^1),?)
    + Considered Problem:
        - Strict TRS:
            gcd(0(),y) -> y
            gcd(s(x),0()) -> s(x)
            gcd(s(x),s(y)) -> if_gcd(le(y,x),s(x),s(y))
            if_gcd(false(),s(x),s(y)) -> gcd(minus(y,x),s(x))
            if_gcd(true(),s(x),s(y)) -> gcd(minus(x,y),s(y))
            le(0(),y) -> true()
            le(s(x),0()) -> false()
            le(s(x),s(y)) -> le(x,y)
            minus(x,0()) -> x
            minus(s(x),s(y)) -> minus(x,y)
        - Signature:
            {gcd/2,if_gcd/3,le/2,minus/2} / {0/0,false/0,s/1,true/0}
        - Obligation:
            innermost runtime complexity wrt. defined symbols {gcd,if_gcd,le,minus} and constructors {0,false,s,true}
    + Applied Processor:
        DecreasingLoops {bound = AnyLoop, narrow = 10}
    + Details:
        The system has following decreasing Loops:
          le(x,y){x -> s(x),y -> s(y)} =
            le(s(x),s(y)) ->^+ le(x,y)
              = C[le(x,y) = le(x,y){}]

** Step 1.b:1: NaturalPI WORST_CASE(?,O(n^2))
    + Considered Problem:
        - Strict TRS:
            gcd(0(),y) -> y
            gcd(s(x),0()) -> s(x)
            gcd(s(x),s(y)) -> if_gcd(le(y,x),s(x),s(y))
            if_gcd(false(),s(x),s(y)) -> gcd(minus(y,x),s(x))
            if_gcd(true(),s(x),s(y)) -> gcd(minus(x,y),s(y))
            le(0(),y) -> true()
            le(s(x),0()) -> false()
            le(s(x),s(y)) -> le(x,y)
            minus(x,0()) -> x
            minus(s(x),s(y)) -> minus(x,y)
        - Signature:
            {gcd/2,if_gcd/3,le/2,minus/2} / {0/0,false/0,s/1,true/0}
        - Obligation:
            innermost runtime complexity wrt. defined symbols {gcd,if_gcd,le,minus} and constructors {0,false,s,true}
    + Applied Processor:
        NaturalPI {shape = Linear, restrict = Restrict, uargs = UArgs, urules = URules, selector = Just any strict-rules}
    + Details:
        We apply a polynomial interpretation of kind constructor-based(linear):
        The following argument positions are considered usable:
          uargs(gcd) = {1},
          uargs(if_gcd) = {1}
        
        Following symbols are considered usable:
          {gcd,if_gcd,le,minus}
        TcT has computed the following interpretation:
               p(0) = 0                 
           p(false) = 0                 
             p(gcd) = 2 + x1 + x2       
          p(if_gcd) = 2 + 4*x1 + x2 + x3
              p(le) = 0                 
           p(minus) = x1                
               p(s) = x1                
            p(true) = 0                 
        
        Following rules are strictly oriented:
           gcd(0(),y) = 2 + y
                      > y    
                      = y    
        
        gcd(s(x),0()) = 2 + x
                      > x    
                      = s(x) 
        
        
        Following rules are (at-least) weakly oriented:
                   gcd(s(x),s(y)) =  2 + x + y                
                                  >= 2 + x + y                
                                  =  if_gcd(le(y,x),s(x),s(y))
        
        if_gcd(false(),s(x),s(y)) =  2 + x + y                
                                  >= 2 + x + y                
                                  =  gcd(minus(y,x),s(x))     
        
         if_gcd(true(),s(x),s(y)) =  2 + x + y                
                                  >= 2 + x + y                
                                  =  gcd(minus(x,y),s(y))     
        
                        le(0(),y) =  0                        
                                  >= 0                        
                                  =  true()                   
        
                     le(s(x),0()) =  0                        
                                  >= 0                        
                                  =  false()                  
        
                    le(s(x),s(y)) =  0                        
                                  >= 0                        
                                  =  le(x,y)                  
        
                     minus(x,0()) =  x                        
                                  >= x                        
                                  =  x                        
        
                 minus(s(x),s(y)) =  x                        
                                  >= x                        
                                  =  minus(x,y)               
        
** Step 1.b:2: NaturalPI WORST_CASE(?,O(n^2))
    + Considered Problem:
        - Strict TRS:
            gcd(s(x),s(y)) -> if_gcd(le(y,x),s(x),s(y))
            if_gcd(false(),s(x),s(y)) -> gcd(minus(y,x),s(x))
            if_gcd(true(),s(x),s(y)) -> gcd(minus(x,y),s(y))
            le(0(),y) -> true()
            le(s(x),0()) -> false()
            le(s(x),s(y)) -> le(x,y)
            minus(x,0()) -> x
            minus(s(x),s(y)) -> minus(x,y)
        - Weak TRS:
            gcd(0(),y) -> y
            gcd(s(x),0()) -> s(x)
        - Signature:
            {gcd/2,if_gcd/3,le/2,minus/2} / {0/0,false/0,s/1,true/0}
        - Obligation:
            innermost runtime complexity wrt. defined symbols {gcd,if_gcd,le,minus} and constructors {0,false,s,true}
    + Applied Processor:
        NaturalPI {shape = Linear, restrict = Restrict, uargs = UArgs, urules = URules, selector = Just any strict-rules}
    + Details:
        We apply a polynomial interpretation of kind constructor-based(linear):
        The following argument positions are considered usable:
          uargs(gcd) = {1},
          uargs(if_gcd) = {1}
        
        Following symbols are considered usable:
          {gcd,if_gcd,le,minus}
        TcT has computed the following interpretation:
               p(0) = 0                     
           p(false) = 0                     
             p(gcd) = 4 + 4*x1 + 4*x2       
          p(if_gcd) = 4 + 4*x1 + 4*x2 + 4*x3
              p(le) = 0                     
           p(minus) = x1                    
               p(s) = 1 + x1                
            p(true) = 0                     
        
        Following rules are strictly oriented:
        if_gcd(false(),s(x),s(y)) = 12 + 4*x + 4*y      
                                  > 8 + 4*x + 4*y       
                                  = gcd(minus(y,x),s(x))
        
         if_gcd(true(),s(x),s(y)) = 12 + 4*x + 4*y      
                                  > 8 + 4*x + 4*y       
                                  = gcd(minus(x,y),s(y))
        
                 minus(s(x),s(y)) = 1 + x               
                                  > x                   
                                  = minus(x,y)          
        
        
        Following rules are (at-least) weakly oriented:
            gcd(0(),y) =  4 + 4*y                  
                       >= y                        
                       =  y                        
        
         gcd(s(x),0()) =  8 + 4*x                  
                       >= 1 + x                    
                       =  s(x)                     
        
        gcd(s(x),s(y)) =  12 + 4*x + 4*y           
                       >= 12 + 4*x + 4*y           
                       =  if_gcd(le(y,x),s(x),s(y))
        
             le(0(),y) =  0                        
                       >= 0                        
                       =  true()                   
        
          le(s(x),0()) =  0                        
                       >= 0                        
                       =  false()                  
        
         le(s(x),s(y)) =  0                        
                       >= 0                        
                       =  le(x,y)                  
        
          minus(x,0()) =  x                        
                       >= x                        
                       =  x                        
        
** Step 1.b:3: NaturalPI WORST_CASE(?,O(n^2))
    + Considered Problem:
        - Strict TRS:
            gcd(s(x),s(y)) -> if_gcd(le(y,x),s(x),s(y))
            le(0(),y) -> true()
            le(s(x),0()) -> false()
            le(s(x),s(y)) -> le(x,y)
            minus(x,0()) -> x
        - Weak TRS:
            gcd(0(),y) -> y
            gcd(s(x),0()) -> s(x)
            if_gcd(false(),s(x),s(y)) -> gcd(minus(y,x),s(x))
            if_gcd(true(),s(x),s(y)) -> gcd(minus(x,y),s(y))
            minus(s(x),s(y)) -> minus(x,y)
        - Signature:
            {gcd/2,if_gcd/3,le/2,minus/2} / {0/0,false/0,s/1,true/0}
        - Obligation:
            innermost runtime complexity wrt. defined symbols {gcd,if_gcd,le,minus} and constructors {0,false,s,true}
    + Applied Processor:
        NaturalPI {shape = Linear, restrict = Restrict, uargs = UArgs, urules = URules, selector = Just any strict-rules}
    + Details:
        We apply a polynomial interpretation of kind constructor-based(linear):
        The following argument positions are considered usable:
          uargs(gcd) = {1},
          uargs(if_gcd) = {1}
        
        Following symbols are considered usable:
          {gcd,if_gcd,le,minus}
        TcT has computed the following interpretation:
               p(0) = 3             
           p(false) = 2             
             p(gcd) = 5 + x1 + x2   
          p(if_gcd) = 2*x1 + x2 + x3
              p(le) = 2             
           p(minus) = x1            
               p(s) = 4 + x1        
            p(true) = 1             
        
        Following rules are strictly oriented:
        gcd(s(x),s(y)) = 13 + x + y               
                       > 12 + x + y               
                       = if_gcd(le(y,x),s(x),s(y))
        
             le(0(),y) = 2                        
                       > 1                        
                       = true()                   
        
        
        Following rules are (at-least) weakly oriented:
                       gcd(0(),y) =  8 + y               
                                  >= y                   
                                  =  y                   
        
                    gcd(s(x),0()) =  12 + x              
                                  >= 4 + x               
                                  =  s(x)                
        
        if_gcd(false(),s(x),s(y)) =  12 + x + y          
                                  >= 9 + x + y           
                                  =  gcd(minus(y,x),s(x))
        
         if_gcd(true(),s(x),s(y)) =  10 + x + y          
                                  >= 9 + x + y           
                                  =  gcd(minus(x,y),s(y))
        
                     le(s(x),0()) =  2                   
                                  >= 2                   
                                  =  false()             
        
                    le(s(x),s(y)) =  2                   
                                  >= 2                   
                                  =  le(x,y)             
        
                     minus(x,0()) =  x                   
                                  >= x                   
                                  =  x                   
        
                 minus(s(x),s(y)) =  4 + x               
                                  >= x                   
                                  =  minus(x,y)          
        
** Step 1.b:4: NaturalPI WORST_CASE(?,O(n^2))
    + Considered Problem:
        - Strict TRS:
            le(s(x),0()) -> false()
            le(s(x),s(y)) -> le(x,y)
            minus(x,0()) -> x
        - Weak TRS:
            gcd(0(),y) -> y
            gcd(s(x),0()) -> s(x)
            gcd(s(x),s(y)) -> if_gcd(le(y,x),s(x),s(y))
            if_gcd(false(),s(x),s(y)) -> gcd(minus(y,x),s(x))
            if_gcd(true(),s(x),s(y)) -> gcd(minus(x,y),s(y))
            le(0(),y) -> true()
            minus(s(x),s(y)) -> minus(x,y)
        - Signature:
            {gcd/2,if_gcd/3,le/2,minus/2} / {0/0,false/0,s/1,true/0}
        - Obligation:
            innermost runtime complexity wrt. defined symbols {gcd,if_gcd,le,minus} and constructors {0,false,s,true}
    + Applied Processor:
        NaturalPI {shape = Linear, restrict = Restrict, uargs = UArgs, urules = URules, selector = Just any strict-rules}
    + Details:
        We apply a polynomial interpretation of kind constructor-based(linear):
        The following argument positions are considered usable:
          uargs(gcd) = {1},
          uargs(if_gcd) = {1}
        
        Following symbols are considered usable:
          {gcd,if_gcd,le,minus}
        TcT has computed the following interpretation:
               p(0) = 0                     
           p(false) = 2                     
             p(gcd) = 5 + 4*x1 + 4*x2       
          p(if_gcd) = 1 + 2*x1 + 4*x2 + 4*x3
              p(le) = 2                     
           p(minus) = 1 + x1                
               p(s) = 1 + x1                
            p(true) = 2                     
        
        Following rules are strictly oriented:
        minus(x,0()) = 1 + x
                     > x    
                     = x    
        
        
        Following rules are (at-least) weakly oriented:
                       gcd(0(),y) =  5 + 4*y                  
                                  >= y                        
                                  =  y                        
        
                    gcd(s(x),0()) =  9 + 4*x                  
                                  >= 1 + x                    
                                  =  s(x)                     
        
                   gcd(s(x),s(y)) =  13 + 4*x + 4*y           
                                  >= 13 + 4*x + 4*y           
                                  =  if_gcd(le(y,x),s(x),s(y))
        
        if_gcd(false(),s(x),s(y)) =  13 + 4*x + 4*y           
                                  >= 13 + 4*x + 4*y           
                                  =  gcd(minus(y,x),s(x))     
        
         if_gcd(true(),s(x),s(y)) =  13 + 4*x + 4*y           
                                  >= 13 + 4*x + 4*y           
                                  =  gcd(minus(x,y),s(y))     
        
                        le(0(),y) =  2                        
                                  >= 2                        
                                  =  true()                   
        
                     le(s(x),0()) =  2                        
                                  >= 2                        
                                  =  false()                  
        
                    le(s(x),s(y)) =  2                        
                                  >= 2                        
                                  =  le(x,y)                  
        
                 minus(s(x),s(y)) =  2 + x                    
                                  >= 1 + x                    
                                  =  minus(x,y)               
        
** Step 1.b:5: NaturalPI WORST_CASE(?,O(n^2))
    + Considered Problem:
        - Strict TRS:
            le(s(x),0()) -> false()
            le(s(x),s(y)) -> le(x,y)
        - Weak TRS:
            gcd(0(),y) -> y
            gcd(s(x),0()) -> s(x)
            gcd(s(x),s(y)) -> if_gcd(le(y,x),s(x),s(y))
            if_gcd(false(),s(x),s(y)) -> gcd(minus(y,x),s(x))
            if_gcd(true(),s(x),s(y)) -> gcd(minus(x,y),s(y))
            le(0(),y) -> true()
            minus(x,0()) -> x
            minus(s(x),s(y)) -> minus(x,y)
        - Signature:
            {gcd/2,if_gcd/3,le/2,minus/2} / {0/0,false/0,s/1,true/0}
        - Obligation:
            innermost runtime complexity wrt. defined symbols {gcd,if_gcd,le,minus} and constructors {0,false,s,true}
    + Applied Processor:
        NaturalPI {shape = Linear, restrict = Restrict, uargs = UArgs, urules = URules, selector = Just any strict-rules}
    + Details:
        We apply a polynomial interpretation of kind constructor-based(linear):
        The following argument positions are considered usable:
          uargs(gcd) = {1},
          uargs(if_gcd) = {1}
        
        Following symbols are considered usable:
          {gcd,if_gcd,le,minus}
        TcT has computed the following interpretation:
               p(0) = 0               
           p(false) = 0               
             p(gcd) = 7 + x1 + x2     
          p(if_gcd) = 4 + x1 + x2 + x3
              p(le) = 2               
           p(minus) = x1              
               p(s) = 4 + x1          
            p(true) = 0               
        
        Following rules are strictly oriented:
        le(s(x),0()) = 2      
                     > 0      
                     = false()
        
        
        Following rules are (at-least) weakly oriented:
                       gcd(0(),y) =  7 + y                    
                                  >= y                        
                                  =  y                        
        
                    gcd(s(x),0()) =  11 + x                   
                                  >= 4 + x                    
                                  =  s(x)                     
        
                   gcd(s(x),s(y)) =  15 + x + y               
                                  >= 14 + x + y               
                                  =  if_gcd(le(y,x),s(x),s(y))
        
        if_gcd(false(),s(x),s(y)) =  12 + x + y               
                                  >= 11 + x + y               
                                  =  gcd(minus(y,x),s(x))     
        
         if_gcd(true(),s(x),s(y)) =  12 + x + y               
                                  >= 11 + x + y               
                                  =  gcd(minus(x,y),s(y))     
        
                        le(0(),y) =  2                        
                                  >= 0                        
                                  =  true()                   
        
                    le(s(x),s(y)) =  2                        
                                  >= 2                        
                                  =  le(x,y)                  
        
                     minus(x,0()) =  x                        
                                  >= x                        
                                  =  x                        
        
                 minus(s(x),s(y)) =  4 + x                    
                                  >= x                        
                                  =  minus(x,y)               
        
** Step 1.b:6: NaturalPI WORST_CASE(?,O(n^2))
    + Considered Problem:
        - Strict TRS:
            le(s(x),s(y)) -> le(x,y)
        - Weak TRS:
            gcd(0(),y) -> y
            gcd(s(x),0()) -> s(x)
            gcd(s(x),s(y)) -> if_gcd(le(y,x),s(x),s(y))
            if_gcd(false(),s(x),s(y)) -> gcd(minus(y,x),s(x))
            if_gcd(true(),s(x),s(y)) -> gcd(minus(x,y),s(y))
            le(0(),y) -> true()
            le(s(x),0()) -> false()
            minus(x,0()) -> x
            minus(s(x),s(y)) -> minus(x,y)
        - Signature:
            {gcd/2,if_gcd/3,le/2,minus/2} / {0/0,false/0,s/1,true/0}
        - Obligation:
            innermost runtime complexity wrt. defined symbols {gcd,if_gcd,le,minus} and constructors {0,false,s,true}
    + Applied Processor:
        NaturalPI {shape = Mixed 2, restrict = Restrict, uargs = UArgs, urules = URules, selector = Just any strict-rules}
    + Details:
        We apply a polynomial interpretation of kind constructor-based(mixed(2)):
        The following argument positions are considered usable:
          uargs(gcd) = {1},
          uargs(if_gcd) = {1}
        
        Following symbols are considered usable:
          {gcd,if_gcd,le,minus}
        TcT has computed the following interpretation:
               p(0) = 1                                   
           p(false) = 0                                   
             p(gcd) = 4*x1 + 5*x1*x2 + 2*x1^2 + 2*x2^2    
          p(if_gcd) = 1 + 4*x1 + 5*x2*x3 + 2*x2^2 + 2*x3^2
              p(le) = x2                                  
           p(minus) = x1                                  
               p(s) = 1 + x1                              
            p(true) = 0                                   
        
        Following rules are strictly oriented:
        le(s(x),s(y)) = 1 + y  
                      > y      
                      = le(x,y)
        
        
        Following rules are (at-least) weakly oriented:
                       gcd(0(),y) =  6 + 5*y + 2*y^2                        
                                  >= y                                      
                                  =  y                                      
        
                    gcd(s(x),0()) =  13 + 13*x + 2*x^2                      
                                  >= 1 + x                                  
                                  =  s(x)                                   
        
                   gcd(s(x),s(y)) =  13 + 13*x + 5*x*y + 2*x^2 + 9*y + 2*y^2
                                  >= 10 + 13*x + 5*x*y + 2*x^2 + 9*y + 2*y^2
                                  =  if_gcd(le(y,x),s(x),s(y))              
        
        if_gcd(false(),s(x),s(y)) =  10 + 9*x + 5*x*y + 2*x^2 + 9*y + 2*y^2 
                                  >= 2 + 4*x + 5*x*y + 2*x^2 + 9*y + 2*y^2  
                                  =  gcd(minus(y,x),s(x))                   
        
         if_gcd(true(),s(x),s(y)) =  10 + 9*x + 5*x*y + 2*x^2 + 9*y + 2*y^2 
                                  >= 2 + 9*x + 5*x*y + 2*x^2 + 4*y + 2*y^2  
                                  =  gcd(minus(x,y),s(y))                   
        
                        le(0(),y) =  y                                      
                                  >= 0                                      
                                  =  true()                                 
        
                     le(s(x),0()) =  1                                      
                                  >= 0                                      
                                  =  false()                                
        
                     minus(x,0()) =  x                                      
                                  >= x                                      
                                  =  x                                      
        
                 minus(s(x),s(y)) =  1 + x                                  
                                  >= x                                      
                                  =  minus(x,y)                             
        
** Step 1.b:7: EmptyProcessor WORST_CASE(?,O(1))
    + Considered Problem:
        - Weak TRS:
            gcd(0(),y) -> y
            gcd(s(x),0()) -> s(x)
            gcd(s(x),s(y)) -> if_gcd(le(y,x),s(x),s(y))
            if_gcd(false(),s(x),s(y)) -> gcd(minus(y,x),s(x))
            if_gcd(true(),s(x),s(y)) -> gcd(minus(x,y),s(y))
            le(0(),y) -> true()
            le(s(x),0()) -> false()
            le(s(x),s(y)) -> le(x,y)
            minus(x,0()) -> x
            minus(s(x),s(y)) -> minus(x,y)
        - Signature:
            {gcd/2,if_gcd/3,le/2,minus/2} / {0/0,false/0,s/1,true/0}
        - Obligation:
            innermost runtime complexity wrt. defined symbols {gcd,if_gcd,le,minus} and constructors {0,false,s,true}
    + Applied Processor:
        EmptyProcessor
    + Details:
        The problem is already closed. The intended complexity is O(1).

WORST_CASE(Omega(n^1),O(n^2))