Documentation

TauCeti.Algebra.Homology.AInfinity.Module.Right.Yoneda

The Yoneda lemma for right A-infinity modules #

Let A be an A∞ algebra with a strict unit e, and let M be a right A∞ module over A on which e is a right unit for the binary operation, m₂(x, e) = x. The free module of rank one A represents the underlying complex of M: evaluation at e is a homotopy equivalence from the morphism complex Hom(A, M) to the underlying complex (M, m₁) of M. This is the A∞ counterpart of the differential graded Yoneda lemma, where the corresponding map is an isomorphism; for A∞ modules only a homotopy equivalence survives, because a morphism out of A has higher components which are not determined by its value at e.

All constructions are made on the cofree bar comodules sA ⊗ Tᶜ(sA) and sM ⊗ Tᶜ(sA), through TauCeti.TensorWords.tmulConcat, which sends y ⊗ w to x ⊗ y w.

Main definitions #

Main results #

Implementation notes #

The cochain-level constructions allow the ground ring, the algebra and the module to live in different universes. The complex-level statements compare the morphism complex, whose terms live in the universe of linear maps between the bar comodules, with the underlying complex of the module; they put all three in one universe u, as the differential graded category of right A∞ modules does.

References #

The bar differential of a module after concatenation behind x: the cut before the first letter applies the differential to x, the other cuts give the cofree lift of the Taylor map, and the algebra bar differential acts on the concatenated word with the Koszul sign of x.

Prepending a strict unit to a nonempty word and applying the Taylor map of the free module of rank one returns the first letter on one-letter words and vanishes on longer words.

Prepending a strict unit is a contracting homotopy of the cofree bar comodule of the free module of rank one: b ∘ h + h ∘ b = 1 for h (y ⊗ w) = e ⊗ y w.

noncomputable def TauCeti.AInfinityRightModule.yonedaCochain {R : Type uR} {A : Type uA} [CommRing R] [AddCommGroup A] [Module R A] {AA : AInfinityAlgebra R A} {M : Type uM} [AddCommGroup M] [Module R M] (MM : AInfinityRightModule AA M) :

The Yoneda cochain of x: the cochain out of the free module of rank one whose Taylor map sends y ⊗ w to the module Taylor map of x ⊗ y w, after the degree-one Koszul twist of x. On unsuspended operations it is (a₁, …, aₙ) ↦ m_{n+1}(x, a₁, …, aₙ) up to the suspension signs.

