Definitions/Def_DrinfeldCurve_FunctionField.lean
Function field of the Drinfeld curve and its group action
Fix a natural number q and a field k. The coordinate ring CoordRing q k is the quotient of k[X_0,X_1] by the ideal generated by X_0X_1^q - X_0^qX_1 - 1, and drinfeldFunctionField q k is defined as FractionRing (CoordRing q k), i.e. the localisation of that quotient at its non-zero divisors; it is a field exactly when the coordinate ring is a domain, and in general it is the total ring of fractions. Under the standing assumptions that q is prime and that k is an algebra over the field GaloisField q 2 with q^2 elements, the module transports the coordinate-ring action to this fraction ring. Here hSubgroup q is the kernel of the character \mathrm{GL}_2(\mathbb{Z}/q)\times\mathbb{F}_{q^2}^{\times}\to\mathbb{F}_{q^2}^{\times}, (g,\zeta)\mapsto \det(g)\,\zeta^{q+1}, and hAction q k is its action on CoordRing q k by k-algebra automorphisms, where (g,\zeta) acts by the linear substitution of g in (X_0,X_1) followed by scaling both variables by the image of \zeta in k.
The definition hFunctionFieldAction q k is the monoid homomorphism from hSubgroup q to the group of k-algebra automorphisms of drinfeldFunctionField q k sending h to the unique extension of hAction q k h to fractions, via IsFractionRing.algEquivOfAlgEquiv; multiplicativity and preservation of the identity are part of the data. Three accompanying identities record its characterisation: hFunctionFieldAction_algebraMap says it agrees with hAction q k h on the image of the coordinate ring; hFunctionFieldAction_sl and hFunctionFieldAction_mu identify its values at the pairs (g,1) with g\in\mathrm{SL}_2(\mathbb{Z}/q) and at the pairs (1,\zeta) with \zeta^{q+1}=1 with the extensions of slAction q k g and muAction q k ζ respectively.
Relation to Mathlib
Mathlib has no Drinfeld curve; the curve, its coordinate ring and the group hSubgroup are the project's own, while the fraction ring and the extension of an algebra equivalence to fraction rings (FractionRing, IsFractionRing.algEquivOfAlgEquiv) are taken from Mathlib.
Where it is used
The action of hSubgroup q on the function field by k-algebra automorphisms is the basic datum from which the induced actions on places, divisors, degree-zero divisor classes and their torsion are obtained in later modules; the convention throughout is that the group acts on functions by pullback, so that geometric eigenvalues are inverted relative to this action.
References
- P. Deligne and G. Lusztig, Representations of reductive groups over finite fields, Annals of Mathematics 103 (1976), 103–161
References are suggested automatically and have not been individually verified.
English text generated automatically from the Lean source; the Lean statement is authoritative.
- 65 lines
- 5 declarations
- used in the statements of 30 theorems and imported by 39 proofs
- imports 1 definition modules
Source file: Definitions/Def_DrinfeldCurve_FunctionField.lean
Imports
Declarations
- abbrev
DrinfeldCurve.drinfeldFunctionField - def
DrinfeldCurve.hFunctionFieldAction - theorem
DrinfeldCurve.hFunctionFieldAction_algebraMap - theorem
DrinfeldCurve.hFunctionFieldAction_sl - theorem
DrinfeldCurve.hFunctionFieldAction_mu
Source
import Definitions.Def_DrinfeldCurve_CoordRing import Mathlib.RingTheory.Localization.FractionRing ↗ set_option autoImplicit false noncomputable section namespace DrinfeldCurve variable (q : ℕ) (k : Type) [Field k] abbrev drinfeldFunctionField : Type := FractionRing (CoordRing q k) variable [Fact q.Prime] [Algebra (GaloisField q 2) k] def hFunctionFieldAction : hSubgroup q →* (drinfeldFunctionField q k ≃ₐ[k] drinfeldFunctionField q k) where toFun h := IsFractionRing.algEquivOfAlgEquiv (hAction q k h) map_one' := by apply AlgEquiv.ext intro x have key : ((IsFractionRing.algEquivOfAlgEquiv (hAction q k 1) : drinfeldFunctionField q k ≃ₐ[k] drinfeldFunctionField q k) : drinfeldFunctionField q k →+* drinfeldFunctionField q k) = RingHom.id _ := by apply IsLocalization.ringHom_ext (nonZeroDivisors (CoordRing q k)) ext a simp [IsFractionRing.algEquivOfAlgEquiv_algebraMap] simpa using RingHom.congr_fun key x map_mul' g h := by apply AlgEquiv.ext intro x have key : ((IsFractionRing.algEquivOfAlgEquiv (hAction q k (g * h)) : drinfeldFunctionField q k ≃ₐ[k] drinfeldFunctionField q k) : drinfeldFunctionField q k →+* drinfeldFunctionField q k) = ((IsFractionRing.algEquivOfAlgEquiv (hAction q k g) : drinfeldFunctionField q k ≃ₐ[k] drinfeldFunctionField q k) : drinfeldFunctionField q k →+* drinfeldFunctionField q k).comp ((IsFractionRing.algEquivOfAlgEquiv (hAction q k h) : drinfeldFunctionField q k ≃ₐ[k] drinfeldFunctionField q k) : drinfeldFunctionField q k →+* drinfeldFunctionField q k) := by apply IsLocalization.ringHom_ext (nonZeroDivisors (CoordRing q k)) ext a simp [IsFractionRing.algEquivOfAlgEquiv_algebraMap, map_mul] simpa using RingHom.congr_fun key x theorem hFunctionFieldAction_algebraMap (h : hSubgroup q) (a : CoordRing q k) : hFunctionFieldAction q k h (algebraMap (CoordRing q k) (drinfeldFunctionField q k) a) = algebraMap (CoordRing q k) (drinfeldFunctionField q k) (hAction q k h a) := IsFractionRing.algEquivOfAlgEquiv_algebraMap (hAction q k h) a theorem hFunctionFieldAction_sl (g : Matrix.SpecialLinearGroup (Fin 2) (ZMod q)) : hFunctionFieldAction q k ⟨_, toGL_one_mem_hSubgroup q g⟩ = IsFractionRing.algEquivOfAlgEquiv (slAction q k g) := by rw [slAction_eq_hAction] rfl theorem hFunctionFieldAction_mu (ζ : rootsOfUnity (q + 1) (GaloisField q 2)) : hFunctionFieldAction q k ⟨_, one_mem_hSubgroup_of_mem q ζ⟩ = IsFractionRing.algEquivOfAlgEquiv (muAction q k ζ) := by rw [muAction_eq_hAction] rfl end DrinfeldCurve end
Statements phrased using this module (30)
- ℓ-power torsion of Pic⁰ of the Drinfeld curve
DrinfeldCurve.abelJacobiCard_drinfeldFunctionField963 below · depth 15 - The Drinfeld function field is a curve over k
DrinfeldCurve.isCurveOver_drinfeldFunctionField38 below · depth 15 - Quadratic relation for SL₂-equivariant maps into the Drinfeld Tate module
DrinfeldCurve.slEquivariant_quadratic_of_isCuspidalOfType_of_perfectField1,275 below · depth 15 - Iterated Frobenius endomorphism of the Drinfeld curve function field
DrinfeldCurve.exists_algHom_drinfeldFunctionField_apply_x_eq_pow2 below · depth 16 - Coefficient extension commutes with the ℓ-adic Drinfeld curve representation
DrinfeldCurve.exists_linearEquiv_rationalTateModule_baseChange_comp_eq0 below · depth 16 - Genus of the Drinfeld curve function field is q(q-1)/2
DrinfeldCurve.genusFF_drinfeldFunctionField113 below · depth 16 - Vanishing of ψ-twisted intertwiners over a perfect base field
DrinfeldCurve.intertwiningMap_twist_eq_zero_of_isCuspidalOfType_of_perfectField1,272 below · depth 16 - Constants of the Drinfeld function field are the base field
DrinfeldCurve.constantsAreBase_drinfeldFunctionField66 below · depth 17 - Twists by characters other than θ^{± 1} do not occur
DrinfeldCurve.intertwiningMap_twist_eq_zero_of_isCuspidalOfType_of_isAlgClosed1,248 below · depth 17 - Character of H on the Drinfeld curve's Tate module
DrinfeldCurve.cast_mul_trace_eq_natCard_restrictAlong_eq_smul_sub1,231 below · depth 18 - Dimensions of μ_{q+1}-eigenspaces on the Drinfeld curve
DrinfeldCurve.finrank_eigenspace_rootsOfUnity_rationalTateModule_eq1,237 below · depth 18 - Frobenius-type endomorphisms of the Drinfeld function field are integral
DrinfeldCurve.isIntegral_of_apply_x_eq_pow_of_apply_y_eq_pow0 below · depth 18 - Twisted place count on the Drinfeld curve at elliptic classes
DrinfeldCurve.natCard_place_restrictAlong_eq_smul_of_torus119 below · depth 18 - Twisted 𝔽_{q²}-forms of the Drinfeld curve function field
DrinfeldCurve.exists_isCurveOver_adjoin_range_eq_top_apply_hFunctionFieldAction_eq_pow47 below · depth 19 - Fixed places of a twisted q²-Frobenius on the Drinfeld curve
DrinfeldCurve.natCard_place_restrictAlong_eq_hFunctionFieldAction_smul117 below · depth 19 - Drinfeld curve: q³+1 places fixed by (-1)-twisted Frobenius
DrinfeldCurve.natCard_place_restrictAlong_eq_neg_one_smul116 below · depth 19 - Twisted Frobenius fixed places on the Drinfeld curve: N(1,η)=q+1
DrinfeldCurve.natCard_restrictAlong_eq_hFunctionFieldAction_one_smul_of_ne_neg_one115 below · depth 19 - Twisted Lefschetz trace formula on Pic⁰[ℓ^m] of the Drinfeld curve
DrinfeldCurve.trace_torsion_eq_sq_add_one_sub_natCard_restrictAlong_eq_smul1,208 below · depth 19 - Affine places of the Drinfeld curve are its k-points
DrinfeldCurve.affinePlaces_census115 below · depth 20 - The q+1 places at infinity of the Drinfeld curve
DrinfeldCurve.placesAtInfinity_census113 below · depth 20 - Transport of the Drinfeld function field along a constant-field isomorphism
DrinfeldCurve.exists_ringEquiv_drinfeldFunctionField_algebraMap_eq_and_hFunctionFieldAction_eq_of_algEquiv0 below · depth 21 - Genus of quotients of the Drinfeld curve by μ_{q+1}
DrinfeldCurve.two_mul_genusFF_fixedField_rootsOfUnity116 below · depth 25 - SL₂(𝔽_q) is transitive on places at infinity
DrinfeldCurve.exists_sl_hFunctionFieldAction_smul_eq_of_not_mem117 below · depth 26 - Invariants in the Drinfeld coordinate ring describe `quotField`
DrinfeldCurve.algebraMap_mem_quotField_iff_forall_muAction_eq_and_exists_of_mem_quotField0 below · depth 27 - Regularity at affine places forces membership in the coordinate ring
DrinfeldCurve.coe_algEquiv_mem_range_algebraMap_of_forall_place_quotField5 below · depth 27 - Freeness of the H-action at affine places of the Drinfeld curve
DrinfeldCurve.exists_eq_smul_one_of_comap_hFunctionFieldAction_eq_of_affine_of_sq_eq_one116 below · depth 27 - Functions on the quotient Drinfeld curve regular at all affine places
DrinfeldCurve.exists_muAction_eq_and_algebraMap_eq_of_mem_quotField_of_forall_place4 below · depth 27 - Fixed fields of μ_{q+1}-subgroups on the Drinfeld curve are curves over k
DrinfeldCurve.isCurveOver_fixedField_hFunctionFieldAction44 below · depth 27 - Blow-up chart of a local Drinfeld chart at a parameter
DrinfeldCurve.LocalChart.exists_algEquiv_coordRing_and_isDiscreteValuationRing_blowupChart_of_mem_maximalIdeal4 below · depth 32 - Special fibre of the Drinfeld blow-up chart
DrinfeldCurve.LocalChart.exists_isPrime_algEquiv_coordRing_blowupChart_quotient_of_mem_maximalIdeal2 below · depth 33