Documentation

LeanPool.DomainTheory.Neighborhood.Exercise327

Exercise 3.27 (Scott 1981, PRG-19, ยง3) โ€” (๐’Ÿโ‚€ โ†’ ๐’Ÿโ‚) is a domain, via Exercise #

2.22

(For set theorists.) Scott asks for another proof that the family of approximable mappings f : ๐’Ÿโ‚€ โ†’ ๐’Ÿโ‚ is isomorphic to a domain, "by employing the general argument of Exercise 2.22" (the abstract representation theorem: any family of sets closed under non-empty intersections and directed unions is inclusion-isomorphic to a domain).

The set-theoretic content: identify each approximable map f with its graph graph f = {(X, Y) โˆฃ X f Y} โІ ๐’ซ(ฮ”โ‚€) ร— ๐’ซ(ฮ”โ‚), and let C = {graph f} be the family of all such graphs. Then

So Exercise 2.22 (reprIso) re-presents C โ€” hence, via graph and Theorem 3.10 (funSpaceEquiv), the whole function space |๐’Ÿโ‚€ โ†’ ๐’Ÿโ‚| โ€” as the domain of a neighbourhood system, without writing down the step-set neighbourhoods of Definition 3.8 explicitly. This is exactly Scott's "compare with 3.9/3.10" alternative.

Axioms. As flagged by Scott ("for set theorists"), this inherits Classical.choice from Exercise 2.22 and from the graph-inversion.

def Domain.Neighborhood.Exercise327.graph {ฮฑ : Type u_1} {ฮฒ : Type u_2} {Vโ‚€ : NeighborhoodSystem ฮฑ} {Vโ‚ : NeighborhoodSystem ฮฒ} (f : ApproximableMap Vโ‚€ Vโ‚) :
Set (Set ฮฑ ร— Set ฮฒ)

The graph of an approximable map, as a set of neighbourhood pairs.

