YES

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

Proof:
 String Reversal Processor:
  a(x1) -> x1
  a(a(x1)) -> b(x1)
  b(x1) -> a(x1)
  c(b(x1)) -> a(b(c(c(x1))))
  DP Processor:
   DPs:
    a#(a(x1)) -> b#(x1)
    b#(x1) -> a#(x1)
    c#(b(x1)) -> c#(x1)
    c#(b(x1)) -> c#(c(x1))
    c#(b(x1)) -> b#(c(c(x1)))
    c#(b(x1)) -> a#(b(c(c(x1))))
   TRS:
    a(x1) -> x1
    a(a(x1)) -> b(x1)
    b(x1) -> a(x1)
    c(b(x1)) -> a(b(c(c(x1))))
   TDG Processor:
    DPs:
     a#(a(x1)) -> b#(x1)
     b#(x1) -> a#(x1)
     c#(b(x1)) -> c#(x1)
     c#(b(x1)) -> c#(c(x1))
     c#(b(x1)) -> b#(c(c(x1)))
     c#(b(x1)) -> a#(b(c(c(x1))))
    TRS:
     a(x1) -> x1
     a(a(x1)) -> b(x1)
     b(x1) -> a(x1)
     c(b(x1)) -> a(b(c(c(x1))))
    graph:
     c#(b(x1)) -> c#(c(x1)) -> c#(b(x1)) -> a#(b(c(c(x1))))
     c#(b(x1)) -> c#(c(x1)) -> c#(b(x1)) -> b#(c(c(x1)))
     c#(b(x1)) -> c#(c(x1)) -> c#(b(x1)) -> c#(c(x1))
     c#(b(x1)) -> c#(c(x1)) -> c#(b(x1)) -> c#(x1)
     c#(b(x1)) -> c#(x1) -> c#(b(x1)) -> a#(b(c(c(x1))))
     c#(b(x1)) -> c#(x1) -> c#(b(x1)) -> b#(c(c(x1)))
     c#(b(x1)) -> c#(x1) -> c#(b(x1)) -> c#(c(x1))
     c#(b(x1)) -> c#(x1) -> c#(b(x1)) -> c#(x1)
     c#(b(x1)) -> b#(c(c(x1))) -> b#(x1) -> a#(x1)
     c#(b(x1)) -> a#(b(c(c(x1)))) -> a#(a(x1)) -> b#(x1)
     b#(x1) -> a#(x1) -> a#(a(x1)) -> b#(x1)
     a#(a(x1)) -> b#(x1) -> b#(x1) -> a#(x1)
    CDG Processor:
     DPs:
      a#(a(x1)) -> b#(x1)
      b#(x1) -> a#(x1)
      c#(b(x1)) -> c#(x1)
      c#(b(x1)) -> c#(c(x1))
      c#(b(x1)) -> b#(c(c(x1)))
      c#(b(x1)) -> a#(b(c(c(x1))))
     TRS:
      a(x1) -> x1
      a(a(x1)) -> b(x1)
      b(x1) -> a(x1)
      c(b(x1)) -> a(b(c(c(x1))))
     graph:
      c#(b(x1)) -> c#(c(x1)) -> c#(b(x1)) -> c#(x1)
      c#(b(x1)) -> c#(c(x1)) -> c#(b(x1)) -> c#(c(x1))
      c#(b(x1)) -> c#(c(x1)) -> c#(b(x1)) -> b#(c(c(x1)))
      c#(b(x1)) -> c#(c(x1)) -> c#(b(x1)) -> a#(b(c(c(x1))))
      c#(b(x1)) -> c#(x1) -> c#(b(x1)) -> c#(x1)
      c#(b(x1)) -> c#(x1) -> c#(b(x1)) -> c#(c(x1))
      c#(b(x1)) -> c#(x1) -> c#(b(x1)) -> b#(c(c(x1)))
      c#(b(x1)) -> c#(x1) -> c#(b(x1)) -> a#(b(c(c(x1))))
      c#(b(x1)) -> b#(c(c(x1))) -> b#(x1) -> a#(x1)
      c#(b(x1)) -> a#(b(c(c(x1)))) -> a#(a(x1)) -> b#(x1)
      a#(a(x1)) -> b#(x1) -> b#(x1) -> a#(x1)
     SCC Processor:
      #sccs: 1
      #rules: 2
      #arcs: 11/36
      DPs:
       c#(b(x1)) -> c#(c(x1))
       c#(b(x1)) -> c#(x1)
      TRS:
       a(x1) -> x1
       a(a(x1)) -> b(x1)
       b(x1) -> a(x1)
       c(b(x1)) -> a(b(c(c(x1))))
      Arctic Interpretation Processor:
       dimension: 2
       interpretation:
        [c#](x0) = [2 0]x0,
        
                  [0  -&]  
        [c](x0) = [0  0 ]x0,
        
                  [1 1]  
        [b](x0) = [0 0]x0,
        
                  [0 1]  
        [a](x0) = [0 0]x0
       orientation:
        c#(b(x1)) = [3 3]x1 >= [2 0]x1 = c#(c(x1))
        
        c#(b(x1)) = [3 3]x1 >= [2 0]x1 = c#(x1)
        
                [0 1]             
        a(x1) = [0 0]x1 >= x1 = x1
        
                   [1 1]      [1 1]          
        a(a(x1)) = [0 1]x1 >= [0 0]x1 = b(x1)
        
                [1 1]      [0 1]          
        b(x1) = [0 0]x1 >= [0 0]x1 = a(x1)
        
                   [1 1]      [1 1]                   
        c(b(x1)) = [1 1]x1 >= [1 1]x1 = a(b(c(c(x1))))
       problem:
        DPs:
         
        TRS:
         a(x1) -> x1
         a(a(x1)) -> b(x1)
         b(x1) -> a(x1)
         c(b(x1)) -> a(b(c(c(x1))))
       Qed