(SIG (a -> o) (h o o -> o) (f o -> o) (b -> o) (c -> o) ) (RULES a -> h(a,f(b)) f(f(h(a,a))) -> f(f(f(a))) f(h(a,h(a,a))) -> f(a) f(h(h(b,a),h(f(c),c))) -> c )