aboutsummaryrefslogtreecommitdiffstats
path: root/src/verit/veritSyntax.mli
diff options
context:
space:
mode:
authorChantal Keller <Chantal.Keller@lri.fr>2019-09-25 18:22:53 +0200
committerChantal Keller <Chantal.Keller@lri.fr>2019-09-25 18:22:53 +0200
commitd35b057995b4940af0e66bb081b3fe3ac7ff97f3 (patch)
treed64f000e89d0125543c29cc2de423038d65f7b33 /src/verit/veritSyntax.mli
parenta17e48674bace4df1509b0624bef85128d81afbf (diff)
downloadsmtcoq-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.mli31
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