YES

Problem:
 a(x1) -> x1
 a(a(b(x1))) -> c(a(a(a(x1))))
 c(a(x1)) -> b(b(x1))

Proof:
 String Reversal Processor:
  a(x1) -> x1
  b(a(a(x1))) -> a(a(a(c(x1))))
  a(c(x1)) -> b(b(x1))
  DP Processor:
   DPs:
    b#(a(a(x1))) -> a#(c(x1))
    b#(a(a(x1))) -> a#(a(c(x1)))
    b#(a(a(x1))) -> a#(a(a(c(x1))))
    a#(c(x1)) -> b#(x1)
    a#(c(x1)) -> b#(b(x1))
   TRS:
    a(x1) -> x1
    b(a(a(x1))) -> a(a(a(c(x1))))
    a(c(x1)) -> b(b(x1))
   TDG Processor:
    DPs:
     b#(a(a(x1))) -> a#(c(x1))
     b#(a(a(x1))) -> a#(a(c(x1)))
     b#(a(a(x1))) -> a#(a(a(c(x1))))
     a#(c(x1)) -> b#(x1)
     a#(c(x1)) -> b#(b(x1))
    TRS:
     a(x1) -> x1
     b(a(a(x1))) -> a(a(a(c(x1))))
     a(c(x1)) -> b(b(x1))
    graph:
     b#(a(a(x1))) -> a#(c(x1)) -> a#(c(x1)) -> b#(b(x1))
     b#(a(a(x1))) -> a#(c(x1)) -> a#(c(x1)) -> b#(x1)
     b#(a(a(x1))) -> a#(a(c(x1))) -> a#(c(x1)) -> b#(b(x1))
     b#(a(a(x1))) -> a#(a(c(x1))) -> a#(c(x1)) -> b#(x1)
     b#(a(a(x1))) -> a#(a(a(c(x1)))) -> a#(c(x1)) -> b#(b(x1))
     b#(a(a(x1))) -> a#(a(a(c(x1)))) -> a#(c(x1)) -> b#(x1)
     a#(c(x1)) -> b#(b(x1)) -> b#(a(a(x1))) -> a#(a(a(c(x1))))
     a#(c(x1)) -> b#(b(x1)) -> b#(a(a(x1))) -> a#(a(c(x1)))
     a#(c(x1)) -> b#(b(x1)) -> b#(a(a(x1))) -> a#(c(x1))
     a#(c(x1)) -> b#(x1) -> b#(a(a(x1))) -> a#(a(a(c(x1))))
     a#(c(x1)) -> b#(x1) -> b#(a(a(x1))) -> a#(a(c(x1)))
     a#(c(x1)) -> b#(x1) -> b#(a(a(x1))) -> a#(c(x1))
    Arctic Interpretation Processor:
     dimension: 2
     interpretation:
      [b#](x0) = [0 0]x0 + [0],
      
      [a#](x0) = [0 0]x0 + [0],
      
                [-& -&]     [0]
      [c](x0) = [0  0 ]x0 + [2],
      
                [0 0]     [0]
      [b](x0) = [0 0]x0 + [2],
      
                [0 0]     [2]
      [a](x0) = [2 0]x0 + [0]
     orientation:
      b#(a(a(x1))) = [2 2]x1 + [4] >= [0 0]x1 + [2] = a#(c(x1))
      
      b#(a(a(x1))) = [2 2]x1 + [4] >= [0 0]x1 + [2] = a#(a(c(x1)))
      
      b#(a(a(x1))) = [2 2]x1 + [4] >= [2 2]x1 + [4] = a#(a(a(c(x1))))
      
      a#(c(x1)) = [0 0]x1 + [2] >= [0 0]x1 + [0] = b#(x1)
      
      a#(c(x1)) = [0 0]x1 + [2] >= [0 0]x1 + [2] = b#(b(x1))
      
              [0 0]     [2]           
      a(x1) = [2 0]x1 + [0] >= x1 = x1
      
                    [2 2]     [4]    [2 2]     [4]                 
      b(a(a(x1))) = [2 2]x1 + [4] >= [2 2]x1 + [4] = a(a(a(c(x1))))
      
                 [0 0]     [2]    [0 0]     [2]           
      a(c(x1)) = [0 0]x1 + [2] >= [0 0]x1 + [2] = b(b(x1))
     problem:
      DPs:
       b#(a(a(x1))) -> a#(a(a(c(x1))))
       a#(c(x1)) -> b#(x1)
       a#(c(x1)) -> b#(b(x1))
      TRS:
       a(x1) -> x1
       b(a(a(x1))) -> a(a(a(c(x1))))
       a(c(x1)) -> b(b(x1))
     EDG Processor:
      DPs:
       b#(a(a(x1))) -> a#(a(a(c(x1))))
       a#(c(x1)) -> b#(x1)
       a#(c(x1)) -> b#(b(x1))
      TRS:
       a(x1) -> x1
       b(a(a(x1))) -> a(a(a(c(x1))))
       a(c(x1)) -> b(b(x1))
      graph:
       b#(a(a(x1))) -> a#(a(a(c(x1)))) -> a#(c(x1)) -> b#(x1)
       b#(a(a(x1))) -> a#(a(a(c(x1)))) -> a#(c(x1)) -> b#(b(x1))
       a#(c(x1)) -> b#(b(x1)) -> b#(a(a(x1))) -> a#(a(a(c(x1))))
       a#(c(x1)) -> b#(x1) -> b#(a(a(x1))) -> a#(a(a(c(x1))))
      Arctic Interpretation Processor:
       dimension: 3
       interpretation:
        [b#](x0) = [0 0 0]x0 + [0],
        
        [a#](x0) = [1  0  -&]x0 + [1],
        
                  [0  0  0 ]     [-&]
        [c](x0) = [-& -& -&]x0 + [0 ]
                  [0  0  0 ]     [1 ],
        
                  [0  0  0 ]     [0]
        [b](x0) = [0  -& 0 ]x0 + [0]
                  [0  0  0 ]     [0],
        
                  [0 0 0]     [0]
        [a](x0) = [0 0 0]x0 + [1]
                  [0 1 0]     [1]
       orientation:
        b#(a(a(x1))) = [1 1 1]x1 + [2] >= [1 1 1]x1 + [2] = a#(a(a(c(x1))))
        
        a#(c(x1)) = [1 1 1]x1 + [1] >= [0 0 0]x1 + [0] = b#(x1)
        
        a#(c(x1)) = [1 1 1]x1 + [1] >= [0 0 0]x1 + [0] = b#(b(x1))
        
                [0 0 0]     [0]           
        a(x1) = [0 0 0]x1 + [1] >= x1 = x1
                [0 1 0]     [1]           
        
                      [1 1 1]     [2]    [1 1 1]     [2]                 
        b(a(a(x1))) = [1 1 1]x1 + [2] >= [1 1 1]x1 + [2] = a(a(a(c(x1))))
                      [1 1 1]     [2]    [1 1 1]     [2]                 
        
                   [0 0 0]     [1]    [0 0 0]     [0]           
        a(c(x1)) = [0 0 0]x1 + [1] >= [0 0 0]x1 + [0] = b(b(x1))
                   [0 0 0]     [1]    [0 0 0]     [0]           
       problem:
        DPs:
         b#(a(a(x1))) -> a#(a(a(c(x1))))
        TRS:
         a(x1) -> x1
         b(a(a(x1))) -> a(a(a(c(x1))))
         a(c(x1)) -> b(b(x1))
       EDG Processor:
        DPs:
         b#(a(a(x1))) -> a#(a(a(c(x1))))
        TRS:
         a(x1) -> x1
         b(a(a(x1))) -> a(a(a(c(x1))))
         a(c(x1)) -> b(b(x1))
        graph:
         
        Qed