FormalConjecturesForMathlib/RingTheory/Bialgebra/Cohomology.lean

GitHub source file

Explanation legend Lean4 Domain Explanation Language (L4DEL)

L4DEL explanations are a separate layer. They do not change the Lean source. Intuition is explanatory prose; numbered items are a reading path; sources link the wording back to evidence.

L4DEL
Lean4 Domain Explanation Language

Credit: The upstream authors and contributors retain credit for the project and mathematics. lean4-explainer only renders their pinned source and adds the separately disclosed explanation layer.

Project sources: Pinned project documentation, Formal Conjectures paper, arXiv v1

8 declarations, 0 contain sorry, 0 declared as axioms

Cohomology of a bialgebra

Let A be a bialgebra over a field k, and let k be the trivial A-module through the counit (Bialgebra.trivialModuleCat k A). We define

Here Ext is taken in ModuleCat A, the category of all A-modules, and not in the category of finite-dimensional ones. When A is finite-dimensional over a field the two give the same groups on finite-dimensional modules: such a module admits a resolution by finitely generated free A-modules, which are again finite-dimensional and are projective in both categories, and Ext is computed from that single resolution either way. So cohomologyRing k A is the cohomology of the finite tensor category of finite-dimensional A-modules, which is what the literature means by H^*(A, k).

Two k-structures on ModuleCat A are involved, and only one of them is scoped. ModuleCat.linearOverField, giving Linear k (ModuleCat A), is a global instance, so the k-algebra structure on cohomologyRing k A registered below needs no open scoped. The k-module structure on an individual object, ModuleCat.moduleOfAlgebraModule, is a scoped instance; in both, k acts through algebraMap k A. A file that mentions FiniteDimensional k M for M : ModuleCat A therefore does have to open scoped ModuleCat.Algebra.

