module Solver_intf:sig
..end
type ('term, 'form)
sat_state = {
|
eval : |
(* | Returns the valuation of a formula in the current state of the sat solver.
| *) |
|
eval_level : |
(* | Return the current assignement of the literals, as well as its decision level. If the level is 0, then it is necessary for the atom to have this value; otherwise it is due to choices that can potentially be backtracked.
| *) |
|
iter_trail : |
(* | Iter thorugh the formulas and terms in order of decision/propagation (starting from the first propagation, to the last propagation). | *) |
|
model : |
(* | Returns the model found if the formula is satisfiable. | *) |
The type of values returned when the solver reaches a SAT state.
type ('clause, 'proof)
unsat_state = {
|
unsat_conflict : |
(* | Returns the unsat clause found at the toplevel | *) |
|
get_proof : |
(* | returns a persistent proof of the empty clause from the Unsat result. | *) |
The type of values returned when the solver reaches an UNSAT state.
module type S =sig
..end
The external interface implemented by safe solvers, such as the one
created by the Solver.Make
and Mcsolver.Make
functors.