Documentation

LeanPool.DomainTheory.Neighborhood.Exercise323

Exercise 3.23 (Scott 1981, PRG-19, Β§3) β€” the category of domains is cartesian #

closed

Exercise 3.23 asks (for category theorists) to read off from Theorems 3.11 and 3.12 that the category of domains and approximable mappings is cartesian closed, to identify its terminal object, and to say what sort of functor (π’Ÿβ‚€ β†’ π’Ÿβ‚) is.

The three ingredients are already in the development; this file packages them and supplies the missing terminal object:

So πŸ™, Γ—, and β†’ make the category cartesian closed, and (π’Ÿβ‚€ β†’ -) is a (covariant) functor right adjoint to - Γ— π’Ÿβ‚€. Everything is choice-free (#print axioms βŠ† {propext, Quot.sound}).

The terminal domain. #

There is at most one approximable mapping into the terminal domain πŸ™: the codomain |πŸ™| is a subsingleton, so any two maps have the same elementwise action.

@[implicit_reducible]

Exercise 3.23 (Scott 1981, PRG-19). πŸ™ = unitSys is the terminal object: for every domain π’Ÿ there is a unique approximable mapping π’Ÿ β†’ πŸ™ (the constant map at βŠ₯).

Equations

Exercise 3.23 (Scott 1981, PRG-19). The unique map to the terminal object, named.

Equations
Instances For

    The exponential adjunction (cartesian closure). #

    def Domain.Neighborhood.homAdjunction {Ξ± : Type u_1} {Ξ² : Type u_2} {Ξ³ : Type u_3} (Vβ‚€ : NeighborhoodSystem Ξ±) (V₁ : NeighborhoodSystem Ξ²) (Vβ‚‚ : NeighborhoodSystem Ξ³) :
    ApproximableMap (prod Vβ‚€ V₁) Vβ‚‚ ≃o ApproximableMap Vβ‚€ (funSpace V₁ Vβ‚‚)

    Exercise 3.23 (Scott 1981, PRG-19). The cartesian-closed adjunction Hom(π’Ÿβ‚€ Γ— π’Ÿβ‚, π’Ÿβ‚‚) ≃o Hom(π’Ÿβ‚€, (π’Ÿβ‚ β†’ π’Ÿβ‚‚)), exhibiting (π’Ÿβ‚ β†’ π’Ÿβ‚‚) as the exponential object. This is exactly curryEquiv of Theorem 3.12.

    Equations
    Instances For