Documentation

TauCeti.AlgebraicTopology.UniversalCover.LensSpace.Basic

Lens spaces #

Let m be a positive integer and let ℓ₀, …, ℓₖ be residues modulo m that are units. The cyclic group ℤ/m acts on the unit sphere S²ᵏ⁺¹ ⊆ ℂᵏ⁺¹ with a generator rotating the i-th coordinate by the angle 2πℓᵢ/m:

(z₀, …, zₖ) ↦ (e^{2πiℓ₀/m} z₀, …, e^{2πiℓₖ/m} zₖ).

The action is free because each ℓᵢ is a unit modulo m, and its orbit space is the lens space L(m; ℓ₀, …, ℓₖ). The three-dimensional lens space L(p, q) is TauCeti.LensSpace p ![1, q].

The rotations are linear isometries of ℂᵏ⁺¹ viewed as a real inner product space, so the acting group is realised as a subgroup TauCeti.lensGroup m ℓ of the linear isometry group, which acts on the unit sphere through LinearIsometryEquiv.instMulActionUnitSphere. It is the image of the homomorphism TauCeti.lensRotation m ℓ out of ℤ/m, written multiplicatively, which is injective when there is at least one coordinate, as there is for ℂᵏ⁺¹. A finite group acts properly discontinuously, so the projection from the sphere is a quotient covering map. This file develops the topology of the quotient; its manifold structure is in TauCeti.Geometry.Manifold.Instances.LensSpace, and its fundamental group in TauCeti.AlgebraicTopology.UniversalCover.LensSpace.FundamentalGroup.

Requiring ℓᵢ to be a unit of ZMod m builds the coprimality condition into the type, and it ensures that the prescribed action of ℤ/m is faithful and free. For m = 1 the acting group is trivial and the lens space is a copy of the sphere.

Main definitions #

Main results #

References #

noncomputable def TauCeti.lensRotation (m : ℕ) [NeZero m] {k : ℕ} (ℓ : Fin k → (ZMod m)ˣ) :

The weighted rotation representation of ℤ/m on ℂᵏ, as real linear isometries: the residue a rotates the i-th coordinate by the angle 2π ℓᵢ a / m.

Equations
  • One or more equations did not get rendered due to their size.
