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