Module Bounds.NonNegativeBound

type t
val compare : t -> t -> int
val leq : lhs:t -> rhs:t -> bool
val join : t -> t -> t
val widen : prev:t -> next:t -> num_iters:int -> t
val of_loop_bound : IBase.Location.t -> Bound.t -> t
val of_modeled_function : string -> IBase.Location.t -> Bound.t -> t
val of_big_int : trace:BoundTrace.t -> Z.t -> t
val pp : hum:bool -> Stdlib.Format.formatter -> t -> unit
val make_err_trace : t -> string * Absint.Errlog.loc_trace
val mask_min_max_constant : t -> t
val zero : IBase.Location.t -> t
val int_lb : t -> Ints.NonNegativeInt.t
val int_ub : t -> Ints.NonNegativeInt.t option
val classify : t -> (Ints.NonNegativeInt.ttBoundTrace.t) valclass
val subst : IR.Procname.t -> IBase.Location.t -> t -> Bound.eval_sym -> (Ints.NonNegativeInt.ttBoundTrace.t) valclass
val split_mult : t -> (t * t) option