Returns a list of all currently violated constraints in the constraint set, i.e. all the constraints whose violation count is currently nonzero.
If the constraints were added with aliases (see :~ /2), the alias term is retrieved instead of the constraint goal.
?- [X, Y] tent_set [3, 4], CS :~ (X $= Y), CS :~ (X $\= Y), cs_all_violated(CS, C).
X = X{3 -> 0}
Y = Y{4 -> 0}
CS = constraint_set(TotalVio{1 -> 0}, ...)
C = [X{3 -> 0} $= Y{4 -> 0}]
There are 2 delayed goals.
Yes (0.00s cpu)