Documentation

Atlas.AlgebraicTopologyI.code.Section38

The unit sphere in EuclideanSpace ℝ (Fin (n+1)) is connected whenever n ≥ 1, i.e. for spheres of dimension at least one.

The k-th singular cohomology of real projective n-space ℝPⁿ with coefficients in 𝔽₂ = ZMod 2, packaged as a plain Type. Used to set up the Borsuk–Ulam proof via the mod-2 cohomology ring of ℝPⁿ.

Instances For
    @[reducible]

    The additive commutative group structure on F2CohomRPn n k inherited from its ModuleCat representation.

    noncomputable def BorsukUlam.F2CohomRPn.cupProduct (n p q : ) :
    F2CohomRPn n pF2CohomRPn n qF2CohomRPn n (p + q)

    The cup product H^p(ℝPⁿ; 𝔽₂) ⊗ H^q(ℝPⁿ; 𝔽₂) → H^{p+q}(ℝPⁿ; 𝔽₂) on mod-2 cohomology of ℝPⁿ, exposed as a binary function on the underlying types.

    Instances For
      @[implicit_reducible]
      noncomputable instance BorsukUlam.F2CohomRPn.instModule (n k : ) :

      The ZMod 2-module structure on F2CohomRPn n k, inherited from the underlying ModuleCat object.

      theorem BorsukUlam.F2CohomRPn.instFree (n k : ) (_hn : n 1) (_hk : k n) :

      Every module over the field ZMod 2 is free, so in particular H^k(ℝPⁿ; 𝔽₂) is a free 𝔽₂-module for 1 ≤ n and k ≤ n.

      theorem BorsukUlam.F2CohomRPn.finrank_eq_one (n k : ) (hn : n 1) (hk : k n) :

      For 1 ≤ n and k ≤ n, the mod-2 cohomology group H^k(ℝPⁿ; 𝔽₂) is one-dimensional over 𝔽₂. This encodes the standard fact that H^*(ℝPⁿ; 𝔽₂) ≅ 𝔽₂[x]/(x^{n+1}).

      theorem BorsukUlam.F2CohomRPn.instFinite (n k : ) (hn : n 1) (hk : k n) :

      Since H^k(ℝPⁿ; 𝔽₂) is free of rank one over 𝔽₂ (for 1 ≤ n and k ≤ n), it is a finite 𝔽₂-module.

      noncomputable def BorsukUlam.F2CohomRPn.generator (n : ) (hn : n 1) :

      A canonical generator x of the one-dimensional 𝔽₂-vector space H^1(ℝPⁿ; 𝔽₂).

      Instances For
        noncomputable def BorsukUlam.F2CohomRPn.generatorPow_zero (n : ) (hn : n 1) :

        The canonical generator 1 of H^0(ℝPⁿ; 𝔽₂) ≅ 𝔽₂, i.e. the multiplicative unit of the mod-2 cohomology ring.

        Instances For
          noncomputable def BorsukUlam.F2CohomRPn.generatorPow (n k : ) (hn : n 1) :

          The k-th cup power xᵏ ∈ H^k(ℝPⁿ; 𝔽₂) of the canonical generator x in H^1(ℝPⁿ; 𝔽₂).

          Instances For
            noncomputable def BorsukUlam.F2CohomRPn.cohomIsoF2 (n k : ) (hn : n 1) (hk : k n) :

            The additive isomorphism H^k(ℝPⁿ; 𝔽₂) ≃+ 𝔽₂ for 1 ≤ n and k ≤ n, obtained from the fact that this cohomology group is one-dimensional over 𝔽₂.

            Instances For
              theorem BorsukUlam.F2CohomRPn.cohomIsoF2_generatorPow (n k : ) (hn : n 1) (hk : k n) :
              (cohomIsoF2 n k hn hk) (generatorPow n k hn) = 1

              Under the additive isomorphism H^k(ℝPⁿ; 𝔽₂) ≃+ 𝔽₂, the cup power xᵏ is sent to the unit 1 ∈ 𝔽₂. In particular xᵏ ≠ 0 for k ≤ n.

              The first cup power agrees with the canonical generator x of H^1(ℝPⁿ; 𝔽₂).

              The top cup power xⁿ ∈ H^n(ℝPⁿ; 𝔽₂) is nonzero. This is the key nonvanishing fact used in the proof of Borsuk–Ulam.

              If the integral singular homology H_k(X; ℤ) vanishes, then the mod-2 singular cochain complex of X is exact at degree k. A universal-coefficient style transfer of vanishing from homology to cohomology.

              For k > n, the mod-2 singular cochain complex of ℝPⁿ is exact at degree k. This is the cohomological vanishing above the dimension of the CW complex ℝPⁿ.

              theorem BorsukUlam.F2CohomRPn.vanishing (n k : ) (hk : k > n) :

              Vanishing of H^k(ℝPⁿ; 𝔽₂) above the dimension: for k > n, the group has at most one element.

              Functoriality of mod-2 cohomology: a continuous map f : ℝPⁿ¹ → ℝPⁿ² induces an additive pullback f* : H^k(ℝPⁿ²; 𝔽₂) → H^k(ℝPⁿ¹; 𝔽₂).

              Instances For
                noncomputable def BorsukUlam.F2CohomRPn.descendedMap (m : ) (hm : m 2) (g : C((Metric.sphere 0 1), (Metric.sphere 0 1))) (hg : ∀ (x : (Metric.sphere 0 1)), g (-x) = -g x) :

                An antipodal-preserving continuous map g : Sᵐ → Sᵐ⁻¹ descends to the quotient by the antipodal action to yield a continuous map ℝPᵐ → ℝPᵐ⁻¹. Defined for m ≥ 2.

                Instances For
                  noncomputable def BorsukUlam.F2CohomRPn.pullback (m : ) (hm : m 2) (g : C((Metric.sphere 0 1), (Metric.sphere 0 1))) (hg : ∀ (x : (Metric.sphere 0 1)), g (-x) = -g x) (k : ) :

                  The cohomology pullback H^k(ℝPᵐ⁻¹; 𝔽₂) → H^k(ℝPᵐ; 𝔽₂) induced by an odd map g : Sᵐ → Sᵐ⁻¹ via its descent ℝPᵐ → ℝPᵐ⁻¹.

                  Instances For
                    theorem BorsukUlam.F2CohomRPn.descendedMap_pullback_generator (m : ) (hm : m 2) (g : C((Metric.sphere 0 1), (Metric.sphere 0 1))) (hg : ∀ (x : (Metric.sphere 0 1)), g (-x) = -g x) (hm1 : m - 1 1) :
                    (cohomologyPullback (descendedMap m hm g hg) 1) (generator (m - 1) hm1) = generator m

                    The descended map of an odd g : Sᵐ → Sᵐ⁻¹ pulls the canonical degree-1 mod-2 cohomology generator of ℝPᵐ⁻¹ back to the canonical degree-1 generator of ℝPᵐ.

                    theorem BorsukUlam.F2CohomRPn.descendedMap_pullback_ne_zero (m : ) (hm : m 2) (g : C((Metric.sphere 0 1), (Metric.sphere 0 1))) (hg : ∀ (x : (Metric.sphere 0 1)), g (-x) = -g x) :

                    The pullback map on H^1 induced by the descent of an odd g : Sᵐ → Sᵐ⁻¹ is nonzero: it sends the canonical generator to a nonzero class.

                    theorem BorsukUlam.F2CohomRPn.pullback_generator_ne_zero_ax (m : ) (hm : m 2) (g : C((Metric.sphere 0 1), (Metric.sphere 0 1))) (hg : ∀ (x : (Metric.sphere 0 1)), g (-x) = -g x) (hm1 : m - 1 1) :
                    (pullback m hm g hg 1) (generator (m - 1) hm1) 0

                    Auxiliary version of pullback_generator_ne_zero proved directly from the descendedMap_pullback_ne_zero lemma, before being repackaged.

                    theorem BorsukUlam.F2CohomRPn.pullback_generator_ne_zero (m : ) (hm : m 2) (g : C((Metric.sphere 0 1), (Metric.sphere 0 1))) (hg : ∀ (x : (Metric.sphere 0 1)), g (-x) = -g x) (hm1 : m - 1 1) :
                    (pullback m hm g hg 1) (generator (m - 1) hm1) 0

                    The pullback along the descent of an odd g : Sᵐ → Sᵐ⁻¹ sends the canonical generator of H^1(ℝPᵐ⁻¹; 𝔽₂) to a nonzero element of H^1(ℝPᵐ; 𝔽₂).

                    theorem BorsukUlam.F2CohomRPn.pullback_generator (m : ) (hm : m 2) (g : C((Metric.sphere 0 1), (Metric.sphere 0 1))) (hg : ∀ (x : (Metric.sphere 0 1)), g (-x) = -g x) (hm1 : m - 1 1) :
                    (pullback m hm g hg 1) (generator (m - 1) hm1) = generator m

                    The pullback along the descent of an odd g : Sᵐ → Sᵐ⁻¹ sends the canonical generator of H^1(ℝPᵐ⁻¹; 𝔽₂) exactly to the canonical generator of H^1(ℝPᵐ; 𝔽₂).

                    Any continuous map ℝPⁿ² → ℝPⁿ¹ induces an isomorphism on mod-2 cohomology in degree 0. Both groups are isomorphic to 𝔽₂ and the map preserves the unit.

                    theorem BorsukUlam.F2CohomRPn.cohomologyPullback_unit_ne_zero (n₁ n₂ : ) (hn₁ : n₁ 1) (hn₂ : n₂ 1) (f : C(RealProjectiveSpace.RPn n₂, RealProjectiveSpace.RPn n₁)) :
                    (cohomologyPullback f 0) (generatorPow n₁ 0 hn₁) 0

                    The cohomology pullback of the multiplicative unit 1 ∈ H^0(ℝPⁿ¹; 𝔽₂) along any continuous map f : ℝPⁿ² → ℝPⁿ¹ is nonzero.

                    theorem BorsukUlam.F2CohomRPn.cohomologyPullback_preserves_unit (n₁ n₂ : ) (hn₁ : n₁ 1) (hn₂ : n₂ 1) (f : C(RealProjectiveSpace.RPn n₂, RealProjectiveSpace.RPn n₁)) :
                    (cohomologyPullback f 0) (generatorPow n₁ 0 hn₁) = generatorPow n₂ 0 hn₂

                    The cohomology pullback along f : ℝPⁿ² → ℝPⁿ¹ sends the multiplicative unit of H^0(ℝPⁿ¹; 𝔽₂) to the multiplicative unit of H^0(ℝPⁿ²; 𝔽₂).

                    theorem BorsukUlam.F2CohomRPn.generatorPow_succ (n k : ) (hn : n 1) :
                    generatorPow n (k + 1) hn = cupProduct n k 1 (generatorPow n k hn) (generator n hn)

                    Unfolding identity: the (k+1)-th cup power equals the cup product of the k-th cup power with the generator x.

                    theorem BorsukUlam.F2CohomRPn.cohomologyPullback_preserves_cupProduct (n₁ n₂ : ) (f : C(RealProjectiveSpace.RPn n₂, RealProjectiveSpace.RPn n₁)) (p q : ) (α : F2CohomRPn n₁ p) (β : F2CohomRPn n₁ q) :
                    (cohomologyPullback f (p + q)) (cupProduct n₁ p q α β) = cupProduct n₂ p q ((cohomologyPullback f p) α) ((cohomologyPullback f q) β)

                    Naturality of the cup product on mod-2 cohomology of real projective spaces: f*(α ∪ β) = f* α ∪ f* β.

                    theorem BorsukUlam.F2CohomRPn.cohomologyPullback_preserves_generatorPow (n₁ n₂ : ) (hn₁ : n₁ 1) (hn₂ : n₂ 1) (f : C(RealProjectiveSpace.RPn n₂, RealProjectiveSpace.RPn n₁)) (hf : (cohomologyPullback f 1) (generator n₁ hn₁) = generator n₂ hn₂) (k : ) :
                    (cohomologyPullback f k) (generatorPow n₁ k hn₁) = generatorPow n₂ k hn₂

                    If a map f : ℝPⁿ² → ℝPⁿ¹ sends the degree-1 generator to the degree-1 generator, then by naturality of cup products it sends every cup power xᵏ to xᵏ.

                    theorem BorsukUlam.F2CohomRPn.pullback_generatorPow (m : ) (hm : m 2) (g : C((Metric.sphere 0 1), (Metric.sphere 0 1))) (hg : ∀ (x : (Metric.sphere 0 1)), g (-x) = -g x) (k : ) (hm1 : m - 1 1) :
                    (pullback m hm g hg k) (generatorPow (m - 1) k hm1) = generatorPow m k

                    For every k, the pullback induced by an odd g : Sᵐ → Sᵐ⁻¹ sends the k-th cup power xᵏ ∈ H^k(ℝPᵐ⁻¹; 𝔽₂) to xᵏ ∈ H^k(ℝPᵐ; 𝔽₂).

                    theorem BorsukUlam.no_odd_map_sphere (n : ) (g : C((Metric.sphere 0 1), (Metric.sphere 0 1))) (hg : ∀ (x : (Metric.sphere 0 1)), g (-x) = -g x) :

                    There is no continuous odd map Sⁿ⁺² → Sⁿ⁺¹. The proof uses the nonvanishing of the top cup power xⁿ⁺² ∈ H^{n+2}(ℝPⁿ⁺²; 𝔽₂) together with the vanishing of H^{n+2}(ℝPⁿ⁺¹; 𝔽₂). This is the key step in Borsuk–Ulam for dimensions ≥ 2.

                    theorem BorsukUlam.borsuk_ulam_ge2 (n : ) (f : C((Metric.sphere 0 1), EuclideanSpace (Fin (n + 2)))) :
                    ∃ (x : (Metric.sphere 0 1)), f x = f (-x)

                    Borsuk–Ulam in dimensions ≥ 2: every continuous map Sⁿ⁺² → ℝⁿ⁺² identifies some pair of antipodal points, i.e. there exists x with f x = f (-x). Deduced from no_odd_map_sphere by normalising f x - f (-x) to a hypothetical odd map to the sphere.

                    theorem BorsukUlam.borsuk_ulam (n : ) (f : C((Metric.sphere 0 1), EuclideanSpace (Fin n))) :
                    ∃ (x : (Metric.sphere 0 1)), f x = f (-x)

                    The Borsuk–Ulam theorem (Theorem 38.11). Thinking of Sⁿ as the unit vectors in ℝⁿ⁺¹, every continuous function f : Sⁿ → ℝⁿ admits a point x ∈ Sⁿ with f x = f (-x). Proved by cases: n = 0 (sphere is two-point), n = 1 (intermediate value theorem on the circle), n ≥ 2 (borsuk_ulam_ge2).

                    noncomputable def PoincareDuality.capProduct_cechCohomology_iso (R : Type) [CommRing R] (d : ) (M : Type) [TopologicalSpace M] [T2Space M] [ChartedSpace (EuclideanSpace (Fin d)) M] (K : Set M) (hK : IsCompact K) [hOr : IsROrientedAlong R d M K] (p q : ) (hpq : p + q = d) :

                    Poincaré–Lefschetz duality (Theorem 38.1) for an R-oriented d-manifold along a compact set K: capping with the fundamental class [M]_K gives an isomorphism Ȟ^p(K; R) ≅ H_q(M, M\K; R) whenever p + q = d.

                    Instances For
                      theorem PoincareDuality.cech_cohomology_vanishing (R : Type) [CommRing R] (d : ) (M : Type) [TopologicalSpace M] [ChartedSpace (EuclideanSpace (Fin d)) M] (K : Set M) (hK : IsCompact K) [IsROrientedAlong R d M K] (p : ) (hp : p > d) :

                      Corollary 38.2: for K a compact subset of an R-oriented d-manifold and p > d, the Čech cohomology Ȟ^p(K; R) vanishes.

                      Variant of Corollary 38.2 expressed for any C⁰ d-manifold (with no orientation hypothesis): for a compact set K and p > d, Ȟ^p(K; R) is a subsingleton.

                      Reduced singular homology \widetilde H_q(X; R): in degree zero it is the kernel of the augmentation H_0(X; R) → R, and in higher degrees it agrees with the usual singular homology.

                      Instances For
                        @[implicit_reducible]

                        The additive commutative group structure on reduced singular homology, inherited from the augmentation kernel (degree 0) or from singular homology (higher degrees).

                        @[implicit_reducible]

                        The R-module structure on reduced singular homology.

                        @[reducible, inline]

                        Convenient abbreviation for the unit sphere Sⁿ ⊂ ℝⁿ⁺¹ viewed as a subtype.

                        Instances For
                          theorem PoincareDuality.cech_cohomology_sphere_complement_iso (R : Type) [CommRing R] {n : } (K : Set (SphereType n)) (hK : IsCompact K) (q : ) (hq : q 1) (hqn : q n - 1) :

                          Alexander duality on the sphere: for K compact in Sⁿ and 1 ≤ q ≤ n - 1, the Čech cohomology Ȟ^q(K; R) is isomorphic to the reduced singular homology \widetilde H_{n-q-1}(Sⁿ \ K; R).

                          Euclidean space ℝⁿ is R-orientable along the whole space univ; equivalently, it carries a global R-orientation.

                          Euclidean space ℝⁿ is R-orientable along any subset K, obtained by restricting the global orientation from univ.

                          Reduced singular homology of contractible Euclidean space vanishes in every degree: \widetilde H_q(ℝⁿ; R) = 0.

                          Boundary isomorphism from the long exact sequence of the pair (ℝⁿ, ℝⁿ \ K) when the ambient space is acyclic: H_q(ℝⁿ, ℝⁿ \ K; R) ≃ \widetilde H_{q-1}(ℝⁿ \ K; R).

                          Instances For

                            Specialisation of les_boundary_iso_of_acyclic_ambient to Euclidean space, whose reduced homology vanishes in every degree.

                            Instances For
                              noncomputable def PoincareDuality.alexander_duality_edge_case (R : Type) [CommRing R] {n : } (K : Set (EuclideanSpace (Fin n))) (hK : IsCompact K) (q : ) (hqn : n < q) :

                              Edge case of Alexander duality when q > n: both sides vanish, so an isomorphism between them exists trivially.

                              Instances For
                                noncomputable def PoincareDuality.alexander_duality (R : Type) [CommRing R] {n : } (K : Set (EuclideanSpace (Fin n))) (hK : IsCompact K) (q : ) :

                                Alexander duality (Theorem 38.4): for a compact subset K of ℝⁿ, the composite of the Poincaré duality cap product and the long exact sequence boundary gives an isomorphism Ȟ^{n-q}(K; R) ≅ \widetilde H_{q-1}(ℝⁿ \ K; R).

                                Instances For
                                  noncomputable def PoincareDuality.alexander_duality_equiv (R : Type) [CommRing R] {n : } (K : Set (EuclideanSpace (Fin n))) (hK : IsCompact K) (q : ) (hqn : q n) :

                                  The main range of Alexander duality (q ≤ n) extracted as a separate construction that avoids case-splitting on q vs n.

                                  Instances For
                                    @[reducible, inline]

                                    Convenient Type view of singular cohomology H^p(M; R), defined here as the relative cohomology against the empty pair.

                                    Instances For
                                      @[reducible, inline]

                                      Convenient Type view of singular homology H_q(M; R), defined here as the relative homology against the empty pair.

                                      Instances For

                                        Bridge equivalence between the relative cohomology against the empty pair and the absolute singular cohomology object used elsewhere in the library.

                                        Instances For

                                          Bridge equivalence between the relative homology against the empty pair and the absolute singular homology module used elsewhere in the library.

                                          Instances For

                                            The absolute cup product on singular cohomology, transported via the bridge equivalences to singularCohomologyType.

                                            Instances For

                                              The absolute Kronecker pairing H^n(M; R) × H_n(M; R) → R transported via the bridge equivalences.

                                              Instances For

                                                The fundamental class [M] ∈ H_n(M; R) of a compact R-oriented n-manifold, chosen via the existence statement fundamentalClass_of_isROrientable.

                                                Instances For

                                                  The raw cup-product pairing H^p(M; R) × H^q(M; R) → R, defined by a ⊗ b ↦ ⟨a ∪ b, [M]⟩, before quotienting by torsion.

                                                  Instances For

                                                    The raw cup-product pairing kills torsion on the left: torsion classes in H^p(M; R) lie in the left kernel of the pairing.

                                                    The raw cup-product pairing kills torsion on the right: torsion classes in H^q(M; R) lie in the right kernel of the pairing.

                                                    The cup-product pairing descended modulo torsion: it induces a pairing on H^p(M; R)/tors × H^q(M; R)/tors → R over any PID R. This is the pairing that appears in Theorem 38.8.

                                                    Instances For
                                                      theorem PoincareDuality.isPerfPair_compl₂ {R : Type u_1} {M : Type u_2} {N : Type u_3} {N' : Type u_4} [CommRing R] [AddCommGroup M] [AddCommGroup N] [AddCommGroup N'] [Module R M] [Module R N] [Module R N'] (p : M →ₗ[R] N →ₗ[R] R) (e : N' ≃ₗ[R] N) [hp : p.IsPerfPair] :

                                                      Perfect pairings are preserved under post-composition on the right by a linear equivalence: if p : M × N → R is a perfect pairing and e : N' ≃ N, then p.compl₂ e is also a perfect pairing.

                                                      The Kronecker pairing kills torsion on the cohomology side: torsion classes in H^p(M; R) lie in the left kernel of the Kronecker pairing.

                                                      The Kronecker pairing kills torsion on the homology side: torsion classes in H_p(M; R) lie in the right kernel of the Kronecker pairing.

                                                      The Kronecker pairing descended modulo torsion on both sides, yielding a pairing H^p(M; R)/tors × H_p(M; R)/tors → R over a PID.

                                                      Instances For
                                                        theorem PoincareDuality.ext1_isTorsion_over_PID (R : Type) [CommRing R] [IsPrincipalIdealRing R] (A : ModuleCat R) (x : (((Ext R (ModuleCat R) 1).obj (Opposite.op A)).obj (ModuleCat.of R R))) :
                                                        ∃ (r : R), r 0 r x = 0

                                                        Over a PID, every element of Ext^1_R(A, R) is torsion: for each x there is a nonzero r ∈ R with r • x = 0. This is used in the universal coefficient argument behind the Poincaré duality / Kronecker pairing modulo torsion.

                                                        Over a PID and on a compact R-oriented manifold, the absolute Kronecker map H^p(M; R) → Hom(H_p(M; R), R) is surjective.

                                                        Over a PID and on a compact R-oriented manifold, the kernel of the absolute Kronecker map equals exactly the torsion of H^p(M; R).

                                                        The Kronecker pairing modulo torsion is surjective onto Hom(H_p(M; R)/tors, R).

                                                        The Kronecker pairing modulo torsion is bijective: it identifies H^p(M; R)/tors with the dual of H_p(M; R)/tors.

                                                        The Kronecker pairing modulo torsion packaged as a linear equivalence H^p(M; R)/tors ≃ₗ Hom(H_p(M; R)/tors, R).

                                                        Instances For

                                                          The underlying function of kroneckerPairingModTorsion_equiv is just the Kronecker pairing modulo torsion.

                                                          On a compact R-oriented manifold over a PID, the torsion-free quotient of singular homology H_p(M; R)/tors is a reflexive R-module.

                                                          The "flipped" version of kroneckerPairingModTorsion_equiv, identifying H_p(M; R)/tors with the dual of H^p(M; R)/tors using reflexivity.

                                                          Instances For

                                                            The underlying function of the flipped Kronecker equivalence equals the flipped Kronecker pairing modulo torsion.

                                                            The Kronecker pairing modulo torsion is a perfect pairing on a compact R-oriented manifold over a PID.

                                                            Poincaré duality descended modulo torsion: an R-linear equivalence H^q(M; R)/tors ≃ₗ H_p(M; R)/tors for p + q = n on a compact R-oriented manifold.

                                                            Instances For
                                                              theorem PoincareDuality.poincareDualityIso_bridge_compat (R : Type) [CommRing R] [IsPrincipalIdealRing R] (n : ) (M : Type) [TopologicalSpace M] [T2Space M] [CompactSpace M] [ChartedSpace (EuclideanSpace (Fin n)) M] [IsROriented R n M] (p q : ) (hpq : p + q = n) (hqp : q + p = n := by omega) (b : singularCohomologyType R M q) :

                                                              Compatibility of the Poincaré duality isomorphism with the cohomology/homology bridge equivalences: applying the bridge map after Poincaré duality equals capping with the (transported) fundamental class.

                                                              theorem PoincareDuality.cupCapIdentityRaw (R : Type) [CommRing R] [IsPrincipalIdealRing R] (n : ) (M : Type) [TopologicalSpace M] [T2Space M] [CompactSpace M] [ChartedSpace (EuclideanSpace (Fin n)) M] [IsROriented R n M] (p q : ) (hpq : p + q = n) (a : singularCohomologyType R M p) (b : singularCohomologyType R M q) :
                                                              ((cupProductPairingRaw R n M p q hpq) a) b = ((kroneckerPairingAbsolute R M p) a) ((poincareDualityIso R n M q p ).toLinearEquiv b)

                                                              The cup–cap identity at the raw (pre-quotient) level: ⟨a ∪ b, [M]⟩ = ⟨a, PD(b)⟩, expressing the cup-product pairing as the Kronecker pairing composed with Poincaré duality.

                                                              The cup-product pairing modulo torsion equals the Kronecker pairing composed with Poincaré duality (modulo torsion), pair_cup = pair_kron ∘ PD.

                                                              The cup-product pairing modulo torsion factors as pair.compl₂ e for some perfect pairing pair and linear equivalence e. This is the structural fact used to deduce that the cup-product pairing itself is perfect.

                                                              Theorem 38.8 (perfect-pairing form of Poincaré duality): for a compact R-oriented n-manifold M over a PID R, the cup-product pairing H^p(M; R)/tors × H^q(M; R)/tors → R (with p + q = n) is a perfect pairing.

                                                              The reduced singular homology \widetilde H_{-1}(Kᶜ; R) — interpreted via natural subtraction 0 - 1 = 0 and the augmentation kernel definition — is trivial.

                                                              The relative singular homology H_0(ℝⁿ, ℝⁿ \ K; R) vanishes, used as a stepping stone to deduce vanishing of top-degree Čech cohomology of K.

                                                              Corollary 38.5: for a compact subset K of ℝⁿ, the Čech cohomology Ȟ^n(K; R) vanishes.

                                                              theorem AlexanderDuality.jordan_brouwer_separation_aux {n : } (hn : n 1) (K : Set (EuclideanSpace (Fin n))) (hK : IsCompact K) (hHomeo : Nonempty (K ≃ₜ (Metric.sphere 0 1))) :

                                                              Auxiliary Jordan–Brouwer separation statement: a compact subset K of ℝⁿ (n ≥ 1) homeomorphic to the unit sphere Sⁿ⁻¹-style sphere has complement with exactly two connected components.

                                                              A knot is a topological embedding S¹ ↪ S³.

                                                              Instances For

                                                                The complement S³ \ f(S¹) of a knot f : S¹ ↪ S³, packaged as a topological space.

                                                                Instances For

                                                                  A space X is a homology circle if its singular homology agrees with that of the circle in every degree and over every commutative ring R.

                                                                  Instances For

                                                                    Corollary 38.6: the complement of a knot in is a homology circle.