Library
Module
Module type
Parameter
Class
Class type
val configure_terminator : t -> (unit -> bool) option -> unit
configure_terminator t f
configure a termination callback function.
If terminator has been connected, Bitwuzla calls this function periodically to determine if the connected instance should be terminated.
create options
create a new Bitwuzla instance.
The returned instance can be deleted earlier via unsafe_delete
.
val push : t -> int -> unit
push t nlevels
push context levels.
val pop : t -> int -> unit
pop t nlevels
pop context levels.
val pp_formula : Format.formatter -> t -> unit
pp_formula formatter t
print the current input formula.
val simplify : t -> unit
simplify t
simplify the current input formula.
check_sat ~assumptions t
check satisfiability of current input formula.
An input formula consists of assertions added via assert_formula
. The search for a solution can by guided by making assumptions via assumptions
.
Assertions and assumptions are combined via Boolean and
.
get_value t term
get a term representing the model value of a given term.
Requires that the last check_sat
query returned Sat
.
is_unsat_assumption t term
determine if an assumption is an unsat assumption.
Unsat assumptions are assumptions that force an input formula to become unsatisfiable. Unsat assumptions handling in Bitwuzla is analogous to failed assumptions in MiniSAT.
Requires that unsat assumption generation has been enabled via Options.set
.
Requires that the last check_sat
query returned Unsat
.
get_unsat_assumptions t
get the set of unsat assumptions.
Unsat assumptions are assumptions that force an input formula to become unsatisfiable. Unsat assumptions handling in Bitwuzla is analogous to failed assumptions in MiniSAT.
Requires that unsat assumption generation has been enabled via Options.set
.
Requires that the last check_sat
query returned Unsat
.
get_unsat_core t
get the set unsat core (unsat assertions).
The unsat core consists of the set of assertions that force an input formula to become unsatisfiable.
Requires that unsat core generation has been enabled via Options.set
.
Requires that the last check_sat
query returned Unsat
.
val unsafe_delete : t -> unit
Expert
delete t
delete a Bitwuzla instance.
UNSAFE: call this ONLY to release the resources earlier if the instance is about to be garbage collected.
val pp_statistics : Format.formatter -> t -> unit