module Logic_const:sig..end
val new_code_annotation : (Cil_types.term, Cil_types.predicate Cil_types.named,
Cil_types.identified_predicate, Cil_types.identified_term)
Cil_types.code_annot -> Cil_types.code_annotationval fresh_code_annotation : unit -> intval refresh_code_annotation : Cil_types.code_annotation -> Cil_types.code_annotationval refresh_spec : Cil_types.funspec -> Cil_types.funspecval new_predicate : Cil_types.predicate Cil_types.named -> Cil_types.identified_predicateval refresh_predicate : Cil_types.identified_predicate -> Cil_types.identified_predicateval fresh_predicate_id : unit -> intval pred_of_id_pred : Cil_types.identified_predicate -> Cil_types.predicate Cil_types.namedval new_identified_term : Cil_types.term -> Cil_types.identified_termval refresh_identified_term : Cil_types.identified_term -> Cil_types.identified_termval fresh_term_id : unit -> intval pre_label : Cil_types.logic_label
val post_label : Cil_types.logic_label
val here_label : Cil_types.logic_label
val old_label : Cil_types.logic_label
val loop_current_label : Cil_types.logic_label
val loop_entry_label : Cil_types.logic_label
val init_label : Cil_types.logic_labelval unamed : ?loc:Cil_types.location -> 'a -> 'a Cil_types.namedval ptrue : Cil_types.predicate Cil_types.namedval pfalse : Cil_types.predicate Cil_types.namedval pold : ?loc:Cil_types.location ->
Cil_types.predicate Cil_types.named -> Cil_types.predicate Cil_types.namedval papp : ?loc:Cil_types.location ->
Cil_types.logic_info * (Cil_types.logic_label * Cil_types.logic_label) list *
Cil_types.term list -> Cil_types.predicate Cil_types.namedval pand : ?loc:Cil_types.location ->
Cil_types.predicate Cil_types.named * Cil_types.predicate Cil_types.named ->
Cil_types.predicate Cil_types.namedval por : ?loc:Cil_types.location ->
Cil_types.predicate Cil_types.named * Cil_types.predicate Cil_types.named ->
Cil_types.predicate Cil_types.namedval pxor : ?loc:Cil_types.location ->
Cil_types.predicate Cil_types.named * Cil_types.predicate Cil_types.named ->
Cil_types.predicate Cil_types.named
!
val pnot : ?loc:Cil_types.location ->
Cil_types.predicate Cil_types.named -> Cil_types.predicate Cil_types.named
val pands : Cil_types.predicate Cil_types.named list ->
Cil_types.predicate Cil_types.namedval pors : Cil_types.predicate Cil_types.named list ->
Cil_types.predicate Cil_types.namedval plet : ?loc:Cil_types.location ->
(Cil_types.logic_info * Cil_types.predicate Cil_types.named) Cil_types.named ->
Cil_types.predicate Cil_types.namedval pimplies : ?loc:Cil_types.location ->
Cil_types.predicate Cil_types.named * Cil_types.predicate Cil_types.named ->
Cil_types.predicate Cil_types.namedval pif : ?loc:Cil_types.location ->
Cil_types.term * Cil_types.predicate Cil_types.named *
Cil_types.predicate Cil_types.named -> Cil_types.predicate Cil_types.namedval piff : ?loc:Cil_types.location ->
Cil_types.predicate Cil_types.named * Cil_types.predicate Cil_types.named ->
Cil_types.predicate Cil_types.namedval prel : ?loc:Cil_types.location ->
Cil_types.relation * Cil_types.term * Cil_types.term ->
Cil_types.predicate Cil_types.named
val pforall : ?loc:Cil_types.location ->
Cil_types.quantifiers * Cil_types.predicate Cil_types.named ->
Cil_types.predicate Cil_types.namedval pexists : ?loc:Cil_types.location ->
Cil_types.quantifiers * Cil_types.predicate Cil_types.named ->
Cil_types.predicate Cil_types.namedval pfresh : ?loc:Cil_types.location ->
Cil_types.logic_label * Cil_types.logic_label * Cil_types.term *
Cil_types.term -> Cil_types.predicate Cil_types.namedval pallocable : ?loc:Cil_types.location ->
Cil_types.logic_label * Cil_types.term -> Cil_types.predicate Cil_types.namedval pfreeable : ?loc:Cil_types.location ->
Cil_types.logic_label * Cil_types.term -> Cil_types.predicate Cil_types.namedval pvalid_read : ?loc:Cil_types.location ->
Cil_types.logic_label * Cil_types.term -> Cil_types.predicate Cil_types.namedval pvalid : ?loc:Cil_types.location ->
Cil_types.logic_label * Cil_types.term -> Cil_types.predicate Cil_types.namedval pvalid_function : ?loc:Cil_types.location ->
Cil_types.term -> Cil_types.predicate Cil_types.namedval pinitialized : ?loc:Cil_types.location ->
Cil_types.logic_label * Cil_types.term -> Cil_types.predicate Cil_types.namedval pdangling : ?loc:Cil_types.location ->
Cil_types.logic_label * Cil_types.term -> Cil_types.predicate Cil_types.namedval pat : ?loc:Cil_types.location ->
Cil_types.predicate Cil_types.named * Cil_types.logic_label ->
Cil_types.predicate Cil_types.namedval pvalid_index : ?loc:Cil_types.location ->
Cil_types.logic_label * Cil_types.term * Cil_types.term ->
Cil_types.predicate Cil_types.namedval pvalid_range : ?loc:Cil_types.location ->
Cil_types.logic_label * Cil_types.term * Cil_types.term * Cil_types.term ->
Cil_types.predicate Cil_types.namedval psubtype : ?loc:Cil_types.location ->
Cil_types.term * Cil_types.term -> Cil_types.predicate Cil_types.namedval pseparated : ?loc:Cil_types.location ->
Cil_types.term list -> Cil_types.predicate Cil_types.namedval is_list_type : Cil_types.logic_type -> booltrue if the type is a set<t>.val make_type_list_of : Cil_types.logic_type -> Cil_types.logic_typemake_type_list_of t returns the type list<t>.val type_of_list_elem : Cil_types.logic_type -> Cil_types.logic_typeFailure if the input type is not a list type.val is_set_type : Cil_types.logic_type -> booltrue if the type is a set<t>.val set_conversion : Cil_types.logic_type -> Cil_types.logic_type -> Cil_types.logic_typeset_conversion ty1 ty2 returns a set type as soon as ty1 and/or ty2
is a set. Elements have type ty1, or the type of the elements of ty1 if
it is itself a set-type ( we do not build set of sets that way).val make_set_type : Cil_types.logic_type -> Cil_types.logic_typeval type_of_element : Cil_types.logic_type -> Cil_types.logic_typeFailure if the input type is not a set type.val plain_or_set : (Cil_types.logic_type -> 'a) -> Cil_types.logic_type -> 'aplain_or_set f t applies f to t or to the type of elements of t
if it is a set typeval transform_element : (Cil_types.logic_type -> Cil_types.logic_type) ->
Cil_types.logic_type -> Cil_types.logic_typetransform_element f t is the same as
set_conversion (plain_or_set f t) tval is_plain_type : Cil_types.logic_type -> booltrue if the argument is not a set typeval is_boolean_type : Cil_types.logic_type -> boolval boolean_type : Cil_types.logic_typeval term : ?loc:Cil_datatype.Location.t ->
Cil_types.term_node -> Cil_types.logic_type -> Cil_types.termval taddrof : ?loc:Cil_datatype.Location.t ->
Cil_types.term_lval -> Cil_types.logic_type -> Cil_types.termLogic_utils.mk_AddrOf is easier to use.val trange : ?loc:Cil_datatype.Location.t ->
Cil_types.term option * Cil_types.term option -> Cil_types.term.. of integersval tinteger : ?loc:Cil_datatype.Location.t -> int -> Cil_types.termval tinteger_s64 : ?loc:Cil_datatype.Location.t -> int64 -> Cil_types.termval tint : ?loc:Cil_datatype.Location.t -> Integer.t -> Cil_types.termval treal : ?loc:Cil_datatype.Location.t -> float -> Cil_types.termval treal_zero : ?loc:Cil_datatype.Location.t ->
?ltyp:Cil_types.logic_type -> unit -> Cil_types.termval tstring : ?loc:Cil_datatype.Location.t -> string -> Cil_types.termval tat : ?loc:Cil_datatype.Location.t ->
Cil_types.term * Cil_types.logic_label -> Cil_types.termval told : ?loc:Cil_datatype.Location.t -> Cil_types.term -> Cil_types.termval tvar : ?loc:Cil_datatype.Location.t -> Cil_types.logic_var -> Cil_types.termval tresult : ?loc:Cil_datatype.Location.t -> Cil_types.typ -> Cil_types.termval tlogic_coerce : ?loc:Cil_datatype.Location.t ->
Cil_types.term -> Cil_types.logic_type -> Cil_types.termval is_result : Cil_types.term -> booltrue if the term is \result (potentially enclosed in \at)val is_exit_status : Cil_types.term -> booltrue if the term is \exit_status (potentially enclosed in \at)val lastTermOffset : Cil_types.term_offset -> Cil_types.term_offsetlastOffset for terms.val addTermOffset : Cil_types.term_offset -> Cil_types.term_offset -> Cil_types.term_offsetaddOffset for terms.val addTermOffsetLval : Cil_types.term_offset -> Cil_types.term_lval -> Cil_types.term_lvaladdOffsetLval for terms.