`type t````=` `{`

`offset : Itv.t;`
`size : Itv.t;`
`stride : Itv.t;`

`}```
`val compare : t ‑> t ‑> int`
`type astate``= t```
`val top : t`
`val make : offset:Itv.t ‑> size:Itv.t ‑> stride: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 plus_offset : t ‑> Itv.t ‑> t`
`val minus_offset : t ‑> Itv.astate ‑> t`
`val diff : t ‑> t ‑> Itv.astate`
`val subst : t ‑> Itv.Bound.t AbstractDomain.Types.bottom_lifted InferModules.Itv.SymbolMap.t ‑> t`
`val pp : Format.formatter ‑> t ‑> unit`
`val get_symbols : t ‑> Itv.Symbol.t list`
`val normalize : 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_size : Itv.t ‑> t ‑> t`