YES

Problem:
 a(a(f(b(),a(x)))) -> f(a(a(a(x))),b())
 a(a(x)) -> f(b(),a(f(a(x),b())))
 f(a(x),b()) -> f(b(),a(x))

Proof:
 DP Processor:
  DPs:
   a#(a(f(b(),a(x)))) -> a#(a(x))
   a#(a(f(b(),a(x)))) -> a#(a(a(x)))
   a#(a(f(b(),a(x)))) -> f#(a(a(a(x))),b())
   a#(a(x)) -> f#(a(x),b())
   a#(a(x)) -> a#(f(a(x),b()))
   a#(a(x)) -> f#(b(),a(f(a(x),b())))
   f#(a(x),b()) -> f#(b(),a(x))
  TRS:
   a(a(f(b(),a(x)))) -> f(a(a(a(x))),b())
   a(a(x)) -> f(b(),a(f(a(x),b())))
   f(a(x),b()) -> f(b(),a(x))
  Matrix Interpretation Processor: dim=3
   
   usable rules:
    a(a(f(b(),a(x)))) -> f(a(a(a(x))),b())
    a(a(x)) -> f(b(),a(f(a(x),b())))
    f(a(x),b()) -> f(b(),a(x))
   interpretation:
    [f#](x0, x1) = [0 1 0]x0 + [1],
    
    [a#](x0) = [0 2 1]x0 + [1],
    
                  [0 0 0]     [0 0 0]     [0]
    [f](x0, x1) = [1 0 1]x0 + [1 0 1]x1 + [0]
                  [0 0 1]     [0 0 1]     [1],
    
              [0 0 2]     [0]
    [a](x0) = [0 1 2]x0 + [1]
              [0 1 0]     [0],
    
          [0]
    [b] = [0]
          [0]
   orientation:
    a#(a(f(b(),a(x)))) = [0 7 6]x + [7] >= [0 3 4]x + [3] = a#(a(x))
    
    a#(a(f(b(),a(x)))) = [0 7 6]x + [7] >= [0 7 6]x + [6] = a#(a(a(x)))
    
    a#(a(f(b(),a(x)))) = [0 7 6]x + [7] >= [0 5 6]x + [6] = f#(a(a(a(x))),b())
    
    a#(a(x)) = [0 3 4]x + [3] >= [0 1 2]x + [2] = f#(a(x),b())
    
    a#(a(x)) = [0 3 4]x + [3] >= [0 3 4]x + [2] = a#(f(a(x),b()))
    
    a#(a(x)) = [0 3 4]x + [3] >= [1] = f#(b(),a(f(a(x),b())))
    
    f#(a(x),b()) = [0 1 2]x + [2] >= [1] = f#(b(),a(x))
    
                        [0 2 4]    [0]    [0 0 0]    [0]                    
    a(a(f(b(),a(x)))) = [0 5 6]x + [4] >= [0 5 6]x + [4] = f(a(a(a(x))),b())
                        [0 3 2]    [3]    [0 3 2]    [3]                    
    
              [0 2 0]    [0]    [0 0 0]    [0]                        
    a(a(x)) = [0 3 2]x + [2] >= [0 3 2]x + [2] = f(b(),a(f(a(x),b())))
              [0 1 2]    [1]    [0 1 2]    [1]                        
    
                  [0 0 0]    [0]    [0 0 0]    [0]              
    f(a(x),b()) = [0 1 2]x + [0] >= [0 1 2]x + [0] = f(b(),a(x))
                  [0 1 0]    [1]    [0 1 0]    [1]              
   problem:
    DPs:
     
    TRS:
     a(a(f(b(),a(x)))) -> f(a(a(a(x))),b())
     a(a(x)) -> f(b(),a(f(a(x),b())))
     f(a(x),b()) -> f(b(),a(x))
   Qed