Module Lattices.Pointwise

Pointwise lattice construction.

Lattice of partial maps 𝕂 ⇀ 𝕍 where 𝕂 is a key set and 𝕍 is a value lattice. Unlink Partial_map, ⊥ values is not coalescent.

Bindings that map keys to ⊥ values are not represented.

We use Maps, so 𝕂 needs to be totally ordered.

⊥ map is represented as the empty map. ⊤ map is represented as a special TOP element.

val debug : ('a, Format.formatter, unit, unit) format4 -> 'a
module type KEY = sig ... end
module Make (Key : KEY) (Value : Core.All.LATTICE) : sig ... end