package coq

  1. Overview
  2. Docs
Legend:
Library
Module
Module type
Parameter
Class
Class type
type t = t -> t
type accumulator
type tag = int
type arity = int
type reloc_table = (tag * arity) array
type annot_sw = {
  1. asw_ind : Names.inductive;
  2. asw_ci : Constr.case_info;
  3. asw_reloc : reloc_table;
  4. asw_finite : bool;
  5. asw_prefix : string;
}
val eq_annot_sw : annot_sw -> annot_sw -> bool
val hash_annot_sw : annot_sw -> int
type sort_annot = string * int
type rec_pos = int array
val eq_rec_pos : rec_pos -> rec_pos -> bool
type atom =
  1. | Arel of int
  2. | Aconstant of Constr.pconstant
  3. | Aind of Constr.pinductive
  4. | Asort of Sorts.t
  5. | Avar of Names.Id.t
  6. | Acase of annot_sw * accumulator * t * t -> t
  7. | Afix of t array * t array * rec_pos * int
  8. | Acofix of t array * t array * int * t
  9. | Acofixe of t array * t array * int * t
  10. | Aprod of Names.Name.t * t * t -> t
  11. | Ameta of Constr.metavariable * t
  12. | Aevar of Evar.t * t array
  13. | Aproj of Names.inductive * int * accumulator
val mk_accu : atom -> t
val mk_rel_accu : int -> t
val mk_rels_accu : int -> int -> t array
val mk_constant_accu : Names.Constant.t -> Univ.Level.t array -> t
val mk_ind_accu : Names.inductive -> Univ.Level.t array -> t
val mk_sort_accu : Sorts.t -> Univ.Level.t array -> t
val mk_var_accu : Names.Id.t -> t
val mk_sw_accu : annot_sw -> accumulator -> t -> t -> t
val mk_prod_accu : Names.Name.t -> t -> t -> t
val mk_fix_accu : rec_pos -> int -> t array -> t array -> t
val mk_cofix_accu : int -> t array -> t array -> t
val mk_meta_accu : Constr.metavariable -> t
val mk_evar_accu : Evar.t -> t array -> t
val mk_proj_accu : (Names.inductive * int) -> accumulator -> t
val upd_cofix : t -> t -> unit
val force_cofix : t -> t
val mk_const : tag -> t
val mk_block : tag -> t array -> t
val mk_bool : bool -> t
val mk_int : int -> t
val mk_uint : Uint63.t -> t
val napply : t -> t array -> t
val dummy_value : unit -> t
val atom_of_accu : accumulator -> atom
val args_of_accu : accumulator -> t array
val accu_nargs : accumulator -> int
val cast_accu : t -> accumulator
type block
val block_size : block -> int
val block_field : block -> int -> t
val block_tag : block -> int
type kind_of_value =
  1. | Vaccu of accumulator
  2. | Vfun of t -> t
  3. | Vconst of int
  4. | Vint64 of int64
  5. | Vblock of block
val kind_of_value : t -> kind_of_value
val str_encode : 'a -> string
val str_decode : string -> 'a
val val_to_int : t -> int
val is_int : t -> bool
val head0 : t -> t -> t
val tail0 : t -> t -> t
val add : t -> t -> t -> t
val sub : t -> t -> t -> t
val mul : t -> t -> t -> t
val div : t -> t -> t -> t
val rem : t -> t -> t -> t
val l_sr : t -> t -> t -> t
val l_sl : t -> t -> t -> t
val l_and : t -> t -> t -> t
val l_xor : t -> t -> t -> t
val l_or : t -> t -> t -> t
val addc : t -> t -> t -> t
val subc : t -> t -> t -> t
val addCarryC : t -> t -> t -> t
val subCarryC : t -> t -> t -> t
val mulc : t -> t -> t -> t
val diveucl : t -> t -> t -> t
val div21 : t -> t -> t -> t -> t
val addMulDiv : t -> t -> t -> t -> t
val eq : t -> t -> t -> t
val lt : t -> t -> t -> t
val le : t -> t -> t -> t
val compare : t -> t -> t -> t
val print : t -> t
val no_check_head0 : t -> t
val no_check_tail0 : t -> t
val no_check_add : t -> t -> t
val no_check_sub : t -> t -> t
val no_check_mul : t -> t -> t
val no_check_div : t -> t -> t
val no_check_rem : t -> t -> t
val no_check_l_sr : t -> t -> t
val no_check_l_sl : t -> t -> t
val no_check_l_and : t -> t -> t
val no_check_l_xor : t -> t -> t
val no_check_l_or : t -> t -> t
val no_check_addc : t -> t -> t
val no_check_subc : t -> t -> t
val no_check_addCarryC : t -> t -> t
val no_check_subCarryC : t -> t -> t
val no_check_mulc : t -> t -> t
val no_check_diveucl : t -> t -> t
val no_check_div21 : t -> t -> t -> t
val no_check_addMulDiv : t -> t -> t -> t
val no_check_eq : t -> t -> t
val no_check_lt : t -> t -> t
val no_check_le : t -> t -> t
val no_check_compare : t -> t -> t
OCaml

Innovation. Community. Security.