(VAR x y z ) (RULES b(f(b(x, z)), y) -> f(f(f(b(z, b(y, z))))) c(f(f(c(x, a, z))), a, y) -> b(y, f(b(a, z))) b(b(c(b(a, a), a, z), f(a)), y) -> z )