Module ArrayBlk.ArrInfo
val compare : t -> t -> int
val top : t
val make_c : offset:Itv.t -> size:Itv.t -> stride:Itv.t -> t
val make_java : length:Itv.t -> t
val join : t -> t -> t
val widen : prev:t -> next:t -> num_iters:int -> t
val (<=) : lhs:t -> rhs:t -> bool
val map_offset : f:(Itv.t -> Itv.t) -> t -> t
val plus_offset : t -> Itv.t -> t
val minus_offset : t -> Itv.t -> t
val diff : t -> t -> Itv.t
val subst : t -> Bound.eval_sym -> t
val pp : F.formatter -> t -> unit
val is_pointer : Symb.SymbolPath.partial -> t -> bool
val is_symbolic : t -> bool
val get_symbols : t -> InferModules.Itv.SymbolSet.t
val normalize : t -> t
val prune_offset : f:(Itv.t -> Itv.t -> Itv.t) -> t -> t -> t
val prune_comp : InferIR.Binop.t -> t -> t -> t
val prune_eq : t -> t -> t
val prune_ne : t -> t -> t
val set_length : Itv.t -> t -> t
val transform_length : f:(Itv.t -> Itv.t) -> t -> t
val set_stride : Z.t -> t -> t
val set_offset : Itv.t -> t -> t
val offsetof : t -> Itv.t
val sizeof : t -> Itv.t
val byte_size : t -> Itv.t
val lift_cmp_itv : (Itv.t -> Itv.t -> Boolean.t) -> t -> t -> Boolean.t