Minimum remaining values heuristic (source code)

= Minimum remaining values heuristic

Choose an unassigned variable with the fewest currently legal values. No legal values detects failure immediately; exactly one legal value forces a choice. This ordering can reduce the <search tree> without changing the set of solutions.