Multiplicative bases

MultiplicativeBasisDeformations.Foundations.SquareZeroModules

Lemma 6.6 for graded Λ_μ-modules #

lem:square-zero-selected-lifts: "Put Λ_μ = (Λ ⊗_R R[ε]/(ε²), m + εμ), with deg ε = −q. Then each M_i has a graded lift to Λ_μ that is free over R[ε]/(ε²), unique up to a graded isomorphism reducing to the identity. Every homogeneous original map lifts."

SquareZero.lean records lifts by their first-order equations (ActLift, IsLiftHom). Here a graded lift is a graded Λ_μ-module in the literal sense (MuMod): an R-module L with ε of degree −q, ε² = 0, and an action of Λ (the elements a + 0ε of Λ_μ) commuting with ε, with (l a) b = l(ab) + ε l μ(a, b) (the product of Λ_μ); free over R[ε]/(ε²) (ker ε = im ε), with a graded Λ-linear identification L/εL = M. An ActLift gives the lift M ⊕ εM (ActLift.toMuMod); conversely, a graded section of L → M identifies any such L with the lift of an ActLift (MuMod.exists_model), which gives existence (exists_muMod), uniqueness up to a graded isomorphism reducing to the identity (muMod_unique) and the lifting of maps (muMod_mapLift) in this form.

Lifted actions from bilinear maps #

def MultiplicativeBasisDeformations.GExt.ActLift.ofEq {R : Type u_1} [CommRing R] {Λ : Type u_2} [Ring Λ] [Algebra R Λ] {GΛ : GAlg Λ} {M : Type u_3} [AddCommGroup M] [Module R M] {μ : Λ →ₗ[R] Λ →ₗ[R] Λ} {q : ℤ} {MM : GMod GΛ M} (ν : M →ₗ[R] Λ →ₗ[R] M) (hdeg : ∀ (p d : ℤ) (m : M) (a : Λ), MM.gr.IsHom p m → GΛ.gr.IsHom d a → MM.gr.IsHom (p + d + q) ((ν m) a)) (heq : ∀ (m : M) (a b : Λ), (ν ((MM.act m) a)) b - (ν m) (a * b) + (MM.act ((ν m) a)) b = (MM.act m) ((μ a) b)) :
ActLift μ q MM

An ActLift from its bilinear correction ν(m, a), homogeneous of degree q and satisfying ν(ma, b) − ν(m, ab) + ν(m, a)b = mμ(a, b).

