https://github.com/EasyCrypt/easycrypt
Revision 6df81b68bb7fb2010d10043e5c11e4401cf56d37 authored by Benjamin Gregoire on 01 April 2014, 07:58:40 UTC, committed by Benjamin Gregoire on 01 April 2014, 07:58:40 UTC
1 parent e43821c
Tip revision: 6df81b68bb7fb2010d10043e5c11e4401cf56d37 authored by Benjamin Gregoire on 01 April 2014, 07:58:40 UTC
add product of two and 3 sets
add product of two and 3 sets
Tip revision: 6df81b6
ecWhy3.mli
(* -------------------------------------------------------------------- *)
open EcSymbols
open EcModules
open EcProvers
(* -------------------------------------------------------------------- *)
type env
val empty : env
type rebinding_item
type rebinding = rebinding_item list
val rebind : env -> rebinding -> env
(* importing why3 theory *)
type renaming_kind =
| RDts
| RDls
| RDpr
type renaming_decl = (string list * renaming_kind * symbol) list
val import_w3 :
env -> EcPath.path ->
Why3.Theory.theory ->
renaming_decl -> EcTheory.theory * rebinding_item
val distr_theory : Why3.Theory.theory
val add_ty : env -> EcPath.path -> EcDecl.tydecl -> env * rebinding
val add_op :
env -> EcPath.path -> EcDecl.operator -> env * rebinding
val add_ax : env -> EcPath.path -> EcDecl.axiom -> env * rebinding
val add_mod_exp :
env -> EcPath.path -> module_expr -> env * rebinding
val add_abs_mod :
(EcIdent.t -> module_type -> mod_restr -> module_expr) ->
env -> EcIdent.t -> module_type -> mod_restr -> env
(* -------------------------------------------------------------------- *)
exception CannotTranslate of string
type me_of_mt = EcIdent.t -> module_type -> mod_restr -> module_expr
val check_goal : me_of_mt -> env -> prover_infos -> hints -> EcBaseLogic.l_decl -> bool
Computing file changes ...