Definitions/Def_AlgebraicGeometry_SplitTorusMu.lean
Split tori and diagonalisable groups as spectra of group algebras
For a commutative ring S and natural numbers t, m, muCoord S t m is the group algebra S[(\mathbb{Z}/m)^{t}], realised as the additive monoid algebra of the additive group \mathrm{Fin}\,t \to \mathbb{Z}/m with coefficients in S, and torusCoord S t is S[\mathbb{Z}^{t}], the Laurent polynomial ring in t variables. Their spectra muScheme S t m and torusScheme S t are the split diagonalisable group \mu_{m}^{t} and the split torus \mathbb{G}_{m}^{t} over S (for m = 0 the two coincide, since \mathbb{Z}/0 = \mathbb{Z}), and muStr, torusStr are the morphisms to \operatorname{Spec} S obtained by applying \operatorname{Spec} to the structural algebra maps. Four morphisms are then named, each as \operatorname{Spec} of an explicit ring map: muToTorus, from the surjection S[\mathbb{Z}^{t}] \to S[(\mathbb{Z}/m)^{t}] reducing exponents coordinatewise modulo m; muIncl, for m \mid m', from the map S[(\mathbb{Z}/m')^{t}] \to S[(\mathbb{Z}/m)^{t}] induced by the coordinatewise reduction \mathbb{Z}/m' \to \mathbb{Z}/m; and muBaseChange, torusBaseChange, for a ring homomorphism \varphi : S \to S', from the coefficientwise extension of \varphi, so that they go from the S'-scheme to the S-scheme.
The remaining definitions package points. With S' an S-algebra, muPt (resp. torusPt) sends an S-algebra homomorphism \chi : S[(\mathbb{Z}/m)^{t}] \to S' (resp. S[\mathbb{Z}^{t}] \to S') to the pair consisting of \operatorname{Spec} \chi together with the proof that composing it with the structure morphism gives \operatorname{Spec} of S \to S'; this is an element of SchemeHomOver, the subtype of morphisms over a fixed base morphism. muPtId and torusPtId are the case S' = S with \chi unital over S, giving sections of the structure morphism, i.e. elements over the identity of \operatorname{Spec} S.
Relation to Mathlib
Mathlib has no named scheme-theoretic split torus or \mu_m; these abbreviations build them from Mathlib's AddMonoidAlgebra and Spec. SchemeHomOver, the subtype of morphisms commuting with fixed morphisms to a base, is the project's own notion.
Where it is used
These abbreviations provide base-ring- and universe-polymorphic vocabulary for split tori and split groups of multiplicative type, used in the many statements about Néron models and about the multiplicative-type part of the reduction of Jacobians of modular curves.
References
- M. Demazure and P. Gabriel, Groupes algébriques, Tome I, North-Holland, 1970
- S. Bosch, W. Lütkebohmert and M. Raynaud, Néron Models, Ergebnisse der Mathematik und ihrer Grenzgebiete 21, Springer, 1990
References are suggested automatically and have not been individually verified.
English text generated automatically from the Lean source; the Lean statement is authoritative.
- 76 lines
- 14 declarations
- used in the statements of 38 theorems and imported by 52 proofs
- imports 1 definition modules
Source file: Definitions/Def_AlgebraicGeometry_SplitTorusMu.lean
Imported by
- no other definition module
Declarations
- abbrev
AlgebraicGeometry.SplitTorus.muCoord - abbrev
AlgebraicGeometry.SplitTorus.muScheme - abbrev
AlgebraicGeometry.SplitTorus.muStr - abbrev
AlgebraicGeometry.SplitTorus.torusCoord - abbrev
AlgebraicGeometry.SplitTorus.torusScheme - abbrev
AlgebraicGeometry.SplitTorus.torusStr - abbrev
AlgebraicGeometry.SplitTorus.muToTorus - abbrev
AlgebraicGeometry.SplitTorus.muIncl - abbrev
AlgebraicGeometry.SplitTorus.muBaseChange - abbrev
AlgebraicGeometry.SplitTorus.torusBaseChange - def
AlgebraicGeometry.SplitTorus.muPt - def
AlgebraicGeometry.SplitTorus.torusPt - def
AlgebraicGeometry.SplitTorus.torusPtId - def
AlgebraicGeometry.SplitTorus.muPtId
Source
import Mathlib import Definitions.Def_AlgebraicGeometry_NeronModelPropertyBundleCarrier set_option autoImplicit false universe u open CategoryTheory AlgebraicGeometry NeronModelInfra noncomputable section namespace AlgebraicGeometry.SplitTorus abbrev muCoord (S : Type u) [CommRing S] (t m : ℕ) : Type u := AddMonoidAlgebra S (Fin t → ZMod m) abbrev muScheme (S : Type u) [CommRing S] (t m : ℕ) : Scheme.{u} := Spec (CommRingCat.of (muCoord S t m)) abbrev muStr (S : Type u) [CommRing S] (t m : ℕ) : muScheme S t m ⟶ Spec (CommRingCat.of S) := Spec.map (CommRingCat.ofHom (algebraMap S (muCoord S t m))) abbrev torusCoord (S : Type u) [CommRing S] (t : ℕ) : Type u := AddMonoidAlgebra S (Fin t → ℤ) abbrev torusScheme (S : Type u) [CommRing S] (t : ℕ) : Scheme.{u} := Spec (CommRingCat.of (torusCoord S t)) abbrev torusStr (S : Type u) [CommRing S] (t : ℕ) : torusScheme S t ⟶ Spec (CommRingCat.of S) := Spec.map (CommRingCat.ofHom (algebraMap S (torusCoord S t))) abbrev muToTorus (S : Type u) [CommRing S] (t m : ℕ) : muScheme S t m ⟶ torusScheme S t := Spec.map (CommRingCat.ofHom (AddMonoidAlgebra.mapDomainRingHom S (AddMonoidHom.pi fun i => (Int.castAddHom (ZMod m)).comp (Pi.evalAddMonoidHom (fun _ : Fin t => ℤ) i)))) abbrev muIncl (S : Type u) [CommRing S] (t : ℕ) {m m' : ℕ} (h : m ∣ m') : muScheme S t m ⟶ muScheme S t m' := Spec.map (CommRingCat.ofHom (AddMonoidAlgebra.mapDomainRingHom S (AddMonoidHom.pi fun i => ((ZMod.castHom h (ZMod m)).toAddMonoidHom).comp (Pi.evalAddMonoidHom (fun _ : Fin t => ZMod m') i)))) abbrev muBaseChange {S S' : Type u} [CommRing S] [CommRing S'] (φ : S →+* S') (t m : ℕ) : muScheme S' t m ⟶ muScheme S t m := Spec.map (CommRingCat.ofHom (AddMonoidAlgebra.mapRingHom (Fin t → ZMod m) φ)) abbrev torusBaseChange {S S' : Type u} [CommRing S] [CommRing S'] (φ : S →+* S') (t : ℕ) : torusScheme S' t ⟶ torusScheme S t := Spec.map (CommRingCat.ofHom (AddMonoidAlgebra.mapRingHom (Fin t → ℤ) φ)) def muPt (S S' : Type u) [CommRing S] [CommRing S'] [Algebra S S'] (t m : ℕ) (χ : muCoord S t m →ₐ[S] S') : SchemeHomOver (Spec.map (CommRingCat.ofHom (algebraMap S S'))) (muStr S t m) := ⟨Spec.map (CommRingCat.ofHom χ.toRingHom), by rw [← Spec.map_comp, ← CommRingCat.ofHom_comp] congr 2 exact χ.comp_algebraMap⟩ def torusPt (S S' : Type u) [CommRing S] [CommRing S'] [Algebra S S'] (t : ℕ) (χ : torusCoord S t →ₐ[S] S') : SchemeHomOver (Spec.map (CommRingCat.ofHom (algebraMap S S'))) (torusStr S t) := ⟨Spec.map (CommRingCat.ofHom χ.toRingHom), by rw [← Spec.map_comp, ← CommRingCat.ofHom_comp] congr 2 exact χ.comp_algebraMap⟩ def torusPtId (S : Type u) [CommRing S] (t : ℕ) (χ : torusCoord S t →ₐ[S] S) : SchemeHomOver (𝟙 _) (torusStr S t) := ⟨Spec.map (CommRingCat.ofHom χ.toRingHom), by rw [← Spec.map_comp, ← CommRingCat.ofHom_comp] have h : χ.toRingHom.comp (algebraMap S (torusCoord S t)) = RingHom.id S := by rw [AlgHom.toRingHom_eq_coe, AlgHom.comp_algebraMap]; rfl rw [h, CommRingCat.ofHom_id, Spec.map_id]⟩ def muPtId (S : Type u) [CommRing S] (t m : ℕ) (χ : muCoord S t m →ₐ[S] S) : SchemeHomOver (𝟙 _) (muStr S t m) := ⟨Spec.map (CommRingCat.ofHom χ.toRingHom), by rw [← Spec.map_comp, ← CommRingCat.ofHom_comp] have h : χ.toRingHom.comp (algebraMap S (muCoord S t m)) = RingHom.id S := by rw [AlgHom.toRingHom_eq_coe, AlgHom.comp_algebraMap]; rfl rw [h, CommRingCat.ofHom_id, Spec.map_id]⟩ end AlgebraicGeometry.SplitTorus end
Statements phrased using this module (38)
- Degeneracy morphisms D → D₀ and Ribet's special-fibre formula
ModularCurve.XHDRModelAtP.exists_degeneracyHom_mul_pts_special1,698 below · depth 12 - Glued special-fibre dictionary for relative Pic⁰ at p ‖ M
ModularCurve.XHDRModelAtP.exists_ptsSp_gluedPic0_dictionary_specialFibre1,294 below · depth 12 - Special-fibre Pic⁰ dictionary for the level-Γ_N model
ModularCurve.XHDRModelAtP.exists_ptsSp_levelN_pic0_equiv_of_representsRelSubPic1,183 below · depth 12 - Matching the generic and special Pic⁰ dictionaries by an A-section
ModularCurve.XHDRModelAtP.exists_schemeHomOver_pts_eq_and_ptsSp_symm_eq_mk_of_sameComponent30 below · depth 12 - Push-down and reduction agree on level-(M/p) dictionaries
ModularCurve.XHDRModelAtP.exists_schemeHomOver_pts_levelN_degPts_eq_and_ptsSp_levelN_symm_eq_mk166 below · depth 12 - Degeneracy pull-backs match the point dictionaries
ModularCurve.XHDRModelAtP.pts_alphaPull_eq_pts_levelN_comp_degPull364 below · depth 12 - Special fibre of the degeneracy pull-backs on Pic⁰ coordinates
ModularCurve.XHDRModelAtP.toPic0Pair_ptsSp_symm_schemeHomOverComp_degPull_eq1,100 below · depth 12 - Split torus in Pic⁰ of a two-component curve
AlgebraicGeometry.RelPicard.exists_torus_characterLattice_equiv_of_twoGluedSmoothCurves32 below · depth 13 - Lifting μ_m^t to a base change over a henselian ring
AlgebraicGeometry.SplitTorus.existsUnique_muLift_baseChange_of_torusFibre_of_henselian30 below · depth 13 - Rigidity of closed split sub-tori up to GLₜ(ℤ)
AlgebraicGeometry.SplitTorus.exists_addEquiv_eq_specMap_mapDomain_comp_of_range_eq3 below · depth 13 - Conjugating a toric morphism by an automorphism of A
AlgebraicGeometry.SplitTorus.exists_conj_muHom_baseChange0 below · depth 13 - Twisting torus morphisms into G×_{R_0}κ by field automorphisms
AlgebraicGeometry.SplitTorus.exists_twist_torusHom_baseChange_of_ringEquiv0 below · depth 13 - Galois action on toric points of a μ_m^t-lift
ModularCurve.JHNeronObjectAtP.inertia_smul_eq_and_exists_decomposition_smul_eq_of_muLift42 below · depth 13 - Torus and abelian quotient on the special fibre of Pic⁰
ModularCurve.XHDRModelAtP.exists_representsRelSubPic_torus_abq_specialFibre1,035 below · depth 13 - Poincaré bundle at ℚ̄-points of the integral model
ModularCurve.XHDRModelAtP.nonempty_poincare_pullbackAlong_iso_ofPoint_tensor_ofPoint_idealModule_of_eq_comp_ajbar15 below · depth 13 - Special-fibre formula for the degeneracy push-forwards at p ∥ M
ModularCurve.XHDRModelAtP.ptsSp_levelN_symm_schemeHomOverComp_degeneracyHom_eq_of_pts_levelN_degPts_eq_comp1,637 below · depth 13 - Degeneracy push-forwards as norm homomorphisms on ℚ̄-points
ModularCurve.XHDRModelAtP.pts_levelN_degPts_eq_comp_degeneracyHom_of_classifies_normModule230 below · depth 13 - Torus G_m^{s-1} closed-immerses as kernel of the restriction pair
AlgebraicGeometry.RelPicard.exists_torus_isClosedImmersion_ker_restrictPair_of_twoGluedSmoothCurves34 below · depth 14 - Unique lifting of μ_m^t from a split torus in the special fibre
AlgebraicGeometry.SplitTorus.existsUnique_muLift_of_torusFibre_of_henselian27 below · depth 14 - Homomorphy on κ-points extends to all points of a split torus
AlgebraicGeometry.SplitTorus.forall_torusPt_mul_of_torusPtId_mul_of_isAlgClosed1 below · depth 14 - Special fibre of Pic⁰ of the Deligne–Rapoport model
ModularCurve.DRModelPackageLevel.exists_representsRelSubPic_torus_abq_specialFibre284 below · depth 14 - Galois action on toric μ_m-points: inertia and decomposition
ModularCurve.JZeroNeronObjectAtP.inertia_smul_eq_and_exists_decomposition_smul_eq_of_muLift42 below · depth 14 - Local triviality of the Pic⁰ restriction pair as a torus bundle
AlgebraicGeometry.RelPicard.exists_iso_preimage_restrictPair_pullback_torus_of_section_of_twoGluedSmoothCurves0 below · depth 15 - Node-unit torus as kernel of restriction on Pic⁰
AlgebraicGeometry.RelPicard.exists_torus_ker_restrictPair_of_twoGluedSmoothCurves30 below · depth 15 - Points of μ_m^t are m-torsion; reduction is multiplicative
AlgebraicGeometry.SplitTorus.convPow_eq_one_and_comp_mapDomain_convMul0 below · depth 15 - Reducedness of fibres of a homomorphism pair with split-torus kernel
AlgebraicGeometry.isReduced_pullback_lift_of_forall_iff_exists_torus0 below · depth 15 - m-torsion of a split torus is μ_m^t of degree m^t
AlgebraicGeometry.SplitTorus.isFinite_schemeKerStr_and_finrank_eq_of_iso_torusScheme0 below · depth 20 - Rank m^t for the m-torsion over a split open subtorus
AlgebraicGeometry.SplitTorus.moduleFinite_and_finrank_sections_preimage_opensRange_schemeKer_eq_pow0 below · depth 20 - Fppf-local m-th roots of points of the split torus
AlgebraicGeometry.SplitTorus.exists_flat_surjective_pow_eq_comp1 below · depth 21 - Automorphism fixing components and crossings acts trivially on gluing torus
AlgebraicGeometry.RelPicard.RepresentsRelSubPic.postComp_transport_eq_self_of_ker_restrictPair_of_iso_comp_eq_of_crossing_of_twoGluedSmoothCurves31 below · depth 23 - Split torus: commutative group law, unit points, finite flat [n]
AlgebraicGeometry.SplitTorus.exists_relativeGroupLaw_isCommutative_torusPt_convMul_schemeNsmul_eq0 below · depth 23 - Special m-kernel: finiteness and order m^t·(dim A_κ[m])²
ModularCurve.JHNeronObjectAtP.isFinite_schemeKerStr_special_and_finrank_eq_mul_sq13 below · depth 25 - Closed immersion of equal-rank split tori lifts κ-points
AlgebraicGeometry.SplitTorus.exists_schemeHomOverComp_eq_of_isClosedImmersion_torusStr_of_eq0 below · depth 26 - fppf-local sections of m-torsion over the abelian-quotient square
ModularCurve.JHNeronObjectAtP.exists_fppfCover_section_schemeKer_of_abqFibre5 below · depth 26 - Shear isomorphism for m-torsion over the abelian-quotient kernel
ModularCurve.JHNeronObjectAtP.exists_iso_pullback_schemeKer_torus_of_abqFibre0 below · depth 26 - Special-fibre torus as joint kernel of the abelian-quotient pair
ModularCurve.JHNeronObjectAtP.exists_iso_torus_kerPair_abqFibre2 below · depth 26 - Smoothness of the kernel of one quotient over the other
AlgebraicGeometry.smooth_pullbackFst_comp_of_forall_iff_exists_torus_of_flat2 below · depth 30 - Split torus of rank d is smooth of relative dimension d
AlgebraicGeometry.SplitTorus.smoothOfRelativeDimension_torusStr0 below · depth 31