val join : ('a -> 'b -> 'c) -> 'd -> 'e list -> 'f list
val widen : (E.t -> E.t -> 'a) -> E.t -> E.t list -> 'b list
val meet : ('a -> 'b -> 'c) -> 'd -> 'e list -> 'f list
val merge_element :
(E.t -> 'a list -> 'a list) ->
E.t ->
'a list Map.t ->
'a list Map.t