anthem-rs/examples/coloring-1.lp

13 lines
354 B
Plaintext

% After eliminating the super-easy aggregate expression from the rule
%
% {color(X,Z) : color(Z)} = 1 :- vertex(X).
%
% we get 4 rules:
{color(X,Z)} :- vertex(X), color(Z).
:- color(X,Z1), color(X,Z2), vertex(X), color(Z1), color(Z2), Z1 != Z2.
aux(X) :- vertex(X), color(Z), color(X,Z).
:- vertex(X), not aux(X).
:- edge(X,Y), color(X,Z), color(Y,Z).