let check_exceeding (candidates: candidates) : unit =
if Config.is_horn candidates.cd_config then begin
if not (candidates.cd_unprocessed_size = 0) then
failwith "Selection_assert.check_exceeding";
candidates.cd_check_exceeding <- true;
begin
try
Context.iter
(fun element ->
if is_marked_exceeding candidates element then
Problem_literals.compute_for_element candidates.cd_problem_literals element Context_unifier.Assert;
)
candidates.cd_context;
ignore (build_unprocessed ~force:true candidates: bool);
with
| EXCEEDING_EXHAUSTED ->
()
end;
clear_unprocessed candidates;
candidates.cd_check_exceeding <- false
end