Goblint_lib.RelationDomain
Signatures for relational value domains.
See ApronDomain
and AffineEqualityDomain
.
module type VarMetadata = sig ... end
module VM : sig ... end
module VarMetadataTbl (VM : VarMetadata) : sig ... end
module type RV = sig ... end
module type Tracked = sig ... end
module type S2 = sig ... end
module type S3 = sig ... end
val equal_relcomponents_t :
'a 'b. ('a -> 'a -> Ppx_deriving_runtime.bool) ->
('b -> 'b -> Ppx_deriving_runtime.bool) ->
('a, 'b) relcomponents_t ->
('a, 'b) relcomponents_t ->
Ppx_deriving_runtime.bool
val compare_relcomponents_t :
'a 'b. ('a -> 'a -> Ppx_deriving_runtime.int) ->
('b -> 'b -> Ppx_deriving_runtime.int) ->
('a, 'b) relcomponents_t ->
('a, 'b) relcomponents_t ->
Ppx_deriving_runtime.int
val hash_relcomponents_t :
('a -> int) ->
('b -> int) ->
('a, 'b) relcomponents_t ->
int
val relcomponents_t_to_yojson :
'a 'b. ('a -> Yojson.Safe.t) ->
('b -> Yojson.Safe.t) ->
('a, 'b) relcomponents_t ->
Yojson.Safe.t
val _ :
('a -> Yojson.Safe.t) ->
('b -> Yojson.Safe.t) ->
('a, 'b) relcomponents_t ->
Yojson.Safe.t
val relift_relcomponents_t :
('a -> 'a) ->
('b -> 'b) ->
('a, 'b) relcomponents_t ->
('a, 'b) relcomponents_t
val is_top_relcomponents_t :
('a -> bool) ->
('b -> bool) ->
('a, 'b) relcomponents_t ->
bool
val top_relcomponents_t :
(unit -> 'a) ->
(unit -> 'b) ->
unit ->
('a, 'b) relcomponents_t
val is_bot_relcomponents_t :
('a -> bool) ->
('b -> bool) ->
('a, 'b) relcomponents_t ->
bool
val bot_relcomponents_t :
(unit -> 'a) ->
(unit -> 'b) ->
unit ->
('a, 'b) relcomponents_t
val narrow_relcomponents_t :
('a -> 'a -> 'a) ->
('b -> 'b -> 'b) ->
('a, 'b) relcomponents_t ->
('a, 'b) relcomponents_t ->
('a, 'b) relcomponents_t
val widen_relcomponents_t :
('a -> 'a -> 'a) ->
('b -> 'b -> 'b) ->
('a, 'b) relcomponents_t ->
('a, 'b) relcomponents_t ->
('a, 'b) relcomponents_t
val meet_relcomponents_t :
('a -> 'a -> 'a) ->
('b -> 'b -> 'b) ->
('a, 'b) relcomponents_t ->
('a, 'b) relcomponents_t ->
('a, 'b) relcomponents_t
val join_relcomponents_t :
('a -> 'a -> 'a) ->
('b -> 'b -> 'b) ->
('a, 'b) relcomponents_t ->
('a, 'b) relcomponents_t ->
('a, 'b) relcomponents_t
val leq_relcomponents_t :
('a -> 'a -> bool) ->
('b -> 'b -> bool) ->
('a, 'b) relcomponents_t ->
('a, 'b) relcomponents_t ->
bool
module RelComponents (D3 : S3) (PrivD : Lattice.S) : sig ... end
module type RD = sig ... end