DomPIPartition.ConditionMap
type 'a t = 'a M.t
val find : Condition.t -> 'a M.t -> 'b
val ar0 :
(module SConditionMap) ->
interres:('a -> 'a -> 'a) ->
Condition.t ->
'b ->
'a M.t ->
'a M.t
val ar1 :
(module SConditionMap) ->
joina:'a ->
bottoma:'b ->
(module SConditionMap) ->
interres:('c -> 'c -> 'c) ->
Condition.t ->
('d -> 'e) ->
'f M.t ->
'c M.t ->
'c M.t
val ar2 :
(module SConditionMap) ->
joina:'a ->
bottoma:'b ->
(module SConditionMap) ->
joinb:'c ->
bottomb:'d ->
(module SConditionMap) ->
interres:('e -> 'e -> 'e) ->
Condition.t ->
('f -> 'g -> 'h) ->
'i M.t ->
'j M.t ->
'e M.t ->
'e M.t
val nondet_disjoint :
(module SConditionMap) ->
conda:Condition.t ->
notconda:'a ->
cma:'b M.t ->
condb:Condition.t ->
notcondb:'c ->
cmb:'d M.t ->
join:('e -> 'e -> 'e) ->
bottom:'f ->
inter:('e -> 'e -> 'e) ->
old:'g M.t ->
'e M.t
val nondet_non_disjoint :
(module SConditionMap) ->
conda:Condition.t ->
cma:'a M.t ->
condb:Condition.t ->
cmb:'b M.t ->
condaorb:Condition.t ->
notcondaorb:'c ->
join:('d -> 'd -> 'd) ->
bottom:'e ->
inter:('d -> 'd -> 'd) ->
old:'d M.t ->
'd M.t
val changed :
('a -> 'a -> 'a) ->
Condition.t ->
'a M.t ->
'b option ->
Condition.t * 'a M.t
val ar1_bwd :
(module SConditionMap) ->
joina:'a ->
bottoma:'b ->
intera:('c -> 'c -> 'c) ->
(module SConditionMap) ->
joinres:'d ->
bottomres:'e ->
Condition.t ->
('f -> 'g -> 'c option) ->
'h M.t ->
'i M.t ->
Condition.t * 'c M.t
val ar2_bwd :
(module SConditionMap) ->
joina:'a ->
bottoma:'b ->
intera:('c -> 'c -> 'c) ->
(module SConditionMap) ->
joinb:'d ->
bottomb:'e ->
interb:('f -> 'f -> 'f) ->
(module SConditionMap) ->
joinres:'g ->
bottomres:'h ->
Condition.t ->
('i -> 'j -> 'k -> 'c option * 'f option) ->
'l M.t ->
'm M.t ->
'n M.t ->
(Condition.t * 'c M.t) * (Condition.t * 'f M.t)