package why3
val dty_fresh : unit -> dty
val dty_var : Ty.tvsymbol -> dty
val dty_app : Ty.tysymbol -> dty list -> dty
val dty_int : dty
val dty_real : dty
val dty_bool : dty
val dty_str : dty
val dty_fold :
(Ty.tysymbol -> 'a list -> 'a) ->
(Ty.tvsymbol -> 'a) ->
(int -> 'a) ->
dty ->
'a
type dpattern = private {
dp_node : dpattern_node;
dp_dty : dty;
dp_vars : dty Wstdlib.Mstr.t;
dp_loc : Loc.position option;
}
and dpattern_node =
| DPwild
| DPvar of Ident.preid
| DPapp of Term.lsymbol * dpattern list
| DPor of dpattern * dpattern
| DPas of dpattern * Ident.preid
| DPcast of dpattern * dty
type dbinder = Ident.preid option * dty * Loc.position option
and dterm_node =
| DTvar of string * dty
| DTgvar of Term.vsymbol
| DTconst of Constant.constant * dty
| DTapp of Term.lsymbol * dterm list
| DTfapp of dterm * dterm
| DTif of dterm * dterm * dterm
| DTlet of dterm * Ident.preid * dterm
| DTcase of dterm * (dpattern * dterm) list
| DTeps of Ident.preid * dty * dterm
| DTquant of dquant * dbinder list * dterm list list * dterm
| DTbinop of dbinop * dterm * dterm
| DTnot of dterm
| DTtrue
| DTfalse
| DTcast of dterm * dty
| DTuloc of dterm * Loc.position
| DTattr of dterm * Ident.Sattr.t
type denv = dterm_node Wstdlib.Mstr.t
val denv_empty : denv
val denv_add_var : denv -> Ident.preid -> dty -> denv
val denv_add_let : denv -> dterm -> Ident.preid -> denv
val denv_get : denv -> string -> dterm_node
val denv_get_opt : denv -> string -> dterm_node option
val dpattern : ?loc:Loc.position -> dpattern_node -> dpattern
val dterm : Coercion.t -> ?loc:Loc.position -> dterm_node -> dterm
val debug_ignore_unused_var : Debug.flag
val attr_w_unused_var_no : Ident.attribute
val check_used_var : Term.term -> Term.vsymbol -> unit
sectionYPositions = computeSectionYPositions($el), 10)"
x-init="setTimeout(() => sectionYPositions = computeSectionYPositions($el), 10)"
>