Documentation

Mathlib.Algebra.Homology.Embedding.RestrictionHomology

The homology of a restriction #

Under favourable circumstances, we may relate the homology of K : HomologicalComplex C c' in degree j' and that of K.restriction e in degree j when e : Embedding c c' is an embedding of complex shapes. See restriction.sc'Iso and restriction.hasHomology.

def HomologicalComplex.restriction.sc'Iso {ι : Type u_1} {ι' : Type u_2} {c : ComplexShape ι} {c' : ComplexShape ι'} {C : Type u_3} [CategoryTheory.Category.{u_4, u_3} C] [CategoryTheory.Limits.HasZeroMorphisms C] (K : HomologicalComplex C c') (e : c.Embedding c') [e.IsRelIff] (i j k : ι) {i' j' k' : ι'} (hi' : e.f i = i') (hj' : e.f j = j') (hk' : e.f k = k') (hi'' : c'.prev j' = i') (hk'' : c'.next j' = k') :
(K.restriction e).sc' i j k K.sc' i' j' k'

The isomorphism (K.restriction e).sc' i j k ≅ K.sc' i' j' k' when e is an embedding of complex shapes, i', j, k' are the respective images of i, j, k by e.f, j is the previous index of i, etc.

Equations
Instances For
    @[simp]
    theorem HomologicalComplex.restriction.sc'Iso_inv_τ₃ {ι : Type u_1} {ι' : Type u_2} {c : ComplexShape ι} {c' : ComplexShape ι'} {C : Type u_3} [CategoryTheory.Category.{u_4, u_3} C] [CategoryTheory.Limits.HasZeroMorphisms C] (K : HomologicalComplex C c') (e : c.Embedding c') [e.IsRelIff] (i j k : ι) {i' j' k' : ι'} (hi' : e.f i = i') (hj' : e.f j = j') (hk' : e.f k = k') (hi'' : c'.prev j' = i') (hk'' : c'.next j' = k') :
    (sc'Iso K e i j k hi' hj' hk' hi'' hk'').inv.τ₃ = (K.restrictionXIso e hk').inv
    @[simp]
    theorem HomologicalComplex.restriction.sc'Iso_hom_τ₃ {ι : Type u_1} {ι' : Type u_2} {c : ComplexShape ι} {c' : ComplexShape ι'} {C : Type u_3} [CategoryTheory.Category.{u_4, u_3} C] [CategoryTheory.Limits.HasZeroMorphisms C] (K : HomologicalComplex C c') (e : c.Embedding c') [e.IsRelIff] (i j k : ι) {i' j' k' : ι'} (hi' : e.f i = i') (hj' : e.f j = j') (hk' : e.f k = k') (hi'' : c'.prev j' = i') (hk'' : c'.next j' = k') :
    (sc'Iso K e i j k hi' hj' hk' hi'' hk'').hom.τ₃ = (K.restrictionXIso e hk').hom
    @[simp]
    theorem HomologicalComplex.restriction.sc'Iso_inv_τ₂ {ι : Type u_1} {ι' : Type u_2} {c : ComplexShape ι} {c' : ComplexShape ι'} {C : Type u_3} [CategoryTheory.Category.{u_4, u_3} C] [CategoryTheory.Limits.HasZeroMorphisms C] (K : HomologicalComplex C c') (e : c.Embedding c') [e.IsRelIff] (i j k : ι) {i' j' k' : ι'} (hi' : e.f i = i') (hj' : e.f j = j') (hk' : e.f k = k') (hi'' : c'.prev j' = i') (hk'' : c'.next j' = k') :
    (sc'Iso K e i j k hi' hj' hk' hi'' hk'').inv.τ₂ = (K.restrictionXIso e hj').inv
    @[simp]
    theorem HomologicalComplex.restriction.sc'Iso_hom_τ₁ {ι : Type u_1} {ι' : Type u_2} {c : ComplexShape ι} {c' : ComplexShape ι'} {C : Type u_3} [CategoryTheory.Category.{u_4, u_3} C] [CategoryTheory.Limits.HasZeroMorphisms C] (K : HomologicalComplex C c') (e : c.Embedding c') [e.IsRelIff] (i j k : ι) {i' j' k' : ι'} (hi' : e.f i = i') (hj' : e.f j = j') (hk' : e.f k = k') (hi'' : c'.prev j' = i') (hk'' : c'.next j' = k') :
    (sc'Iso K e i j k hi' hj' hk' hi'' hk'').hom.τ₁ = (K.restrictionXIso e hi').hom
    @[simp]
    theorem HomologicalComplex.restriction.sc'Iso_hom_τ₂ {ι : Type u_1} {ι' : Type u_2} {c : ComplexShape ι} {c' : ComplexShape ι'} {C : Type u_3} [CategoryTheory.Category.{u_4, u_3} C] [CategoryTheory.Limits.HasZeroMorphisms C] (K : HomologicalComplex C c') (e : c.Embedding c') [e.IsRelIff] (i j k : ι) {i' j' k' : ι'} (hi' : e.f i = i') (hj' : e.f j = j') (hk' : e.f k = k') (hi'' : c'.prev j' = i') (hk'' : c'.next j' = k') :
    (sc'Iso K e i j k hi' hj' hk' hi'' hk'').hom.τ₂ = (K.restrictionXIso e hj').hom
    @[simp]
    theorem HomologicalComplex.restriction.sc'Iso_inv_τ₁ {ι : Type u_1} {ι' : Type u_2} {c : ComplexShape ι} {c' : ComplexShape ι'} {C : Type u_3} [CategoryTheory.Category.{u_4, u_3} C] [CategoryTheory.Limits.HasZeroMorphisms C] (K : HomologicalComplex C c') (e : c.Embedding c') [e.IsRelIff] (i j k : ι) {i' j' k' : ι'} (hi' : e.f i = i') (hj' : e.f j = j') (hk' : e.f k = k') (hi'' : c'.prev j' = i') (hk'' : c'.next j' = k') :
    (sc'Iso K e i j k hi' hj' hk' hi'' hk'').inv.τ₁ = (K.restrictionXIso e hi').inv
    theorem HomologicalComplex.restriction.hasHomology {ι : Type u_1} {ι' : Type u_2} {c : ComplexShape ι} {c' : ComplexShape ι'} {C : Type u_3} [CategoryTheory.Category.{u_4, u_3} C] [CategoryTheory.Limits.HasZeroMorphisms C] (K : HomologicalComplex C c') (e : c.Embedding c') [e.IsRelIff] (i j k : ι) (hi : c.prev j = i) (hk : c.next j = k) {i' j' k' : ι'} (hi' : e.f i = i') (hj' : e.f j = j') (hk' : e.f k = k') (hi'' : c'.prev j' = i') (hk'' : c'.next j' = k') [K.HasHomology j'] :
    noncomputable def HomologicalComplex.restrictionCyclesIso {ι : Type u_1} {ι' : Type u_2} {c : ComplexShape ι} {c' : ComplexShape ι'} {C : Type u_3} [CategoryTheory.Category.{u_4, u_3} C] [CategoryTheory.Limits.HasZeroMorphisms C] (K : HomologicalComplex C c') (e : c.Embedding c') [e.IsRelIff] (j k : ι) (hk : c.next j = k) {j' k' : ι'} (hj' : e.f j = j') (hk' : e.f k = k') (hk'' : c'.next j' = k') [K.HasHomology j'] [(K.restriction e).HasHomology j] :

    The isomorphism (K.restriction e).cycles j ≅ K.cycles j' when e.f j = j' and the successors k and k' of j and j' satisfy e.f k = k'.

    Equations
    • One or more equations did not get rendered due to their size.
    Instances For
      @[simp]
      theorem HomologicalComplex.restrictionCyclesIso_hom_iCycles {ι : Type u_1} {ι' : Type u_2} {c : ComplexShape ι} {c' : ComplexShape ι'} {C : Type u_3} [CategoryTheory.Category.{u_4, u_3} C] [CategoryTheory.Limits.HasZeroMorphisms C] (K : HomologicalComplex C c') (e : c.Embedding c') [e.IsRelIff] (j k : ι) (hk : c.next j = k) {j' k' : ι'} (hj' : e.f j = j') (hk' : e.f k = k') (hk'' : c'.next j' = k') [K.HasHomology j'] [(K.restriction e).HasHomology j] :
      @[simp]
      theorem HomologicalComplex.restrictionCyclesIso_hom_iCycles_assoc {ι : Type u_1} {ι' : Type u_2} {c : ComplexShape ι} {c' : ComplexShape ι'} {C : Type u_3} [CategoryTheory.Category.{u_4, u_3} C] [CategoryTheory.Limits.HasZeroMorphisms C] (K : HomologicalComplex C c') (e : c.Embedding c') [e.IsRelIff] (j k : ι) (hk : c.next j = k) {j' k' : ι'} (hj' : e.f j = j') (hk' : e.f k = k') (hk'' : c'.next j' = k') [K.HasHomology j'] [(K.restriction e).HasHomology j] {Z : C} (h : K.X j' Z) :
      @[simp]
      theorem HomologicalComplex.restrictionCyclesIso_inv_iCycles {ι : Type u_1} {ι' : Type u_2} {c : ComplexShape ι} {c' : ComplexShape ι'} {C : Type u_3} [CategoryTheory.Category.{u_4, u_3} C] [CategoryTheory.Limits.HasZeroMorphisms C] (K : HomologicalComplex C c') (e : c.Embedding c') [e.IsRelIff] (j k : ι) (hk : c.next j = k) {j' k' : ι'} (hj' : e.f j = j') (hk' : e.f k = k') (hk'' : c'.next j' = k') [K.HasHomology j'] [(K.restriction e).HasHomology j] :
      @[simp]
      theorem HomologicalComplex.restrictionCyclesIso_inv_iCycles_assoc {ι : Type u_1} {ι' : Type u_2} {c : ComplexShape ι} {c' : ComplexShape ι'} {C : Type u_3} [CategoryTheory.Category.{u_4, u_3} C] [CategoryTheory.Limits.HasZeroMorphisms C] (K : HomologicalComplex C c') (e : c.Embedding c') [e.IsRelIff] (j k : ι) (hk : c.next j = k) {j' k' : ι'} (hj' : e.f j = j') (hk' : e.f k = k') (hk'' : c'.next j' = k') [K.HasHomology j'] [(K.restriction e).HasHomology j] {Z : C} (h : (K.restriction e).X j Z) :
      noncomputable def HomologicalComplex.restrictionOpcyclesIso {ι : Type u_1} {ι' : Type u_2} {c : ComplexShape ι} {c' : ComplexShape ι'} {C : Type u_3} [CategoryTheory.Category.{u_4, u_3} C] [CategoryTheory.Limits.HasZeroMorphisms C] (K : HomologicalComplex C c') (e : c.Embedding c') [e.IsRelIff] (i j : ι) (hi : c.prev j = i) {i' j' : ι'} (hi' : e.f i = i') (hj' : e.f j = j') (hi'' : c'.prev j' = i') [K.HasHomology j'] [(K.restriction e).HasHomology j] :

      The isomorphism (K.restriction e).opcycles j ≅ K.opcycles j' when e.f j = j' and the predecessors i and i' of j and j' satisfy e.f i = i'.

      Equations
      • One or more equations did not get rendered due to their size.
      Instances For
        @[simp]
        theorem HomologicalComplex.pOpcycles_restrictionOpcyclesIso_hom {ι : Type u_1} {ι' : Type u_2} {c : ComplexShape ι} {c' : ComplexShape ι'} {C : Type u_3} [CategoryTheory.Category.{u_4, u_3} C] [CategoryTheory.Limits.HasZeroMorphisms C] (K : HomologicalComplex C c') (e : c.Embedding c') [e.IsRelIff] (i j : ι) (hi : c.prev j = i) {i' j' : ι'} (hi' : e.f i = i') (hj' : e.f j = j') (hi'' : c'.prev j' = i') [K.HasHomology j'] [(K.restriction e).HasHomology j] :
        @[simp]
        theorem HomologicalComplex.pOpcycles_restrictionOpcyclesIso_hom_assoc {ι : Type u_1} {ι' : Type u_2} {c : ComplexShape ι} {c' : ComplexShape ι'} {C : Type u_3} [CategoryTheory.Category.{u_4, u_3} C] [CategoryTheory.Limits.HasZeroMorphisms C] (K : HomologicalComplex C c') (e : c.Embedding c') [e.IsRelIff] (i j : ι) (hi : c.prev j = i) {i' j' : ι'} (hi' : e.f i = i') (hj' : e.f j = j') (hi'' : c'.prev j' = i') [K.HasHomology j'] [(K.restriction e).HasHomology j] {Z : C} (h : K.opcycles j' Z) :
        @[simp]
        theorem HomologicalComplex.pOpcycles_restrictionOpcyclesIso_inv {ι : Type u_1} {ι' : Type u_2} {c : ComplexShape ι} {c' : ComplexShape ι'} {C : Type u_3} [CategoryTheory.Category.{u_4, u_3} C] [CategoryTheory.Limits.HasZeroMorphisms C] (K : HomologicalComplex C c') (e : c.Embedding c') [e.IsRelIff] (i j : ι) (hi : c.prev j = i) {i' j' : ι'} (hi' : e.f i = i') (hj' : e.f j = j') (hi'' : c'.prev j' = i') [K.HasHomology j'] [(K.restriction e).HasHomology j] :
        @[simp]
        noncomputable def HomologicalComplex.restrictionHomologyIso {ι : Type u_1} {ι' : Type u_2} {c : ComplexShape ι} {c' : ComplexShape ι'} {C : Type u_3} [CategoryTheory.Category.{u_4, u_3} C] [CategoryTheory.Limits.HasZeroMorphisms C] (K : HomologicalComplex C c') (e : c.Embedding c') [e.IsRelIff] (i j k : ι) (hi : c.prev j = i) (hk : c.next j = k) {i' j' k' : ι'} (hi' : e.f i = i') (hj' : e.f j = j') (hk' : e.f k = k') (hi'' : c'.prev j' = i') (hk'' : c'.next j' = k') [K.HasHomology j'] [(K.restriction e).HasHomology j] :

        The isomorphism (K.restriction e).homology j ≅ K.homology j' when e.f j = j', the predecessors i and i' of j and j' satisfy e.f i = i', and the successors k and k' of j and j' satisfy e.f k = k'

        Equations
        • One or more equations did not get rendered due to their size.
        Instances For
          @[simp]
          theorem HomologicalComplex.homologyπ_restrictionHomologyIso_hom {ι : Type u_1} {ι' : Type u_2} {c : ComplexShape ι} {c' : ComplexShape ι'} {C : Type u_3} [CategoryTheory.Category.{u_4, u_3} C] [CategoryTheory.Limits.HasZeroMorphisms C] (K : HomologicalComplex C c') (e : c.Embedding c') [e.IsRelIff] (i j k : ι) (hi : c.prev j = i) (hk : c.next j = k) {i' j' k' : ι'} (hi' : e.f i = i') (hj' : e.f j = j') (hk' : e.f k = k') (hi'' : c'.prev j' = i') (hk'' : c'.next j' = k') [K.HasHomology j'] [(K.restriction e).HasHomology j] :
          @[simp]
          theorem HomologicalComplex.homologyπ_restrictionHomologyIso_hom_assoc {ι : Type u_1} {ι' : Type u_2} {c : ComplexShape ι} {c' : ComplexShape ι'} {C : Type u_3} [CategoryTheory.Category.{u_4, u_3} C] [CategoryTheory.Limits.HasZeroMorphisms C] (K : HomologicalComplex C c') (e : c.Embedding c') [e.IsRelIff] (i j k : ι) (hi : c.prev j = i) (hk : c.next j = k) {i' j' k' : ι'} (hi' : e.f i = i') (hj' : e.f j = j') (hk' : e.f k = k') (hi'' : c'.prev j' = i') (hk'' : c'.next j' = k') [K.HasHomology j'] [(K.restriction e).HasHomology j] {Z : C} (h : K.homology j' Z) :
          theorem HomologicalComplex.homologyπ_restrictionHomologyIso_inv {ι : Type u_1} {ι' : Type u_2} {c : ComplexShape ι} {c' : ComplexShape ι'} {C : Type u_3} [CategoryTheory.Category.{u_4, u_3} C] [CategoryTheory.Limits.HasZeroMorphisms C] (K : HomologicalComplex C c') (e : c.Embedding c') [e.IsRelIff] (i j k : ι) (hi : c.prev j = i) (hk : c.next j = k) {i' j' k' : ι'} (hi' : e.f i = i') (hj' : e.f j = j') (hk' : e.f k = k') (hi'' : c'.prev j' = i') (hk'' : c'.next j' = k') [K.HasHomology j'] [(K.restriction e).HasHomology j] :
          theorem HomologicalComplex.homologyπ_restrictionHomologyIso_inv_assoc {ι : Type u_1} {ι' : Type u_2} {c : ComplexShape ι} {c' : ComplexShape ι'} {C : Type u_3} [CategoryTheory.Category.{u_4, u_3} C] [CategoryTheory.Limits.HasZeroMorphisms C] (K : HomologicalComplex C c') (e : c.Embedding c') [e.IsRelIff] (i j k : ι) (hi : c.prev j = i) (hk : c.next j = k) {i' j' k' : ι'} (hi' : e.f i = i') (hj' : e.f j = j') (hk' : e.f k = k') (hi'' : c'.prev j' = i') (hk'' : c'.next j' = k') [K.HasHomology j'] [(K.restriction e).HasHomology j] {Z : C} (h : (K.restriction e).homology j Z) :
          @[simp]
          theorem HomologicalComplex.restrictionHomologyIso_inv_homologyι {ι : Type u_1} {ι' : Type u_2} {c : ComplexShape ι} {c' : ComplexShape ι'} {C : Type u_3} [CategoryTheory.Category.{u_4, u_3} C] [CategoryTheory.Limits.HasZeroMorphisms C] (K : HomologicalComplex C c') (e : c.Embedding c') [e.IsRelIff] (i j k : ι) (hi : c.prev j = i) (hk : c.next j = k) {i' j' k' : ι'} (hi' : e.f i = i') (hj' : e.f j = j') (hk' : e.f k = k') (hi'' : c'.prev j' = i') (hk'' : c'.next j' = k') [K.HasHomology j'] [(K.restriction e).HasHomology j] :
          @[simp]
          theorem HomologicalComplex.restrictionHomologyIso_inv_homologyι_assoc {ι : Type u_1} {ι' : Type u_2} {c : ComplexShape ι} {c' : ComplexShape ι'} {C : Type u_3} [CategoryTheory.Category.{u_4, u_3} C] [CategoryTheory.Limits.HasZeroMorphisms C] (K : HomologicalComplex C c') (e : c.Embedding c') [e.IsRelIff] (i j k : ι) (hi : c.prev j = i) (hk : c.next j = k) {i' j' k' : ι'} (hi' : e.f i = i') (hj' : e.f j = j') (hk' : e.f k = k') (hi'' : c'.prev j' = i') (hk'' : c'.next j' = k') [K.HasHomology j'] [(K.restriction e).HasHomology j] {Z : C} (h : (K.restriction e).opcycles j Z) :
          @[simp]
          theorem HomologicalComplex.restrictionHomologyIso_hom_homologyι {ι : Type u_1} {ι' : Type u_2} {c : ComplexShape ι} {c' : ComplexShape ι'} {C : Type u_3} [CategoryTheory.Category.{u_4, u_3} C] [CategoryTheory.Limits.HasZeroMorphisms C] (K : HomologicalComplex C c') (e : c.Embedding c') [e.IsRelIff] (i j k : ι) (hi : c.prev j = i) (hk : c.next j = k) {i' j' k' : ι'} (hi' : e.f i = i') (hj' : e.f j = j') (hk' : e.f k = k') (hi'' : c'.prev j' = i') (hk'' : c'.next j' = k') [K.HasHomology j'] [(K.restriction e).HasHomology j] :
          @[simp]
          theorem HomologicalComplex.restrictionHomologyIso_hom_homologyι_assoc {ι : Type u_1} {ι' : Type u_2} {c : ComplexShape ι} {c' : ComplexShape ι'} {C : Type u_3} [CategoryTheory.Category.{u_4, u_3} C] [CategoryTheory.Limits.HasZeroMorphisms C] (K : HomologicalComplex C c') (e : c.Embedding c') [e.IsRelIff] (i j k : ι) (hi : c.prev j = i) (hk : c.next j = k) {i' j' k' : ι'} (hi' : e.f i = i') (hj' : e.f j = j') (hk' : e.f k = k') (hi'' : c'.prev j' = i') (hk'' : c'.next j' = k') [K.HasHomology j'] [(K.restriction e).HasHomology j] {Z : C} (h : K.opcycles j' Z) :