node(X) :- edge(X,Y). node(Y) :- edge(X,Y). colored(X,r) v colored(X,g) v colored(X,b) :- node(X). :- edge(X,Y), colored(X,C), colored(Y,C).