module type Lattice_Set =sig
..end
Signatures for a lattice over a set
(see Abstract_interp.Make_Lattice_Set
or
Abstract_interp.Make_Hashconsed_Lattice_Set
).
module O:Lattice_type.Set
type
t = private
| |
Set of |
| |
Top |
include Lattice_type.AI_Lattice_with_cardinal_one
val inject_singleton : O.elt -> t
val inject : O.t -> t
val empty : t
val apply2 : (O.elt -> O.elt -> O.elt) ->
t ->
t -> t
val apply1 : (O.elt -> O.elt) -> t -> t
val fold : (O.elt -> 'a -> 'a) -> t -> 'a -> 'a
val iter : (O.elt -> unit) -> t -> unit
val exists : (O.elt -> bool) -> t -> bool
val for_all : (O.elt -> bool) -> t -> bool
val filter : (O.elt -> bool) -> t -> t
val project : t -> O.t
val mem : O.elt -> t -> bool