Equations
Instances For
    @[simp]
    theorem Domain.Neighborhood.Exercise327.mem_graph {ฮฑ : Type u_1} {ฮฒ : Type u_2} {Vโ‚€ : NeighborhoodSystem ฮฑ} {Vโ‚ : NeighborhoodSystem ฮฒ} {f : ApproximableMap Vโ‚€ Vโ‚} {p : Set ฮฑ ร— Set ฮฒ} :
    p โˆˆ graph f โ†” f.rel p.1 p.2
    theorem Domain.Neighborhood.Exercise327.graph_injective {ฮฑ : Type u_1} {ฮฒ : Type u_2} {Vโ‚€ : NeighborhoodSystem ฮฑ} {Vโ‚ : NeighborhoodSystem ฮฒ} :
    def Domain.Neighborhood.Exercise327.C {ฮฑ : Type u_1} {ฮฒ : Type u_2} (Vโ‚€ : NeighborhoodSystem ฮฑ) (Vโ‚ : NeighborhoodSystem ฮฒ) :
    Set (Set (Set ฮฑ ร— Set ฮฒ))

    Scott's family C: all graphs of approximable maps ๐’Ÿโ‚€ โ†’ ๐’Ÿโ‚.

    Equations
    Instances For
      theorem Domain.Neighborhood.Exercise327.C_nonempty {ฮฑ : Type u_1} {ฮฒ : Type u_2} {Vโ‚€ : NeighborhoodSystem ฮฑ} {Vโ‚ : NeighborhoodSystem ฮฒ} :
      (C Vโ‚€ Vโ‚).Nonempty

      The meet of a non-empty family of maps. #

      def Domain.Neighborhood.Exercise327.meetMap {ฮฑ : Type u_1} {ฮฒ : Type u_2} {Vโ‚€ : NeighborhoodSystem ฮฑ} {Vโ‚ : NeighborhoodSystem ฮฒ} (๐’ฎ : Set (Set (Set ฮฑ ร— Set ฮฒ))) (h๐’ฎ : ๐’ฎ โІ C Vโ‚€ Vโ‚) (hne : ๐’ฎ.Nonempty) :
      ApproximableMap Vโ‚€ Vโ‚

      The pointwise meet โ‹€ ๐’ฎ of a family of approximable maps (drawn from C): X (โ‹€๐’ฎ) Y iff (X, Y) lies in every member of ๐’ฎ.

      Equations
      Instances For
        theorem Domain.Neighborhood.Exercise327.sInter_eq_graph_meetMap {ฮฑ : Type u_1} {ฮฒ : Type u_2} {Vโ‚€ : NeighborhoodSystem ฮฑ} {Vโ‚ : NeighborhoodSystem ฮฒ} (๐’ฎ : Set (Set (Set ฮฑ ร— Set ฮฒ))) (h๐’ฎ : ๐’ฎ โІ C Vโ‚€ Vโ‚) (hne : ๐’ฎ.Nonempty) :
        โ‹‚โ‚€ ๐’ฎ = graph (meetMap ๐’ฎ h๐’ฎ hne)
        theorem Domain.Neighborhood.Exercise327.C_inter {ฮฑ : Type u_1} {ฮฒ : Type u_2} {Vโ‚€ : NeighborhoodSystem ฮฑ} {Vโ‚ : NeighborhoodSystem ฮฒ} (๐’ฎ : Set (Set (Set ฮฑ ร— Set ฮฒ))) :
        ๐’ฎ.Nonempty โ†’ ๐’ฎ โІ C Vโ‚€ Vโ‚ โ†’ โ‹‚โ‚€ ๐’ฎ โˆˆ C Vโ‚€ Vโ‚

        Exercise 2.22 hypothesis (i). C is closed under non-empty intersections.

        The join of a directed family of maps. #

        def Domain.Neighborhood.Exercise327.joinMap {ฮฑ : Type u_1} {ฮฒ : Type u_2} {Vโ‚€ : NeighborhoodSystem ฮฑ} {Vโ‚ : NeighborhoodSystem ฮฒ} (๐’ฎ : Set (Set (Set ฮฑ ร— Set ฮฒ))) (h๐’ฎ : ๐’ฎ โІ C Vโ‚€ Vโ‚) (hne : ๐’ฎ.Nonempty) (hdir : DirectedOn (fun (x1 x2 : Set (Set ฮฑ ร— Set ฮฒ)) => x1 โІ x2) ๐’ฎ) :
        ApproximableMap Vโ‚€ Vโ‚

        The join โ‹ ๐’ฎ of a directed family of approximable maps: X (โ‹๐’ฎ) Y iff (X, Y) lies in some member. Directedness is what restores the intersectivity condition (ii).

        Equations
        Instances For
          theorem Domain.Neighborhood.Exercise327.sUnion_eq_graph_joinMap {ฮฑ : Type u_1} {ฮฒ : Type u_2} {Vโ‚€ : NeighborhoodSystem ฮฑ} {Vโ‚ : NeighborhoodSystem ฮฒ} (๐’ฎ : Set (Set (Set ฮฑ ร— Set ฮฒ))) (h๐’ฎ : ๐’ฎ โІ C Vโ‚€ Vโ‚) (hne : ๐’ฎ.Nonempty) (hdir : DirectedOn (fun (x1 x2 : Set (Set ฮฑ ร— Set ฮฒ)) => x1 โІ x2) ๐’ฎ) :
          โ‹ƒโ‚€ ๐’ฎ = graph (joinMap ๐’ฎ h๐’ฎ hne hdir)
          theorem Domain.Neighborhood.Exercise327.C_dir {ฮฑ : Type u_1} {ฮฒ : Type u_2} {Vโ‚€ : NeighborhoodSystem ฮฑ} {Vโ‚ : NeighborhoodSystem ฮฒ} (๐’ฎ : Set (Set (Set ฮฑ ร— Set ฮฒ))) :
          ๐’ฎ.Nonempty โ†’ ๐’ฎ โІ C Vโ‚€ Vโ‚ โ†’ DirectedOn (fun (x1 x2 : Set (Set ฮฑ ร— Set ฮฒ)) => x1 โІ x2) ๐’ฎ โ†’ โ‹ƒโ‚€ ๐’ฎ โˆˆ C Vโ‚€ Vโ‚

          Exercise 2.22 hypothesis (ii). C is closed under directed unions.

          C โ‰… Hom(๐’Ÿโ‚€, ๐’Ÿโ‚) โ‰… |๐’Ÿโ‚€ โ†’ ๐’Ÿโ‚|. #

          noncomputable def Domain.Neighborhood.Exercise327.graphEquiv {ฮฑ : Type u_1} {ฮฒ : Type u_2} (Vโ‚€ : NeighborhoodSystem ฮฑ) (Vโ‚ : NeighborhoodSystem ฮฒ) :
          ApproximableMap Vโ‚€ Vโ‚ โ‰ƒo { X : Set (Set ฮฑ ร— Set ฮฒ) // X โˆˆ C Vโ‚€ Vโ‚ }

          graph is an order-isomorphism of approximable maps (under โŠ‘) onto the family C (under โІ).

          Equations
          • One or more equations did not get rendered due to their size.
          Instances For

            Exercise 3.27. #

            noncomputable def Domain.Neighborhood.Exercise327.funSpaceReprIso {ฮฑ : Type u_1} {ฮฒ : Type u_2} (Vโ‚€ : NeighborhoodSystem ฮฑ) (Vโ‚ : NeighborhoodSystem ฮฒ) :
            (Exercise222.reprSystem (C Vโ‚€ Vโ‚) โ‹ฏ โ‹ฏ).Element โ‰ƒo (funSpace Vโ‚€ Vโ‚).Element

            Exercise 3.27. The function space |๐’Ÿโ‚€ โ†’ ๐’Ÿโ‚| is (order-)isomorphic to the domain produced by the abstract representation theorem (Exercise 2.22) applied to the family C of graphs of approximable maps. This re-proves that approximable mappings form a domain without appealing to the explicit step-set neighbourhood system of Definition 3.8 โ€” composing Exercise 2.22's reprIso with the graph isomorphism (graphEquiv) and Theorem 3.10 (funSpaceEquiv).

            Equations
            • One or more equations did not get rendered due to their size.
            Instances For