package goblint
Install
dune-project
Dependency
Authors
Maintainers
Sources
sha256=bfc412ec2e447eaef6f4f83892e3511ebf305593cb00561c1406be3ae8bf48e9
sha512=5f2a162e5f36bffafc9836b0d18b5b2808cecfa6bf68f83bb7d1e8b9947ac74cf07776eb09274b4b29d55c897a45a10768f0d9ed25810cf6ba2409c525e4cd4d
doc/goblint.lib/Goblint_lib/IntDomain/IntDomWithDefaultIkind/index.html
Module IntDomain.IntDomWithDefaultIkind
Parameters
Signature
include B with type t = I.t with type int_t = I.int_t
include Lattice.S with type t = I.t
include Lattice.PO with type t = I.t
include Printable.S with type t = I.t
type t = I.tval hash : t -> intval show : t -> stringval pretty : unit -> t -> Goblint_lib.Printable.Pretty.docval printXml : 'a BatInnerIO.output -> t -> unitval to_yojson : t -> Yojson.Safe.tval tag : t -> intUnique ID, given by HConsed, for context identification in witness
val arbitrary : unit -> t QCheck.arbitrarywiden x y assumes leq x y. Solvers guarantee this by calling widen old (join old new).
val pretty_diff : unit -> (t * t) -> Goblint_lib.Lattice.Pretty.docIf leq x y = false, then pretty_diff () (x, y) should explain why.
val bot : unit -> tval is_bot : t -> boolval top : unit -> tval is_top : t -> booltype int_t = I.int_tAccessing values of the ADT
val bot_of : GoblintCil.Cil.ikind -> tval top_of : GoblintCil.Cil.ikind -> tReturn a single integer value if the value is a known constant, otherwise * don't return anything.
val to_bool : t -> bool optionGive a boolean interpretation of an abstract value if possible, otherwise * don't return anything.
Gives a list representation of the excluded values from included range of bits if possible.
Creates an exclusion set from a given list of integers.
val is_excl_list : t -> boolChecks if the element is an exclusion set.
Gives a list representation of the included values if possible.
Cast
Cast from original type torg to integer type Cil.ikind. Currently, torg is only present for actual casts. The function is also called to handle overflows/wrap around after operations. In these cases (where the type stays the same) torg is None.
Transform an integer literal to your internal domain representation with the specified ikind.
val of_bool : GoblintCil.Cil.ikind -> bool -> tTransform a known boolean value to the default internal representation of the specified ikind. It * should follow C: of_bool true = of_int 1 and of_bool false = of_int 0.
val is_top_of : GoblintCil.Cil.ikind -> t -> boolval project : PrecisionUtil.int_precision -> t -> tval invariant : GoblintCil.Cil.exp -> t -> Invariant.t