diff options
author | Chantal Keller <Chantal.Keller@lri.fr> | 2019-09-25 18:22:53 +0200 |
---|---|---|
committer | Chantal Keller <Chantal.Keller@lri.fr> | 2019-09-25 18:22:53 +0200 |
commit | d35b057995b4940af0e66bb081b3fe3ac7ff97f3 (patch) | |
tree | d64f000e89d0125543c29cc2de423038d65f7b33 /src/verit/veritSyntax.mli | |
parent | a17e48674bace4df1509b0624bef85128d81afbf (diff) | |
download | smtcoq-d35b057995b4940af0e66bb081b3fe3ac7ff97f3.tar.gz smtcoq-d35b057995b4940af0e66bb081b3fe3ac7ff97f3.zip |
Made SmtCommands independent from VeritSyntax
Made lfsc/* mostly independent from VeritSyntax
Diffstat (limited to 'src/verit/veritSyntax.mli')
-rw-r--r-- | src/verit/veritSyntax.mli | 31 |
1 files changed, 9 insertions, 22 deletions
diff --git a/src/verit/veritSyntax.mli b/src/verit/veritSyntax.mli index fd39052..7a325a6 100644 --- a/src/verit/veritSyntax.mli +++ b/src/verit/veritSyntax.mli @@ -10,6 +10,8 @@ (**************************************************************************) +open SmtAtom + exception Sat type typ = | Inpu | Deep | True | Fals | Andp | Andn | Orp | Orn | Xorp1 | Xorp2 | Xorn1 | Xorn2 | Impp | Impn1 | Impn2 | Equp1 | Equp2 | Equn1 | Equn2 | Itep1 | Itep2 | Iten1 | Iten2 | Eqre | Eqtr | Eqco | Eqcp | Dlge | Lage | Lata | Dlde | Lade | Fins | Eins | Skea | Skaa | Qnts | Qntm | Reso | Weak | And | Nor | Or | Nand | Xor1 | Xor2 | Nxor1 | Nxor2 | Imp | Nimp1 | Nimp2 | Equ1 | Equ2 | Nequ1 | Nequ2 | Ite1 | Ite2 | Nite1 | Nite2 | Tpal | Tlap | Tple | Tpne | Tpde | Tpsa | Tpie | Tpma | Tpbr | Tpbe | Tpsc | Tppp | Tpqt | Tpqs | Tpsk | Subp | Flat | Hole | Bbva | Bbconst | Bbeq | Bbdis | Bbop | Bbadd | Bbmul | Bbult | Bbslt | Bbnot | Bbneg | Bbconc | Bbextr | Bbzext | Bbsext | Bbshl | Bbshr | Row1 | Row2 | Exte @@ -23,51 +25,36 @@ val to_add : (int * SmtAtom.Form.t list) list ref val mk_clause : SmtCertif.clause_id * typ * SmtAtom.Form.t list * SmtCertif.clause_id list -> SmtCertif.clause_id -type atom_form_lit = - | Atom of SmtAtom.Atom.t - | Form of SmtAtom.Form.pform - | Lit of SmtAtom.Form.t -val lit_of_atom_form_lit : SmtAtom.Form.reify -> bool * atom_form_lit -> SmtAtom.Form.t - val apply_dec_atom : (?declare:bool -> SmtAtom.hatom -> SmtAtom.hatom) -> - bool * atom_form_lit -> bool * atom_form_lit + bool * Form.atom_form_lit -> bool * Form.atom_form_lit val apply_bdec_atom : (?declare:bool -> SmtAtom.Atom.t -> SmtAtom.Atom.t -> SmtAtom.Atom.t) -> - bool * atom_form_lit -> bool * atom_form_lit -> bool * atom_form_lit + bool * Form.atom_form_lit -> bool * Form.atom_form_lit -> bool * Form.atom_form_lit val apply_tdec_atom : (?declare:bool -> SmtAtom.Atom.t -> SmtAtom.Atom.t -> SmtAtom.Atom.t -> SmtAtom.Atom.t) -> - bool * atom_form_lit -> bool * atom_form_lit -> bool * atom_form_lit -> bool * atom_form_lit + bool * Form.atom_form_lit -> bool * Form.atom_form_lit -> bool * Form.atom_form_lit -> bool * Form.atom_form_lit val apply_dec : ('a -> 'b) -> bool * 'a -> bool * 'b val list_dec : (bool * 'a) list -> bool * 'a list -val get_solver : int -> bool * atom_form_lit -val add_solver : int -> bool * atom_form_lit -> unit - -val get_btype : string -> SmtBtype.btype -val add_btype : string -> SmtBtype.btype -> unit - -val get_fun : string -> SmtAtom.indexed_op -val add_fun : string -> SmtAtom.indexed_op -> unit -val remove_fun : string -> unit +val get_solver : int -> bool * Form.atom_form_lit +val add_solver : int -> bool * Form.atom_form_lit -> unit val find_opt_qvar : string -> SmtBtype.btype option val add_qvar : string -> SmtBtype.btype -> unit val clear_qvar : unit -> unit -val hform_to_smt : Format.formatter -> SmtAtom.Form.t -> unit - val init_index : SmtAtom.Form.t list -> (SmtAtom.Form.t -> SmtAtom.Form.t) -> SmtAtom.Form.t -> int val qf_to_add : SmtAtom.Form.t SmtCertif.clause list -> (SmtAtom.Form.t SmtCertif.clause_kind * SmtAtom.Form.t list option * SmtAtom.Form.t SmtCertif.clause) list - + val ra : SmtAtom.Atom.reify_tbl val rf : SmtAtom.Form.reify val ra' : SmtAtom.Atom.reify_tbl val rf' : SmtAtom.Form.reify -val hlets : (string, atom_form_lit) Hashtbl.t +val hlets : (string, Form.atom_form_lit) Hashtbl.t val clear : unit -> unit |