module LogicLang: sig
.. end
Logical Language
type
integer_op =
| |
Iadd |
| |
Isub |
| |
Imul |
| |
Idiv |
| |
Imod |
type
real_op =
| |
Radd |
| |
Rsub |
| |
Rmul |
| |
Rdiv |
type
cmp_op =
| |
Ceq |
| |
Cneq |
| |
Clt |
| |
Cleq |
type
term = LogicRaw.TERM.t
type
pred = LogicRaw.PRED.t
val e_call : LogicId.id -> LogicRaw.TERM.t list -> LogicRaw.TERM.t
val p_call : LogicId.id -> LogicRaw.TERM.t list -> LogicRaw.PRED.t
val e_true : LogicRaw.TERM.t
val e_false : LogicRaw.TERM.t
val e_zero : LogicRaw.TERM.t
val e_int : int -> LogicRaw.TERM.t
val e_float : float -> LogicRaw.TERM.t
val e_bigint : My_bigint.t -> LogicRaw.TERM.t
val e_icst : string -> LogicRaw.TERM.t
val e_rcst : string -> LogicRaw.TERM.t
val unop : LogicRaw.TERM.primitive -> LogicRaw.TERM.t -> LogicRaw.TERM.t
val binop : LogicRaw.TERM.primitive ->
LogicRaw.TERM.t -> LogicRaw.TERM.t -> LogicRaw.TERM.t
val predop : LogicRaw.PRED.relation ->
LogicRaw.TERM.t -> LogicRaw.TERM.t -> LogicRaw.PRED.t
val i_pred : cmp_op -> LogicRaw.PRED.relation
val i_bool : cmp_op -> LogicRaw.TERM.primitive
val i_op : integer_op -> LogicRaw.TERM.primitive
val r_pred : cmp_op -> LogicRaw.PRED.relation
val r_bool : cmp_op -> LogicRaw.TERM.primitive
val r_op : real_op -> LogicRaw.TERM.primitive
val e_ineg : LogicRaw.TERM.t -> LogicRaw.TERM.t
val e_rneg : LogicRaw.TERM.t -> LogicRaw.TERM.t
val e_icmp : cmp_op -> LogicRaw.TERM.t -> LogicRaw.TERM.t -> LogicRaw.TERM.t
val p_icmp : cmp_op -> LogicRaw.TERM.t -> LogicRaw.TERM.t -> LogicRaw.PRED.t
val e_rcmp : cmp_op -> LogicRaw.TERM.t -> LogicRaw.TERM.t -> LogicRaw.TERM.t
val p_rcmp : cmp_op -> LogicRaw.TERM.t -> LogicRaw.TERM.t -> LogicRaw.PRED.t
val p_equal : LogicRaw.TERM.t -> LogicRaw.TERM.t -> LogicRaw.PRED.t
val p_neq : LogicRaw.TERM.t -> LogicRaw.TERM.t -> LogicRaw.PRED.t
val e_iop : integer_op -> LogicRaw.TERM.t -> LogicRaw.TERM.t -> LogicRaw.TERM.t
val e_rop : real_op -> LogicRaw.TERM.t -> LogicRaw.TERM.t -> LogicRaw.TERM.t
val e_real_of_int : LogicRaw.TERM.t -> LogicRaw.TERM.t
val e_int_of_real : LogicRaw.TERM.t -> LogicRaw.TERM.t
val a_true : LogicRaw.TERM.t
val a_false : LogicRaw.TERM.t
val e_bool : LogicRaw.TERM.t -> LogicRaw.TERM.t
val e_cond : LogicRaw.TERM.t -> LogicRaw.TERM.t -> LogicRaw.TERM.t -> LogicRaw.TERM.t
val e_not : LogicRaw.TERM.t -> LogicRaw.TERM.t
val e_and : LogicRaw.TERM.t -> LogicRaw.TERM.t -> LogicRaw.TERM.t
val e_or : LogicRaw.TERM.t -> LogicRaw.TERM.t -> LogicRaw.TERM.t
val e_bnot : LogicRaw.TERM.t -> LogicRaw.TERM.t
val e_band : LogicRaw.TERM.t -> LogicRaw.TERM.t -> LogicRaw.TERM.t
val e_bor : LogicRaw.TERM.t -> LogicRaw.TERM.t -> LogicRaw.TERM.t
val e_bxor : LogicRaw.TERM.t -> LogicRaw.TERM.t -> LogicRaw.TERM.t
val e_lshift : LogicRaw.TERM.t -> LogicRaw.TERM.t -> LogicRaw.TERM.t
val e_rshift : LogicRaw.TERM.t -> LogicRaw.TERM.t -> LogicRaw.TERM.t
val e_getfield : LogicRaw.TERM.t -> LogicTau.field -> LogicRaw.TERM.t
val e_setfield : LogicRaw.TERM.t -> LogicTau.field -> LogicRaw.TERM.t -> LogicRaw.TERM.t
val e_access : LogicRaw.TERM.t -> LogicRaw.TERM.t -> LogicRaw.TERM.t
val e_update : LogicRaw.TERM.t -> LogicRaw.TERM.t -> LogicRaw.TERM.t -> LogicRaw.TERM.t
val p_true : LogicRaw.PRED.t
val p_false : LogicRaw.PRED.t
val p_bool : LogicRaw.TERM.t -> LogicRaw.PRED.t
val p_not : LogicRaw.PRED.t -> LogicRaw.PRED.t
val p_implies : LogicRaw.PRED.t -> LogicRaw.PRED.t -> LogicRaw.PRED.t
val p_and : LogicRaw.PRED.t -> LogicRaw.PRED.t -> LogicRaw.PRED.t
val p_or : LogicRaw.PRED.t -> LogicRaw.PRED.t -> LogicRaw.PRED.t
val p_xor : LogicRaw.PRED.t -> LogicRaw.PRED.t -> LogicRaw.PRED.t
val p_iff : LogicRaw.PRED.t -> LogicRaw.PRED.t -> LogicRaw.PRED.t
val p_cond : LogicRaw.TERM.t -> LogicRaw.PRED.t -> LogicRaw.PRED.t -> LogicRaw.PRED.t
val p_named : LogicId.id -> LogicRaw.PRED.t -> LogicRaw.PRED.t
val p_hide : 'a -> 'a
val p_conj : LogicRaw.PRED.t list -> LogicRaw.PRED.t
val p_disj : LogicRaw.PRED.t list -> LogicRaw.PRED.t
val p_goal : LogicRaw.PRED.t list -> LogicRaw.PRED.t -> LogicRaw.PRED.t
type
var = LogicRaw.VAR.t
type
pool = LogicRaw.VAR.pool
val tau_of_var : LogicRaw.VAR.t -> LogicTau.tau
val pool : unit -> int Pervasives.ref
val fresh : int Pervasives.ref -> string -> LogicTau.tau -> LogicRaw.VAR.t
val e_var : LogicRaw.VAR.t -> LogicRaw.TERM.t
val e_let : ?pool:int Pervasives.ref ->
LogicRaw.VAR.t -> LogicRaw.TERM.t -> LogicRaw.TERM.t -> LogicRaw.TERM.t
val p_let : ?pool:int Pervasives.ref ->
LogicRaw.VAR.t -> LogicRaw.TERM.t -> LogicRaw.PRED.t -> LogicRaw.PRED.t
val p_forall : LogicRaw.VAR.t -> LogicRaw.PRED.t -> LogicRaw.PRED.t
val p_exists : LogicRaw.VAR.t -> LogicRaw.PRED.t -> LogicRaw.PRED.t
val is_atomic : LogicRaw.TERM.t -> bool
module Vmap: LogicRaw.VMAP
module Vset: LogicRaw.VSET
val space : LogicId.space
val pretty : LogicPretty.engine
val pp_tau : LogicTau.tau LogicPretty.printer
val pp_term : LogicRaw.TERM.t LogicPretty.printer
val pp_pred : LogicRaw.PRED.t LogicPretty.printer
val add_depend_tau : LogicId.Iset.t -> LogicTau.tau -> LogicId.Iset.t
val add_depend_term : LogicId.Iset.t -> LogicRaw.TERM.t -> LogicId.Iset.t
val add_depend_pred : LogicId.Iset.t -> LogicRaw.PRED.t -> LogicId.Iset.t