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

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

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