Frama-C API - LogicUsage
val basename : Frama_c_kernel.Cil_types.varinfo -> stringTrims the original name
type logic_lemma = {lem_loc : Frama_c_kernel.Cil_types.location;lem_name : string;lem_types : string list;lem_labels : Frama_c_kernel.Cil_types.logic_label list;lem_predicate : Frama_c_kernel.Cil_types.toplevel_predicate;lem_depends : logic_lemma list;(*in reverse order
*)lem_attrs : Frama_c_kernel.Cil_types.attributes;
}type axiomatic = {ax_name : string;ax_position : Frama_c_kernel.Filepath.position;ax_property : Frama_c_kernel.Property.t;mutable ax_types : Frama_c_kernel.Cil_types.logic_type_info list;mutable ax_logics : Frama_c_kernel.Cil_types.logic_info list;mutable ax_lemmas : logic_lemma list;mutable ax_reads : Frama_c_kernel.Cil_datatype.Varinfo.Set.t;
}val ip_lemma : logic_lemma -> Frama_c_kernel.Property.tval iter_lemmas : (logic_lemma -> unit) -> unitval fold_lemmas : (logic_lemma -> 'a -> 'a) -> 'a -> 'aval logic_lemma : string -> logic_lemmaval axiomatic : string -> axiomaticval section_of_lemma : string -> logic_sectionval section_of_type : Frama_c_kernel.Cil_types.logic_type_info -> logic_sectionval section_of_logic : Frama_c_kernel.Cil_types.logic_info -> logic_sectionval proof_context : unit -> logic_lemma listLemmas that are not in an axiomatic.
val is_recursive : Frama_c_kernel.Cil_types.logic_info -> boolval get_induction_labels : Frama_c_kernel.Cil_types.logic_info -> string -> Wp__.Clabels.LabelSet.t Wp__.Clabels.LabelMap.tGiven an inductive phi{...A...}. Whenever in case C{...B...} we have a call to phi{...B...}, then A belongs to (induction phi C).[B].
val get_name : Frama_c_kernel.Cil_types.logic_info -> stringval pp_profile : Stdlib.Format.formatter -> Frama_c_kernel.Cil_types.logic_info -> unit