Definitions/Def_CerednikDrinfeld_ClassSetGraph.lean
Class sets, Hecke matrices and degeneracy data on quaternion class sets
Throughout, a,b\in\mathbb{Q} and \mathbb{H}=\mathbb{H}[\mathbb{Q},a,b]; for an open-ish subgroup U\le(\mathbb{H}\otimes_\mathbb{Q}\mathbb{A}_f)^\times the class set ClassSet U is the double coset quotient of (\mathbb{H}\otimes_{\mathbb{Q}}\mathbb{A}_f)^\times by the image of the diagonal \mathbb{H}^\times on the left and U on the right, and x.out denotes a chosen representative idele of a class x. For a \mathbb{Z}-submodule R\subseteq\mathbb{H} and an idele n, meetOrder R n is the intersection R\cap\mathrm{conjByFiniteIdele}(R,n), the latter being the lattice of elements of \mathbb{H} whose image under z\mapsto z\otimes 1 lies in n\,\widehat{R}\,n^{-1}, where \widehat{R} is the adelic box of R. The helpers classSetForget and classSetShift send a class to the class of its chosen representative for another group U', resp. to the class of x_{\mathrm{out}}\,n. Weights are arithmetic: unitWeight Λ is the cardinality of \{u: \mathrm{IsUnitOf}\ \Lambda\ u\} divided by 2 in natural division and sent into \mathbb{N}^{+} (so the value 0 becomes 1), and classWeight U Λ x is unitWeight of \mathrm{conjByFiniteIdele}(\Lambda,x_{\mathrm{out}}). classSetHeckeMatrix U T is the integer matrix whose (i,j) entry is \mathrm{heckeKernel}\,U\,T\,j\,i, i.e. the number of cosets hU with h\in T and [x_{j,\mathrm{out}}h]=i — the transpose of the incidence kernel. Two Hecke sets cut out of the \ell-th prime Hecke set are defined: uHeckeSet R n q, the h\in\mathrm{primeHeckeSet}(\mathrm{meetOrder}\,R\,n)\,q with h conjugating n\widehat R n^{-1} to \widehat R and h\widehat R h^{-1}\neq n\widehat R n^{-1}; and levelHeckeUSet Λ O ℓ, the h\in\mathrm{primeHeckeSet}\,O\,\ell with h\widehat O h^{-1}\neq\widehat O and \widehat O\not\le h\widehat\Lambda h^{-1}. From these, classSetDegeneracyData R n packages the two maps ClassSet (stabiliser (meetOrder R n)) → ClassSet (stabiliser R), namely x\mapsto[x_{\mathrm{out}}] and x\mapsto[x_{\mathrm{out}}n], together with the weight function classWeight; classSetEdgeHecke N q Λ R n ℓ and classSetVertexHecke N Λ R ℓ are the corresponding Hecke matrices, chosen by a three-way case split (\ell=q, \ell\mid N, else) resp. a two-way split. Finally ClassSetHeckeLaws is the conjunction of four assertions — commutation of the edge matrices among themselves, of the vertex matrices among themselves, compatibility of the edge matrices with both degeneracy pushforwards for \ell\neq q, and stability of the joint kernel — and classSetHeckeData is a total HeckeData structure over classSetDegeneracyData R n with bad set \{q\}: it uses the above matrices when ClassSetHeckeLaws holds, and the zero matrices otherwise.
Relation to Mathlib
Built on Mathlib's rational quaternion algebras, finite adele rings and double coset quotients; Mathlib has no notion of quaternionic class sets, adelic Hecke correspondences or the degeneracy/Hecke data structures used here, which are the project's own.
Where it is used
These data feed the Čerednik–Drinfeld description of the component group of the Jacobian of a Shimura curve in terms of class sets of Eichler orders in a definite quaternion algebra, with the edge and vertex Hecke matrices modelling the action on the dual graph; this component-group input is what drives the level-lowering step for the Frey curve.
References
- K. A. Ribet, On modular representations of \mathrm{Gal}(\overline{\mathbb{Q}}/\mathbb{Q}) arising from modular forms, Inventiones Mathematicae 100 (1990), 431–476
- M.-F. Vignéras, Arithmétique des algèbres de quaternions, Lecture Notes in Mathematics 800, Springer, 1980
References are suggested automatically and have not been individually verified.
English text generated automatically from the Lean source; the Lean statement is authoritative.
- 113 lines
- 13 declarations
- used in the statements of 393 theorems and imported by 400 proofs
- imports 2 definition modules
Source file: Definitions/Def_CerednikDrinfeld_ClassSetGraph.lean
Imported by
- no other definition module
Declarations
- def
CerednikDrinfeld.meetOrder - def
CerednikDrinfeld.classSetForget - def
CerednikDrinfeld.classSetShift - def
CerednikDrinfeld.unitWeight - def
CerednikDrinfeld.classWeight - def
CerednikDrinfeld.classSetHeckeMatrix - def
CerednikDrinfeld.uHeckeSet - def
CerednikDrinfeld.levelHeckeUSet - def
CerednikDrinfeld.classSetDegeneracyData - def
CerednikDrinfeld.classSetEdgeHecke - def
CerednikDrinfeld.classSetVertexHecke - def
CerednikDrinfeld.ClassSetHeckeLaws - def
CerednikDrinfeld.classSetHeckeData
Source
import Definitions.Def_QuaternionAlgebra_ClassSetHecke import Definitions.Def_CerednikDrinfeld_Ribbon set_option autoImplicit false open scoped TensorProduct Quaternion open IsDedekindDomain NumberField QuaternionAlgebra noncomputable section namespace CerednikDrinfeld variable {a b : ℚ} def meetOrder (R : Submodule ℤ ℍ[ℚ, a, b]) (n : (ℍ[ℚ, a, b] ⊗[ℚ] FiniteAdeleRing (𝓞 ℚ) ℚ)ˣ) : Submodule ℤ ℍ[ℚ, a, b] := R ⊓ Submodule.conjByFiniteIdele R n def classSetForget (U U' : Subgroup (ℍ[ℚ, a, b] ⊗[ℚ] FiniteAdeleRing (𝓞 ℚ) ℚ)ˣ) (x : ClassSet U) : ClassSet U' := ClassSet.mk U' x.out def classSetShift (U : Subgroup (ℍ[ℚ, a, b] ⊗[ℚ] FiniteAdeleRing (𝓞 ℚ) ℚ)ˣ) (n : (ℍ[ℚ, a, b] ⊗[ℚ] FiniteAdeleRing (𝓞 ℚ) ℚ)ˣ) (x : ClassSet U) : ClassSet U := ClassSet.mk U (x.out * n) def unitWeight (Λ : Submodule ℤ ℍ[ℚ, a, b]) : ℕ+ := Nat.toPNat' (Nat.card {u : ℍ[ℚ, a, b] // IsUnitOf Λ u} / 2) def classWeight (U : Subgroup (ℍ[ℚ, a, b] ⊗[ℚ] FiniteAdeleRing (𝓞 ℚ) ℚ)ˣ) (Λ : Submodule ℤ ℍ[ℚ, a, b]) (x : ClassSet U) : ℕ+ := unitWeight (Submodule.conjByFiniteIdele Λ x.out) def classSetHeckeMatrix (U : Subgroup (ℍ[ℚ, a, b] ⊗[ℚ] FiniteAdeleRing (𝓞 ℚ) ℚ)ˣ) (T : Set (ℍ[ℚ, a, b] ⊗[ℚ] FiniteAdeleRing (𝓞 ℚ) ℚ)ˣ) : Matrix (ClassSet U) (ClassSet U) ℤ := Matrix.of fun i j => heckeKernel U T j i def uHeckeSet (R : Submodule ℤ ℍ[ℚ, a, b]) (n : (ℍ[ℚ, a, b] ⊗[ℚ] FiniteAdeleRing (𝓞 ℚ) ℚ)ˣ) (q : ℕ) : Set (ℍ[ℚ, a, b] ⊗[ℚ] FiniteAdeleRing (𝓞 ℚ) ℚ)ˣ := {h | h ∈ primeHeckeSet (meetOrder R n) q ∧ Submodule.conjByFiniteIdele (Submodule.conjByFiniteIdele R n) h = R ∧ Submodule.conjByFiniteIdele R h ≠ Submodule.conjByFiniteIdele R n} def levelHeckeUSet (Λ O : Submodule ℤ ℍ[ℚ, a, b]) (ℓ : ℕ) : Set (ℍ[ℚ, a, b] ⊗[ℚ] FiniteAdeleRing (𝓞 ℚ) ℚ)ˣ := {h | h ∈ primeHeckeSet O ℓ ∧ Submodule.conjByFiniteIdele O h ≠ O ∧ ¬ O ≤ Submodule.conjByFiniteIdele Λ h} def classSetDegeneracyData (R : Submodule ℤ ℍ[ℚ, a, b]) (n : (ℍ[ℚ, a, b] ⊗[ℚ] FiniteAdeleRing (𝓞 ℚ) ℚ)ˣ) : DegeneracyData (ClassSet (Submodule.finiteIdeleStabilizer (meetOrder R n))) (ClassSet (Submodule.finiteIdeleStabilizer R)) where a := classSetForget _ _ b x := ClassSet.mk _ (x.out * n) w := classWeight _ (meetOrder R n) def classSetEdgeHecke (N q : ℕ) (Λ R : Submodule ℤ ℍ[ℚ, a, b]) (n : (ℍ[ℚ, a, b] ⊗[ℚ] FiniteAdeleRing (𝓞 ℚ) ℚ)ˣ) (ℓ : Nat.Primes) : Matrix (ClassSet (Submodule.finiteIdeleStabilizer (meetOrder R n))) (ClassSet (Submodule.finiteIdeleStabilizer (meetOrder R n))) ℤ := if (ℓ : ℕ) = q then classSetHeckeMatrix _ (uHeckeSet R n q) else if (ℓ : ℕ) ∣ N then classSetHeckeMatrix _ (levelHeckeUSet Λ (meetOrder R n) ℓ) else classSetHeckeMatrix _ (primeHeckeSet (meetOrder R n) ℓ) def classSetVertexHecke (N : ℕ) (Λ R : Submodule ℤ ℍ[ℚ, a, b]) (ℓ : Nat.Primes) : Matrix (ClassSet (Submodule.finiteIdeleStabilizer R)) (ClassSet (Submodule.finiteIdeleStabilizer R)) ℤ := if (ℓ : ℕ) ∣ N then classSetHeckeMatrix _ (levelHeckeUSet Λ R ℓ) else classSetHeckeMatrix _ (primeHeckeSet R ℓ) section Laws variable (N q : ℕ) [Fact q.Prime] (Λ R : Submodule ℤ ℍ[ℚ, a, b]) (n : (ℍ[ℚ, a, b] ⊗[ℚ] FiniteAdeleRing (𝓞 ℚ) ℚ)ˣ) [Fintype (ClassSet (Submodule.finiteIdeleStabilizer (meetOrder R n)))] [Fintype (ClassSet (Submodule.finiteIdeleStabilizer R))] [DecidableEq (ClassSet (Submodule.finiteIdeleStabilizer R))] def ClassSetHeckeLaws : Prop := (∀ ℓ ℓ' : Nat.Primes, Commute (classSetEdgeHecke N q Λ R n ℓ) (classSetEdgeHecke N q Λ R n ℓ')) ∧ (∀ ℓ ℓ' : Nat.Primes, Commute (classSetVertexHecke N Λ R ℓ) (classSetVertexHecke N Λ R ℓ')) ∧ (∀ ℓ : Nat.Primes, ℓ ∉ ({⟨q, Fact.out⟩} : Finset Nat.Primes) → ∀ i : Fin 2, ∀ x : ClassSet (Submodule.finiteIdeleStabilizer (meetOrder R n)) → ℤ, jointDelta (classSetDegeneracyData R n) i ((classSetEdgeHecke N q Λ R n ℓ).mulVecLin x) = (classSetVertexHecke N Λ R ℓ).mulVecLin (jointDelta (classSetDegeneracyData R n) i x)) ∧ (∀ ℓ : Nat.Primes, ∀ x : ClassSet (Submodule.finiteIdeleStabilizer (meetOrder R n)) → ℤ, (∀ i, jointDelta (classSetDegeneracyData R n) i x = 0) → ∀ i, jointDelta (classSetDegeneracyData R n) i ((classSetEdgeHecke N q Λ R n ℓ).mulVecLin x) = 0) open Classical in def classSetHeckeData : HeckeData (classSetDegeneracyData R n) := if h : ClassSetHeckeLaws N q Λ R n then { T := classSetEdgeHecke N q Λ R n Tv := classSetVertexHecke N Λ R comm := h.1 commv := h.2.1 S := {⟨q, Fact.out⟩} good_equivariant := h.2.2.1 kernel_stable := h.2.2.2 } else { T := 0 Tv := 0 comm := fun _ _ => Commute.refl 0 commv := fun _ _ => Commute.refl 0 S := {⟨q, Fact.out⟩} good_equivariant := fun _ _ i x => by simp only [Pi.zero_apply, LinearMap.zero_apply, map_zero] kernel_stable := fun _ x _ i => by simp only [Pi.zero_apply, LinearMap.zero_apply, map_zero] } end Laws end CerednikDrinfeld end
Statements phrased using this module (393)
- Class-set Hecke laws for an Eichler order and its meet order
CerednikDrinfeld.classSetHeckeLaws_of_isEichlerOrder_meetOrder47 below · depth 15 - Two-level Deuring transport of class sets to supersingular places
CerednikDrinfeld.exists_equiv_classSet_ssPlaces_degeneracy_hecke_comm1,356 below · depth 15 - Two-place p-torsion datum from Čerednik–Drinfeld over class-set graphs
CerednikDrinfeld.exists_twoPlaceTorsionDatum_laws_classSet_of_squarefree_of_six_mul_dvd_of_neZero10,428 below · depth 15 - Matching class-set Hecke data with supersingular Hecke data
CerednikDrinfeld.nonempty_matching_classSetHeckeData_heckeData1 below · depth 15 - Atkin–Lehner idèle raising an Eichler order to level Nq
QuaternionAlgebra.IsEichlerOrder.exists_finiteIdele_meetOrder_isEichlerOrder_mul_of_not_dvd30 below · depth 15 - Right translation by n corresponds to Atkin–Lehner on supersingular places
CerednikDrinfeld.autOnPlaces_eq_of_isAtkinLehnerLevelAut_of_forall_toValuationSubring_eq_comap_moduliPlace575 below · depth 16 - Eichler class set bijects with level-N supersingular places
CerednikDrinfeld.exists_classSet_equiv_ssPlaces_forall_toValuationSubring_eq_comap_moduliPlace_ker726 below · depth 16 - Shimura curve model with toric uniformisations at q and q'
CerednikDrinfeld.exists_shimuraCurveModel_goodReduction_and_toricUniformization_pair_of_six_mul_dvd_of_neZero10,423 below · depth 16 - Degeneracy pushforwards intertwine edge and vertex Hecke matrices away from q
CerednikDrinfeld.jointDelta_classSetEdgeHecke_mulVecLin_eq_classSetVertexHecke_mulVecLin_jointDelta_of_ne20 below · depth 16 - U_q preserves the joint kernel of the class-set degeneracy maps
CerednikDrinfeld.jointDelta_classSetEdgeHecke_mulVecLin_eq_zero_of_forall_jointDelta_eq_zero_of_mem_primeHeckeSet39 below · depth 16 - Bi-invariance of the level Hecke set under the idelic stabiliser
CerednikDrinfeld.mul_mem_levelHeckeUSet_and_mul_mem_levelHeckeUSet_of_mem_finiteIdeleStabilizer5 below · depth 16 - Bi-invariance of the mathcal U_q Hecke set under stabiliser units
CerednikDrinfeld.mul_mem_uHeckeSet_and_mul_mem_uHeckeSet_of_mem_finiteIdeleStabilizer_meetOrder5 below · depth 16 - Degeneracy inclusion is compatible with the two class-set dictionaries
CerednikDrinfeld.restrictAlong_levelAlphaC_eq_of_forall_toValuationSubring_eq_comap_moduliPlace_of_prime513 below · depth 16 - Frobenius matrix on supersingular places equals the prime Hecke matrix
CerednikDrinfeld.ssFrobMatrixC_apply_eq_classSetHeckeMatrix_primeHeckeSet_of_forall_toValuationSubring_eq_comap_moduliPlace528 below · depth 16 - Supersingular U_ℓ matrix equals class-set Hecke matrix, ℓ ∣ N
CerednikDrinfeld.ssHeckeMatrixC_apply_eq_classSetHeckeMatrix_levelHeckeUSet_of_dvd_of_forall_toValuationSubring_eq_comap_moduliPlace_of_five_le1,082 below · depth 16 - Supersingular Hecke matrix equals the Brandt matrix at ℓ
CerednikDrinfeld.ssHeckeMatrixC_apply_eq_classSetHeckeMatrix_primeHeckeSet_of_forall_toValuationSubring_eq_comap_moduliPlace593 below · depth 16 - Place width equals class weight at level Nq
CerednikDrinfeld.toPNat_placeWidth_eq_classWeight_of_forall_toValuationSubring_eq_comap_moduliPlace623 below · depth 16 - Two descriptions of the Uₛ-set on the meet order agree
CerednikDrinfeld.uHeckeSet_eq_levelHeckeUSet_meetOrder_of_mem_primeHeckeSet34 below · depth 16 - Commuting class-set Hecke matrices at coprime indices
QuaternionAlgebra.IsOrder.commute_classSetHeckeMatrix_of_subset_primeHeckeSet_of_coprime4 below · depth 16 - Normalised connecting idele between two maximal orders
QuaternionAlgebra.exists_conjByFiniteIdele_eq_mem_finiteAdeleBox_smul_inv_mem_of_relIndex_eq30 below · depth 16 - Normal form n=n₀z for a level-Nq Eichler idele
QuaternionAlgebra.exists_eq_mul_mem_primeHeckeSet_mem_normalizer_meetOrder_eq_of_isEichlerOrder_meetOrder33 below · depth 16 - A q-sandwich bound for prime Hecke elements
QuaternionAlgebra.smul_inv_mul_mem_finiteAdeleBox_of_mem_primeHeckeSet_of_inv_mul_mul_mem3 below · depth 16 - Deuring correspondence: equal idèle classes iff isomorphic curves
CerednikDrinfeld.classSet_mk_eq_iff_nonempty_variableChange_of_kernelIdealSet115 below · depth 17 - Level-one Deuring correspondence with Brandt matrices
CerednikDrinfeld.exists_classSet_equiv_ssPlaces_one_kernelIdealSet_of_rationalEndSubring721 below · depth 17 - Kernel-ideal realisation of xg by an isogeny from W
CerednikDrinfeld.exists_dualPair_image_kernelIdealSet_comp_eq_star_smul_ofFiniteIdele_mul_of_mem_finiteAdeleBox100 below · depth 17 - Type-m sublattices of Iₓ and cyclic N-subgroups of W
CerednikDrinfeld.exists_equiv_ofFiniteIdele_mul_isAddCyclic_forall_ker_eq_of_kernelIdealSet_comp_eq194 below · depth 17 - Fibre of the R-class set over a Λ₁-class
CerednikDrinfeld.exists_fibre_classSetForget_equiv_quot_ofFiniteIdele_mul_of_eq_inf_conjByFiniteIdele12 below · depth 17 - Realisation of finite idele classes by cyclic N-isogenies
CerednikDrinfeld.exists_kernelIdealSet_realisation_isAddCyclic_ker_of_inf_conjByFiniteIdele173 below · depth 17 - Shimura curve model with period uniformisation at both q,q'
CerednikDrinfeld.exists_shimuraCurveModel_goodReduction_and_periodUniformization_pair_of_six_mul_dvd_of_neZero10,403 below · depth 17 - Unit translate of lattices iff isomorphic pairs (W,kerψ)
CerednikDrinfeld.exists_smul_eq_iff_exists_ker_eq_map_of_comp_eq_smul_id_of_card_ker_eq182 below · depth 17 - Kernel ideal of an intermediate quotient, coprime case
CerednikDrinfeld.image_kernelIdealSet_comp_eq_of_ker_eq_div_nsmul_ker_of_coprime11 below · depth 17 - Kernel-ideal transport along a Hecke idele at q
CerednikDrinfeld.image_kernelIdealSet_comp_eq_star_smul_ofFiniteIdele_mul_and_exists_dualPair_ker_eq_map_of_meetOrder_eq_of_conjByFiniteIdele_eq113 below · depth 17 - Frobenius twist shifts the kernel ideal by P
CerednikDrinfeld.image_kernelIdealSet_ratPointHom_frobenius_comp_eq_star_smul_ofFiniteIdele_mul50 below · depth 17 - Edge Hecke operator at q: b_* U_q = q a_*
CerednikDrinfeld.jointDelta_one_classSetEdgeHecke_mulVecLin_eq_natCast_smul_jointDelta_zero_of_mem_primeHeckeSet33 below · depth 17 - Degeneracy relation a_*U_q=T_qa_*-b_* on class sets
CerednikDrinfeld.jointDelta_zero_classSetEdgeHecke_mulVecLin_eq_classSetVertexHecke_mulVecLin_sub_of_mem_primeHeckeSet33 below · depth 17 - Units of a conjugated Eichler order count automorphisms preserving kerψ
CerednikDrinfeld.natCard_isUnitOf_conjByFiniteIdele_eq_natCard_rationalAut_map_ker_eq_of_image_kernelIdealSet_comp_eq216 below · depth 17 - Squared isogeny degree equals the relative index of kernel ideals
CerednikDrinfeld.natCard_ker_sq_eq_relIndex_ofFiniteIdele_mul_of_image_kernelIdealSet_comp_eq106 below · depth 17 - Brandt U_ℓ count at a prime dividing the level
CerednikDrinfeld.natCard_ofFiniteIdele_levelHeckeUSet_eq_natCard_subgroup_dualPair_ker_of_dvd_of_inf_conjByFiniteIdele191 below · depth 17 - Level-N Brandt count equals enhanced supersingular ℓ-isogeny count
CerednikDrinfeld.natCard_ofFiniteIdele_primeHeckeSet_eq_natCard_subgroup_dualPair_ker_of_inf_conjByFiniteIdele176 below · depth 17 - Degeneracy push-forwards intertwine the U_ℓ class-set matrices
CerednikDrinfeld.pushforward_classSetHeckeMatrix_levelHeckeUSet_meetOrder_mulVecLin18 below · depth 17 - Hecke matrices commute with both class-set degeneracy push-forwards
CerednikDrinfeld.pushforward_classSetHeckeMatrix_primeHeckeSet_meetOrder_mulVecLin11 below · depth 17 - Geometric Frobenius carries the place of (W,C) to that of its twist
ModularCurve.frobOnPlacesGeomLevel_toValuationSubring_eq_comap_moduliPlace_map_frobenius413 below · depth 17 - Twice the width of a moduli place counts level-preserving automorphisms
ModularCurve.two_mul_placeWidth_eq_natCard_rationalAut_map_eq_of_toValuationSubring_eq_comap_moduliPlace431 below · depth 17 - At a ramified prime the Hecke set is one coset
QuaternionAlgebra.IsEichlerOrder.exists_primeHeckeSet_eq_setOf_mul_of_isDefiniteRamifiedExactlyAt17 below · depth 17 - Ramified-prime Hecke idele: its lattice and commutation with the level
QuaternionAlgebra.IsMaximalOrder.mem_ofFiniteIdele_iff_and_ofFiniteIdele_mul_mul_eq_of_mem_primeHeckeSet_of_finiteAdeleEvalAt_eq_one13 below · depth 17 - Connecting idele of an Eichler order of level N has index N²
QuaternionAlgebra.relIndex_ofFiniteIdele_mul_eq_sq_of_mem_finiteAdeleBox_of_relIndex_inf_conjByFiniteIdele_eq38 below · depth 17 - Frobenius twist of a dual pair of isogenies
WeierstrassCurve.exists_frobenius_conjugate_dualPair_mem_rationalHomSet0 below · depth 17 - Vanishing q'-torsion transfers along a nonzero rational homomorphism
WeierstrassCurve.forall_smul_eq_zero_of_mem_rationalHomSet_of_forall_smul_eq_zero16 below · depth 17 - Lattice non-inclusion forces membership in the U_ℓ-set
CerednikDrinfeld.LevelU.mem_levelHeckeUSet_of_not_le39 below · depth 18 - A U_ℓ-step lattice never contains the level lattice
CerednikDrinfeld.LevelU.not_le_of_mem_levelHeckeUSet33 below · depth 18 - Level-lattice intersection along a U_ℓ-step
CerednikDrinfeld.LevelU.ofFiniteIdele_mul_inf_ofFiniteIdele_mul_eq_of_mem_levelHeckeUSet39 below · depth 18 - Conjugation by a q-Hecke idèle preserves the level-ℓ Hecke set
CerednikDrinfeld.conj_mem_levelHeckeUSet_iff_of_mem_primeHeckeSet14 below · depth 18 - Every finite idèle class arises as a kernel ideal
CerednikDrinfeld.exists_kernelIdealSet_eq_star_smul_ofFiniteIdele128 below · depth 18 - Kernel ideal of ψ∘χ as an adelic lattice
CerednikDrinfeld.exists_mem_finiteAdeleBox_image_kernelIdealSet_comp_eq_star_smul_ofFiniteIdele_mul_of_dualPair130 below · depth 18 - Iwahori U_q-elements times the q-idele lie in qwidehatR^×
CerednikDrinfeld.exists_mem_finiteIdeleStabilizer_mul_eq_natCast_smul_of_mem_uHeckeSet27 below · depth 18 - Čerednik–Drinfeld equivariant uniformisation at both ramified primes
CerednikDrinfeld.exists_shimuraCurveModel_goodReduction_and_equivariantUniformization_pair_of_six_mul_dvd_of_neZero10,401 below · depth 18 - One prime Hecke step in the kernel-ideal dictionary
CerednikDrinfeld.forall_exists_natCard_eq_image_setOf_comp_eq_star_smul_ofFiniteIdele_mul_of_mem_primeHeckeSet29 below · depth 18 - U_q is minus the shift on the ribbon kernel
CerednikDrinfeld.heckeKernelMap_classSetHeckeData_apply_eq_neg_comp_classSetShift43 below · depth 18 - Cyclic kernel versus primitivity of the idele g
CerednikDrinfeld.isAddCyclic_ker_iff_forall_inv_smul_not_mem_finiteAdeleBox_of_image_kernelIdealSet_comp_eq106 below · depth 18 - Primitivity of g forces cyclic kernel for ψ
CerednikDrinfeld.isAddCyclic_ker_of_forall_inv_smul_not_mem_finiteAdeleBox_of_image_kernelIdealSet_comp_eq26 below · depth 18 - Level-ℓ Hecke sets of nested orders agreeing at ℓ
CerednikDrinfeld.mem_levelHeckeUSet_iff_mem_levelHeckeUSet_of_forall_localBox_eq14 below · depth 18 - Prime-ℓ Hecke sub-ideals versus dual-pair ℓ-isogeny kernels
CerednikDrinfeld.natCard_subideal_primeHeckeSet_eq_natCard_subgroup_dualPair_of_kernelIdealSet168 below · depth 18 - Iwahori Hecke set meets exactly q cosets
CerednikDrinfeld.ncard_setOf_exists_mem_uHeckeSet_quotientMk_eq_of_mem_primeHeckeSet29 below · depth 18 - Iwahori cosets at q biject with Hecke cosets avoiding n
CerednikDrinfeld.uHeckeSet_quotient_bijOn_primeHeckeSet_quotient_diff_of_prime29 below · depth 18 - The U_q Hecke set is contained in the T_q Hecke set
CerednikDrinfeld.uHeckeSet_subset_primeHeckeSet1 below · depth 18 - Level-one supersingular Hecke entry counts ℓ-isogeny kernels
ModularCurve.ssHeckeMatrixC_one_apply_eq_natCard_subgroup_dualPair487 below · depth 18 - Primitivity of a normalised connecting idele at level N
QuaternionAlgebra.forall_inv_smul_not_mem_finiteAdeleBox_of_mem_of_smul_inv_mem_of_relIndex_inf_conjByFiniteIdele_eq33 below · depth 18 - Nine integrality relations for a prime Hecke idele at q
QuaternionAlgebra.inv_mul_mem_finiteAdeleBox_and_smul_mul_mem_of_mem_primeHeckeSet_of_conjByFiniteIdele_meetOrder_eq22 below · depth 18 - Kernel ideal of Frobenius is the prime above q'
CerednikDrinfeld.exists_injective_mem_rationalHomSet_kernelIdealSet_eq_nrd_dvd28 below · depth 19 - Quotient-graph presentation of the Mumford side at q'
CerednikDrinfeld.exists_quotientPresentation_classSet_hecke_of_descentIntertwining_one_zero3,953 below · depth 19 - Quotient-graph presentation at q with class set and Hecke
CerednikDrinfeld.exists_quotientPresentation_classSet_hecke_of_descentIntertwining_zero_one3,951 below · depth 19 - Shimura curve model, Hecke tower and Čerednik interchange pair
CerednikDrinfeld.exists_shimuraCurveModel_heckeTower_and_interchangeData_pair_of_six_mul_dvd_of_neZero10,249 below · depth 19 - Symmetry group with compatible semilinear actions over q'
CerednikDrinfeld.exists_symmetryGroup_semilinearAction_invariantFieldOf_of_descentIntertwining_one_zero43 below · depth 19 - Symmetry group of the Čerednik–Drinfeld tower at q
CerednikDrinfeld.exists_symmetryGroup_semilinearAction_invariantFieldOf_of_descentIntertwining_zero_one39 below · depth 19 - Invariant fields of the level groups at q' are curves
CerednikDrinfeld.isCurveOver_invariantFieldOf_levelGroups_of_descentIntertwining_one_zero3,838 below · depth 19 - Mumford fields of the level groups are curves over C
CerednikDrinfeld.isCurveOver_invariantFieldOf_levelGroups_of_descentIntertwining_zero_one3,838 below · depth 19 - Exactly q local cosets for the prime Hecke set at q
CerednikDrinfeld.ncard_setOf_quotientMk_stabilizer_localBox_meetOrder_eq_of_mem_primeHeckeSet25 below · depth 19 - Iwahori U_q-cosets as unit translates of an Atkin–Lehner idele
CerednikDrinfeld.uHeckeSet_cosets_eq_finiteIdeleStabilizer_mul_of_conjByFiniteIdele_meetOrder_eq40 below · depth 19 - Level-group vertex stabilisers have order prime to q'
CerednikDrinfeld.valuation_natCard_stabilizer_vertex_levelGroups_eq_one_of_descentIntertwining_one_zero3,792 below · depth 19 - Vertex stabilisers of the level groups have order prime to q
CerednikDrinfeld.valuation_natCard_stabilizer_vertex_levelGroups_eq_one_of_descentIntertwining_zero_one3,792 below · depth 19 - Integral right ideals split off a power of the ramified prime
QuaternionAlgebra.IsMaximalOrder.exists_ofFiniteIdele_eq_inf_setOf_le_padicValRat_nrd14 below · depth 19 - Vélu quotient by a finite subgroup and its kernel ideal
WeierstrassCurve.exists_mem_rationalHomSet_ker_eq_and_forall_comp_and_kernelIdealSet_eq81 below · depth 19 - U_ℓ storey of the class-set tower at ℓ ∣ N
CerednikDrinfeld.CSTower.isEichlerOrder_meetOrder_and_exists_storey_of_mem_levelHeckeUSet_of_evalAt_eq_one63 below · depth 20 - Level-ℓ storey of the class-set tower for a given shift
CerednikDrinfeld.CSTower.isEichlerOrder_meetOrder_and_exists_storey_of_mem_primeHeckeSet_of_evalAt_eq_one43 below · depth 20 - Meet order at an admissible T_ℓ-shift is Eichler of level Nℓ
CerednikDrinfeld.CSTower.isEichlerOrder_meetOrder_of_finiteIdeleDiagonal_mul_inv_mem_primeHeckeSet_meetOrder42 below · depth 20 - Atkin–Lehner relations for the Čerednik level groups
CerednikDrinfeld.CosetGraph.atkinLehner_relations_levelGroups_place38 below · depth 20 - Away units of R∩ s_f̂ R s_f⁻¹ at a near-global idele
CerednikDrinfeld.CosetGraph.awayUnits_meetOrder_eq_inf_map_conj_of_finiteAdeleEvalAt_eq27 below · depth 20 - Class-set dictionary for the Bruhat–Tits quotient at r
CerednikDrinfeld.CosetGraph.exists_quot_equiv_classSet_shift_forget_of_mumfordSideFrame3,794 below · depth 20 - Mumford frame at r: tame stabilisers, finite quotients, class sets
CerednikDrinfeld.CosetGraph.finite_stabilizer_and_finite_quot_and_exists_equiv_classSet_of_mumfordSideFrame3,783 below · depth 20 - Local shape at v of a normalising prime Hecke element
CerednikDrinfeld.CosetGraph.mul_self_mem_level_and_not_mem_level_and_mem_inf_conj_iff_of_mem_primeHeckeSet21 below · depth 20 - Index of Γ∩ sΓ s⁻¹ equals the Hecke arrow degree
CerednikDrinfeld.CosetGraph.relIndex_inf_map_conj_eq_arrowDegree_of_hecke95 below · depth 20 - Index of Γ∩ sΓ s⁻¹ equals the degeneracy degree
CerednikDrinfeld.CosetGraph.relIndex_inf_map_conj_eq_arrowDegree_of_hecke_one_zero96 below · depth 20 - Index of Γ∩ s⁻¹Γ s in Γ equals the Hecke arrow degree
CerednikDrinfeld.CosetGraph.relIndex_inf_map_conj_inv_eq_arrowDegree_of_hecke97 below · depth 20 - Index of Γ∩ s⁻¹Γ s equals degeneracy degree
CerednikDrinfeld.CosetGraph.relIndex_inf_map_conj_inv_eq_arrowDegree_of_hecke_one_zero98 below · depth 20 - Commuting Atkin–Lehner involutions from Čerednik descent data
CerednikDrinfeld.HeckeTower.atkinLehner_involutive_comm_galois_of_descentIntertwining_one_zero39 below · depth 20 - Degeneracy maps intertwine Galois and Atkin–Lehner actions
CerednikDrinfeld.HeckeTower.smul_phi_eq_phi_smul_of_descentIntertwining_one_zero39 below · depth 20 - Realisation-independent permutation actions on quotients of the Bruhat–Tits tree
CerednikDrinfeld.exists_perm_quotVert_quotEdge_realisation_independent_of_descentIntertwining_one_zero3,952 below · depth 20 - Realisation-independent permutation actions on Bruhat–Tits tree quotients
CerednikDrinfeld.exists_perm_quotVert_quotEdge_realisation_independent_of_descentIntertwining_zero_one3,950 below · depth 20 - Čerednik interchange at q and q' for X^{qq'}₀(N)
CerednikDrinfeld.exists_shimuraCurveModel_heckeTower_and_cerednikInterchange_pair_of_six_mul_dvd_of_neZero10,236 below · depth 20 - Global norm-ℓ element realising the U-Hecke idele at ℓ ∣ N
CerednikDrinfeld.exists_units_finiteIdele_levelHeckeUSet_meetOrder_eq_tmul_one_of_dvd75 below · depth 20 - Global quaternion of reduced norm ℓ away from q
CerednikDrinfeld.exists_units_finiteIdele_primeHeckeSet_meetOrder_eq_tmul_one_of_not_dvd45 below · depth 20 - Push-forward after pull-back is the class-set Hecke map at ℓ
CerednikDrinfeld.pushforward_pullback_eq_heckeKernelMap_of_mapE_comp_eq98 below · depth 20 - Iwahori U_q-cosets versus T_q-cosets for an Eichler order
CerednikDrinfeld.uHeckeSet_cosetDictionary_of_mem_primeHeckeSet24 below · depth 20 - Hecke set at the ramified prime is a single coset
QuaternionAlgebra.IsEichlerOrder.primeHeckeSet_eq_and_heckeKernel_eq_of_ramified18 below · depth 20 - Level-raising idele at a prime ℓ dividing N
CerednikDrinfeld.CSTower.exists_finiteIdeleDiagonal_mul_inv_mem_levelHeckeUSet_meetOrder_isEichlerOrder_of_dvd45 below · depth 21 - Meet order R∩ swidehat Rs⁻¹ is Eichler of level Nℓ
CerednikDrinfeld.CSTower.isEichlerOrder_meetOrder_of_finiteIdeleDiagonal_mul_inv_mem_levelHeckeUSet_meetOrder54 below · depth 21 - Away units of the meet order R∩ sRs⁻¹
CerednikDrinfeld.CosetGraph.awayUnits_meetOrder_finiteIdeleDiagonal_eq_inf_map_conj27 below · depth 21 - Coset graph quotient at r is the class-set degeneracy datum
CerednikDrinfeld.CosetGraph.exists_quotVert_equiv_classSet_and_quotEdge_equiv_classSet_of_isEichlerOrder3,743 below · depth 21 - Coset graph modulo r-units versus class-set degeneracy datum
CerednikDrinfeld.CosetGraph.exists_quotVert_equiv_classSet_and_quotEdge_equiv_classSet_of_isEichlerOrder_of_level3,754 below · depth 21 - Dart stabiliser order is half the unit count of the conjugated meet order
CerednikDrinfeld.CosetGraph.natCard_stabilizer_dart_eq_natCard_isUnitOf_conjByFiniteIdele_meetOrder_div_two26 below · depth 21 - Reversing a dart realises the class-set shift by n
CerednikDrinfeld.CosetGraph.quotEdge_symm_eq_classSetShift_of_forall_eq_classSet_mk29 below · depth 21 - Fixing the Δ-invariant field forces ρ(g)∈ρ(Δ)
CerednikDrinfeld.apply_mem_map_of_forall_smul_invariantFieldOf_eq_of_relIndex_ne_zero_of_frame3,899 below · depth 21 - Elements fixing the Mumford invariant field lie in ρ(Δ)
CerednikDrinfeld.apply_mem_map_of_forall_smul_invariantFieldOf_eq_of_relIndex_ne_zero_of_frame_one_zero3,899 below · depth 21 - Forgetful class-set map computed on idelic representatives
CerednikDrinfeld.classSetForget_mk_of_le0 below · depth 21 - Class of ̄ w x equals the varpi'-shift of x
CerednikDrinfeld.classSet_mk_eq_classSetShift_mk_of_finiteAdeleEvalAt_eq_mul_of_nrd_eq41 below · depth 21 - Single-place shift by s on the quaternionic class set
CerednikDrinfeld.classSet_mk_eq_mk_mul_of_finiteAdeleEvalAt_eq_inv_mul27 below · depth 21 - Čerednik descent intertwining: base level implies all levels
CerednikDrinfeld.descentIntertwining_of_base_one_zero3,911 below · depth 21 - Čerednik–Drinfeld descent intertwining: all levels from the base level
CerednikDrinfeld.descentIntertwining_of_base_zero_one3,910 below · depth 21 - Forget and shift degeneracy morphisms of class-set graphs, degree ℓ+1
CerednikDrinfeld.exists_finiteHom_classSetDegeneracyData_meetOrder_forget_and_shift_degTotal_eq_add_one40 below · depth 21 - Two degree-ℓ morphisms of class-set degeneracy data
CerednikDrinfeld.exists_finiteHom_classSetDegeneracyData_meetOrder_forget_and_shift_degTotal_eq_of_dvd67 below · depth 21 - Atkin–Lehner rigidity at a split Hecke prime
CerednikDrinfeld.exists_mul_self_eq_finiteIdeleDiagonal_mul_and_mem_finiteIdeleStabilizer_meetOrder_of_conjByFiniteIdele_mul_eq22 below · depth 21 - Čerednik interchange and Hecke tower for X^{qq'}₀(N)
CerednikDrinfeld.exists_shimuraCurveModel_heckeTower_and_cerednikInterchangeBase_pair_of_six_mul_dvd_of_neZero10,217 below · depth 21 - Oriented level-ℓ Hecke set is one double coset of ̂ R^×
CerednikDrinfeld.levelHeckeUSet_eq_doubleCoset_finiteIdeleStabilizer_of_dvd_of_squarefree52 below · depth 21 - Meet order with an idele trivial at v has the same local box
CerednikDrinfeld.localBox_meetOrder_eq_of_forall_finiteAdeleEvalAt_eq_one27 below · depth 21 - Completion at the ramified place is unchanged by meeting with a conjugate
CerednikDrinfeld.localBox_meetOrder_eq_of_isDefiniteRamifiedExactlyAt21 below · depth 21 - Local box of R ∩ n̂ R n⁻¹ at a place where n is a local unit
CerednikDrinfeld.localBox_meetOrder_eq_of_map_finiteAdeleEvalAt_mem_localBoxUnits27 below · depth 21 - Prime Hecke set at q meets exactly q+1 unit cosets
CerednikDrinfeld.natCard_setOf_exists_mem_primeHeckeSet_quotientMk_eq_eq_succ_of_prime17 below · depth 21 - Push–pull identity for U_ℓ on class-set edge divisors
CerednikDrinfeld.pushforward_comp_pullbackFun_eq_classSetHeckeMatrix_levelHeckeUSet_mulVec_of_dvd59 below · depth 21 - Push–pull along class-set degeneracy maps computes T_ℓ
CerednikDrinfeld.pushforward_comp_pullbackFun_eq_classSetHeckeMatrix_primeHeckeSet_mulVec_of_degTotal_eq28 below · depth 21 - Index ℓ of an idelic stabiliser of a meet order
CerednikDrinfeld.relIndex_finiteIdeleStabilizer_meetOrder_eq_of_mem_levelHeckeUSet_meetOrder_of_dvd53 below · depth 21 - Index ℓ of the stabiliser of a meet order in U_R
CerednikDrinfeld.relIndex_finiteIdeleStabilizer_meetOrder_eq_of_mem_levelHeckeUSet_meetOrder_of_mem_primeHeckeSet53 below · depth 21 - Index ℓ+1 for the stabiliser of a prime Hecke meet order
CerednikDrinfeld.relIndex_finiteIdeleStabilizer_meetOrder_eq_succ_of_mem_primeHeckeSet26 below · depth 21 - Atkin–Lehner idele at a ramified prime: involutive class-set shift
QuaternionAlgebra.IsEichlerOrder.exists_finiteIdele_primeHeckeSet_ramified_conjByFiniteIdele_eq_classSetShift_involutive23 below · depth 21 - Stability of the prime Hecke set under h↦ℓ̂ h⁻¹
QuaternionAlgebra.mem_primeHeckeSet_iff_finiteIdeleDiagonal_mul_inv_mem0 below · depth 21 - Fixing every coset-graph vertex forces a rational scalar
CerednikDrinfeld.CosetGraph.exists_coe_eq_smul_one_of_forall_smul_vert_eq12 below · depth 22 - Rational scalars that are products of Γ-conjugates lie in Γ
CerednikDrinfeld.CosetGraph.mem_of_eq_algebraMap_of_eq_mul_conj19 below · depth 22 - Rational scalars built from Γ and a conjugate lie in Γ
CerednikDrinfeld.CosetGraph.mem_of_eq_algebraMap_of_eq_mul_conj_one_zero19 below · depth 22 - Shift by a normalising idele acts by right multiplication
CerednikDrinfeld.classSetShift_mk_of_conjByFiniteIdele_eq27 below · depth 22 - Descent intertwining base above q' from an oriented moduli witness
CerednikDrinfeld.exists_descentIntertwiningBase_of_rigidOrientedModuliWitness_one_zero_of_two_mul_dvd_of_neZero9,893 below · depth 22 - Descent intertwining base at q from a rigid oriented moduli witness
CerednikDrinfeld.exists_descentIntertwiningBase_of_rigidOrientedModuliWitness_zero_one_of_two_mul_dvd_of_neZero9,892 below · depth 22 - Rigid oriented moduli witness, Eichler–Shimura relation, Hecke tower
CerednikDrinfeld.exists_shimuraCurveModel_rigidOrientedModuliWitness_heckeTower_of_six_mul_dvd_of_neZero6,271 below · depth 22 - Truncated norm-p idele lies in the prime Hecke set
CerednikDrinfeld.mem_primeHeckeSet_of_nrd_eq_of_forall_finiteAdeleEvalAt_eq17 below · depth 22 - Hecke set at a good prime is a single double coset
QuaternionAlgebra.primeHeckeSet_eq_doubleCoset_finiteIdeleStabilizer17 below · depth 22 - Good reduction outside Dp for the Shimura curve Jacobian
CerednikDrinfeld.ShimuraCurveModel.goodReductionOutside_of_rigidModuliWitness_heckeTower_of_two_mul_dvd1,616 below · depth 23 - Connectedness of the Eichler class-set graph
CerednikDrinfeld.classSet_eq_empty_or_eq_univ_of_forall_mem_iff_of_squarefree3,733 below · depth 23 - Čerednik descent datum at q' from a moduli tower witness
CerednikDrinfeld.exists_descentIntertwiningBase_of_moduliTowerWitness_one_zero_of_two_mul_dvd9,818 below · depth 23 - Descent intertwining datum at q from a moduli tower witness
CerednikDrinfeld.exists_descentIntertwiningBase_of_moduliTowerWitness_zero_one_of_two_mul_dvd9,817 below · depth 23 - Canonical model, moduli witness and Hecke tower for X₀^{qq'}(N)
CerednikDrinfeld.exists_shimuraCurveModel_rigidModuliWitness_heckeTower_of_six_mul_dvd_of_neZero6,040 below · depth 23 - Strong approximation at v from connectedness of the class-set graph
QuaternionAlgebra.exists_eq_finiteIdeleDiagonal_mul_mul_of_forall_classSet_eq_empty_or_eq_univ33 below · depth 23 - Čerednik–Drinfeld uniformisation of the coarse fake elliptic curve tower
CerednikDrinfeld.QM.IsCoarseModuli.exists_cerednikDrinfeld_uniformization_of_span_eq_of_geometricallyConnected_of_squarefree_of_isUnit_two_of_geometricallyConnected_tower_of_isUnit_three7,014 below · depth 24
… and 243 more statements (search for the module name to find them).