package goblint
Install
Dune Dependency
Authors
Maintainers
Sources
sha256=ca24f72fa9a87d288affe97c411753f14b7802bab4ca3649b337276b89bf5674
sha512=394b3521ccda0da91540cebb2f433f7525763060be4bbe179edd3b952a3580a8e173c4e410fc6895dc67fe6d17e6699aeddfed600f4692858bec093dd912bf1e
doc/goblint.lib/Goblint_lib/IntDomain/Interval32/index.html
Module IntDomain.Interval32
include B with type int_t = IntOps.Int64Ops.t
include Lattice.S
include Lattice.PO
include Printable.S
val hash : t -> int
val show : t -> string
val pretty : unit -> t -> Goblint_lib__.Printable.Pretty.doc
val printXml : 'a BatInnerIO.output -> t -> unit
val to_yojson : t -> Yojson.Safe.t
val tag : t -> int
Unique ID, given by HConsed, for context identification in witness
val arbitrary : unit -> t QCheck.arbitrary
widen x y
assumes leq x y
. Solvers guarantee this by calling widen old (join old new)
.
val bot : unit -> t
val is_bot : t -> bool
val top : unit -> t
val is_top : t -> bool
type int_t = IntOps.Int64Ops.t
Accessing values of the ADT
val bot_of : GoblintCil.Cil.ikind -> t
val top_of : GoblintCil.Cil.ikind -> t
Return a single integer value if the value is a known constant, otherwise * don't return anything.
val to_bool : t -> bool option
Give 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 -> bool
Checks 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 -> t
Transform 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 -> bool
val project : PrecisionUtil.int_precision -> t -> t
val invariant : GoblintCil.Cil.exp -> t -> Invariant.t