Module type Abstract_interp.Lattice


module type Lattice = sig .. end
Generic lattice.
Consult the Plugin Development Guide for additional details.
exception Error_Top
exception Error_Bottom
type t 
type of element of the lattice
type widen_hint 
hints for the widening
val equal : t -> t -> bool
val join : t ->
t -> t
over-approximation of union
val link : t ->
t -> t
under-approximation of union
val meet : t ->
t -> t
under-approximation of intersection
val narrow : t ->
t -> t
over-approximation of intersection
val bottom : t
the smallest
val top : t
the largest
val is_included : t -> t -> bool
val is_included_exn : t -> t -> unit
val intersects : t -> t -> bool
val pretty : Format.formatter -> t -> unit
val widen : widen_hint ->
t ->
t -> t
widen h t1 t2 is an over-approximation of join t1 t2. Assumes is_included t1 t2
val cardinal_zero_or_one : t -> bool
val cardinal_less_than : t -> int -> int
cardinal_less_than t v
Raises Not_less_than whenever the cardinal of t is higher than v
val tag : t -> int
module Datatype: Project.Datatype.S  with type t = t