Documentation

LeanPool.WhiteheadTheorem.RelHomotopyGroup.Defs

LeanPool.WhiteheadTheorem.RelHomotopyGroup.Defs #

Imported Lean Pool material for LeanPool.WhiteheadTheorem.RelHomotopyGroup.Defs.

def RelGenLoop (n : ) (X : Type u_1) [TopologicalSpace X] (A : Set X) (a : A) :

relative generalized loops

Equations
Instances For
    def RelGenLoop.const {n : } {X : Type u_1} [TopologicalSpace X] {A : Set X} {a : A} :
    (RelGenLoop n X A a)

    The constant RelGenLoop at a.

    Equations
    Instances For
      @[implicit_reducible]
      instance RelGenLoop.inhabited {n : } {X : Type u_1} [TopologicalSpace X] {A : Set X} {a : A} :
      Inhabited (RelGenLoop n X A a)
      Equations
      @[reducible, inline]
      abbrev RelGenLoop.Homotopic {n : } {X : Type u_1} [TopologicalSpace X] {A : Set X} {a : A} (f g : (RelGenLoop n X A a)) :

      A homotopy between two relative generalized loops. The intermediate maps of the homotopy always send ∂I^n into A ⊆ X and ⊔I^n to a ∈ A.

      Equations
      Instances For
        theorem RelGenLoop.mem_of_boundaryLid_and_boundaryJar {n : } {X : Type u_1} [TopologicalSpace X] {A : Set X} {a : A} (f : C(Fin nunitInterval, X)) (hlid : yCube.boundaryLid n, f y A) (hjar : yCube.boundaryJar n, f y = a) :
        f RelGenLoop n X A a

        For a continuous function f to be a RelGenLoop, it suffices to show that f send the top face into A ⊆ X and ⊔I^n to a ∈ A. Note: this lemma does not work in dimension 0.

        theorem RelGenLoop.Homotopic.refl {n : } {X : Type u_1} [TopologicalSpace X] {A : Set X} {a : A} {f : (RelGenLoop n X A a)} :
        theorem RelGenLoop.Homotopic.symm {n : } {X : Type u_1} [TopologicalSpace X] {A : Set X} {a : A} {f g : (RelGenLoop n X A a)} (H : Homotopic f g) :
        theorem RelGenLoop.Homotopic.trans {n : } {X : Type u_1} [TopologicalSpace X] {A : Set X} {a : A} {f g h : (RelGenLoop n X A a)} (H : Homotopic f g) (G : Homotopic g h) :
        theorem RelGenLoop.Homotopic.equiv {n : } {X : Type u_1} [TopologicalSpace X] {A : Set X} {a : A} :

        RelGenLoop.Homotopic is an equivalence relationship.

        @[implicit_reducible]
        instance RelGenLoop.Homotopic.setoid (n : ) (X : Type u_2) [TopologicalSpace X] (A : Set X) (a : A) :
        Setoid (RelGenLoop n X A a)
        Equations
        def RelGenLoop.equivGenLoop (X : Type u_2) [TopologicalSpace X] (A : Set X) (a : A) :
        (RelGenLoop 0 X A a) (GenLoop (Fin 0) X a)

        The 0-dimensional relative generalized loops based at a are in bijection with the 0-dimensional generalized loops based at a.

        Equations
        Instances For
          def RelHomotopyGroup (n : ) (X : Type u_1) [TopologicalSpace X] (A : Set X) (a : A) :
          Type u_1

          We have defined relative homotopy "groups" as mere sets. The group structure is not needed for the Whitehead theorem.

          Equations
          Instances For
            @[implicit_reducible]
            instance RelHomotopyGroup.inhabited {n : } {X : Type u_1} [TopologicalSpace X] {A : Set X} {a : A} :
            Equations
            def RelHomotopyGroup.equivPi0 (X : Type u_1) [TopologicalSpace X] (A : Set X) (a : A) :

            The 0-th relative homotopy "group" π₀(X, A, a) is in bijection with the 0-th homotopy "group" π₀(X, a).

            Equations
            Instances For
              def RelHomotopyGroup.iStar' (n : ) (X : Type u_1) [TopologicalSpace X] (A : Set X) (a : A) (f : (GenLoop (Fin n) (↑A) a)) :

              iStar'

              Equations
              Instances For
                def RelHomotopyGroup.iStar (n : ) (X : Type u_1) [TopologicalSpace X] (A : Set X) (a : A) :
                HomotopyGroup.Pi n (↑A) aHomotopyGroup.Pi n X a

                The inclusion map $i_*$ (of pointed sets) from πₙ(A, a) to πₙ(X, a)

                Equations
                Instances For
                  def RelHomotopyGroup.jStar' (n : ) (X : Type u_1) [TopologicalSpace X] (A : Set X) (a : A) (f : (GenLoop (Fin n) X a)) :

                  jStar'

                  Equations
                  Instances For
                    def RelHomotopyGroup.jStar (n : ) (X : Type u_1) [TopologicalSpace X] (A : Set X) (a : A) :
                    HomotopyGroup.Pi n X aRelHomotopyGroup n X A a

                    The inclusion map $j_*$ (of pointed sets) from πₙ(A, a) to πₙ(X, A, a)

                    Equations
                    Instances For
                      def RelHomotopyGroup.bd' (n : ) (X : Type u_1) [TopologicalSpace X] (A : Set X) (a : A) (f : (RelGenLoop (n + 1) X A a)) :
                      HomotopyGroup.Pi n (↑A) a

                      Restrict f : C(I^ Fin (n + 1), X) to the top face (where the last coordinate equals 1).

                      Equations
                      Instances For
                        def RelHomotopyGroup.bd (n : ) (X : Type u_1) [TopologicalSpace X] (A : Set X) (a : A) :
                        RelHomotopyGroup (n + 1) X A aHomotopyGroup.Pi n (↑A) a

                        The boundary map $∂$ (of pointed sets) from πₙ₊₁(X, A, a) to πₙ(A, a)

                        Equations
                        Instances For

                          The induced maps iStar, jStar, and bd preserve the distinguished point, i.e., they map (the homotopy class of) the constant loop to the constant loop.

                          instance RelHomotopyGroup.iStar_isPointedMap (n : ) (X : Type u_1) [TopologicalSpace X] (A : Set X) (a : A) :
                          instance RelHomotopyGroup.jStar_isPointedMap (n : ) (X : Type u_1) [TopologicalSpace X] (A : Set X) (a : A) :
                          instance RelHomotopyGroup.bd_isPointedMap (n : ) (X : Type u_1) [TopologicalSpace X] (A : Set X) (a : A) :
                          IsPointedMap (bd n X A a)

                          Some useful lemmas for the compression_criterion

                          def RelGenLoop.ofHomotopyRel {n : } {X : Type u_2} [TopologicalSpace X] {A : Set X} {a : A} (f : (RelGenLoop n X A a)) (g : C(Fin nunitInterval, X)) (H : (↑f).HomotopyRel g (Cube.boundary (Fin n))) :
                          (RelGenLoop n X A a)

                          Let g be a continuous function from I^ Fin n to X. If g is homotopic rel ∂I^n to some f : RelGenLoop n X A a, then g itself can be regarded as a RelGenLoop.

                          Equations
                          Instances For
                            theorem RelGenLoop.ofHomotopyRel.eq {n : } {X : Type u_1} [TopologicalSpace X] {A : Set X} {a : A} (f : (RelGenLoop n X A a)) (g : C(Fin nunitInterval, X)) (H : (↑f).HomotopyRel g (Cube.boundary (Fin n))) :