IntDomain0.IntDomWithDefaultIkindinclude IntDomain_intf.B with type t = I.t with type int_t = I.int_tinclude Lattice.PO with type t = I.tinclude Printable.S with type t = I.ttype t = I.tval hash : t -> intval show : t -> stringval pretty : unit -> t -> 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).
type int_t = I.int_tAccessing values of the ADT
val bot_of : GoblintCil.Cil.ikind -> tval top_of : ?bitfield:int -> 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
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