Documentation

InfinitaryLogic.Descriptive.GSGraph

The graphs G_S(2^ℕ) and Miller's independence lemma #

This file defines the graphs G_S on Cantor space associated to a set S of finite binary words, and proves Miller's Proposition 6 ["The graph-theoretic approach to descriptive set theory", BSL 18(4), 2012]: for dense S (every word extends into S), a non-meager set with the Baire property contains a G_S-edge. Consequently every class of an equivalence relation avoiding G_S is meager (isMeagre_class_of_gSGraph_disjoint), and in pullback form (isMeagre_pullback_class_of_gSGraph_hom): a continuous φ : 2^ℕ → α that is a graph homomorphism from G_S to the complement of a Borel equivalence relation E makes every section {b | E (φ a) (φ b)} meager.

This is step 2 of the classical category route to Silver's theorem (InfinitaryLogic/Conditional/SilverCategoryRoute.lean; see docs/silver-phase2-route.md): combined with Kuratowski–Ulam (isMeagre_of_isMeagre_sections) and Mycielski (mycielski_cantor), it reduces CategoryReductionHypothesis to exactly the classical G₀-dichotomy.

Definitions #

Proof of the independence lemma #

By the Baire property, a non-meager B is comeager in some nonempty open set, hence in some word cylinder wordCylinder r; pick s ∈ S extending r. The two injections prependWord (s ++ [i]) : 2^ℕ → wordCylinder (s ++ [i]) are continuous open maps, so the sets of x with prependWord (s ++ [i]) x ∉ B are meager (IsMeagre.preimage_of_isOpenMap applied to the part of the symmetric difference inside each child cylinder). A common point x outside both meager sets yields the edge (prependWord (s ++ [false]) x, prependWord (s ++ [true]) x) inside B.

Words and word cylinders #

def prependWord (w : List Bool) (x : Bool) :
Bool

The element of Cantor space that starts with the finite word w and continues with x.

Equations
Instances For
    theorem prependWord_apply_of_lt {w : List Bool} {n : } (h : n < w.length) (x : Bool) :
    theorem prependWord_apply_of_le {w : List Bool} {n : } (h : w.length n) (x : Bool) :
    prependWord w x n = x (n - w.length)
    def wordCylinder (w : List Bool) :
    Set (Bool)

    The basic clopen set of sequences extending the word w.

    Equations
    Instances For
      theorem mem_wordCylinder_iff {w : List Bool} {y : Bool} :
      y wordCylinder w n < w.length, y n = w.getD n false
      def wordOf (x : Bool) (n : ) :

      The word formed by the first n values of x.

      Equations
      Instances For
        @[simp]
        theorem length_wordOf (x : Bool) (n : ) :
        (wordOf x n).length = n
        theorem getD_wordOf {x : Bool} {n i : } (h : i < n) :
        (wordOf x n).getD i false = x i

        The graphs G_S #

        def GSGraph (S : Set (List Bool)) (y z : Bool) :

        The graph G_S(2^ℕ) on Cantor space associated to a set S of finite binary words: edges connect s ⌢ i ⌢ x and s ⌢ !i ⌢ x for s ∈ S.

        Equations
        Instances For
          def DenseWords (S : Set (List Bool)) :

          A set of words is dense if every word has an extension in it.

          Equations
          Instances For

            A set of words is sparse if it contains at most one word of each length. The graphs G_S for sparse S are acyclic, and the G₀-dichotomy holds for them.

            Equations
            Instances For

              A canonical dense and sparse set of words #

              def wordEnum (n : ) :

              An enumeration of all finite binary words.

              Equations
              Instances For
                def padTo (w : List Bool) (n : ) :

                Pad a word with false up to length n.

                Equations
                Instances For
                  theorem length_padTo {w : List Bool} {n : } (h : w.length n) :
                  (padTo w n).length = n
                  theorem prefix_padTo (w : List Bool) (n : ) :
                  w <+: padTo w n

                  A strictly increasing length schedule dominating the word enumeration.

                  Equations
                  Instances For

                    The n-th canonical word: the n-th word of the enumeration, padded to the n-th length of the schedule.

                    Equations
                    Instances For

                      The canonical dense and sparse set of finite binary words.

                      Equations
                      Instances For

                        Miller's independence lemma (Prop. 6) #

                        theorem exists_gSGraph_edge_of_not_isMeagre {S : Set (List Bool)} (hS : DenseWords S) {B : Set (Bool)} (hB : BaireMeasurableSet B) (hBnm : ¬IsMeagre B) :
                        yB, zB, GSGraph S y z

                        Miller, Prop. 6: for a dense set S of words, a non-meager set with the Baire property contains a G_S-edge (it is not G_S-independent).

                        theorem isMeagre_class_of_gSGraph_disjoint {S : Set (List Bool)} (hS : DenseWords S) (E : Setoid (Bool)) (hBP : ∀ (a : Bool), BaireMeasurableSet {b : Bool | E a b}) (hhom : ∀ (y z : Bool), GSGraph S y z¬E y z) (a : Bool) :
                        IsMeagre {b : Bool | E a b}

                        For dense S, every class of an equivalence relation disjoint from G_S (with Baire measurable classes) is meager.

                        theorem isMeagre_pullback_class_of_gSGraph_hom {α : Type u_1} [TopologicalSpace α] [SecondCountableTopology α] [MeasurableSpace α] [BorelSpace α] (E : Setoid α) (hE : MeasurableSet {p : α × α | E p.1 p.2}) {S : Set (List Bool)} (hS : DenseWords S) {φ : (Bool)α} ( : Continuous φ) (hhom : ∀ (y z : Bool), GSGraph S y z¬E (φ y) (φ z)) (a : Bool) :
                        IsMeagre {b : Bool | E (φ a) (φ b)}

                        Pullback form (the deliverable for the category route): if φ : 2^ℕ → α is continuous and a graph homomorphism from G_S (with S dense) to the complement of a Borel equivalence relation E, then every pullback section {b | E (φ a) (φ b)} is meager. Combined with Kuratowski–Ulam this makes the pullback relation meager, and with Mycielski it produces the perfect antichain; the missing input is exactly the classical G₀-dichotomy producing φ.