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