Definitions/Def_Deformations_IsResidueAlgebra.lean
The class `IsResidueAlgebra` of local algebras
Fix a commutative ring \mathcal O and a local \mathcal O-algebra A, and write \mathfrak k(A) for IsLocalRing.ResidueField A, i.e. A/\mathfrak m_A. The class IsResidueAlgebra π A is a one-field proposition: its field isSurjective' asserts that the structure map \mathcal O \to \mathfrak k(A), that is \mathcal O \to A \to A/\mathfrak m_A, is surjective; algebraMap_surjective restates this field. Under the further assumptions that \mathcal O is itself local and that \mathcal O \to A is a local homomorphism, algebraMap_bijective states that the induced map of residue fields \mathfrak k(\mathcal O) \to \mathfrak k(A) is bijective β injectivity because it is a homomorphism of fields, surjectivity because it is surjective after precomposition with the surjection \mathcal O \to \mathfrak k(\mathcal O) β and algEquiv packages it as an isomorphism \mathfrak k(\mathcal O) \simeq \mathfrak k(A) of \mathcal O-algebras.
Three closure properties are registered. A local ring \mathcal O is a residue algebra over itself. For an ideal I \subseteq A with A/I nontrivial, A/I (local, as a surjective image of A) is again a residue algebra over \mathcal O. If B is a local \mathcal O-algebra that is a residue algebra over \mathcal O, and B is an A-algebra compatibly with the \mathcal O-actions, then of_restrictScalars gives that B is a residue algebra over A.
Finally, approximate lifting of elements: exists_sub_mem_maximalIdeal says that for every r \in A there is a \in \mathcal O with r - a \cdot 1 \in \mathfrak m_A; preimage chooses such an a, with preimage_spec and residue_preimage recording the congruence and the resulting equality of residues, and residue_preimage_eq_iff characterising, for \mathcal O local and \mathcal O \to A local, the residue of preimage π r in \mathfrak k(\mathcal O) in terms of the residue of r and the map \mathfrak k(\mathcal O) \to \mathfrak k(A).
Relation to Mathlib
Mathlib has no class expressing that a local algebra has residue field generated by the base ring; IsResidueAlgebra is the project's own, stated in terms of Mathlib's IsLocalRing.ResidueField. The surjectivity of IsLocalRing.ResidueField.map along a surjective local homomorphism, used for the quotient instance, is supplied by an imported project module.
Where it is used
This is the residue-field condition imposed on the coefficient rings in Mazur's deformation theory: the objects over which deformation functors of a residual representation \bar\rho with values in \mathfrak k are defined are local \mathcal O-algebras whose residue field is identified with that of \mathcal O. The quotient and restriction-of-scalars instances, and the choice of representatives preimage, are the basic bookkeeping used when working with such algebras and their Artinian quotients.
References
- B. Mazur, Deforming Galois representations, in: Galois Groups over \mathbb{Q}, MSRI Publications 16, Springer, 1989, 385β437
- M. Schlessinger, Functors of Artin rings, Transactions of the American Mathematical Society 130 (1968), 208β222
- B. de Smit and H. W. Lenstra, Jr., Explicit construction of universal deformation rings, in: Modular Forms and Fermat's Last Theorem, Springer, 1997, 313β326
References are suggested automatically and have not been individually verified.
English text generated automatically from the Lean source; the Lean statement is authoritative.
- 90 lines
- 13 declarations
- used in the statements of 0 theorems and imported by 0 proofs
- imports 2 definition modules
Source file: Definitions/Def_Deformations_IsResidueAlgebra.lean
Imported by
Declarations
- class
IsResidueAlgebra - field
IsResidueAlgebra.isSurjective' - lemma
IsResidueAlgebra.algebraMap_surjective - lemma
IsResidueAlgebra.algebraMap_bijective - def
IsResidueAlgebra.algEquiv - lemma
IsResidueAlgebra.of_restrictScalars - lemma
IsResidueAlgebra.exists_sub_mem_maximalIdeal - def
IsResidueAlgebra.preimage - lemma
IsResidueAlgebra.preimage_spec - lemma
IsResidueAlgebra.residue_preimage - lemma
IsResidueAlgebra.residue_preimage_eq_iff
Source
import Mathlib import Definitions.Def_Mathlib_RingTheory_LocalRing_Defs import Definitions.Def_Deformations_Deformations_Lemmas set_option autoImplicit false open Function IsLocalRing variable (π : Type*) [CommRing π] local notation3:max "π΄" π:max => (IsLocalRing.ResidueField π) variable (A : Type*) [CommRing A] [Algebra π A] [IsLocalRing A] class IsResidueAlgebra : Prop where isSurjective' : Surjective (algebraMap π (π΄ A)) namespace IsResidueAlgebra variable [IsResidueAlgebra π A] lemma algebraMap_surjective : Surjective (algebraMap π (π΄ A)) := isSurjective' variable [IsLocalRing π] [IsLocalHom (algebraMap π A)] in lemma algebraMap_bijective : Bijective (algebraMap (π΄ π) (π΄ A)) := by have hsurj1 := IsLocalRing.residue_surjective (R := π) have hsurj2 := IsResidueAlgebra.algebraMap_surjective π A exact β¨(algebraMap (π΄ π) (π΄ A)).injective, (Function.Surjective.of_comp_iff (algebraMap (π΄ π) (π΄ A)) hsurj1).mp hsurj2β© variable [IsLocalRing π] [IsLocalHom (algebraMap π A)] in noncomputable def algEquiv : π΄ π ββ[π] π΄ A := .ofBijective (IsScalarTower.toAlgHom _ _ _) (algebraMap_bijective _ _) instance [IsLocalRing π] : IsResidueAlgebra π π := β¨IsLocalRing.residue_surjectiveβ© section Quotient instance (I : Ideal A) [Nontrivial (A β§Έ I)] : IsResidueAlgebra π (A β§Έ I) where isSurjective' := have : IsLocalHom (Ideal.Quotient.mk I) := .of_surjective _ Ideal.Quotient.mk_surjective (IsLocalRing.ResidueField.map_surjective _ Ideal.Quotient.mk_surjective).comp (IsResidueAlgebra.algebraMap_surjective π A) end Quotient section Relative variable {π A} variable {B : Type*} [CommRing B] [Algebra π B] [IsLocalRing B] [IsResidueAlgebra π B] omit [IsLocalRing A] [IsResidueAlgebra π A] in lemma of_restrictScalars [Algebra A B] [IsScalarTower π A B] : IsResidueAlgebra A B where isSurjective' := by refine .of_comp (g := algebraMap π A) ?_ rw [β RingHom.coe_comp, β IsScalarTower.algebraMap_eq] exact IsResidueAlgebra.algebraMap_surjective _ _ end Relative open IsLocalRing variable {A} lemma exists_sub_mem_maximalIdeal (r : A) : β a, r - algebraMap π A a β maximalIdeal _ := by obtain β¨a, haβ© := IsResidueAlgebra.algebraMap_surjective π _ (residue _ r) refine β¨a, ?_β© rw [β Ideal.Quotient.eq] exact ha.symm noncomputable def preimage (r : A) : π := (exists_sub_mem_maximalIdeal π r).choose lemma preimage_spec (r : A) : r - algebraMap π A (preimage π r) β maximalIdeal _ := (exists_sub_mem_maximalIdeal π r).choose_spec lemma residue_preimage (r : A) : residue _ (algebraMap _ _ (preimage π r)) = residue _ r := (Ideal.Quotient.eq.mpr (preimage_spec π r)).symm variable [IsLocalRing π] [IsLocalHom (algebraMap π A)] in lemma residue_preimage_eq_iff {r : A} {a} : residue _ (preimage π r) = a β residue _ r = ResidueField.map (algebraMap π A) a := by rw [β (IsResidueAlgebra.algebraMap_bijective π A).1.eq_iff] erw [ResidueField.map_residue] rw [residue_preimage] rfl end IsResidueAlgebra
Statements phrased using this module (0)
No statement module imports it directly (it is used through other definition modules or by proofs).