Documentation

LeanPool.DomainTheory.Neighborhood.Exercise625

Lecture VI — Exercise 6.25 (Scott 1981, PRG-19): the Galois connection of a #

projection pair

Exercise 6.25. For a projection pair g : 𝒟 → ℰ and h : ℰ → 𝒟 show that for x ∈ |𝒟| and y ∈ |ℰ| we have

g(x) ⊑ yx ⊑ h(y).

Thus conclude

h(y) = ⊔ {x ∈ |𝒟| ∣ g(x) ⊑ y} and g(x) = ⊓ {y ∈ |ℰ| ∣ x ⊑ h(y)},

so each of the two functions determines the other. Check that the set in the first equation is directed, and that the set in the second is non-empty. Prove also that g maps consistent sets to consistent sets and preserves (not just directed unions).

Dictionary to the codebase #

Scott's g is the injection i and his h is the projection j of Proposition 6.12; we carry them abstractly in Subsystem.ProjectionPair 𝒟 ℰ (fields inj = g, proj = h) together with the two defining laws

On elements (toElementMap) these read h(g(x)) = x (proj_inj_apply) and g(h(y)) ⊑ y (inj_proj_apply_le); everything below is a short consequence of these two facts plus monotonicity of approximable maps on elements (toElementMap_mono).

Everything here is choice-free (#print axioms ⊆ {propext, Quot.sound}): the sSup/sInf of Exercises 1.18/1.27 are the only constructions used and are themselves choice-free.

h(g(x)) = x. The first projection-pair law h ∘ g = I_𝒟, read on elements.

g(h(y)) ⊑ y. The second projection-pair law g ∘ h ⊆ I_ℰ, read on elements.

Exercise 6.25, the Galois connection. For x ∈ |𝒟|, y ∈ |ℰ|: g(x) ⊑ yx ⊑ h(y). So g (lower adjoint) and h (upper adjoint) determine each other.

: apply the monotone h to g(x) ⊑ y and use h(g(x)) = x. : apply the monotone g to x ⊑ h(y) and use g(h(y)) ⊑ y.

First extremal formula: h(y) = ⊔ {x ∣ g(x) ⊑ y}. #

The set {x ∈ |𝒟| ∣ g(x) ⊑ y} of the first formula. By the Galois connection it is the down-set {x ∣ x ⊑ h(y)} of h(y).

Equations
Instances For

    The set {x ∣ g(x) ⊑ y} is bounded: h(y) is an upper bound (it is in fact the top).

    theorem Domain.Neighborhood.Subsystem.ProjectionPair.lowerSet_directed {α : Type u_1} {D E : NeighborhoodSystem α} (P : ProjectionPair D E) (y : E.Element) (a : D.Element) :
    a P.lowerSet ybP.lowerSet y, cP.lowerSet y, a c b c

    Exercise 6.25 — "check that the set on the right is directed". Any two members of {x ∣ g(x) ⊑ y} have a common upper bound inside the set, namely h(y) itself (the down-set of h(y) has h(y) as a top, so it is trivially directed).

    Exercise 6.25, first extremal formula. h(y) = ⊔ {x ∈ |𝒟| ∣ g(x) ⊑ y}.

    h(y) is the greatest member of the set (g(h(y)) ⊑ y, so h(y) is in it; every member is ⊑ h(y) by the Galois connection), hence it is the least upper bound.

    Second extremal formula: g(x) = ⊓ {y ∣ x ⊑ h(y)}. #

    The set {y ∈ |ℰ| ∣ x ⊑ h(y)} of the second formula. By the Galois connection it is the up-set {y ∣ g(x) ⊑ y} of g(x).

    Equations
    Instances For

      Exercise 6.25 — "check that the set on the right is non-empty". g(x) itself lies in {y ∣ x ⊑ h(y)}, since x ⊑ h(g(x)) = x.

      Exercise 6.25, second extremal formula. g(x) = ⊓ {y ∈ |ℰ| ∣ x ⊑ h(y)}.

      g(x) is the least member of the set (x ⊑ h(g(x)) = x, so g(x) is in it; every member is ⊒ g(x) by the Galois connection), hence it is the greatest lower bound.

      g preserves consistency and all least upper bounds. #

      Exercise 6.25 — g maps consistent sets to consistent sets. "Consistent" for sets of elements is "bounded" (Exercise 1.27). If S is bounded by b, its image {g(s) ∣ s ∈ S} is bounded by g(b) (monotonicity).

      Exercise 6.25 — g preserves (not just directed unions). For any bounded set S, g(⊔S) = ⊔ {g(s) ∣ s ∈ S}. This is the characteristic property of a lower adjoint.

      • : g(⊔S) is an upper bound of {g(s)} since s ⊑ ⊔S and g is monotone.
      • : by the Galois connection it suffices that ⊔S ⊑ h(⊔{g(s)}), i.e. that each s ⊑ h(⊔{g(s)}); by the Galois connection again this is g(s) ⊑ ⊔{g(s)}, true by le_sSup.