Imports (3)
Imported by 1 file
  1. abbrev Bialgebra.cohomologyRing The cohomology ring H^*(A, k) = ⨁ n, Ext^n_A(k, k) of the bialgebra A over k, where k is the trivial A-module through the counit and Ext is taken in ModuleCat A line 63 source

    Source documentation

    The cohomology ring H^*(A, k) = ⨁ n, Ext^n_A(k, k) of the bialgebra A over k, where k is the trivial A-module through the counit and Ext is taken in ModuleCat A. It is a graded k-algebra under the Yoneda product.

    standard axioms: Classical.choice, Quot.sound, propext what this means

    Statement uses: Field, Ring, Bialgebra

    Proof uses: DirectSum, Nat, CategoryTheory.Abelian.Ext, ModuleCat, Bialgebra.trivialModuleCat

    12 instances, coercions and auxiliary constants left out.

    abbrev cohomologyRing : Type u :=
    …
  2. abbrev Bialgebra.cohomology The cohomology H^*(A, M) = ⨁ n, Ext^n_A(k, M) of the bialgebra A over k with coefficients in the A-module M line 69 source

    Source documentation

    The cohomology H^*(A, M) = ⨁ n, Ext^n_A(k, M) of the bialgebra A over k with coefficients in the A-module M. It is a graded module over cohomologyRing k A under the Yoneda product.

    standard axioms: Classical.choice, Quot.sound, propext what this means

    Statement uses: Field, Ring, Bialgebra, ModuleCat

    Proof uses: DirectSum, Nat, CategoryTheory.Abelian.Ext, Bialgebra.trivialModuleCat

    12 instances, coercions and auxiliary constants left out.

    abbrev cohomology (M : ModuleCat.{u} A) : Type u :=
    …
  3. instance Bialgebra.(instance at line 72) line 72 source
  4. instance Bialgebra.(instance at line 75) line 75 source
  5. lemma Bialgebra.cohomologyRing_of_mul_of The product on cohomologyRing k A is the Yoneda composition of extensions line 81 source

    Source documentation

    The product on cohomologyRing k A is the Yoneda composition of extensions.

    standard axioms: Classical.choice, Quot.sound, propext what this means

    Statement uses: Field, Ring, Bialgebra, Nat, CategoryTheory.Abelian.Ext, ModuleCat, Int, Bialgebra.trivialModuleCat, Eq, DirectSum, HMul.hMul, AddMonoidHom, DirectSum.of, HAdd.hAdd, CategoryTheory.Abelian.Ext.comp, rfl

    Proof uses: DirectSum.of_mul_of

    44 instances, coercions and auxiliary constants left out.

    lemma cohomologyRing_of_mul_of {a b : ℕ}
        (x : Ext (trivialModuleCat k A) (trivialModuleCat k A) a)
        (y : Ext (trivialModuleCat k A) (trivialModuleCat k A) b) :
        (DirectSum.of _ a x : cohomologyRing k A) * DirectSum.of _ b y =
          DirectSum.of _ (a + b) (x.comp y rfl) :=
    …

    Mentions: Bialgebra.trivialModuleCat, Bialgebra.cohomologyRing

  6. lemma Bialgebra.cohomologyRing_algebraMap_apply A scalar c : k acts on cohomologyRing k A as c times the identity in degree 0 line 90 source

    Source documentation

    A scalar c : k acts on cohomologyRing k A as c times the identity in degree 0.

    standard axioms: Classical.choice, Quot.sound, propext what this means

    Statement uses: Field, Ring, Bialgebra, Eq, Bialgebra.cohomologyRing, RingHom, Nat, CategoryTheory.Abelian.Ext, ModuleCat, Bialgebra.trivialModuleCat, Int, Algebra.algebraMap, AddMonoidHom, OfNat.ofNat, DirectSum, DirectSum.of, CategoryTheory.Abelian.Ext.mk₀, HSMul.hSMul, Quiver.Hom, CategoryTheory.CategoryStruct.id

    Proof uses: rfl

    63 instances, coercions and auxiliary constants left out.

    lemma cohomologyRing_algebraMap_apply (c : k) :
        algebraMap k (cohomologyRing k A) c =
          DirectSum.of _ 0 (Ext.mk₀ (c • 𝟙 (trivialModuleCat k A))) :=
    …

    Mentions: c, Bialgebra.cohomologyRing, Bialgebra.trivialModuleCat

  7. lemma Bialgebra.nontrivial_cohomologyRing The cohomology ring is not the zero ring: its degree-zero part contains the identity of the trivial module line 97 source

    Source documentation

    The cohomology ring is not the zero ring: its degree-zero part contains the identity of the trivial module. In particular a finiteness statement about cohomologyRing k A is not vacuous.

    standard axioms: Classical.choice, Quot.sound, propext what this means

    Statement uses: Field, Ring, Bialgebra, Nontrivial, Bialgebra.cohomologyRing

    Proof uses: Ne, Quiver.Hom, ModuleCat, Bialgebra.trivialModuleCat, CategoryTheory.CategoryStruct.id, OfNat.ofNat, Eq, congrArg, ModuleCat.Hom, LinearMap, RingHom.id, ModuleCat.Hom.hom, one_ne_zero, CategoryTheory.Abelian.Ext, Int, Nat, CategoryTheory.Abelian.Ext.mk₀, Function.Bijective.injective, CategoryTheory.Abelian.Ext.mk₀_bijective, Eq.mpr and 16 more

    65 instances, coercions and auxiliary constants left out.

    Tactic trace: 13 steps

    Open to load the checked before-and-after goal states.

    lemma nontrivial_cohomologyRing : Nontrivial (cohomologyRing k A) := by
    …

    Mentions: Bialgebra.cohomologyRing

  8. lemma Bialgebra.cohomology_of_smul_of The action of cohomologyRing k A on cohomology k A M is the Yoneda composition of extensions line 115 source

    Source documentation

    The action of cohomologyRing k A on cohomology k A M is the Yoneda composition of extensions.

    standard axioms: Classical.choice, Quot.sound, propext what this means

    Statement uses: Field, Ring, Bialgebra, ModuleCat, Nat, CategoryTheory.Abelian.Ext, Int, Bialgebra.trivialModuleCat, Eq, DirectSum, HSMul.hSMul, AddMonoidHom, DirectSum.of, HAdd.hAdd, CategoryTheory.Abelian.Ext.comp, rfl

    Proof uses: DirectSum.Gmodule.of_smul_of

    44 instances, coercions and auxiliary constants left out.

    lemma cohomology_of_smul_of {M : ModuleCat.{u} A} {a b : ℕ}
        (x : Ext (trivialModuleCat k A) (trivialModuleCat k A) a)
        (y : Ext (trivialModuleCat k A) M b) :
        (DirectSum.of _ a x : cohomologyRing k A) • (DirectSum.of _ b y : cohomology k A M) =
          DirectSum.of _ (a + b) (x.comp y rfl) :=
    …

    Mentions: Bialgebra.trivialModuleCat, Bialgebra.cohomologyRing, Bialgebra.cohomology