(VAR x ) (RULES f (f (a, x), a) -> f (f (x, f (a, f (a, a))), a))