YES

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

Proof:
 String Reversal Processor:
  a(x1) -> x1
  b(a(x1)) -> a(c(b(x1)))
  c(c(x1)) -> a(c(a(b(x1))))
  DP Processor:
   DPs:
    b#(a(x1)) -> b#(x1)
    b#(a(x1)) -> c#(b(x1))
    b#(a(x1)) -> a#(c(b(x1)))
    c#(c(x1)) -> b#(x1)
    c#(c(x1)) -> a#(b(x1))
    c#(c(x1)) -> c#(a(b(x1)))
    c#(c(x1)) -> a#(c(a(b(x1))))
   TRS:
    a(x1) -> x1
    b(a(x1)) -> a(c(b(x1)))
    c(c(x1)) -> a(c(a(b(x1))))
   TDG Processor:
    DPs:
     b#(a(x1)) -> b#(x1)
     b#(a(x1)) -> c#(b(x1))
     b#(a(x1)) -> a#(c(b(x1)))
     c#(c(x1)) -> b#(x1)
     c#(c(x1)) -> a#(b(x1))
     c#(c(x1)) -> c#(a(b(x1)))
     c#(c(x1)) -> a#(c(a(b(x1))))
    TRS:
     a(x1) -> x1
     b(a(x1)) -> a(c(b(x1)))
     c(c(x1)) -> a(c(a(b(x1))))
    graph:
     c#(c(x1)) -> c#(a(b(x1))) -> c#(c(x1)) -> a#(c(a(b(x1))))
     c#(c(x1)) -> c#(a(b(x1))) -> c#(c(x1)) -> c#(a(b(x1)))
     c#(c(x1)) -> c#(a(b(x1))) -> c#(c(x1)) -> a#(b(x1))
     c#(c(x1)) -> c#(a(b(x1))) -> c#(c(x1)) -> b#(x1)
     c#(c(x1)) -> b#(x1) -> b#(a(x1)) -> a#(c(b(x1)))
     c#(c(x1)) -> b#(x1) -> b#(a(x1)) -> c#(b(x1))
     c#(c(x1)) -> b#(x1) -> b#(a(x1)) -> b#(x1)
     b#(a(x1)) -> c#(b(x1)) -> c#(c(x1)) -> a#(c(a(b(x1))))
     b#(a(x1)) -> c#(b(x1)) -> c#(c(x1)) -> c#(a(b(x1)))
     b#(a(x1)) -> c#(b(x1)) -> c#(c(x1)) -> a#(b(x1))
     b#(a(x1)) -> c#(b(x1)) -> c#(c(x1)) -> b#(x1)
     b#(a(x1)) -> b#(x1) -> b#(a(x1)) -> a#(c(b(x1)))
     b#(a(x1)) -> b#(x1) -> b#(a(x1)) -> c#(b(x1))
     b#(a(x1)) -> b#(x1) -> b#(a(x1)) -> b#(x1)
    SCC Processor:
     #sccs: 1
     #rules: 4
     #arcs: 14/49
     DPs:
      c#(c(x1)) -> c#(a(b(x1)))
      c#(c(x1)) -> b#(x1)
      b#(a(x1)) -> b#(x1)
      b#(a(x1)) -> c#(b(x1))
     TRS:
      a(x1) -> x1
      b(a(x1)) -> a(c(b(x1)))
      c(c(x1)) -> a(c(a(b(x1))))
     Arctic Interpretation Processor:
      dimension: 2
      usable rules:
       a(x1) -> x1
       b(a(x1)) -> a(c(b(x1)))
       c(c(x1)) -> a(c(a(b(x1))))
      interpretation:
       [c#](x0) = [-& 0 ]x0 + [1],
       
       [b#](x0) = [-& 0 ]x0 + [1],
       
                 [-& 0 ]     [0]
       [c](x0) = [2  2 ]x0 + [3],
       
                 [0  -&]     [-&]
       [b](x0) = [0  -&]x0 + [0 ],
       
                 [2  -&]     [3]
       [a](x0) = [0  0 ]x0 + [0]
      orientation:
       c#(c(x1)) = [2 2]x1 + [3] >= [0  -&]x1 + [1] = c#(a(b(x1)))
       
       c#(c(x1)) = [2 2]x1 + [3] >= [-& 0 ]x1 + [1] = b#(x1)
       
       b#(a(x1)) = [0 0]x1 + [1] >= [-& 0 ]x1 + [1] = b#(x1)
       
       b#(a(x1)) = [0 0]x1 + [1] >= [0  -&]x1 + [1] = c#(b(x1))
       
               [2  -&]     [3]           
       a(x1) = [0  0 ]x1 + [0] >= x1 = x1
       
                  [2  -&]     [3]    [2  -&]     [3]              
       b(a(x1)) = [2  -&]x1 + [3] >= [2  -&]x1 + [3] = a(c(b(x1)))
       
                  [2 2]     [3]    [2  -&]     [3]                 
       c(c(x1)) = [4 4]x1 + [5] >= [4  -&]x1 + [5] = a(c(a(b(x1))))
      problem:
       DPs:
        b#(a(x1)) -> b#(x1)
        b#(a(x1)) -> c#(b(x1))
       TRS:
        a(x1) -> x1
        b(a(x1)) -> a(c(b(x1)))
        c(c(x1)) -> a(c(a(b(x1))))
      Restore Modifier:
       DPs:
        b#(a(x1)) -> b#(x1)
        b#(a(x1)) -> c#(b(x1))
       TRS:
        a(x1) -> x1
        b(a(x1)) -> a(c(b(x1)))
        c(c(x1)) -> a(c(a(b(x1))))
       EDG Processor:
        DPs:
         b#(a(x1)) -> b#(x1)
         b#(a(x1)) -> c#(b(x1))
        TRS:
         a(x1) -> x1
         b(a(x1)) -> a(c(b(x1)))
         c(c(x1)) -> a(c(a(b(x1))))
        graph:
         b#(a(x1)) -> b#(x1) -> b#(a(x1)) -> b#(x1)
         b#(a(x1)) -> b#(x1) -> b#(a(x1)) -> c#(b(x1))
        CDG Processor:
         DPs:
          b#(a(x1)) -> b#(x1)
          b#(a(x1)) -> c#(b(x1))
         TRS:
          a(x1) -> x1
          b(a(x1)) -> a(c(b(x1)))
          c(c(x1)) -> a(c(a(b(x1))))
         graph:
          
         Qed