Frama-C API - Logic
Parameters
module M : Sigs.Model
Signature
type logic = M.loc Sigs.logic
type segment = Ctypes.c_object * M.loc Sigs.sloc
type region = M.loc Sigs.region
Projections
val value : logic -> Lang.F.term
val vset : logic -> Wp__.Vset.vset list
val region : Ctypes.c_object -> logic -> region
val rdescr : M.loc Sigs.sloc -> Lang.F.var list * M.loc * Lang.F.pred
Morphisms
val map : Lang.F.unop -> logic -> logic
val map_l2t : (M.loc -> Lang.F.term) -> logic -> logic
val map_t2l : (Lang.F.term -> M.loc) -> logic -> logic
val apply : Lang.F.binop -> logic -> logic -> logic
Locations
val field : logic -> Frama_c_kernel.Cil_types.fieldinfo -> logic
val shift : logic -> Ctypes.c_object -> ?size:int -> logic -> logic
val load : M.Sigma.t -> Ctypes.c_object -> logic -> logic
Sets of loc-or-values
val union : Frama_c_kernel.Cil_types.logic_type -> logic list -> logic
val inter : Frama_c_kernel.Cil_types.logic_type -> logic list -> logic
val subset : Frama_c_kernel.Cil_types.logic_type -> logic -> Frama_c_kernel.Cil_types.logic_type -> logic -> Lang.F.pred
Regions
val separated : region list -> Lang.F.pred
val included : segment -> segment -> Lang.F.pred
val valid : M.Sigma.t -> Sigs.acs -> segment -> Lang.F.pred
val invalid : M.Sigma.t -> segment -> Lang.F.pred
val initialized : M.Sigma.t -> segment -> Lang.F.pred