YES
TRS:
 {f(a(), y) -> f(y, g(y)),
     g(a()) -> b(),
     g(b()) -> b()}
 DP:
  Strict:
   {f#(a(), y) -> f#(y, g(y)),
    f#(a(), y) -> g#(y)}
  Weak:
  {f(a(), y) -> f(y, g(y)),
      g(a()) -> b(),
      g(b()) -> b()}
  EDG:
   {(f#(a(), y) -> f#(y, g(y)), f#(a(), y) -> g#(y))
    (f#(a(), y) -> f#(y, g(y)), f#(a(), y) -> f#(y, g(y)))}
   SCCS:
    Scc:
     {f#(a(), y) -> f#(y, g(y))}
    SCC:
     Strict:
      {f#(a(), y) -> f#(y, g(y))}
     Weak:
     {f(a(), y) -> f(y, g(y)),
         g(a()) -> b(),
         g(b()) -> b()}
     POLY:
      Argument Filtering:
       pi(b) = [], pi(a) = [], pi(g) = [], pi(f#) = [0,1], pi(f) = []
      Usable Rules:
       {}
      Interpretation:
       [f#](x0, x1) = x0 + x1,
       [g] = 0,
       [a] = 1
      Strict:
       {}
      Weak:
       {f(a(), y) -> f(y, g(y)),
           g(a()) -> b(),
           g(b()) -> b()}
      Qed