YES

Problem:
 min(x,0()) -> 0()
 min(0(),y) -> 0()
 min(s(x),s(y)) -> s(min(x,y))
 max(x,0()) -> x
 max(0(),y) -> y
 max(s(x),s(y)) -> s(max(x,y))
 -(x,0()) -> x
 -(s(x),s(y)) -> -(x,y)
 gcd(s(x),0()) -> s(x)
 gcd(0(),s(x)) -> s(x)
 gcd(s(x),s(y)) -> gcd(-(max(x,y),min(x,y)),s(min(x,y)))

Proof:
 DP Processor:
  DPs:
   min#(s(x),s(y)) -> min#(x,y)
   max#(s(x),s(y)) -> max#(x,y)
   -#(s(x),s(y)) -> -#(x,y)
   gcd#(s(x),s(y)) -> min#(x,y)
   gcd#(s(x),s(y)) -> max#(x,y)
   gcd#(s(x),s(y)) -> -#(max(x,y),min(x,y))
   gcd#(s(x),s(y)) -> gcd#(-(max(x,y),min(x,y)),s(min(x,y)))
  TRS:
   min(x,0()) -> 0()
   min(0(),y) -> 0()
   min(s(x),s(y)) -> s(min(x,y))
   max(x,0()) -> x
   max(0(),y) -> y
   max(s(x),s(y)) -> s(max(x,y))
   -(x,0()) -> x
   -(s(x),s(y)) -> -(x,y)
   gcd(s(x),0()) -> s(x)
   gcd(0(),s(x)) -> s(x)
   gcd(s(x),s(y)) -> gcd(-(max(x,y),min(x,y)),s(min(x,y)))
  TDG Processor:
   DPs:
    min#(s(x),s(y)) -> min#(x,y)
    max#(s(x),s(y)) -> max#(x,y)
    -#(s(x),s(y)) -> -#(x,y)
    gcd#(s(x),s(y)) -> min#(x,y)
    gcd#(s(x),s(y)) -> max#(x,y)
    gcd#(s(x),s(y)) -> -#(max(x,y),min(x,y))
    gcd#(s(x),s(y)) -> gcd#(-(max(x,y),min(x,y)),s(min(x,y)))
   TRS:
    min(x,0()) -> 0()
    min(0(),y) -> 0()
    min(s(x),s(y)) -> s(min(x,y))
    max(x,0()) -> x
    max(0(),y) -> y
    max(s(x),s(y)) -> s(max(x,y))
    -(x,0()) -> x
    -(s(x),s(y)) -> -(x,y)
    gcd(s(x),0()) -> s(x)
    gcd(0(),s(x)) -> s(x)
    gcd(s(x),s(y)) -> gcd(-(max(x,y),min(x,y)),s(min(x,y)))
   graph:
    gcd#(s(x),s(y)) -> gcd#(-(max(x,y),min(x,y)),s(min(x,y))) ->
    gcd#(s(x),s(y)) -> gcd#(-(max(x,y),min(x,y)),s(min(x,y)))
    gcd#(s(x),s(y)) -> gcd#(-(max(x,y),min(x,y)),s(min(x,y))) ->
    gcd#(s(x),s(y)) -> -#(max(x,y),min(x,y))
    gcd#(s(x),s(y)) -> gcd#(-(max(x,y),min(x,y)),s(min(x,y))) ->
    gcd#(s(x),s(y)) -> max#(x,y)
    gcd#(s(x),s(y)) -> gcd#(-(max(x,y),min(x,y)),s(min(x,y))) ->
    gcd#(s(x),s(y)) -> min#(x,y)
    gcd#(s(x),s(y)) -> -#(max(x,y),min(x,y)) ->
    -#(s(x),s(y)) -> -#(x,y)
    gcd#(s(x),s(y)) -> max#(x,y) -> max#(s(x),s(y)) -> max#(x,y)
    gcd#(s(x),s(y)) -> min#(x,y) -> min#(s(x),s(y)) -> min#(x,y)
    -#(s(x),s(y)) -> -#(x,y) -> -#(s(x),s(y)) -> -#(x,y)
    max#(s(x),s(y)) -> max#(x,y) -> max#(s(x),s(y)) -> max#(x,y)
    min#(s(x),s(y)) -> min#(x,y) -> min#(s(x),s(y)) -> min#(x,y)
   SCC Processor:
    #sccs: 4
    #rules: 4
    #arcs: 10/49
    DPs:
     gcd#(s(x),s(y)) -> gcd#(-(max(x,y),min(x,y)),s(min(x,y)))
    TRS:
     min(x,0()) -> 0()
     min(0(),y) -> 0()
     min(s(x),s(y)) -> s(min(x,y))
     max(x,0()) -> x
     max(0(),y) -> y
     max(s(x),s(y)) -> s(max(x,y))
     -(x,0()) -> x
     -(s(x),s(y)) -> -(x,y)
     gcd(s(x),0()) -> s(x)
     gcd(0(),s(x)) -> s(x)
     gcd(s(x),s(y)) -> gcd(-(max(x,y),min(x,y)),s(min(x,y)))
    Matrix Interpretation Processor: dim=1
     
     interpretation:
      [gcd#](x0, x1) = 4x0 + 2x1,
      
      [gcd](x0, x1) = 4x0 + 3x1,
      
      [-](x0, x1) = x0,
      
      [max](x0, x1) = x0 + 2x1,
      
      [s](x0) = 4x0 + 1,
      
      [min](x0, x1) = x0,
      
      [0] = 0
     orientation:
      gcd#(s(x),s(y)) = 16x + 8y + 6 >= 12x + 8y + 2 = gcd#(-(max(x,y),min(x,y)),s(min(x,y)))
      
      min(x,0()) = x >= 0 = 0()
      
      min(0(),y) = 0 >= 0 = 0()
      
      min(s(x),s(y)) = 4x + 1 >= 4x + 1 = s(min(x,y))
      
      max(x,0()) = x >= x = x
      
      max(0(),y) = 2y >= y = y
      
      max(s(x),s(y)) = 4x + 8y + 3 >= 4x + 8y + 1 = s(max(x,y))
      
      -(x,0()) = x >= x = x
      
      -(s(x),s(y)) = 4x + 1 >= x = -(x,y)
      
      gcd(s(x),0()) = 16x + 4 >= 4x + 1 = s(x)
      
      gcd(0(),s(x)) = 12x + 3 >= 4x + 1 = s(x)
      
      gcd(s(x),s(y)) = 16x + 12y + 7 >= 16x + 8y + 3 = gcd(-(max(x,y),min(x,y)),s(min(x,y)))
     problem:
      DPs:
       
      TRS:
       min(x,0()) -> 0()
       min(0(),y) -> 0()
       min(s(x),s(y)) -> s(min(x,y))
       max(x,0()) -> x
       max(0(),y) -> y
       max(s(x),s(y)) -> s(max(x,y))
       -(x,0()) -> x
       -(s(x),s(y)) -> -(x,y)
       gcd(s(x),0()) -> s(x)
       gcd(0(),s(x)) -> s(x)
       gcd(s(x),s(y)) -> gcd(-(max(x,y),min(x,y)),s(min(x,y)))
     Qed
    
    DPs:
     -#(s(x),s(y)) -> -#(x,y)
    TRS:
     min(x,0()) -> 0()
     min(0(),y) -> 0()
     min(s(x),s(y)) -> s(min(x,y))
     max(x,0()) -> x
     max(0(),y) -> y
     max(s(x),s(y)) -> s(max(x,y))
     -(x,0()) -> x
     -(s(x),s(y)) -> -(x,y)
     gcd(s(x),0()) -> s(x)
     gcd(0(),s(x)) -> s(x)
     gcd(s(x),s(y)) -> gcd(-(max(x,y),min(x,y)),s(min(x,y)))
    Matrix Interpretation Processor: dim=1
     
     interpretation:
      [-#](x0, x1) = x1 + 4,
      
      [gcd](x0, x1) = 2x0 + x1 + 4,
      
      [-](x0, x1) = x0 + 1,
      
      [max](x0, x1) = x0 + x1,
      
      [s](x0) = 2x0 + 1,
      
      [min](x0, x1) = x0,
      
      [0] = 0
     orientation:
      -#(s(x),s(y)) = 2y + 5 >= y + 4 = -#(x,y)
      
      min(x,0()) = x >= 0 = 0()
      
      min(0(),y) = 0 >= 0 = 0()
      
      min(s(x),s(y)) = 2x + 1 >= 2x + 1 = s(min(x,y))
      
      max(x,0()) = x >= x = x
      
      max(0(),y) = y >= y = y
      
      max(s(x),s(y)) = 2x + 2y + 2 >= 2x + 2y + 1 = s(max(x,y))
      
      -(x,0()) = x + 1 >= x = x
      
      -(s(x),s(y)) = 2x + 2 >= x + 1 = -(x,y)
      
      gcd(s(x),0()) = 4x + 6 >= 2x + 1 = s(x)
      
      gcd(0(),s(x)) = 2x + 5 >= 2x + 1 = s(x)
      
      gcd(s(x),s(y)) = 4x + 2y + 7 >= 4x + 2y + 7 = gcd(-(max(x,y),min(x,y)),s(min(x,y)))
     problem:
      DPs:
       
      TRS:
       min(x,0()) -> 0()
       min(0(),y) -> 0()
       min(s(x),s(y)) -> s(min(x,y))
       max(x,0()) -> x
       max(0(),y) -> y
       max(s(x),s(y)) -> s(max(x,y))
       -(x,0()) -> x
       -(s(x),s(y)) -> -(x,y)
       gcd(s(x),0()) -> s(x)
       gcd(0(),s(x)) -> s(x)
       gcd(s(x),s(y)) -> gcd(-(max(x,y),min(x,y)),s(min(x,y)))
     Qed
    
    DPs:
     max#(s(x),s(y)) -> max#(x,y)
    TRS:
     min(x,0()) -> 0()
     min(0(),y) -> 0()
     min(s(x),s(y)) -> s(min(x,y))
     max(x,0()) -> x
     max(0(),y) -> y
     max(s(x),s(y)) -> s(max(x,y))
     -(x,0()) -> x
     -(s(x),s(y)) -> -(x,y)
     gcd(s(x),0()) -> s(x)
     gcd(0(),s(x)) -> s(x)
     gcd(s(x),s(y)) -> gcd(-(max(x,y),min(x,y)),s(min(x,y)))
    Matrix Interpretation Processor: dim=1
     
     interpretation:
      [max#](x0, x1) = x1 + 4,
      
      [gcd](x0, x1) = 2x0 + x1 + 4,
      
      [-](x0, x1) = x0 + 1,
      
      [max](x0, x1) = x0 + x1,
      
      [s](x0) = 2x0 + 1,
      
      [min](x0, x1) = x0,
      
      [0] = 0
     orientation:
      max#(s(x),s(y)) = 2y + 5 >= y + 4 = max#(x,y)
      
      min(x,0()) = x >= 0 = 0()
      
      min(0(),y) = 0 >= 0 = 0()
      
      min(s(x),s(y)) = 2x + 1 >= 2x + 1 = s(min(x,y))
      
      max(x,0()) = x >= x = x
      
      max(0(),y) = y >= y = y
      
      max(s(x),s(y)) = 2x + 2y + 2 >= 2x + 2y + 1 = s(max(x,y))
      
      -(x,0()) = x + 1 >= x = x
      
      -(s(x),s(y)) = 2x + 2 >= x + 1 = -(x,y)
      
      gcd(s(x),0()) = 4x + 6 >= 2x + 1 = s(x)
      
      gcd(0(),s(x)) = 2x + 5 >= 2x + 1 = s(x)
      
      gcd(s(x),s(y)) = 4x + 2y + 7 >= 4x + 2y + 7 = gcd(-(max(x,y),min(x,y)),s(min(x,y)))
     problem:
      DPs:
       
      TRS:
       min(x,0()) -> 0()
       min(0(),y) -> 0()
       min(s(x),s(y)) -> s(min(x,y))
       max(x,0()) -> x
       max(0(),y) -> y
       max(s(x),s(y)) -> s(max(x,y))
       -(x,0()) -> x
       -(s(x),s(y)) -> -(x,y)
       gcd(s(x),0()) -> s(x)
       gcd(0(),s(x)) -> s(x)
       gcd(s(x),s(y)) -> gcd(-(max(x,y),min(x,y)),s(min(x,y)))
     Qed
   
   DPs:
    min#(s(x),s(y)) -> min#(x,y)
   TRS:
    min(x,0()) -> 0()
    min(0(),y) -> 0()
    min(s(x),s(y)) -> s(min(x,y))
    max(x,0()) -> x
    max(0(),y) -> y
    max(s(x),s(y)) -> s(max(x,y))
    -(x,0()) -> x
    -(s(x),s(y)) -> -(x,y)
    gcd(s(x),0()) -> s(x)
    gcd(0(),s(x)) -> s(x)
    gcd(s(x),s(y)) -> gcd(-(max(x,y),min(x,y)),s(min(x,y)))
   Matrix Interpretation Processor: dim=1
    
    interpretation:
     [min#](x0, x1) = x1 + 4,
     
     [gcd](x0, x1) = 2x0 + x1 + 4,
     
     [-](x0, x1) = x0 + 1,
     
     [max](x0, x1) = x0 + x1,
     
     [s](x0) = 2x0 + 1,
     
     [min](x0, x1) = x0,
     
     [0] = 0
    orientation:
     min#(s(x),s(y)) = 2y + 5 >= y + 4 = min#(x,y)
     
     min(x,0()) = x >= 0 = 0()
     
     min(0(),y) = 0 >= 0 = 0()
     
     min(s(x),s(y)) = 2x + 1 >= 2x + 1 = s(min(x,y))
     
     max(x,0()) = x >= x = x
     
     max(0(),y) = y >= y = y
     
     max(s(x),s(y)) = 2x + 2y + 2 >= 2x + 2y + 1 = s(max(x,y))
     
     -(x,0()) = x + 1 >= x = x
     
     -(s(x),s(y)) = 2x + 2 >= x + 1 = -(x,y)
     
     gcd(s(x),0()) = 4x + 6 >= 2x + 1 = s(x)
     
     gcd(0(),s(x)) = 2x + 5 >= 2x + 1 = s(x)
     
     gcd(s(x),s(y)) = 4x + 2y + 7 >= 4x + 2y + 7 = gcd(-(max(x,y),min(x,y)),s(min(x,y)))
    problem:
     DPs:
      
     TRS:
      min(x,0()) -> 0()
      min(0(),y) -> 0()
      min(s(x),s(y)) -> s(min(x,y))
      max(x,0()) -> x
      max(0(),y) -> y
      max(s(x),s(y)) -> s(max(x,y))
      -(x,0()) -> x
      -(s(x),s(y)) -> -(x,y)
      gcd(s(x),0()) -> s(x)
      gcd(0(),s(x)) -> s(x)
      gcd(s(x),s(y)) -> gcd(-(max(x,y),min(x,y)),s(min(x,y)))
    Qed