Projections of lattice operations #
The lattice operations on functions, pairs and PProd are pointwise and componentwise: applying a
function or projecting a component commutes with ⊤, ⊥, ⊓, ⊔, ⨅, ⨆, ⌜·⌝ and ⇨, and
⊑ on functions and pairs is pointwise and componentwise.
Functions #
Pointwise characterization of indexed infimum on function lattices.
Pointwise characterization of indexed supremum on function lattices.
Pointwise characterization of CompleteLattice.sup on function lattices:
(sup c) s = sup (fun y => ∃ f, c f ∧ f s = y).
Pointwise characterization of binary meet on function lattices.
Pointwise characterization of binary join on function lattices.
Pointwise characterization of ⊤ on a function lattice.
Entailment on a function lattice is pointwise.
Entailment on a pair lattice is componentwise.
Entailment between functions follows from pointwise entailment.
⊤ ⊑ g for a function g follows from pointwise ⊤ ⊑ g s.
Pointwise characterization of CompleteLattice.ofProp on a function lattice.
Pointwise characterization of Heyting implication on function lattices.
mk of the componentwise meets is the meet on a product.
mk of the componentwise least upper bounds is the least upper bound on a product.
Pairs #
The first component of a meet is the meet of the first components.
The second component of a meet is the meet of the second components.
The first component of the top element is the top element. Propositional (not
definitional), because ⊤ is a supremum, not a constructor application.
The second component of the top element is the top element. Propositional (not
definitional), because ⊤ is a supremum, not a constructor application.