1234567891011121314151617181920212223242526272829303132333435363738394041424344(**************************************************************************)(* *)(* Copyright 2017-2018 OCamlPro *)(* *)(* All rights reserved. This file is distributed under the terms of the *)(* GNU Lesser General Public License version 2.1, with the special *)(* exception on linking described in the file LICENSE. *)(* *)(**************************************************************************)typecriteria_def={crit_default:string;crit_upgrade:string;crit_fixup:string;crit_best_effort_prefix:stringoption;}(** Timeout might still return a non-optimal solution *)exceptionTimeoutof(Cudf.preambleoption*Cudf.universe)optionmoduletypeS=sigvalname:string(** extra configurable solver parameters *)valext:stringoptionrefvalis_present:unit->boolvalcommand_name:stringoption(** None means the solver is built-in *)valdefault_criteria:criteria_defvalpreemptive_check:bool(** Should be true for solvers that may take a long time to detect that there
is no solution: in this case, dose's check is run beforehand ; otherwise
it's only run if the solver returns unsat, to extract the explanations. *)valcall:criteria:string->?timeout:float->?tolerance:float->Cudf.cudf->Cudf.preambleoption*Cudf.universeend