Instances For
    @[simp]
    theorem TauCeti.lensRotation_apply (m : ℕ) [NeZero m] {k : ℕ} (ℓ : Fin k → (ZMod m)ˣ) (a : Multiplicative (ZMod m)) (x : EuclideanSpace ℂ (Fin k)) (i : Fin k) :
    (((lensRotation m ℓ) a) x).ofLp i = ↑(ZMod.toCircle (↑(ℓ i) * Multiplicative.toAdd a)) * x.ofLp i

    The i-th coordinate of a rotated vector is the i-th coordinate of the vector multiplied by the root of unity e^{2πi ℓᵢ a / m}.

    theorem TauCeti.lensRotation_apply_eq_self_iff (m : ℕ) [NeZero m] {k : ℕ} (ℓ : Fin k → (ZMod m)ˣ) (a : Multiplicative (ZMod m)) {x : EuclideanSpace ℂ (Fin k)} {i : Fin k} (hi : x.ofLp i ≠ 0) :
    (((lensRotation m ℓ) a) x).ofLp i = x.ofLp i ↔ a = 1

    A rotation fixes a nonzero coordinate only if it is the identity: the weight of the coordinate is a unit modulo m, so the rotation angle 2π ℓᵢ a / m is a multiple of 2π only for a = 0.

    theorem TauCeti.lensRotation_injective (m : ℕ) [NeZero m] {k : ℕ} (ℓ : Fin k → (ZMod m)ˣ) [NeZero k] :

    The weighted rotation representation of ℤ/m is faithful once there is a coordinate.

    noncomputable def TauCeti.lensGroup (m : ℕ) [NeZero m] {k : ℕ} (ℓ : Fin k → (ZMod m)ˣ) :

    The lens group: the cyclic group of linear isometries of ℂᵏ generated by the rotation (zᵢ) ↦ (e^{2πiℓᵢ/m} zᵢ), the image of TauCeti.lensRotation.

    Equations
    Instances For
      @[simp]
      theorem TauCeti.mem_lensGroup_iff (m : ℕ) [NeZero m] {k : ℕ} (ℓ : Fin k → (ZMod m)ˣ) {g : EuclideanSpace ℂ (Fin k) ≃ₗᵢ[ℝ] EuclideanSpace ℂ (Fin k)} :
      g ∈ lensGroup m ℓ ↔ ∃ (a : Multiplicative (ZMod m)), (lensRotation m ℓ) a = g

      The elements of the lens group are the rotations by residues modulo m.

      noncomputable def TauCeti.lensGroupEquiv (m : ℕ) [NeZero m] {k : ℕ} (ℓ : Fin k → (ZMod m)ˣ) [NeZero k] :

      The lens group is the cyclic group ℤ/m.

      Equations
      Instances For
        @[simp]
        theorem TauCeti.coe_lensGroupEquiv_apply (m : ℕ) [NeZero m] {k : ℕ} (ℓ : Fin k → (ZMod m)ˣ) [NeZero k] (a : Multiplicative (ZMod m)) :
        ↑((lensGroupEquiv m ℓ) a) = (lensRotation m ℓ) a

        The lens group is finite, as the image of ℤ/m.

        The lens group acts on the unit sphere by isometries.

        instance TauCeti.lensGroup_isCancelSMul (m : ℕ) [NeZero m] {k : ℕ} (ℓ : Fin k → (ZMod m)ˣ) :

        The lens group acts freely on the unit sphere: a nontrivial rotation moves every unit vector, because each weight is a unit modulo m and a unit vector has a nonzero coordinate.

        def TauCeti.LensSpace (m : ℕ) [NeZero m] {k : ℕ} (ℓ : Fin (k + 1) → (ZMod m)ˣ) :

        The lens space L(m; ℓ₀, …, ℓₖ): the orbit space of the unit sphere S²ᵏ⁺¹ ⊆ ℂᵏ⁺¹ under the free action of ℤ/m whose generator rotates the i-th coordinate by 2πℓᵢ/m. It is a closed analytic manifold of dimension 2k + 1 (TauCeti.Geometry.Manifold.Instances.LensSpace). The three-dimensional lens space L(p, q) is LensSpace p ![1, q].

        Equations
        Instances For
          @[instance_reducible]
          instance TauCeti.LensSpace.instTopologicalSpace (m : ℕ) [NeZero m] {k : ℕ} (ℓ : Fin (k + 1) → (ZMod m)ˣ) :

          The quotient topology on a lens space.

          Equations
          instance TauCeti.LensSpace.instCompactSpace (m : ℕ) [NeZero m] {k : ℕ} (ℓ : Fin (k + 1) → (ZMod m)ˣ) :

          A lens space is compact, as a quotient of the compact sphere.

          instance TauCeti.LensSpace.instT2Space (m : ℕ) [NeZero m] {k : ℕ} (ℓ : Fin (k + 1) → (ZMod m)ˣ) :

          A lens space is Hausdorff, as the quotient of a compact Hausdorff space by a finite group.

          noncomputable def TauCeti.LensSpace.mk (m : ℕ) [NeZero m] {k : ℕ} (ℓ : Fin (k + 1) → (ZMod m)ˣ) :
          ↑(Metric.sphere 0 1) → LensSpace m ℓ

          The projection from the unit sphere of ℂᵏ⁺¹ to the lens space.

          Equations
          Instances For
            theorem TauCeti.LensSpace.mk_def (m : ℕ) [NeZero m] {k : ℕ} (ℓ : Fin (k + 1) → (ZMod m)ˣ) :

            The projection from the sphere is the quotient map of the orbit relation of the lens group.

            theorem TauCeti.LensSpace.mk_surjective (m : ℕ) [NeZero m] {k : ℕ} (ℓ : Fin (k + 1) → (ZMod m)ˣ) :

            Every point of a lens space is the image of a unit vector.

            theorem TauCeti.LensSpace.inductionOn (m : ℕ) [NeZero m] {k : ℕ} (ℓ : Fin (k + 1) → (ZMod m)ˣ) {motive : LensSpace m ℓ → Prop} (x : LensSpace m ℓ) (h : ∀ (y : ↑(Metric.sphere 0 1)), motive (mk m ℓ y)) :
            motive x

            To prove a property of every point of a lens space, it suffices to prove it on the image of every unit vector.

            @[simp]
            theorem TauCeti.LensSpace.mk_eq_mk_iff (m : ℕ) [NeZero m] {k : ℕ} (ℓ : Fin (k + 1) → (ZMod m)ˣ) (x y : ↑(Metric.sphere 0 1)) :
            mk m ℓ x = mk m ℓ y ↔ ∃ (a : Multiplicative (ZMod m)), ((lensRotation m ℓ) a) ↑y = ↑x

            Two unit vectors have the same image in the lens space exactly when a rotation by a residue modulo m carries one to the other.

            @[simp]
            theorem TauCeti.LensSpace.mk_lensRotation_smul (m : ℕ) [NeZero m] {k : ℕ} (ℓ : Fin (k + 1) → (ZMod m)ˣ) (a : Multiplicative (ZMod m)) (x : ↑(Metric.sphere 0 1)) :
            mk m ℓ ((lensRotation m ℓ) a • x) = mk m ℓ x

            Rotating a unit vector does not change its image in the lens space.

            noncomputable def TauCeti.LensSpace.lift (m : ℕ) [NeZero m] {k : ℕ} (ℓ : Fin (k + 1) → (ZMod m)ˣ) {α : Sort u_1} (f : ↑(Metric.sphere 0 1) → α) (h : ∀ (a : Multiplicative (ZMod m)) (x : ↑(Metric.sphere 0 1)), f ((lensRotation m ℓ) a • x) = f x) :
            LensSpace m ℓ → α

            A function on the unit sphere that is invariant under the rotations descends to the lens space.

            Equations
            Instances For
              @[simp]
              theorem TauCeti.LensSpace.lift_mk (m : ℕ) [NeZero m] {k : ℕ} (ℓ : Fin (k + 1) → (ZMod m)ˣ) {α : Sort u_1} (f : ↑(Metric.sphere 0 1) → α) (h : ∀ (a : Multiplicative (ZMod m)) (x : ↑(Metric.sphere 0 1)), f ((lensRotation m ℓ) a • x) = f x) (x : ↑(Metric.sphere 0 1)) :
              LensSpace.lift m ℓ f h (mk m ℓ x) = f x

              Lifting an invariant function and applying it to a representative recovers the original function.

              theorem TauCeti.LensSpace.lift_unique (m : ℕ) [NeZero m] {k : ℕ} (ℓ : Fin (k + 1) → (ZMod m)ˣ) {α : Sort u_1} (f : ↑(Metric.sphere 0 1) → α) (h : ∀ (a : Multiplicative (ZMod m)) (x : ↑(Metric.sphere 0 1)), f ((lensRotation m ℓ) a • x) = f x) (g : LensSpace m ℓ → α) (hg : ∀ (x : ↑(Metric.sphere 0 1)), g (mk m ℓ x) = f x) :
              g = LensSpace.lift m ℓ f h

              A function out of a lens space agreeing with an invariant function on representatives is its lift.

              theorem TauCeti.LensSpace.isQuotientCoveringMap_mk (m : ℕ) [NeZero m] {k : ℕ} (ℓ : Fin (k + 1) → (ZMod m)ˣ) :

              The projection from the sphere to a lens space is a quotient covering map, with fibres the orbits of the lens group.

              theorem TauCeti.LensSpace.isCoveringMap_mk (m : ℕ) [NeZero m] {k : ℕ} (ℓ : Fin (k + 1) → (ZMod m)ˣ) :

              The projection from the sphere to a lens space is a covering map.

              theorem TauCeti.LensSpace.continuous_mk (m : ℕ) [NeZero m] {k : ℕ} (ℓ : Fin (k + 1) → (ZMod m)ˣ) :
              Continuous (mk m ℓ)

              The projection from the sphere to a lens space is continuous.

              instance TauCeti.LensSpace.instPathConnectedSpace (m : ℕ) [NeZero m] {k : ℕ} (ℓ : Fin (k + 1) → (ZMod m)ˣ) :

              A lens space is path-connected, as a quotient of the path-connected sphere.