Module Indexed.MakeFinite

Functor that creates an abstract function graph for T => X given a type with finite elements T and an abstract domain X.

Parameters

module M : sig ... end
module X : sig ... end

Signature

include Sigs.MFG with type t = X.t M.t and type dom = M.key and type codom = X.t
type dom = M.key
type codom = X.t
type t = X.t M.t
type strategy
val bot : t
val is_bot : t -> bool
val init : dom -> t
val leq : t -> t -> bool
val map : (dom -> codom) -> t -> t
val apply : t -> dom -> codom
val join : t -> t -> t
val widen_gen : strategy array -> int -> t -> t -> t
val default_strategy : strategy array
val widen : int -> t -> t -> t
val pp : Stdlib.Format.formatter -> t -> unit
val meet : t -> t -> t
val iter : (dom -> codom -> unit) -> t -> unit
val dom : t -> dom list