Definitions/Def_GaloisRep_Adic.lean
Rank-two Galois representations over a local coefficient ring
Fix a commutative local ring A with maximal ideal \mathfrak m. GaloisActionIsAdicContinuous A ρ, for a monoid homomorphism \rho from \mathrm{Gal}(\overline{\mathbb Q}/\mathbb Q) (realised as \overline{\mathbb Q}\simeq_{\mathbb Q}\overline{\mathbb Q}, with \overline{\mathbb Q}= AlgebraicClosure ℚ) to \mathrm{End}_A(V), asserts: for every n there is an intermediate field L of \overline{\mathbb Q}/\mathbb Q, finite-dimensional over \mathbb Q, such that every \sigma fixing L pointwise satisfies \rho(\sigma)v-v\in\mathfrak m^n\cdot V for all v. No topology on A, on V or on the Galois group is used; this is the project's own substitute for continuity. A GaloisRepAdic A then bundles a type V with an A-module structure that is free and finite, the equation \operatorname{finrank}_A V=2, a monoid homomorphism \rho into \mathrm{End}_A(V), and the above condition as a field.
For \rho : GaloisRepAdic A: IsUnramifiedAt ρ q says that for every valuation subring P of \overline{\mathbb Q} lying over the prime q (predicate LiesOverPrime, from an imported module), every element of P.inertiaSubgroupIn ℚ acts as the identity; det ρ is the character \mathrm{Gal}\to A^\times obtained from \sigma\mapsto\det(\rho(\sigma)) via toHomUnits, and trace ρ σ is \operatorname{tr}_A(\rho(\sigma)). baseChangeAlong φ hφ transports \rho along an explicit ring homomorphism \varphi:A\to B of local rings that is assumed local, with carrier B\otimes_A V and \rho(\sigma) replaced by its base change; residual ρ is the representation on \kappa\otimes_A V, \kappa the residue field of A, as a ResidualGaloisRep, its finite-level field being deduced from adic continuity for n=1.
Equivalence is data: Equiv ρ₁ ρ₂ consists of an A-linear isomorphism e:V_1\to V_2 together with the intertwining identity e(\rho_1(\sigma)x)=\rho_2(\sigma)(e(x)) for all \sigma,x; IsEquiv is its Nonempty. Helper declarations give reflexivity, symmetry, transitivity, compatibility of Equiv with base change and with passage to the residual representation, and, when the coefficients form a field k, mutually inverse passages between GaloisRepAdic k and ResidualGaloisRep k on the same carrier.
Relation to Mathlib
Mathlib has no notion of a Galois representation; the structures and the adic-continuity predicate are the project's own, built on Mathlib's Module.Free/Module.Finite, Module.finrank, LinearMap.det/LinearMap.trace, tensor-product base change, IsLocalRing.ResidueField and ValuationSubring.inertiaSubgroupIn. Change of coefficients is always along an explicit φ : A →+* B with an explicit IsLocalHom φ argument, never an ambient Algebra A B instance.
Where it is used
These are the coefficient-ring-valued two-dimensional representations used throughout the lifting argument: representations with values in a localised Hecke algebra, universal deformations of a residual representation, and Tate modules of elliptic curves over p-adic rings. The module supplies the currency (unramifiedness, trace and determinant, base change, reduction to the residue field, and equivalence) on which the deformation-theoretic and Hecke-algebra modules that import it are phrased.
References
- H. Darmon, F. Diamond and R. Taylor, Fermat's Last Theorem, in: Current Developments in Mathematics 1995, International Press, 1995, 1–154
- B. Mazur, Deforming Galois representations, in Galois Groups over Q (Berkeley, 1987), MSRI Publications 16, Springer, 1989, pp. 385–437
- A. Wiles, Modular elliptic curves and Fermat's Last Theorem, Annals of Mathematics 141 (1995), 443–551
References are suggested automatically and have not been individually verified.
English text generated automatically from the Lean source; the Lean statement is authoritative.
- 208 lines
- 22 declarations
- used in the statements of 97 theorems and imported by 126 proofs
- imports 2 definition modules
Source file: Definitions/Def_GaloisRep_Adic.lean
Declarations
- def
GaloisActionIsAdicContinuous - structure
GaloisRepAdic - field
GaloisRepAdic.V - field
GaloisRepAdic.finrank_eq - field
GaloisRepAdic.isAdicContinuous - def
GaloisRepAdic.IsUnramifiedAt - def
GaloisRepAdic.det - def
GaloisRepAdic.trace - def
GaloisRepAdic.baseChangeAlong - def
GaloisRepAdic.residual - structure
GaloisRepAdic.Equiv - field
GaloisRepAdic.Equiv.toLinearEquiv - field
GaloisRepAdic.Equiv.map_apply - field
GaloisRepAdic.Equiv.toLinearEquiv - def
GaloisRepAdic.IsEquiv - def
GaloisRepAdic.Equiv.refl - def
GaloisRepAdic.Equiv.symm - def
GaloisRepAdic.Equiv.trans - def
GaloisRepAdic.Equiv.baseChangeAlong - def
GaloisRepAdic.Equiv.residual - def
GaloisRepAdic.toResidualGaloisRep - def
GaloisRepAdic.ofResidualGaloisRep
Source
import Mathlib.LinearAlgebra.Charpoly.BaseChange ↗ import Mathlib.LinearAlgebra.Trace ↗ import Mathlib.RingTheory.LocalRing.ResidueField.Basic ↗ import Definitions.Def_GaloisRep_Residual import Definitions.Def_GaloisRep_ResidualEquiv open scoped TensorProduct def GaloisActionIsAdicContinuous (A : Type) [CommRing A] [IsLocalRing A] {V : Type} [AddCommGroup V] [Module A V] (ρ : (AlgebraicClosure ℚ ≃ₐ[ℚ] AlgebraicClosure ℚ) →* Module.End A V) : Prop := ∀ n : ℕ, ∃ L : IntermediateField ℚ (AlgebraicClosure ℚ), FiniteDimensional ℚ L ∧ ∀ σ : AlgebraicClosure ℚ ≃ₐ[ℚ] AlgebraicClosure ℚ, (∀ x ∈ L, σ x = x) → ∀ v : V, ρ σ v - v ∈ (IsLocalRing.maximalIdeal A ^ n) • (⊤ : Submodule A V) structure GaloisRepAdic (A : Type) [CommRing A] [IsLocalRing A] : Type 1 where V : Type [instAddCommGroup : AddCommGroup V] [instModule : Module A V] [instFree : Module.Free A V] [instFinite : Module.Finite A V] finrank_eq : Module.finrank A V = 2 ρ : (AlgebraicClosure ℚ ≃ₐ[ℚ] AlgebraicClosure ℚ) →* Module.End A V isAdicContinuous : GaloisActionIsAdicContinuous A ρ attribute [instance] GaloisRepAdic.instAddCommGroup GaloisRepAdic.instModule GaloisRepAdic.instFree GaloisRepAdic.instFinite namespace GaloisRepAdic variable {A : Type} [CommRing A] [IsLocalRing A] def IsUnramifiedAt (ρ : GaloisRepAdic A) (q : ℕ) : Prop := ∀ P : ValuationSubring (AlgebraicClosure ℚ), P.LiesOverPrime q → ∀ σ ∈ P.inertiaSubgroupIn ℚ, ρ.ρ σ = 1 noncomputable def det (ρ : GaloisRepAdic A) : (AlgebraicClosure ℚ ≃ₐ[ℚ] AlgebraicClosure ℚ) →* Aˣ := (LinearMap.det.comp ρ.ρ).toHomUnits noncomputable def trace (ρ : GaloisRepAdic A) (σ : AlgebraicClosure ℚ ≃ₐ[ℚ] AlgebraicClosure ℚ) : A := LinearMap.trace A ρ.V (ρ.ρ σ) noncomputable def baseChangeAlong {B : Type} [CommRing B] [IsLocalRing B] (φ : A →+* B) (hφ : IsLocalHom φ) (ρ : GaloisRepAdic A) : GaloisRepAdic B := letI : Algebra A B := φ.toAlgebra { V := B ⊗[A] ρ.V finrank_eq := by rw [Module.finrank_baseChange, ρ.finrank_eq] ρ := { toFun := fun σ => (ρ.ρ σ).baseChange B map_one' := by rw [map_one, LinearMap.baseChange_one] map_mul' := fun σ τ => by rw [map_mul, LinearMap.baseChange_mul] } isAdicContinuous := by intro n obtain ⟨L, hL, h1⟩ := ρ.isAdicContinuous n refine ⟨L, hL, fun σ hσ => ?_⟩ have hmap : (IsLocalRing.maximalIdeal A ^ n).map φ ≤ IsLocalRing.maximalIdeal B ^ n := by rw [Ideal.map_pow] exact Ideal.pow_right_mono (Ideal.map_le_iff_le_comap.mpr fun a ha => Ideal.mem_comap.mpr (haveI := hφ; map_nonunit φ a ha)) n have hpure : ∀ (b : B) (v : ρ.V), (ρ.ρ σ).baseChange B (b ⊗ₜ[A] v) - b ⊗ₜ[A] v ∈ (IsLocalRing.maximalIdeal B ^ n) • (⊤ : Submodule B (B ⊗[A] ρ.V)) := by intro b v rw [LinearMap.baseChange_tmul, ← TensorProduct.tmul_sub] refine Submodule.smul_induction_on (p := fun x => b ⊗ₜ[A] x ∈ (IsLocalRing.maximalIdeal B ^ n) • (⊤ : Submodule B (B ⊗[A] ρ.V))) (h1 σ hσ v) ?_ ?_ · intro a ha w _ rw [TensorProduct.tmul_smul, TensorProduct.smul_tmul', Algebra.smul_def, ← smul_eq_mul, ← TensorProduct.smul_tmul'] exact Submodule.smul_mem_smul (hmap (Ideal.mem_map_of_mem φ ha)) Submodule.mem_top · intro x y hx hy rw [TensorProduct.tmul_add] exact Submodule.add_mem _ hx hy intro w induction w using TensorProduct.induction_on with | zero => rw [map_zero, sub_zero]; exact Submodule.zero_mem _ | tmul b v => exact hpure b v | add x y hx hy => rw [map_add, add_sub_add_comm] exact Submodule.add_mem _ hx hy } noncomputable def residual (ρ : GaloisRepAdic A) : ResidualGaloisRep (IsLocalRing.ResidueField A) := { V := IsLocalRing.ResidueField A ⊗[A] ρ.V finrank_eq := by rw [Module.finrank_baseChange, ρ.finrank_eq] ρ := { toFun := fun σ => (ρ.ρ σ).baseChange (IsLocalRing.ResidueField A) map_one' := by rw [map_one, LinearMap.baseChange_one] map_mul' := fun σ τ => by rw [map_mul, LinearMap.baseChange_mul] } factorsThroughFiniteLevel := by obtain ⟨L, hL, h1⟩ := ρ.isAdicContinuous 1 refine ⟨L, hL, fun σ hσ => ?_⟩ have hkill : ∀ x ∈ (IsLocalRing.maximalIdeal A ^ 1) • (⊤ : Submodule A ρ.V), ∀ c : IsLocalRing.ResidueField A, c ⊗ₜ[A] x = 0 := by intro x hx c refine Submodule.smul_induction_on (p := fun x => c ⊗ₜ[A] x = (0 : IsLocalRing.ResidueField A ⊗[A] ρ.V)) hx ?_ ?_ · intro a ha w _ rw [pow_one] at ha rw [TensorProduct.tmul_smul, TensorProduct.smul_tmul', Algebra.smul_def, IsLocalRing.ResidueField.algebraMap_eq, (IsLocalRing.residue_eq_zero_iff a).mpr ha, zero_mul, TensorProduct.zero_tmul] · intro x y hx hy rw [TensorProduct.tmul_add, hx, hy, add_zero] refine LinearMap.ext fun w => ?_ rw [MonoidHom.coe_mk, OneHom.coe_mk] induction w using TensorProduct.induction_on with | zero => rw [map_zero, map_zero] | tmul c v => rw [LinearMap.baseChange_tmul, Module.End.one_apply, ← sub_eq_zero, ← TensorProduct.tmul_sub] exact hkill _ (h1 σ hσ v) c | add x y hx hy => rw [map_add, map_add, hx, hy] } structure Equiv (ρ₁ ρ₂ : GaloisRepAdic A) where toLinearEquiv : ρ₁.V ≃ₗ[A] ρ₂.V map_apply : ∀ (σ : AlgebraicClosure ℚ ≃ₐ[ℚ] AlgebraicClosure ℚ) (x : ρ₁.V), toLinearEquiv (ρ₁.ρ σ x) = ρ₂.ρ σ (toLinearEquiv x) def IsEquiv (ρ₁ ρ₂ : GaloisRepAdic A) : Prop := Nonempty (Equiv ρ₁ ρ₂) namespace Equiv def refl (ρ : GaloisRepAdic A) : Equiv ρ ρ := { toLinearEquiv := LinearEquiv.refl A ρ.V map_apply := fun _ _ => rfl } def symm {ρ₁ ρ₂ : GaloisRepAdic A} (e : Equiv ρ₁ ρ₂) : Equiv ρ₂ ρ₁ := { toLinearEquiv := e.toLinearEquiv.symm map_apply := fun σ y => e.toLinearEquiv.injective (by rw [LinearEquiv.apply_symm_apply, e.map_apply, LinearEquiv.apply_symm_apply]) } def trans {ρ₁ ρ₂ ρ₃ : GaloisRepAdic A} (e : Equiv ρ₁ ρ₂) (e' : Equiv ρ₂ ρ₃) : Equiv ρ₁ ρ₃ := { toLinearEquiv := e.toLinearEquiv.trans e'.toLinearEquiv map_apply := fun σ x => by rw [LinearEquiv.trans_apply, LinearEquiv.trans_apply, e.map_apply, e'.map_apply] } noncomputable def baseChangeAlong {B : Type} [CommRing B] [IsLocalRing B] (φ : A →+* B) (hφ : IsLocalHom φ) {ρ₁ ρ₂ : GaloisRepAdic A} (e : Equiv ρ₁ ρ₂) : Equiv (ρ₁.baseChangeAlong φ hφ) (ρ₂.baseChangeAlong φ hφ) := letI : Algebra A B := φ.toAlgebra { toLinearEquiv := e.toLinearEquiv.baseChange A B ρ₁.V ρ₂.V map_apply := fun σ x => by show e.toLinearEquiv.baseChange A B ρ₁.V ρ₂.V ((ρ₁.ρ σ).baseChange B x) = (ρ₂.ρ σ).baseChange B (e.toLinearEquiv.baseChange A B ρ₁.V ρ₂.V x) induction x using TensorProduct.induction_on with | zero => simp only [map_zero] | tmul b v => rw [LinearMap.baseChange_tmul, LinearEquiv.baseChange_tmul, LinearEquiv.baseChange_tmul, LinearMap.baseChange_tmul, e.map_apply] | add x y hx hy => simp only [map_add, hx, hy] } end Equiv end GaloisRepAdic namespace GaloisRepAdic variable {A : Type} [CommRing A] [IsLocalRing A] noncomputable def Equiv.residual {ρ₁ ρ₂ : GaloisRepAdic A} (e : Equiv ρ₁ ρ₂) : ResidualGaloisRep.Equiv ρ₁.residual ρ₂.residual := { toLinearEquiv := e.toLinearEquiv.baseChange A (IsLocalRing.ResidueField A) ρ₁.V ρ₂.V map_apply := fun σ x => by show e.toLinearEquiv.baseChange A (IsLocalRing.ResidueField A) ρ₁.V ρ₂.V ((ρ₁.ρ σ).baseChange (IsLocalRing.ResidueField A) x) = (ρ₂.ρ σ).baseChange (IsLocalRing.ResidueField A) (e.toLinearEquiv.baseChange A (IsLocalRing.ResidueField A) ρ₁.V ρ₂.V x) induction x using TensorProduct.induction_on with | zero => simp only [map_zero] | tmul b v => rw [LinearMap.baseChange_tmul, LinearEquiv.baseChange_tmul, LinearEquiv.baseChange_tmul, LinearMap.baseChange_tmul, e.map_apply] | add x y hx hy => simp only [map_add, hx, hy] } def toResidualGaloisRep {k : Type} [Field k] (ρ : GaloisRepAdic k) : ResidualGaloisRep k := { V := ρ.V finrank_eq := ρ.finrank_eq ρ := ρ.ρ factorsThroughFiniteLevel := by obtain ⟨L, hL, h1⟩ := ρ.isAdicContinuous 1 refine ⟨L, hL, fun σ hσ => LinearMap.ext fun v => ?_⟩ have hbot : IsLocalRing.maximalIdeal k = ⊥ := (Ideal.eq_bot_or_top _).resolve_right (Ideal.IsMaximal.ne_top inferInstance) have h := h1 σ hσ v rw [hbot, pow_one, Submodule.bot_smul, Submodule.mem_bot, sub_eq_zero] at h exact h } def ofResidualGaloisRep {k : Type} [Field k] (ρ : ResidualGaloisRep k) : GaloisRepAdic k := { V := ρ.V finrank_eq := ρ.finrank_eq ρ := ρ.ρ isAdicContinuous := by intro n obtain ⟨L, hL, h1⟩ := ρ.factorsThroughFiniteLevel refine ⟨L, hL, fun σ hσ v => ?_⟩ rw [h1 σ hσ, Module.End.one_apply, sub_self] exact Submodule.zero_mem _ } end GaloisRepAdic
Statements phrased using this module (97)
- Characteristic polynomials commute with base change of coefficients
GaloisRepAdic.charpoly_baseChangeAlong0 below · depth 8 - Equivalent adic Galois representations have equal characteristic polynomials
GaloisRepAdic.charpoly_eq_of_isEquiv0 below · depth 8 - Characteristic polynomial of the residual representation
GaloisRepAdic.charpoly_residual0 below · depth 8 - Matching a_ℓ(g) with Frobenius traces of a Weierstrass model
CuspForm.qCoeff_eq_apOfModel_of_charpoly_frobenius3 below · depth 9 - Frobenius characteristic polynomials determine the whole representation
GaloisRepAdic.charpoly_eq_of_charpoly_frobenius_eq21 below · depth 9 - Adic continuity gives a continuous map to GL₂(A)
GaloisRepAdic.continuous_unitsMap_toMatrix_of_isAdicContinuous1 below · depth 9 - Continuous GL₂(A)-representations act 𝔪-adically continuously
GaloisRepAdic.galoisActionIsAdicContinuous_toLin_of_continuous0 below · depth 9 - Carayol's lemma: equal traces force equivalence
GaloisRepAdic.isEquiv_of_residual_isAbsolutelyIrreducible_of_trace_eq5 below · depth 9 - Eichler–Shimura: Galois representations from Hecke characters on VₚJ₀(N)
ModularCurve.exists_galoisRepAdic_charpoly_frobenius_of_heckeChar1,238 below · depth 9 - Determinant character commutes with base change
GaloisRepAdic.det_baseChangeAlong0 below · depth 10 - Inertia at a Taylor–Wiles prime acts as χ⊕χ⁻¹
GaloisRepAdic.exists_inertiaCharacter_of_detIsCyclotomic_of_regular36 below · depth 10 - Iterated base change equals base change along the composite
GaloisRepAdic.isEquiv_baseChangeAlong_baseChangeAlong0 below · depth 10 - Equality of Frobenius characteristic polynomials forces equivalence
GaloisRepAdic.isEquiv_of_charpoly_frobenius_eq28 below · depth 10 - Residual representation commutes with coefficient base change
GaloisRepAdic.residual_baseChangeAlong_isEquiv5 below · depth 10 - Residual identification and determinant of an adic lift
GaloisRepAdic.residual_isEquiv_and_det_sub_mem_of_charpoly_frobenius_eq48 below · depth 10 - Nakayama span lemma for absolutely irreducible residual reduction
GaloisRepAdic.span_range_eq_top_of_residual_isAbsolutelyIrreducible3 below · depth 10 - Adic Galois representation attached to a weight-two eigenform
CuspForm.IsNormalizedEigenform.exists_galoisRepAdic_frobenius_quadratic1,310 below · depth 11 - Wild inertia at q ≠ p acts trivially
GaloisRepAdic.apply_eq_one_of_mem_inertiaSubgroupIn_of_wild2 below · depth 11 - Cyclotomic determinant is trivial on inertia at q ≠ p
GaloisRepAdic.det_eq_one_of_detIsCyclotomic_of_mem_inertiaSubgroupIn1 below · depth 11 - Base change of an ordinary line along a local homomorphism
GaloisRepAdic.exists_ordinaryLine_baseChangeAlong0 below · depth 11 - Transfer of the square-one quotient scalar between places above p
GaloisRepAdic.ordinaryLine_quotientScalar_sq_eq_one_of_liesOverPrime_of_liesOverPrime4 below · depth 11 - Residual non-triviality persists under base change of coefficients
GaloisRepAdic.residual_baseChangeAlong_apply_ne_one0 below · depth 11 - Residually unramified inertia acts trivially modulo 𝔪
GaloisRepAdic.toMatrix_sub_one_apply_mem_maximalIdeal_of_residual_isUnramifiedAt0 below · depth 11 - Traces determined by Frobenius traces outside a finite set
ResidualGaloisRep.trace_eq_of_trace_frobenius_eq17 below · depth 11 - Exact tame relation for representations unipotent on inertia
GaloisRepAdic.conj_mul_conj_eq_pow_of_isUnipotentOnInertiaAt0 below · depth 12 - Très ramifiée witness contradicts inertia acting trivially mod 𝔪
GaloisRepAdic.false_of_residual_tresRamifiee_of_root_one_add_prime_inertia_sub_mem3 below · depth 12 - Local constancy and inertial vanishing of a dual-lift cochain
GaloisRepAdic.isLocallyConstant_dualLiftToCochain_and_eq_zero_of_isUnramifiedAt0 below · depth 12 - Absolute irreducibility at level prime to p
RibetIrr.irreducible_of_point_of_not_dvd2,265 below · depth 12 - Determinant of a Frobenius-normalised stable plane is integrally cyclotomic
eigenPlane_det_congruent_cyclotomic_of_frobenius_det486 below · depth 12 - Frobenius determinant equals ℓ on a Hecke eigenplane
eigenPlane_det_frobenius_eq_prime1,037 below · depth 12 - Eichler–Shimura representation as a quotient of Tₚ(J₀(N))
CuspForm.exists_galoisRep_of_point_tateModule_jZero_quotient1,296 below · depth 13 - Wild inertia with unipotent characteristic polynomial acts trivially
GaloisRepAdic.apply_eq_one_of_wild_of_charpoly_eq2 below · depth 13 - Unipotent-modulo-𝔪 triangular action is trivial on V/𝔪 V
GaloisRepAdic.apply_sub_mem_maximalIdeal_smul_top_of_triangular0 below · depth 13 - Wild inertia eigenvalue of order prime to q is 1
GaloisRepAdic.eq_one_of_pow_eq_one_of_coprime_of_wild_of_charpoly_map_eq3 below · depth 13 - Tame inertia eigenvalues are (q²-1)-th roots of unity
GaloisRepAdic.exists_charpoly_inertia_eq_and_pow_sq_sub_one_eq_one_of_forall_mem_inertiaSubgroupIn_wild_apply_eq_one5 below · depth 13 - Decomposition elements act through local Galois elements
GaloisRepAdic.exists_localGaloisToGlobal_apply_eq_of_mem_decompositionSubgroup_padicPlace2 below · depth 13 - Frobenius-eigenvalue stable line at an unramified prime
GaloisRepAdic.exists_stableLine_frobenius_sub_smul_mem_of_inertia_eq_one_of_charpoly_eq5 below · depth 13 - Burnside span for ρ from a companion representation
RibetIrr.span_range_baseChange_eq_top_of_companion684 below · depth 13 - Nonzero inertia invariants at q when v_q(M)=1
CuspForm.IsPrimitiveForm.exists_ne_zero_forall_inertiaSubgroupIn_apply_eq_self_of_linearMap_psCarrier_isUnramified_of_factorization_eq_one5,713 below · depth 14 - Twisting an adic Galois representation by a finite-order character
GaloisRepAdic.exists_charpoly_eq_scaleRoots_of_character0 below · depth 14 - Twisting a two-dimensional adic Galois representation by a character
GaloisRepAdic.exists_charpoly_eq_twist0 below · depth 14 - Multiplicative inertia labels for a tame rank-two representation
GaloisRepAdic.exists_inertia_labels_mul_dichotomy_of_forall_wild_apply_eq_one8 below · depth 14 - One finite level trivialising all depth-K base changes
GaloisRepAdic.exists_level_forall_baseChangeAlong_apply_eq_one0 below · depth 14 - Integral model for a Galois-stable plane in K⊗_𝒪M
GaloisRepAdic.exists_linearMap_baseChange_of_galoisStable_plane0 below · depth 14 - Wild inertia at q acts with q-power order
GaloisRepAdic.exists_pow_prime_pow_eq_one_of_wild2 below · depth 14 - Uniqueness of the inertia-stable line under residual ramification
GaloisRepAdic.ordinaryLine_eq_of_exists_inertia_residual_ne_one0 below · depth 14 - Traces commute with base change of coefficients
GaloisRepAdic.trace_baseChangeAlong0 below · depth 14 - Eichler–Shimura over a DVR with Galois-equivariant quotient of Tₚ J₀(N)
ModularCurve.exists_galoisRepAdic_charpoly_frobenius_of_heckeChar_tateModule_quotient1,238 below · depth 14 - Structures on the λ-adic Tate module of J₀(M)
ModularCurve.exists_module_padicInt_tateModule_jZero_galoisRep_isAdicContinuous_heckeRep893 below · depth 14 - Dickson trace identity in the non-absolutely-irreducible case
RibetIrr.exists_dickson_eval_eq_of_span_ne_top18 below · depth 14 - Inertia invariants at q for v_q(M)=1, unramified principal series
CuspForm.IsPrimitiveForm.exists_galoisRepAdic_forall_inertiaSubgroupIn_apply_eq_self_of_linearMap_psCarrier_isUnramified_of_factorization_eq_one5,712 below · depth 15 - Inertia at a Taylor–Wiles prime acts by diamond operators
CuspForm.TWLevel.HeckeRing.exists_basis_inertia_apply_eq_diamond_smul6,378 below · depth 15 - Galois representation over the Taylor–Wiles Hecke ring
CuspForm.TWLevel.HeckeRing.exists_galoisRepAdic_trace_frobenius_eq_T1,578 below · depth 15 - Unramifiedness at the auxiliary prime of the Taylor–Wiles Hecke representation
CuspForm.TWLevel.HeckeRing.isUnramifiedAt_of_not_dvd_sub_one_of_trace_frobenius_sq_ne3,303 below · depth 15 - Determinant of the residual representation is the residue of the determinant
GaloisRepAdic.det_residual0 below · depth 15 - Eigenvalue one on inertia at q forces an invariant vector
GaloisRepAdic.exists_ne_zero_forall_inertiaSubgroupIn_apply_eq_self_of_forall_isRoot_charpoly2 below · depth 15 - Residual inertia-fixed line and reduction of the Frobenius scalar
ResidualGaloisRep.exists_finrank_inertiaFixed_eq_one_and_frobenius_sub_smul_mem_of_isEquiv_residual_of_stableLine2 below · depth 15 - λ-adic representation attached to a weight-two eigenform
CuspForm.IsEigenformWith.exists_galoisRepAdic_charpoly_frobenius_eq_and_isUnramifiedAt1,478 below · depth 16 - Inertia eigenvalue 1 at q when v_q(M)=v_q(condε)=1
CuspForm.IsEigenformWith.isRoot_charpoly_one_of_mem_inertiaSubgroupIn_of_factorization_eq_one_of_conductor_factorization_eq_one5,306 below · depth 16 - Local–global compatibility at a Taylor–Wiles prime, pointwise form
CuspForm.TWLevel.HeckeRing.exists_basis_inertia_apply_eq_diamond_smul_of_algHom6,362 below · depth 16 - Galois representation attached to a point of the Taylor–Wiles Hecke ring
CuspForm.TWLevel.HeckeRing.exists_galoisRepAdic_of_algHom1,561 below · depth 16 - Unipotent inertia at the auxiliary prime over T_Q
CuspForm.TWLevel.HeckeRing.isUnipotentOnInertiaAt_of_auxPrime3,287 below · depth 16 - Carayol descent for a jointly faithful family of T-algebras
GaloisRepAdic.exists_baseChangeAlong_isEquiv_of_jointly_injective30 below · depth 16 - Unramifiedness descends along a jointly injective family of points
GaloisRepAdic.isUnramifiedAt_of_forall_point0 below · depth 16 - Unramifiedness passes to the residual representation
GaloisRepAdic.isUnramifiedAt_residual0 below · depth 16 - Adic traces determined by Frobenius traces outside S
GaloisRepAdic.trace_eq_of_trace_frobenius_eq17 below · depth 16 - Inertia at ℓ ∤ qM'λ acts trivially on T_λ(Jac)
ModularCurve.FullLevel.tateGal_eq_one_of_mem_inertiaSubgroupIn974 below · depth 16 - Inertia at a Taylor–Wiles prime exactly dividing the level
CuspForm.IsEigenformWith.exists_basis_inertia_apply_eq_smul_of_dvd_of_not_sq_dvd_of_dvd_sub_one_of_residual_isAbsolutelyIrreducible6,320 below · depth 17 - Newform λ-adic representation with inertia eigenvalue 1 at q ‖ M
CuspForm.IsPrimitiveForm.exists_galoisRepAdic_charpoly_frobenius_eq_and_isRoot_charpoly_one_of_dvd_of_factorization_eq_conductor_factorization_of_not_sq_dvd5,302 below · depth 17 - Unramifiedness at ℓ is inherited by pointwise products
GaloisAction.isUnramifiedAt_of_eq_mul0 below · depth 17 - Unramifiedness descends along injective equivariant maps
GaloisAction.isUnramifiedAt_of_injective_of_map_apply0 below · depth 17 - Triviality of inertia on a product of Galois modules
GaloisAction.isUnramifiedAt_pi0 below · depth 17 - Wild inertia at q acts trivially under unipotent reduction
GaloisRepAdic.apply_eq_one_of_mem_inertiaSubgroupIn_of_wild_of_residual_isUnipotentOnInertiaAt2 below · depth 17 - Eisenstein Frobenius traces force a reducible residual representation
GaloisRepAdic.eisensteinTrace_not_isAbsolutelyIrreducible_residual24 below · depth 17 - Carayol descent of Galois representations to T, semi-local form
GaloisRepAdic.exists_baseChangeAlong_isEquiv_of_forall_trace_eq3 below · depth 17 - Chebotarev spreading of a Frobenius quadratic relation
GaloisRepAdic.exists_quadraticRelation_forall_of_frobenius26 below · depth 17 - Finite freeness and base-changed actions on T_λ(Jac(q,M'))
ModularCurve.FullLevel.exists_galoisRep_isAdicContinuous_heckeRep_gl2Rep_baseChange_tateModule_jac303 below · depth 17 - Adic Galois representation from a Hecke character on J₁(M)
ModularCurve.exists_galoisRepAdic_charpoly_frobenius_of_heckeDiamondChar1,377 below · depth 17 - Eichler–Shimura representation attached to a Hecke character
ModularCurve.exists_galoisRepAdic_charpoly_frobenius_of_heckeDiamondChar_tateModule_quotient1,377 below · depth 17 - Absolutely irreducible residual representations are not Eisenstein
ResidualGaloisRep.not_isAbsolutelyIrreducible_of_charpoly_frobenius_eisenstein46 below · depth 17 - Frobenius at q for eigenforms new at q
CuspForm.IsEigenformWith.charpoly_eq_of_isFrobeniusAt_of_not_dvd_conductor_of_not_eigenpacketOccursAt_div4,078 below · depth 18 - λ-adic representation of a weight-two eigenform on Γ₁(M)
CuspForm.IsEigenformWith.exists_galoisRepAdic_charpoly_frobenius_eq_tateModule_jOne_quotient1,478 below · depth 18 - Inertia eigenlines at q ‖ M dividing the nebentypus conductor
CuspForm.IsEigenformWith.exists_linearIndependent_inertia_apply_eq_smul_of_dvd_of_not_sq_dvd_of_dvd_conductor_of_residual_isAbsolutelyIrreducible5,330 below · depth 18 - Unramified at q with a_q a Frobenius eigenvalue
CuspForm.IsEigenformWith.inertia_eq_one_and_isRoot_charpoly_of_eigenpacketOccursAt_div1,517 below · depth 18 - λ-adic representation of a weight-two eigenform at a prescribed reduction
CuspForm.IsNormalizedEigenform.exists_galoisRepAdic_charpoly_frobenius_eq_of_ringHom_integralClosure1,338 below · depth 18 - Determinant on inertia at q from Frobenius determinants
GaloisRepAdic.det_eq_of_mem_inertiaSubgroupIn_of_det_frobenius_eq_mul26 below · depth 18 - Traces of an adic Galois representation are locally constant modulo J
GaloisRepAdic.exists_intermediateField_trace_mul_sub_trace_mem0 below · depth 18 - Adic Galois representation attached to a Hecke character of J₁(M)
ModularCurve.exists_galoisRepAdic_charpoly_frobenius_and_inertia_mul_eq_zero_and_hecke_frobenius_mul_inertia_eq_zero_of_heckeDiamondChar_of_dvd_of_not_sq_dvd_of_le_div5,207 below · depth 18 - Eichler–Shimura: λ-adic representations of a weight-two eigenform
CuspForm.IsNormalizedEigenform.exists_galoisRepAdic_charpoly_frobenius_eq_of_isMaximal1,335 below · depth 19 - Inertia-fixed and nebentypus lines at q exactly dividing M
CuspForm.IsPrimitiveForm.exists_galoisRepAdic_linearIndependent_inertia_apply_eq_smul_of_dvd_of_not_sq_dvd_of_dvd_conductor5,319 below · depth 19 - Unramifiedness at q from inertia-invariant characteristic polynomials
GaloisRepAdic.apply_eq_one_of_mem_inertiaSubgroupIn_of_charpoly_mul_eq_of_ne3 below · depth 19 - Frobenius charpoly at a prime exactly dividing the level
GaloisRepAdic.charpoly_eq_of_isFrobeniusAt_of_isPrimitiveForm_of_dvd_of_not_sq_dvd_of_not_dvd_conductor4,077 below · depth 19 - Flatness at p via an equivariant quotient of a Tate module
GaloisRepAdic.isFlatAt_of_surjective_tateModule_of_forall_exists_finiteFlat_pi_torsion3 below · depth 19 - Ordinary line at p ‖ M for a weight-two primitive form
CuspForm.IsPrimitiveForm.exists_galoisRepAdic_ordinaryLine_frobenius_sub_qCoeff_smul_mem_of_dvd_of_not_sq_dvd_of_not_dvd_conductor3,533 below · depth 20 - Ordinary line of the λ-adic representation of a primitive form
CuspForm.IsPrimitiveForm.exists_galoisRepAdic_ordinaryLine_frobenius_sub_unitRoot_smul_mem_of_not_dvd2,337 below · depth 20 - Determinant at a Frobenius above q from a congruent prime
GaloisRepAdic.det_eq_mul_of_isFrobeniusAt_of_det_frobenius_eq_mul_of_not_dvd_conductor25 below · depth 20 - Inertia acts commutatively when 1 is an eigenvalue
GaloisRepAdic.rho_mul_comm_of_mem_inertiaSubgroupIn_of_forall_isRoot_charpoly2 below · depth 20