(SIG (f o o -> o) (a -> o) ) (RULES f(a,f(x,a)) -> f(a,f(f(a,a),a)) )