Instances For

    The Yoneda cochain of x is the cofree lift of the module Taylor map after concatenation behind the Koszul twist of x.

    theorem TauCeti.AInfinityRightModule.yonedaCochain_mem_homCochains {R : Type uR} {A : Type uA} [CommRing R] [AddCommGroup A] [Module R A] {AA : AInfinityAlgebra R A} {M : Type uM} [AddCommGroup M] [Module R M] (MM : AInfinityRightModule AA M) {p : ℤ} {x : M} (hx : x ∈ MM.grading.piece ℤ p) :

    The Yoneda cochain of an element of degree p is a cochain of degree p.

    noncomputable def TauCeti.AInfinityRightModule.yonedaCochains {R : Type uR} {A : Type uA} [CommRing R] [AddCommGroup A] [Module R A] {AA : AInfinityAlgebra R A} {M : Type uM} [AddCommGroup M] [Module R M] (MM : AInfinityRightModule AA M) (p : ℤ) :

    The Yoneda cochains of the elements of degree p.

    Instances For
      @[simp]
      theorem TauCeti.AInfinityRightModule.coe_yonedaCochains {R : Type uR} {A : Type uA} [CommRing R] [AddCommGroup A] [Module R A] {AA : AInfinityAlgebra R A} {M : Type uM} [AddCommGroup M] [Module R M] (MM : AInfinityRightModule AA M) {p : ℤ} (x : ↥(MM.grading.piece ℤ p)) :
      ↑((MM.yonedaCochains p) x) = MM.yonedaCochain ↑x

      The degreewise Yoneda cochains are the Yoneda cochains.

      noncomputable def TauCeti.AInfinityRightModule.evalUnit {R : Type uR} {A : Type uA} [CommRing R] [AddCommGroup A] [Module R A] {M : Type uM} [AddCommGroup M] [Module R M] (e : A) :

      Evaluation of a cochain at the unit: the Taylor map of the cochain at the one-letter word e.

      Instances For

        Evaluation at e applies the cochain to e ⊗ 1 and then the counit.

        theorem TauCeti.AInfinityRightModule.homCochains.apply_tmul_one {R : Type uR} {A : Type uA} [CommRing R] [AddCommGroup A] [Module R A] {AA : AInfinityAlgebra R A} {M : Type uM} [AddCommGroup M] [Module R M] (MM : AInfinityRightModule AA M) {e : A} {p : ℤ} (F : ↥(AA.toRightModule.homCochains MM p)) :
        ↑F (e ⊗ₜ[R] 1) = (evalUnit e) ↑F ⊗ₜ[R] 1

        A cochain out of the free module of rank one sends e ⊗ 1 to its value at the unit, followed by the empty word.

        theorem TauCeti.AInfinityRightModule.evalUnit_mem_piece {R : Type uR} {A : Type uA} [CommRing R] [AddCommGroup A] [Module R A] {AA : AInfinityAlgebra R A} {M : Type uM} [AddCommGroup M] [Module R M] (MM : AInfinityRightModule AA M) {e : A} (he : e ∈ AA.grading.piece ℤ 0) {p : ℤ} {F : TensorProduct R A (TensorWords R A) →ₗ[R] TensorProduct R M (TensorWords R A)} (hF : F ∈ AA.toRightModule.homCochains MM p) :

        Evaluation at a unit of degree zero sends cochains of degree p to elements of degree p.

        theorem TauCeti.AInfinityRightModule.evalUnit_homDifferential {R : Type uR} {A : Type uA} [CommRing R] [AddCommGroup A] [Module R A] {AA : AInfinityAlgebra R A} {M : Type uM} [AddCommGroup M] [Module R M] (MM : AInfinityRightModule AA M) {e : A} (he : AA.differential e = 0) {p : ℤ} (F : ↥(AA.toRightModule.homCochains MM p)) :
        (evalUnit e) ↑((AA.toRightModule.homDifferential MM p) F) = MM.differential ((evalUnit e) ↑F)

        Evaluation at a cycle e commutes with the differentials: the module bar differential of F (e ⊗ 1) is its unary part, and the bar differential of the free module kills e ⊗ 1.

        theorem TauCeti.AInfinityRightModule.evalUnit_yonedaCochain {R : Type uR} {A : Type uA} [CommRing R] [AddCommGroup A] [Module R A] {AA : AInfinityAlgebra R A} {M : Type uM} [AddCommGroup M] [Module R M] (MM : AInfinityRightModule AA M) {e : A} (x : M) :
        (evalUnit e) (MM.yonedaCochain x) = ((MM.m 2) x) ![e]

        Evaluating the Yoneda cochain of x at e gives the binary module operation m₂(x, e).

        theorem TauCeti.AInfinityRightModule.homDifferential_yonedaCochains {R : Type uR} {A : Type uA} [CommRing R] [AddCommGroup A] [Module R A] {AA : AInfinityAlgebra R A} {M : Type uM} [AddCommGroup M] [Module R M] (MM : AInfinityRightModule AA M) {p : ℤ} (x : ↥(MM.grading.piece ℤ p)) :
        (AA.toRightModule.homDifferential MM p) ((MM.yonedaCochains p) x) = (MM.yonedaCochains (p + 1)) ⟨MM.differential ↑x, ⋯⟩

        The Yoneda cochains form a chain map: the differential of the Yoneda cochain of x is the Yoneda cochain of the differential of x.

        noncomputable def TauCeti.AInfinityRightModule.evalUnitCochains {R : Type uR} {A : Type uA} [CommRing R] [AddCommGroup A] [Module R A] {AA : AInfinityAlgebra R A} {M : Type uM} [AddCommGroup M] [Module R M] {MM : AInfinityRightModule AA M} {e : A} (he : e ∈ AA.grading.piece ℤ 0) (p : ℤ) :

        Evaluation at a unit of degree zero on the cochains of degree p.

        Instances For
          @[simp]
          theorem TauCeti.AInfinityRightModule.coe_evalUnitCochains {R : Type uR} {A : Type uA} [CommRing R] [AddCommGroup A] [Module R A] {AA : AInfinityAlgebra R A} {M : Type uM} [AddCommGroup M] [Module R M] (MM : AInfinityRightModule AA M) {e : A} (he : e ∈ AA.grading.piece ℤ 0) {p : ℤ} (F : ↥(AA.toRightModule.homCochains MM p)) :
          ↑((evalUnitCochains he p) F) = (evalUnit e) ↑F

          Degreewise evaluation at the unit is evaluation at the unit.

          noncomputable def TauCeti.AInfinityRightModule.yonedaHomotopy {R : Type uR} {A : Type uA} [CommRing R] [AddCommGroup A] [Module R A] {AA : AInfinityAlgebra R A} {M : Type uM} [AddCommGroup M] [Module R M] {MM : AInfinityRightModule AA M} {e : A} (he : e ∈ AA.grading.piece ℤ 0) {p q : ℤ} (hpq : q + 1 = p) :

          The contracting homotopy of the Yoneda lemma, from cochains of degree p to cochains of degree q = p - 1: up to the sign (-1)^p, the cofree lift of the Taylor map of a cochain after prepending the unit e.

          Instances For
            theorem TauCeti.AInfinityRightModule.coe_yonedaHomotopy {R : Type uR} {A : Type uA} [CommRing R] [AddCommGroup A] [Module R A] {AA : AInfinityAlgebra R A} {M : Type uM} [AddCommGroup M] [Module R M] (MM : AInfinityRightModule AA M) {e : A} (he : e ∈ AA.grading.piece ℤ 0) {p q : ℤ} (hpq : q + 1 = p) (F : ↥(AA.toRightModule.homCochains MM p)) :

            The homotopy is (-1)^p times the cofree lift of the Taylor map after prepending e.

            theorem TauCeti.AInfinityRightModule.homDifferential_yonedaHomotopy_add {R : Type uR} {A : Type uA} [CommRing R] [AddCommGroup A] [Module R A] {AA : AInfinityAlgebra R A} {M : Type uM} [AddCommGroup M] [Module R M] (MM : AInfinityRightModule AA M) {e : A} (he : AA.StrictUnit e) {p q : ℤ} (hpq : q + 1 = p) (F : ↥(AA.toRightModule.homCochains MM p)) :
            ↑((AA.toRightModule.homDifferential MM q) ((yonedaHomotopy ⋯ hpq) F)) + ↑((yonedaHomotopy ⋯ ⋯) ((AA.toRightModule.homDifferential MM p) F)) = ↑F - MM.yonedaCochain ((evalUnit e) ↑F)

            The homotopy of the Yoneda lemma. For a strict unit e, the composite of evaluation at e with the Yoneda cochains is homotopic to the identity of the morphism complex out of the free module of rank one: δ K F + K δ F = F - Y (F e).

            noncomputable def TauCeti.AInfinityRightModule.yonedaEval {R A M : Type u} [CommRing R] [AddCommGroup A] [Module R A] [AddCommGroup M] [Module R M] {AA : AInfinityAlgebra R A} (MM : AInfinityRightModule AA M) {e : A} (he : e ∈ AA.grading.piece ℤ 0) (hde : AA.differential e = 0) :

            Evaluation at a cycle e of degree zero, as a map of cochain complexes from the morphism complex out of the free module of rank one to the underlying complex of the module.

            Instances For
              @[simp]

              In degree p, the evaluation map of complexes is evaluation at the unit.

              The Yoneda cochains, as a map of cochain complexes from the underlying complex of the module to the morphism complex out of the free module of rank one.

              Instances For
                @[simp]

                In degree p, the Yoneda map of complexes is the degree-p Yoneda cochains.

                theorem TauCeti.AInfinityRightModule.yoneda_comp_yonedaEval {R A M : Type u} [CommRing R] [AddCommGroup A] [Module R A] [AddCommGroup M] [Module R M] {AA : AInfinityAlgebra R A} (MM : AInfinityRightModule AA M) {e : A} (he : e ∈ AA.grading.piece ℤ 0) (hde : AA.differential e = 0) (hM : ∀ (x : M), ((MM.m 2) x) ![e] = x) :

                If a degree-zero cycle e is a right unit for the binary module operation, evaluation at e is a left inverse of the Yoneda cochains.

                The contracting homotopy of the Yoneda lemma, as a homotopy from the identity of the morphism complex out of the free module of rank one to evaluation at the unit followed by the Yoneda cochains.

                Instances For
                  noncomputable def TauCeti.AInfinityRightModule.yonedaHomotopyEquiv {R A M : Type u} [CommRing R] [AddCommGroup A] [Module R A] [AddCommGroup M] [Module R M] {AA : AInfinityAlgebra R A} (MM : AInfinityRightModule AA M) {e : A} (he : AA.StrictUnit e) (hM : ∀ (x : M), ((MM.m 2) x) ![e] = x) :

                  The Yoneda lemma for right A∞ modules. Over an A∞ algebra with a strict unit e, for a module on which e is a right unit for the binary operation, evaluation at e is a homotopy equivalence from the morphism complex out of the free module of rank one to the underlying complex of the module, with homotopy inverse the Yoneda cochains.

                  Instances For
                    theorem TauCeti.AInfinityRightModule.quasiIso_yonedaEval {R A M : Type u} [CommRing R] [AddCommGroup A] [Module R A] [AddCommGroup M] [Module R M] {AA : AInfinityAlgebra R A} (MM : AInfinityRightModule AA M) {e : A} (he : AA.StrictUnit e) (hM : ∀ (x : M), ((MM.m 2) x) ![e] = x) :
                    QuasiIso (MM.yonedaEval ⋯ ⋯)

                    Evaluation at a strict unit e is a quasi-isomorphism from the morphism complex out of the free module of rank one to the underlying complex of a module on which e is a right unit for the binary operation.