`type astate`````
`include sig ... end`
`val compare_astate : astate ‑> astate ‑> int`
`type t``= astate```
`val pp : F.formatter ‑> t ‑> unit`
`val mone : t`
`val zero : t`
`val of_int : int ‑> t`
`val lb : t ‑> Bound.t`
`val ub : t ‑> Bound.t`
`val is_finite : t ‑> bool`
`val is_invalid : t ‑> bool`
`val is_lb_infty : t ‑> bool`
`val is_nat : t ‑> bool`
`val is_symbolic : t ‑> bool`
`val is_top : t ‑> bool`
`val (<=) : lhs:t ‑> rhs:t ‑> bool`
`val have_similar_bounds : t ‑> t ‑> bool`
`val has_infty : t ‑> bool`
`val make_positive : t ‑> t`
`val join : t ‑> t ‑> t`
`val le_sem : t ‑> t ‑> Boolean.t`
`val lt_sem : t ‑> t ‑> Boolean.t`
`val widen : prev:t ‑> next:t ‑> num_iters:int ‑> t`
`val xcompare : lhs:t ‑> rhs:t ‑> [ `Equal | `LeftSmallerThanRight | `RightSmallerThanLeft | `NotComparable | `LeftSubsumesRight | `RightSubsumesLeft ]`
`val get_symbols : t ‑> Symbol.t list`
`val subst : t ‑> Bound.t AbstractDomain.Types.bottom_lifted SymbolMap.t ‑> t AbstractDomain.Types.bottom_lifted`