Instances For
    theorem MultiplicativeBasisDeformations.GExt.ActLift.ofEq_act {R : Type u_1} [CommRing R] {Λ : Type u_2} [Ring Λ] [Algebra R Λ] {GΛ : GAlg Λ} {M : Type u_3} [AddCommGroup M] [Module R M] {μ : Λ →ₗ[R] Λ →ₗ[R] Λ} {q : ℤ} {MM : GMod GΛ M} (ν : M →ₗ[R] Λ →ₗ[R] M) (hdeg : ∀ (p d : ℤ) (m : M) (a : Λ), MM.gr.IsHom p m → GΛ.gr.IsHom d a → MM.gr.IsHom (p + d + q) ((ν m) a)) (heq : ∀ (m : M) (a b : Λ), (ν ((MM.act m) a)) b - (ν m) (a * b) + (MM.act ((ν m) a)) b = (MM.act m) ((μ a) b)) (m : M) (a : Λ) :
    (ofEq ν hdeg heq).act m a = (ν m) a

    Graded Λ_μ-modules #

    structure MultiplicativeBasisDeformations.GExt.MuMod {R : Type u_1} [CommRing R] {Λ : Type u_2} [Ring Λ] [Algebra R Λ] {GΛ : GAlg Λ} {M : Type u_3} [AddCommGroup M] [Module R M] (μ : Λ →ₗ[R] Λ →ₗ[R] Λ) (q : ℤ) (MM : GMod GΛ M) (L : Type u_5) [AddCommGroup L] [Module R L] :
    Type (max (max u_2 u_3) u_5)

    A graded lift of M to Λ_μ, free over R[ε]/(ε²): ε of degree −q with ε² = 0, an action of Λ ⊂ Λ_μ commuting with ε with (l a) b = l(ab) + ε l μ(a, b) (the product a ⋆ b = ab + εμ(a, b) of Λ_μ), ker ε = im ε, and a graded Λ-linear surjection red : L → M with kernel εL.

    • ε : L →ₗ[R] L
    • ε_ε (l : L) : self.ε (self.ε l) = 0
    • act : L →ₗ[R] Λ →ₗ[R] L
    • act_ε (l : L) (a : Λ) : (self.act (self.ε l)) a = self.ε ((self.act l) a)
    • act_one (l : L) : (self.act l) 1 = l
    • act_mul (l : L) (a b : Λ) : (self.act ((self.act l) a)) b = (self.act l) (a * b) + self.ε ((self.act l) ((μ a) b))
    • gr : ZGr L
    • ε_hom (p : ℤ) (l : L) : self.gr.IsHom p l → self.gr.IsHom (p - q) (self.ε l)
    • act_hom (p d : ℤ) (l : L) (a : Λ) : self.gr.IsHom p l → GΛ.gr.IsHom d a → self.gr.IsHom (p + d) ((self.act l) a)
    • free (l : L) : self.ε l = 0 → ∃ (l' : L), l = self.ε l'
    • red : L →ₗ[R] M
    • red_surj : Function.Surjective ⇑self.red
    • red_ker (l : L) : self.red l = 0 ↔ ∃ (l' : L), l = self.ε l'
    • red_hom (p : ℤ) (l : L) : self.gr.IsHom p l → MM.gr.IsHom p (self.red l)
    • red_act (l : L) (a : Λ) : self.red ((self.act l) a) = (MM.act (self.red l)) a
    Instances For

      The lift M ⊕ εM of an ActLift #

      def MultiplicativeBasisDeformations.GExt.ActLift.toMuMod {R : Type u_1} [CommRing R] {Λ : Type u_2} [Ring Λ] [Algebra R Λ] {GΛ : GAlg Λ} {M : Type u_3} [AddCommGroup M] [Module R M] {μ : Λ →ₗ[R] Λ →ₗ[R] Λ} {q : ℤ} {MM : GMod GΛ M} (L₀ : ActLift μ q MM) (h11 : (μ 1) 1 = 0) :
      MuMod μ q MM (M × M)

      The lift of an ActLift: M ⊕ εM as M × M (first coordinate the ε-part, of degree shifted by q), with ε(n, m) = (m, 0) and (n, m) a = (na + ν(m, a), ma).

      Instances For

        Graded sections and the model of a lift #

        theorem MultiplicativeBasisDeformations.GExt.ZGr.map_proj {R : Type u_1} [CommRing R] {X : Type u_5} {Y : Type u_6} [AddCommGroup X] [Module R X] [AddCommGroup Y] [Module R Y] (gX : ZGr X) (gY : ZGr Y) (f : X →ₗ[R] Y) (hf : ∀ (p : ℤ) (x : X), gX.IsHom p x → gY.IsHom p (f x)) (p : ℤ) (x : X) :
        f ((gX.proj p) x) = (gY.proj p) (f x)
        theorem MultiplicativeBasisDeformations.GExt.ZGr.mem_range_proj {R : Type u_1} [CommRing R] {X : Type u_5} [AddCommGroup X] [Module R X] (g : ZGr X) {p : ℤ} {x : X} :
        x ∈ (g.proj p).range ↔ g.IsHom p x
        theorem MultiplicativeBasisDeformations.GExt.MuMod.red_ε {R : Type u_1} [CommRing R] {Λ : Type u_2} [Ring Λ] [Algebra R Λ] {GΛ : GAlg Λ} {M : Type u_3} [AddCommGroup M] [Module R M] {μ : Λ →ₗ[R] Λ →ₗ[R] Λ} {q : ℤ} {MM : GMod GΛ M} {L : Type u_5} [AddCommGroup L] [Module R L] (X : MuMod μ q MM L) (l : L) :
        X.red (X.ε l) = 0
        theorem MultiplicativeBasisDeformations.GExt.MuMod.red_proj {R : Type u_1} [CommRing R] {Λ : Type u_2} [Ring Λ] [Algebra R Λ] {GΛ : GAlg Λ} {M : Type u_3} [AddCommGroup M] [Module R M] {μ : Λ →ₗ[R] Λ →ₗ[R] Λ} {q : ℤ} {MM : GMod GΛ M} {L : Type u_5} [AddCommGroup L] [Module R L] (X : MuMod μ q MM L) (p : ℤ) (l : L) :
        X.red ((X.gr.proj p) l) = (MM.gr.proj p) (X.red l)
        theorem MultiplicativeBasisDeformations.GExt.MuMod.exists_section {R : Type u_1} [CommRing R] {Λ : Type u_2} [Ring Λ] [Algebra R Λ] {GΛ : GAlg Λ} {M : Type u_3} [AddCommGroup M] [Module R M] {μ : Λ →ₗ[R] Λ →ₗ[R] Λ} {q : ℤ} {MM : GMod GΛ M} {L : Type u_5} [AddCommGroup L] [Module R L] (X : MuMod μ q MM L) (hproj : ∀ (p : ℤ), Module.Projective R ↥(MM.gr.proj p).range) :
        ∃ (s : M →ₗ[R] L), (∀ (m : M), X.red (s m) = m) ∧ ∀ (p : ℤ) (m : M), MM.gr.IsHom p m → X.gr.IsHom p (s m)

        A graded section of red : L → M, when the graded pieces of M are projective.

        def MultiplicativeBasisDeformations.GExt.MuMod.Ψ {R : Type u_1} [CommRing R] {Λ : Type u_2} [Ring Λ] [Algebra R Λ] {GΛ : GAlg Λ} {M : Type u_3} [AddCommGroup M] [Module R M] {μ : Λ →ₗ[R] Λ →ₗ[R] Λ} {q : ℤ} {MM : GMod GΛ M} {L : Type u_5} [AddCommGroup L] [Module R L] (X : MuMod μ q MM L) (s : M →ₗ[R] L) :
        M × M →ₗ[R] L

        M ⊕ εM → L, (n, m) ↦ s m + ε s n.

        Instances For
          theorem MultiplicativeBasisDeformations.GExt.MuMod.Ψ_apply {R : Type u_1} [CommRing R] {Λ : Type u_2} [Ring Λ] [Algebra R Λ] {GΛ : GAlg Λ} {M : Type u_3} [AddCommGroup M] [Module R M] {μ : Λ →ₗ[R] Λ →ₗ[R] Λ} {q : ℤ} {MM : GMod GΛ M} {L : Type u_5} [AddCommGroup L] [Module R L] (X : MuMod μ q MM L) {s : M →ₗ[R] L} (x : M × M) :
          (X.Ψ s) x = s x.2 + X.ε (s x.1)
          theorem MultiplicativeBasisDeformations.GExt.MuMod.red_Ψ {R : Type u_1} [CommRing R] {Λ : Type u_2} [Ring Λ] [Algebra R Λ] {GΛ : GAlg Λ} {M : Type u_3} [AddCommGroup M] [Module R M] {μ : Λ →ₗ[R] Λ →ₗ[R] Λ} {q : ℤ} {MM : GMod GΛ M} {L : Type u_5} [AddCommGroup L] [Module R L] (X : MuMod μ q MM L) {s : M →ₗ[R] L} (hs : ∀ (m : M), X.red (s m) = m) (x : M × M) :
          X.red ((X.Ψ s) x) = x.2
          theorem MultiplicativeBasisDeformations.GExt.MuMod.ε_eq {R : Type u_1} [CommRing R] {Λ : Type u_2} [Ring Λ] [Algebra R Λ] {GΛ : GAlg Λ} {M : Type u_3} [AddCommGroup M] [Module R M] {μ : Λ →ₗ[R] Λ →ₗ[R] Λ} {q : ℤ} {MM : GMod GΛ M} {L : Type u_5} [AddCommGroup L] [Module R L] (X : MuMod μ q MM L) {s : M →ₗ[R] L} (hs : ∀ (m : M), X.red (s m) = m) (l : L) :
          X.ε l = X.ε (s (X.red l))
          theorem MultiplicativeBasisDeformations.GExt.MuMod.Ψ_bijective {R : Type u_1} [CommRing R] {Λ : Type u_2} [Ring Λ] [Algebra R Λ] {GΛ : GAlg Λ} {M : Type u_3} [AddCommGroup M] [Module R M] {μ : Λ →ₗ[R] Λ →ₗ[R] Λ} {q : ℤ} {MM : GMod GΛ M} {L : Type u_5} [AddCommGroup L] [Module R L] (X : MuMod μ q MM L) {s : M →ₗ[R] L} (hs : ∀ (m : M), X.red (s m) = m) :
          Function.Bijective ⇑(X.Ψ s)
          noncomputable def MultiplicativeBasisDeformations.GExt.MuMod.Ψe {R : Type u_1} [CommRing R] {Λ : Type u_2} [Ring Λ] [Algebra R Λ] {GΛ : GAlg Λ} {M : Type u_3} [AddCommGroup M] [Module R M] {μ : Λ →ₗ[R] Λ →ₗ[R] Λ} {q : ℤ} {MM : GMod GΛ M} {L : Type u_5} [AddCommGroup L] [Module R L] (X : MuMod μ q MM L) {s : M →ₗ[R] L} (hs : ∀ (m : M), X.red (s m) = m) :
          (M × M) ≃ₗ[R] L

          Ψ as a linear isomorphism.

          Instances For
            theorem MultiplicativeBasisDeformations.GExt.MuMod.Ψe_apply {R : Type u_1} [CommRing R] {Λ : Type u_2} [Ring Λ] [Algebra R Λ] {GΛ : GAlg Λ} {M : Type u_3} [AddCommGroup M] [Module R M] {μ : Λ →ₗ[R] Λ →ₗ[R] Λ} {q : ℤ} {MM : GMod GΛ M} {L : Type u_5} [AddCommGroup L] [Module R L] (X : MuMod μ q MM L) {s : M →ₗ[R] L} (hs : ∀ (m : M), X.red (s m) = m) (x : M × M) :
            (X.Ψe hs) x = (X.Ψ s) x
            theorem MultiplicativeBasisDeformations.GExt.MuMod.Ψ_hom {R : Type u_1} [CommRing R] {Λ : Type u_2} [Ring Λ] [Algebra R Λ] {GΛ : GAlg Λ} {M : Type u_3} [AddCommGroup M] [Module R M] {μ : Λ →ₗ[R] Λ →ₗ[R] Λ} {q : ℤ} {MM : GMod GΛ M} {L : Type u_5} [AddCommGroup L] [Module R L] (X : MuMod μ q MM L) {s : M →ₗ[R] L} (hsh : ∀ (p : ℤ) (m : M), MM.gr.IsHom p m → X.gr.IsHom p (s m)) {p : ℤ} {x : M × M} (hx : (twistGr q).IsHom p x) :
            X.gr.IsHom p ((X.Ψ s) x)
            theorem MultiplicativeBasisDeformations.GExt.MuMod.Ψ_symm_hom {R : Type u_1} [CommRing R] {Λ : Type u_2} [Ring Λ] [Algebra R Λ] {GΛ : GAlg Λ} {M : Type u_3} [AddCommGroup M] [Module R M] {μ : Λ →ₗ[R] Λ →ₗ[R] Λ} {q : ℤ} {MM : GMod GΛ M} {L : Type u_5} [AddCommGroup L] [Module R L] (X : MuMod μ q MM L) {s : M →ₗ[R] L} (hs : ∀ (m : M), X.red (s m) = m) (hsh : ∀ (p : ℤ) (m : M), MM.gr.IsHom p m → X.gr.IsHom p (s m)) {p : ℤ} {l : L} (hl : X.gr.IsHom p l) :
            (twistGr q).IsHom p ((X.Ψe hs).symm l)
            noncomputable def MultiplicativeBasisDeformations.GExt.MuMod.νb {R : Type u_1} [CommRing R] {Λ : Type u_2} [Ring Λ] [Algebra R Λ] {GΛ : GAlg Λ} {M : Type u_3} [AddCommGroup M] [Module R M] {μ : Λ →ₗ[R] Λ →ₗ[R] Λ} {q : ℤ} {MM : GMod GΛ M} {L : Type u_5} [AddCommGroup L] [Module R L] (X : MuMod μ q MM L) (s : M →ₗ[R] L) (hs : ∀ (m : M), X.red (s m) = m) :
            M →ₗ[R] Λ →ₗ[R] M

            The correction ν(m, a) of the lift L, read off through Ψ.

            Instances For
              theorem MultiplicativeBasisDeformations.GExt.MuMod.Ψ_symm_act {R : Type u_1} [CommRing R] {Λ : Type u_2} [Ring Λ] [Algebra R Λ] {GΛ : GAlg Λ} {M : Type u_3} [AddCommGroup M] [Module R M] {μ : Λ →ₗ[R] Λ →ₗ[R] Λ} {q : ℤ} {MM : GMod GΛ M} {L : Type u_5} [AddCommGroup L] [Module R L] (X : MuMod μ q MM L) {s : M →ₗ[R] L} (hs : ∀ (m : M), X.red (s m) = m) (m : M) (a : Λ) :
              (X.Ψe hs).symm ((X.act (s m)) a) = (((X.νb s hs) m) a, (MM.act m) a)
              theorem MultiplicativeBasisDeformations.GExt.MuMod.Ψ_symm_ε {R : Type u_1} [CommRing R] {Λ : Type u_2} [Ring Λ] [Algebra R Λ] {GΛ : GAlg Λ} {M : Type u_3} [AddCommGroup M] [Module R M] {μ : Λ →ₗ[R] Λ →ₗ[R] Λ} {q : ℤ} {MM : GMod GΛ M} {L : Type u_5} [AddCommGroup L] [Module R L] (X : MuMod μ q MM L) {s : M →ₗ[R] L} (hs : ∀ (m : M), X.red (s m) = m) (l : L) :
              (X.Ψe hs).symm (X.ε l) = (X.red l, 0)
              theorem MultiplicativeBasisDeformations.GExt.MuMod.act_Ψ {R : Type u_1} [CommRing R] {Λ : Type u_2} [Ring Λ] [Algebra R Λ] {GΛ : GAlg Λ} {M : Type u_3} [AddCommGroup M] [Module R M] {μ : Λ →ₗ[R] Λ →ₗ[R] Λ} {q : ℤ} {MM : GMod GΛ M} {L : Type u_5} [AddCommGroup L] [Module R L] (X : MuMod μ q MM L) {s : M →ₗ[R] L} (hs : ∀ (m : M), X.red (s m) = m) (x : M × M) (a : Λ) :
              (X.act ((X.Ψ s) x)) a = (X.Ψ s) ((MM.act x.1) a + ((X.νb s hs) x.2) a, (MM.act x.2) a)
              theorem MultiplicativeBasisDeformations.GExt.MuMod.νb_deg {R : Type u_1} [CommRing R] {Λ : Type u_2} [Ring Λ] [Algebra R Λ] {GΛ : GAlg Λ} {M : Type u_3} [AddCommGroup M] [Module R M] {μ : Λ →ₗ[R] Λ →ₗ[R] Λ} {q : ℤ} {MM : GMod GΛ M} {L : Type u_5} [AddCommGroup L] [Module R L] (X : MuMod μ q MM L) {s : M →ₗ[R] L} (hs : ∀ (m : M), X.red (s m) = m) (hsh : ∀ (p : ℤ) (m : M), MM.gr.IsHom p m → X.gr.IsHom p (s m)) (p d : ℤ) (m : M) (a : Λ) (hm : MM.gr.IsHom p m) (ha : GΛ.gr.IsHom d a) :
              MM.gr.IsHom (p + d + q) (((X.νb s hs) m) a)
              theorem MultiplicativeBasisDeformations.GExt.MuMod.νb_eq {R : Type u_1} [CommRing R] {Λ : Type u_2} [Ring Λ] [Algebra R Λ] {GΛ : GAlg Λ} {M : Type u_3} [AddCommGroup M] [Module R M] {μ : Λ →ₗ[R] Λ →ₗ[R] Λ} {q : ℤ} {MM : GMod GΛ M} {L : Type u_5} [AddCommGroup L] [Module R L] (X : MuMod μ q MM L) {s : M →ₗ[R] L} (hs : ∀ (m : M), X.red (s m) = m) (m : M) (a b : Λ) :
              ((X.νb s hs) ((MM.act m) a)) b - ((X.νb s hs) m) (a * b) + (MM.act (((X.νb s hs) m) a)) b = (MM.act m) ((μ a) b)
              noncomputable def MultiplicativeBasisDeformations.GExt.MuMod.toActLift {R : Type u_1} [CommRing R] {Λ : Type u_2} [Ring Λ] [Algebra R Λ] {GΛ : GAlg Λ} {M : Type u_3} [AddCommGroup M] [Module R M] {μ : Λ →ₗ[R] Λ →ₗ[R] Λ} {q : ℤ} {MM : GMod GΛ M} {L : Type u_5} [AddCommGroup L] [Module R L] (X : MuMod μ q MM L) {s : M →ₗ[R] L} (hs : ∀ (m : M), X.red (s m) = m) (hsh : ∀ (p : ℤ) (m : M), MM.gr.IsHom p m → X.gr.IsHom p (s m)) :
              ActLift μ q MM

              The ActLift of a lift, through a graded section.

              Instances For
                theorem MultiplicativeBasisDeformations.GExt.MuMod.exists_model {R : Type u_1} [CommRing R] {Λ : Type u_2} [Ring Λ] [Algebra R Λ] {GΛ : GAlg Λ} {M : Type u_3} [AddCommGroup M] [Module R M] {μ : Λ →ₗ[R] Λ →ₗ[R] Λ} {q : ℤ} {MM : GMod GΛ M} {L : Type u_5} [AddCommGroup L] [Module R L] (X : MuMod μ q MM L) (hproj : ∀ (p : ℤ), Module.Projective R ↥(MM.gr.proj p).range) :
                ∃ (L₀ : ActLift μ q MM) (Φ : (M × M) ≃ₗ[R] L), (∀ (x : M × M) (a : Λ), Φ ((MM.act x.1) a + L₀.act x.2 a, (MM.act x.2) a) = (X.act (Φ x)) a) ∧ (∀ (x : M × M), Φ (x.2, 0) = X.ε (Φ x)) ∧ (∀ (x : M × M), X.red (Φ x) = x.2) ∧ ∀ (p : ℤ) (x : M × M), (twistGr q).IsHom p x ↔ X.gr.IsHom p (Φ x)

                Every graded Λ_μ-lift is the lift M ⊕ εM of an ActLift: there is a graded linear isomorphism M × M ≅ L carrying ε(n, m) = (m, 0) to ε and (n, m) a = (na + ν(m,a), ma) to the action, and reducing to the identity.

                Lemma 6.6 for graded Λ_μ-modules #

                theorem MultiplicativeBasisDeformations.GExt.exists_muMod {R : Type u_1} [CommRing R] {Λ : Type u_2} [Ring Λ] [Algebra R Λ] {GΛ : GAlg Λ} {M : Type u_3} [AddCommGroup M] [Module R M] {μ : Λ →ₗ[R] Λ →ₗ[R] Λ} {q : ℤ} {MM : GMod GΛ M} (hq : HDeg GΛ μ q) (hμ : IsHCocycle μ) (h11 : (μ 1) 1 = 0) (h : ExtVanish MM MM 1 q) :
                Nonempty (MuMod μ q MM (M × M))

                Lemma 6.6, existence: under Ext²_Λ(M, M)_q = 0, M has a graded lift to Λ_μ, free over R[ε]/(ε²) (for a normalized cocycle: μ(1, 1) = 0).

                theorem MultiplicativeBasisDeformations.GExt.muMod_unique {R : Type u_1} [CommRing R] {Λ : Type u_2} [Ring Λ] [Algebra R Λ] {GΛ : GAlg Λ} {M : Type u_3} [AddCommGroup M] [Module R M] {μ : Λ →ₗ[R] Λ →ₗ[R] Λ} {q : ℤ} {MM : GMod GΛ M} (hproj : ∀ (p : ℤ), Module.Projective R ↥(MM.gr.proj p).range) (h : ExtVanish MM MM 0 q) {L : Type u_5} {L' : Type u_6} [AddCommGroup L] [Module R L] [AddCommGroup L'] [Module R L'] (X : MuMod μ q MM L) (Y : MuMod μ q MM L') :
                ∃ (Φ : L ≃ₗ[R] L'), (∀ (l : L) (a : Λ), Φ ((X.act l) a) = (Y.act (Φ l)) a) ∧ (∀ (l : L), Φ (X.ε l) = Y.ε (Φ l)) ∧ (∀ (l : L), Y.red (Φ l) = X.red l) ∧ ∀ (p : ℤ) (l : L), X.gr.IsHom p l → Y.gr.IsHom p (Φ l)

                Lemma 6.6, uniqueness: under Ext¹_Λ(M, M)_q = 0 (and graded pieces of M projective over R, e.g. M free), two graded lifts of M to Λ_μ free over R[ε]/(ε²) are isomorphic by a graded Λ_μ-linear isomorphism reducing to the identity.

                theorem MultiplicativeBasisDeformations.GExt.muMod_mapLift {R : Type u_1} [CommRing R] {Λ : Type u_2} [Ring Λ] [Algebra R Λ] {GΛ : GAlg Λ} {M : Type u_3} {N : Type u_4} [AddCommGroup M] [Module R M] [AddCommGroup N] [Module R N] {μ : Λ →ₗ[R] Λ →ₗ[R] Λ} {q : ℤ} {MM : GMod GΛ M} {NN : GMod GΛ N} {r : ℤ} (hprojM : ∀ (p : ℤ), Module.Projective R ↥(MM.gr.proj p).range) (hprojN : ∀ (p : ℤ), Module.Projective R ↥(NN.gr.proj p).range) {L : Type u_5} {L' : Type u_6} [AddCommGroup L] [Module R L] [AddCommGroup L'] [Module R L'] (X : MuMod μ q MM L) (Y : MuMod μ q NN L') (f : M →ₗ[R] N) (hf : ∀ (m : M) (a : Λ), f ((MM.act m) a) = (NN.act (f m)) a) (hfdeg : ∀ (p : ℤ) (m : M), MM.gr.IsHom p m → NN.gr.IsHom (p + r) (f m)) (h : ExtVanish MM NN 0 (r + q)) :
                ∃ (F : L →ₗ[R] L'), (∀ (l : L) (a : Λ), F ((X.act l) a) = (Y.act (F l)) a) ∧ (∀ (l : L), F (X.ε l) = Y.ε (F l)) ∧ (∀ (l : L), Y.red (F l) = f (X.red l)) ∧ ∀ (p : ℤ) (l : L), X.gr.IsHom p l → Y.gr.IsHom (p + r) (F l)

                Lemma 6.6, maps lift: under Ext¹_Λ(M, N)_{r+q} = 0, a Λ-linear map f : M → N of degree r lifts to a graded Λ_μ-linear map F : L → L' of degree r between graded lifts, reducing to f.

                theorem MultiplicativeBasisDeformations.GExt.modelHom_iff {R : Type u_1} [CommRing R] {Λ : Type u_2} [Ring Λ] [Algebra R Λ] {GΛ : GAlg Λ} {M : Type u_3} {N : Type u_4} [AddCommGroup M] [Module R M] [AddCommGroup N] [Module R N] {μ : Λ →ₗ[R] Λ →ₗ[R] Λ} {q : ℤ} {MM : GMod GΛ M} {NN : GMod GΛ N} (L₀ : ActLift μ q MM) (L₀' : ActLift μ q NN) (F : M × M →ₗ[R] N × N) :
                ((∀ (x : M × M) (a : Λ), F ((MM.act x.1) a + L₀.act x.2 a, (MM.act x.2) a) = ((NN.act (F x).1) a + L₀'.act (F x).2 a, (NN.act (F x).2) a)) ∧ ∀ (x : M × M), F (x.2, 0) = ((F x).2, 0)) ↔ ∃ (f : M →ₗ[R] N) (g : M →ₗ[R] N), IsLiftHom L₀ L₀' f g ∧ ∀ (x : M × M), F x = (f x.1 + g x.2, f x.2)

                Λ_μ-linear maps between lifts M ⊕ εM → N ⊕ εN are exactly (n, m) ↦ (f n + g m, f m) with f + εg a lifted map (IsLiftHom): so the lifted Hom modules are the equation-form ones, free over R[ε]/(ε²) on lifts of a basis (liftHom_basis).