package msat
Install
Dune Dependency
Authors
Maintainers
Sources
md5=8ee967a889188d8d937e3c1ca2c50deb
sha512=5185e02f2f41a3672afaf64b47ddf6efd787811a73f0286a670a64783a86a9c422c4a874c48884622961354105283b60223562025f1fa21edba67f0eb8cb172b
doc/msat.backend/Msat_backend/Dedukti/Make/argument-1-S/index.html
Parameter Make.S
Internal modules
These are the internal modules used, you should probably not use them if you're not familiar with the internals of mSAT.
include Msat.Solver_intf.EXPR
module Term : sig ... end
module Value : sig ... end
module Formula : Msat.Solver_intf.FORMULA
formulas
type term = Term.t
user terms
type formula = Formula.t
user formulas
The type of atoms given by the module argument for formulas. An atom is a user-defined atomic formula whose truth value is picked by Msat.
module Atom : sig ... end
module Clause : sig ... end
module Proof :
Msat.Solver_intf.PROOF
with type clause = clause
and type atom = atom
and type formula = formula
and type lemma = lemma
and type t = proof
A module to manipulate proofs.
type t = solver
Main solver type, containing all state for solving.
Types
type res =
| Sat of (term, formula, Value.t) Msat.Solver_intf.sat_state
(*Returned when the solver reaches SAT, with a model
*)| Unsat of (atom, clause, Proof.t) Msat.Solver_intf.unsat_state
(*Returned when the solver reaches UNSAT, with a proof
*)
Result type for the solver
Exception raised by the evaluating functions when a literal has not yet been assigned a value.
Base operations
Add the list of clauses to the current set of assumptions. Modifies the sat solver state in place.
Add a new term (i.e. decision variable) to the solver. This term will be decided on at some point during solving, wether it appears in clauses or not.
Add a new atom (i.e propositional formula) to the solver. This formula will be decided on at some point during solving, wether it appears in clauses or not.
true_at_level0 a
returns true
if a
was proved at level0, i.e. it must hold in all models
val eval_atom : t -> atom -> Msat.Solver_intf.lbool
Evaluate atom in current state
val export : t -> clause Msat.Solver_intf.export