
cs_random_violated(+CS, -Cstr)

   Get random violated constraints in the constraint set

Arguments
   CS                  Constraint set
   Cstr                A constraint term (output)

Type
   library(tentative)

Description

	
	Returns a currently violated constraint from the constraint set,
	i.e. all the constraints whose violation count is currently nonzero.
	If there are several, a random one is returned.
	
	If the constraints were added with aliases (see :~ /2),
	the alias term is retrieved instead of the constraint goal.
	
    

Modes and Determinism
   cs_random_violated(+, -) is semidet

Fail Conditions
   Fails if there is no violated constraint in the set

Examples
   
    ?- [X, Y] tent_set [3, 4], CS :~ (X $= Y), CS :~ (X $\= Y),
       cs_random_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)
    

See Also
   cs_random_worst / 2, cs_all_violated / 2
