sig
type t
type td = Ctrl | Addr | Data
val make : ?a:bool -> ?d:bool -> ?c:bool -> unit -> PdgTypes.Dpd.t
val top : PdgTypes.Dpd.t
val bottom : PdgTypes.Dpd.t
val is_addr : PdgTypes.Dpd.t -> bool
val is_ctrl : PdgTypes.Dpd.t -> bool
val is_data : PdgTypes.Dpd.t -> bool
val adc_value : PdgTypes.Dpd.t -> bool * bool * bool
val is_dpd : PdgTypes.Dpd.td -> PdgTypes.Dpd.t -> bool
val is_bottom : PdgTypes.Dpd.t -> bool
val is_included : PdgTypes.Dpd.t -> PdgTypes.Dpd.t -> bool
val compare : PdgTypes.Dpd.t -> PdgTypes.Dpd.t -> int
val equal : PdgTypes.Dpd.t -> PdgTypes.Dpd.t -> bool
val combine : PdgTypes.Dpd.t -> PdgTypes.Dpd.t -> PdgTypes.Dpd.t
val add : PdgTypes.Dpd.t -> PdgTypes.Dpd.td -> PdgTypes.Dpd.t
val inter : PdgTypes.Dpd.t -> PdgTypes.Dpd.t -> PdgTypes.Dpd.t
val intersect : PdgTypes.Dpd.t -> PdgTypes.Dpd.t -> bool
val minus : PdgTypes.Dpd.t -> PdgTypes.Dpd.t -> PdgTypes.Dpd.t
val pretty_td : Format.formatter -> PdgTypes.Dpd.td -> unit
val pretty : Format.formatter -> PdgTypes.Dpd.t -> unit
end