
vs_random_violated(+VS, -X)

   Retrieve a random violated variable from a varset

Arguments
   VS                  A varset
   X                   Tentative variable (output)

Type
   library(tentative)

Description

	Retrieve a variable from a varset whose violation count is
	nonzero. If there are more than one, a random candidate is returned.


Modes and Determinism
   vs_random_violated(+, -) is semidet

Fail Conditions
   The varset does not contain a violated variable

Examples
   
    ?- Vars=[A,B,C], tent_set(Vars, [a,b,c]), vs_create(Vars, VS),
       var_inc_violations(A, 2),
       var_inc_violations(C, 1),
       vs_random_violated(VS, Var).
    Vars = [Var{a -> 2}, B{b -> 0}, C{c -> 1}]
    VS = ...
    Var = Var{a -> 2}	% A or C, the result is random!
    Yes (0.00s cpu)
    

See Also
   vs_all_violated / 2, vs_violated / 2, vs_random_violated_index / 2
