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