Definitions/Def_Deformations_TraceAlgebra.lean
Trace subalgebra of a lift and its descent condition
The standing context is a local ring \mathcal O, a topological group G, a finite index type n, and the category \mathrm{ProartinianCat}\ \mathcal O of local pro-Artinian \mathcal O-algebras with residue field that of \mathcal O; objects are written A with underlying ring A.\mathrm{carrier}, and a lift is a continuous monoid homomorphism \rho\colon G \to \mathrm{GL}_n(A). Three groups of declarations are made. First, for R in the category, conjKer R is the subgroup of \mathrm{ConjAct}(\mathrm{GL}_n R) consisting of those \gamma whose underlying matrix maps to 1 under reduction \mathrm{GL}_n(R) \to \mathrm{GL}_n(k) along the canonical map ProartinianCat.toResidueField R; mem_conjKer_iff records this membership criterion, and conjAct_smul_apply states that the conjugation action on lifts is (\gamma\cdot\rho)(g) = \gamma\,\rho(g)\,\gamma^{-1}. Alongside, mapRepn names the pushforward of a lift along a morphism f\colon A \to B, i.e. the action of repnFunctor on f, with mapRepn_apply identifying it as entrywise application of f to \rho(g).
Second, traceSet π Ο is the set of values \operatorname{tr}\rho(g), g \in G, in A, and traceSubalgebra π Ο is the topological closure of the \mathcal O-subalgebra generated by this set. Three lemmas give its basic properties: it is a closed subset of A; it contains every \operatorname{tr}\rho(g); and it is contained in any closed \mathcal O-subalgebra T of A with \operatorname{tr}\rho(g) \in T for all g, so it is the smallest such. Traces are unchanged by the conjugation action (trace_smul_eq) and commute with pushforward, \operatorname{tr}(f_*\rho)(g) = f(\operatorname{tr}\rho(g)) (trace_mapRepn).
Third, TraceAlgebra.Descends Ο is the predicate asserting the existence of \gamma \in conjKer A such that every matrix entry ((\gamma\cdot\rho)(g))_{ij}, for all g \in G and all i,j, lies in traceSubalgebra π Ο. This is a condition on \rho itself, formulated via an explicit conjugating element rather than an abstract equivalence of lifts.
Relation to Mathlib
Mathlib supplies the ambient notions used here (\mathrm{ConjAct}, \mathrm{GL}_n, Algebra.adjoin, Subalgebra.topologicalClosure and its minimality, Matrix.trace); the trace subalgebra of a lift and the descent predicate are the project's own definitions, built over the project's ProartinianCat and repnFunctor.
Where it is used
The trace subalgebra is the candidate ring for a lift of a residual representation, and the descent predicate expresses that the lift can be conjugated, by an element congruent to the identity modulo the maximal ideal, into matrices with entries in that subalgebra. Descent for lifts of an absolutely irreducible residual representation is what makes the trace subalgebra the relevant deformation ring, hence feeds the representability of the deformation functor used in the modularity-lifting argument.
References
- B. Mazur, Deforming Galois representations, in: Galois Groups over \mathbb{Q}, MSRI Publications 16, Springer, 1989, 385β437
- H. Carayol, Formes modulaires et reprΓ©sentations galoisiennes Γ valeurs dans un anneau local complet, in: p-adic Monodromy and the Birch and Swinnerton-Dyer Conjecture, Contemporary Mathematics 165, American Mathematical Society, 1994, 213β237
- H. Darmon, F. Diamond and R. Taylor, Fermat's Last Theorem, in: Current Developments in Mathematics 1995, International Press, 1995, 1β154, Β§2
References are suggested automatically and have not been individually verified.
English text generated automatically from the Lean source; the Lean statement is authoritative.
- 126 lines
- 13 declarations
- used in the statements of 3 theorems and imported by 3 proofs
- imports 1 definition modules
Source file: Definitions/Def_Deformations_TraceAlgebra.lean
Imports
Declarations
- abbrev
Deformation.conjKer - lemma
Deformation.mem_conjKer_iff - abbrev
Deformation.mapRepn - lemma
Deformation.mapRepn_apply - lemma
Deformation.conjAct_smul_apply - def
Deformation.traceSet - def
Deformation.traceSubalgebra - lemma
Deformation.isClosed_traceSubalgebra - lemma
Deformation.trace_mem_traceSubalgebra - lemma
Deformation.traceSubalgebra_le - lemma
Deformation.trace_smul_eq - lemma
Deformation.trace_mapRepn - def
Deformation.TraceAlgebra.Descends
Source
import Mathlib import Definitions.Def_Deformations_LiftFunctor set_option autoImplicit false universe u open CategoryTheory IsLocalRing namespace Deformation variable {n : Type} [Fintype n] [DecidableEq n] variable {G : Type u} [Group G] [TopologicalSpace G] variable {π : Type u} [CommRing π] [IsLocalRing π] noncomputable abbrev conjKer (R : ProartinianCat π) : Subgroup (ConjAct (GL n R)) := ((Matrix.GeneralLinearGroup.map (n := n) (ProartinianCat.toResidueField R).hom.toRingHom).ker.comap (ConjAct.ofConjAct.toMonoidHom)) variable (n) in lemma mem_conjKer_iff {R : ProartinianCat π} (Ξ³ : ConjAct (GL n R)) : Ξ³ β conjKer (n := n) R β Matrix.GeneralLinearGroup.map (ProartinianCat.toResidueField R).hom.toRingHom (ConjAct.ofConjAct Ξ³) = 1 := Iff.rfl variable (n G π) in abbrev mapRepn {A B : ProartinianCat π} (f : A βΆ B) (Ο : G ββ* GL n A) : G ββ* GL n B := (repnFunctor n G π).map f Ο omit [IsLocalRing π] in @[simp] lemma mapRepn_apply {A B : ProartinianCat π} (f : A βΆ B) (Ο : G ββ* GL n A) (g : G) : mapRepn n G π f Ο g = Matrix.GeneralLinearGroup.map f.hom.toRingHom (Ο g) := rfl omit [IsLocalRing π] in lemma conjAct_smul_apply {R : ProartinianCat π} (Ξ³ : ConjAct (GL n R)) (Ο : G ββ* GL n R) (g : G) : (Ξ³ β’ Ο) g = ConjAct.ofConjAct Ξ³ * Ο g * (ConjAct.ofConjAct Ξ³)β»ΒΉ := rfl section TraceAlgebra open ProartinianCat variable (π) in def traceSet {A : ProartinianCat π} (Ο : G ββ* GL n A) : Set A.carrier := Set.range fun g => Matrix.trace ((Ο g : GL n A.carrier) : Matrix n n A.carrier) variable (π) in def traceSubalgebra {A : ProartinianCat π} (Ο : G ββ* GL n A) : Subalgebra π A.carrier := (Algebra.adjoin π (traceSet π Ο)).topologicalClosure omit [IsLocalRing π] in lemma isClosed_traceSubalgebra {A : ProartinianCat π} (Ο : G ββ* GL n A) : IsClosed ((traceSubalgebra π Ο : Subalgebra π A.carrier) : Set A.carrier) := Subalgebra.isClosed_topologicalClosure _ omit [IsLocalRing π] in lemma trace_mem_traceSubalgebra {A : ProartinianCat π} (Ο : G ββ* GL n A) (g : G) : Matrix.trace ((Ο g : GL n A.carrier) : Matrix n n A.carrier) β traceSubalgebra π Ο := (Algebra.adjoin π (traceSet π Ο)).le_topologicalClosure (Algebra.subset_adjoin β¨g, rflβ©) omit [IsLocalRing π] in lemma traceSubalgebra_le {A : ProartinianCat π} (Ο : G ββ* GL n A) {T : Subalgebra π A.carrier} (hT : IsClosed (T : Set A.carrier)) (h : β g, Matrix.trace ((Ο g : GL n A.carrier) : Matrix n n A.carrier) β T) : traceSubalgebra π Ο β€ T := Subalgebra.topologicalClosure_minimal (Algebra.adjoin_le (by rintro _ β¨g, rflβ©; exact h g)) hT end TraceAlgebra section TraceConj omit [IsLocalRing π] in lemma trace_smul_eq {A : ProartinianCat π} (Ξ³ : ConjAct (GL n A.carrier)) (Ο : G ββ* GL n A) (g : G) : Matrix.trace (((Ξ³ β’ Ο) g : GL n A.carrier) : Matrix n n A.carrier) = Matrix.trace ((Ο g : GL n A.carrier) : Matrix n n A.carrier) := by have h1 : ((Ξ³ β’ Ο) g : GL n A.carrier) = ConjAct.ofConjAct Ξ³ * Ο g * (ConjAct.ofConjAct Ξ³)β»ΒΉ := conjAct_smul_apply Ξ³ Ο g rw [h1] have h2 : ((ConjAct.ofConjAct Ξ³ * Ο g * (ConjAct.ofConjAct Ξ³)β»ΒΉ : GL n A.carrier) : Matrix n n A.carrier) = ((ConjAct.ofConjAct Ξ³ : GL n A.carrier) : Matrix n n A.carrier) * ((Ο g : GL n A.carrier) : Matrix n n A.carrier) * ((β(ConjAct.ofConjAct Ξ³)β»ΒΉ : GL n A.carrier) : Matrix n n A.carrier) := by rw [Units.val_mul, Units.val_mul] rw [h2] exact Matrix.trace_units_conj (ConjAct.ofConjAct Ξ³) _ omit [IsLocalRing π] in lemma trace_mapRepn {A B : ProartinianCat π} (f : A βΆ B) (Ο : G ββ* GL n A) (g : G) : Matrix.trace ((mapRepn n G π f Ο g : GL n B.carrier) : Matrix n n B.carrier) = f.hom (Matrix.trace ((Ο g : GL n A.carrier) : Matrix n n A.carrier)) := by have h1 : ((mapRepn n G π f Ο g : GL n B.carrier) : Matrix n n B.carrier) = ((Ο g : GL n A.carrier) : Matrix n n A.carrier).map f.hom.toRingHom := by rw [mapRepn_apply] rfl rw [h1] exact (AddMonoidHom.map_trace f.hom.toRingHom _).symm end TraceConj section Universal open ProartinianCat def TraceAlgebra.Descends {A : ProartinianCat π} (Ο : G ββ* GL n A) : Prop := β Ξ³ β conjKer (n := n) A, β (g : G) (i j : n), (((Ξ³ β’ Ο) g : GL n A.carrier) : Matrix n n A.carrier) i j β traceSubalgebra π Ο end Universal end Deformation
Statements phrased using this module (3)
- Carayol's lemma: lifts descend to their trace subalgebra
Deformation.TraceAlgebra.descends4 below Β· depth 9 - Uniqueness from traces modulo strict equivalence
Deformation.hom_ext_of_mk_mapRepn_eq1 below Β· depth 10 - Morphisms out of a trace-generated deformation are determined by traces
Deformation.hom_ext_of_traceSubalgebra_eq_top0 below Β· depth 11