Documentation

LeanPool.DomainTheory.Neighborhood.Exercise220

Exercise 2.20 (Scott 1981, PRG-19, §2) — the powerset domain 𝒫 #

EXERCISE 2.20. Discuss again the example of Exercise 1.15 where the domain turns out to be the powerset of ℕ. Show how the finite elements can be taken to be the finite subsets of ℕ and can be identified with the tokens of a suitable neighbourhood system 𝒫. (Hint: Define ↑F for finite sets F ⊆ ℕ.) Show that both x ∪ y and x ∩ y are approximable functions of two variables, and that x + 1 = {n + 1 ∣ n ∈ x} and x − 1 = {n ∣ n + 1 ∈ x} are approximable.

⚠ Numbering note. Our Exercise115.lean formalized the flat/stem systems, not the powerset domain; so 𝒫 is built fresh here.

Token encoding. We take tokens Δ = ℕ and let the neighbourhoods of 𝒫 be the cofinite subsets of ℕ. Since the principal-filter map X ↦ ↑X is inclusion-reversing, the finite element ↑X represents the finite set Xᶜ; as Xᶜ grows (more elements known to be in the set), the neighbourhood X shrinks (more information). Concretely a finite subset F ⊆ ℕ is the finite element ↑(Fᶜ), and ⊥ = ↑ℕ is the empty set.

Choice-free (#print axioms ⊆ {propext, Quot.sound}); the Set.Finite.induction_on in mem_compl_of_finite is structural recursion on a finiteness proof, not Classical.choice.

The neighbourhood system 𝒫 (cofinite sets). #

Exercise 2.20 — the powerset system 𝒫. Tokens ℕ; the neighbourhoods are the cofinite sets, closed under finite intersection ((X ∩ Y)ᶜ = Xᶜ ∪ Yᶜ).

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

    Cofinite sets are closed under intersection (witness-free form).

    The complement of a singleton is a neighbourhood (it represents the finite element {n}).

    The identification |𝒫| ≃o Set ℕ. #

    The subset of ℕ represented by an element: n ∈ toSet x ↔ {n}ᶜ ∈ x.

    Equations
    Instances For

      The filter of a subset S ⊆ ℕ: the cofinite Z with Zᶜ ⊆ S.

      Equations
      Instances For
        theorem Domain.Neighborhood.Exercise220.mem_compl_of_finite (x : powerSet.Element) {t : Set ℕ} (ht : t.Finite) (h : ∀ n ∈ t, x.mem {n}ᶜ) :
        x.mem tᶜ

        Filters are determined on cofinite sets by their singleton-complements. For cofinite Z, Z ∈ x ↔ ∀ n ∈ Zᶜ, {n}ᶜ ∈ x (since Z = ⋂_{n ∈ Zᶜ} {n}ᶜ, a finite intersection).

        theorem Domain.Neighborhood.Exercise220.ofSet_mono {S S' : Set ℕ} (h : S ⊆ S') :

        ofSet is monotone in the set.

        Exercise 2.20 — the identification |𝒫| ≅ (Set ℕ, ⊆).

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

          The shift maps x + 1 and x − 1. #

          S + 1 = {n + 1 ∣ n ∈ S}.

          Equations
          Instances For

            S − 1 = {n ∣ n + 1 ∈ S}.

            Equations
            Instances For

              Exercise 2.20 — x + 1 is approximable. X f Z ↔ Zᶜ ⊆ (Xᶜ + 1).

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

                Exercise 2.20 — x − 1 is approximable. X f Z ↔ Zᶜ ⊆ (Xᶜ − 1).

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

                  Union and intersection as two-variable approximable maps. #

                  Exercise 2.20 — x ∪ y is approximable (two variables). X, Y f Z ↔ X ∩ Y ⊆ Z ((Xᶜ ∪ Yᶜ)ᶜ = X ∩ Y).

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

                    Exercise 2.20 — x ∩ y is approximable (two variables). X, Y f Z ↔ X ∪ Y ⊆ Z ((Xᶜ ∩ Yᶜ)ᶜ = X ∪ Y).

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