(SIG (g o -> o) (f o -> o) (a -> o) ) (RULES g(f(a)) -> f(g(f(a))) g(f(a)) -> f(f(a)) f(f(a)) -> f(a) )