Definitions/Def_CerednikDrinfeld_QMStructureOnPolarised.lean
Quaternionic multiplication structures on polarised abelian surfaces
Fix rationals a,b, a \mathbb Z-submodule \Lambda of the quaternion algebra \mathbb H[\mathbb Q,a,b], a map \star:\Lambda\to\Lambda and a family \beta:\mathrm{Fin}\,4\to\Lambda. For a commutative ring S and X a polarised abelian scheme of relative dimension 2, fibre degree d and level m over S (so X carries A\to\operatorname{Spec}S, a relative group law L, four level-m sections X.P_i freely generating the geometric m-torsion, and an invertible, very ample module pol with h^0=d on geometric fibres), the structure QMStructure Λ star β X consists of: a map \mathrm{act}:\Lambda\to\operatorname{End}(A) whose values lie over \operatorname{Spec}S and act on T-points as homomorphisms for L; multiplicativity \mathrm{act}(xy)=\mathrm{act}(x)\circ\mathrm{act}(y) and \mathrm{act}(1)=\mathrm{id}, each stated under the hypothesis that the relevant element lies in \Lambda; additivity \mathrm{act}(x+y)=\mathrm{act}(x)+\mathrm{act}(y) on points; and a trace condition: for every algebraically closed field k, every sk:S\to k, every finite-dimensional k-space V parametrising the tangent vectors at the k-point bijectively, additively and k-homogeneously, and every k-linear \Phi on V inducing \mathrm{act}(x), one has \operatorname{tr}_k\Phi=n whenever x+\bar x=n in \mathbb H[\mathbb Q,a,b]. In addition there is a section P over S with \mathrm{act}(\beta_j)P=X.P_j for j=0,\dots,3, so that the level sections are \Lambda-translates of a single generator, and the property that for some \mathcal L_E the predicate IsCanonicalPolData holds of (X.f,X.L,\mathrm{act},\star,\mathcal L_E) — \mathcal L_E invertible, symmetric, with kernel the 2-torsion, faithfully flat-locally of the form \mathcal L_0\otimes[-1]^*\mathcal L_0 with trivial kernel, of positive h^0 on geometric fibres and Rosati-compatible with the action through \star — while pol is Zariski-locally on the base isomorphic to \mathcal L_E^{\otimes 3}. Only \mathrm{act} and P are data; the remaining fields are propositions.
Three relations on such structures are defined. IsPullback φ s s', for \varphi:S\to S', asks for a morphism g_A:A'\to A making a cartesian square over \operatorname{Spec}\varphi, compatible with the group laws and the level sections, with pol pulling back to pol', intertwining the two \Lambda-actions and carrying s'.P to s.P. Iso s s', for two structures over the same S, asks for an isomorphism e:A\cong A' over S compatible with the group laws, matching level sections, with the polarisations corresponding after pullback Zariski-locally on the base, intertwining the actions and matching the generators. Packages s u compares a QM structure with a fake elliptic curve u of level 1 equipped with a full level-m structure: it asks for an isomorphism of the underlying schemes over S compatible with the group laws, intertwining u's \Lambda-action with \mathrm{act} and carrying u's level generator to P; no condition on the polarisation or on u's level morphism is imposed.
Relation to Mathlib
Mathlib has no notion of abelian scheme, polarisation, Rosati involution or quaternionic multiplication; these are the project's own, built on Mathlib's quaternion algebras \mathbb H[\mathbb Q,a,b] with their star operation and on sheaves of modules on schemes with the monoidal structure set up in this development.
Where it is used
These structures express the moduli problem of polarised abelian surfaces with quaternionic multiplication and full level structure, in a shape matching the project's notion of a fine moduli space for polarised abelian schemes; Packages is the dictionary between such a structure and a fake elliptic curve with full level structure. They serve the construction of the Shimura curves entering the Čerednik–Drinfeld uniformisation used on the level-lowering side of the argument.
References
- J.-F. Boutot and H. Carayol, Uniformisation p-adique des courbes de Shimura: les théorèmes de Čerednik et de Drinfeld, Astérisque 196–197 (1991), 45–158
- D. Mumford, Abelian Varieties, Oxford University Press, 1970
References are suggested automatically and have not been individually verified.
English text generated automatically from the Lean source; the Lean statement is authoritative.
- 98 lines
- 17 declarations
- used in the statements of 46 theorems and imported by 44 proofs
- imports 1 definition modules
Source file: Definitions/Def_CerednikDrinfeld_QMStructureOnPolarised.lean
Imported by
- no other definition module
Declarations
- structure
AlgebraicGeometry.PolarisedAbelianScheme.QMStructure - field
AlgebraicGeometry.PolarisedAbelianScheme.QMStructure.act - field
AlgebraicGeometry.PolarisedAbelianScheme.QMStructure.act_over - field
AlgebraicGeometry.PolarisedAbelianScheme.QMStructure.act_hom - field
AlgebraicGeometry.PolarisedAbelianScheme.QMStructure.pushPt - field
AlgebraicGeometry.PolarisedAbelianScheme.QMStructure.act_one - field
AlgebraicGeometry.PolarisedAbelianScheme.QMStructure.act_mul - field
AlgebraicGeometry.PolarisedAbelianScheme.QMStructure.act_add - field
AlgebraicGeometry.PolarisedAbelianScheme.QMStructure.pushPt - field
AlgebraicGeometry.PolarisedAbelianScheme.QMStructure.act_trace - field
AlgebraicGeometry.PolarisedAbelianScheme.QMStructure.V - field
AlgebraicGeometry.PolarisedAbelianScheme.QMStructure.P - field
AlgebraicGeometry.PolarisedAbelianScheme.QMStructure.level_match - field
AlgebraicGeometry.PolarisedAbelianScheme.QMStructure.pol_canonical - def
AlgebraicGeometry.PolarisedAbelianScheme.QMStructure.IsPullback - def
AlgebraicGeometry.PolarisedAbelianScheme.QMStructure.Iso - def
AlgebraicGeometry.PolarisedAbelianScheme.QMStructure.Packages
Source
import Definitions.Def_CerednikDrinfeld_QMCanonicalPol set_option autoImplicit false noncomputable section open scoped Quaternion open CategoryTheory CategoryTheory.Limits MonoidalCategory AlgebraicGeometry NeronModelInfra GoodReductionJacobian AlgebraicGeometry.Polarisation CerednikDrinfeld.QM namespace AlgebraicGeometry.PolarisedAbelianScheme variable {a b : ℚ} structure QMStructure (Λ : Submodule ℤ ℍ[ℚ, a, b]) (star : ↥Λ → ↥Λ) (β : Fin (2 * 2) → ↥Λ) {d m : ℕ} {S : Type} [CommRing S] (X : PolarisedAbelianScheme 2 d m S) : Type 1 where act : ↥Λ → (X.A ⟶ X.A) act_over : ∀ x : ↥Λ, act x ≫ X.f = X.f act_hom : ∀ (x : ↥Λ) {T : Scheme.{0}} (t : T ⟶ Spec (CommRingCat.of S)) (P Q : SchemeHomOver t X.f), pushPt (act x) (act_over x) (X.L.mul t P Q) = X.L.mul t (pushPt (act x) (act_over x) P) (pushPt (act x) (act_over x) Q) act_one : ∀ h : (1 : ℍ[ℚ, a, b]) ∈ Λ, act ⟨1, h⟩ = 𝟙 X.A act_mul : ∀ (x y : ↥Λ) (h : (x : ℍ[ℚ, a, b]) * (y : ℍ[ℚ, a, b]) ∈ Λ), act ⟨(x : ℍ[ℚ, a, b]) * (y : ℍ[ℚ, a, b]), h⟩ = act y ≫ act x act_add : ∀ (x y : ↥Λ) {T : Scheme.{0}} (t : T ⟶ Spec (CommRingCat.of S)) (P : SchemeHomOver t X.f), pushPt (act (x + y)) (act_over (x + y)) P = X.L.mul t (pushPt (act x) (act_over x) P) (pushPt (act y) (act_over y) P) act_trace : ∀ (k : Type) [Field k] [IsAlgClosed k] (sk : S →+* k) (V : Type) [AddCommGroup V] [Module k V] [Module.Finite k V] (τ : V → SchemeHomOver (tangentBase k sk) X.f), Function.Injective τ → (∀ P : SchemeHomOver (tangentBase k sk) X.f, P ∈ Set.range τ ↔ IsTangentVector X.L k sk P) → (∀ v w : V, τ (v + w) = X.L.mul (tangentBase k sk) (τ v) (τ w)) → (∀ (c : k) (v : V), (τ (c • v)).1 = tangentScale k c ≫ (τ v).1) → ∀ (x : ↥Λ) (Φ : V →ₗ[k] V), (∀ v : V, τ (Φ v) = pushPt (act x) (act_over x) (τ v)) → ∀ n : ℤ, (x : ℍ[ℚ, a, b]) + Star.star (x : ℍ[ℚ, a, b]) = ((n : ℚ) : ℍ[ℚ, a, b]) → LinearMap.trace k V Φ = (n : k) P : SchemeHomOver (𝟙 (Spec (CommRingCat.of S))) X.f level_match : ∀ j : Fin (2 * 2), pushPt (act (β j)) (act_over (β j)) P = X.P j pol_canonical : ∃ polE : X.A.Modules, CerednikDrinfeld.QM.IsCanonicalPolData X.f X.L act act_over star polE ∧ LocIsoOnBase X.f X.pol (polE ⊗ polE ⊗ polE) namespace QMStructure variable {Λ : Submodule ℤ ℍ[ℚ, a, b]} {star : ↥Λ → ↥Λ} {β : Fin (2 * 2) → ↥Λ} {d m : ℕ} def IsPullback {S S' : Type} [CommRing S] [CommRing S'] (φ : S →+* S') {X : PolarisedAbelianScheme 2 d m S} {X' : PolarisedAbelianScheme 2 d m S'} (s : QMStructure Λ star β X) (s' : QMStructure Λ star β X') : Prop := ∃ (gA : X'.A ⟶ X.A) (hg : CategoryTheory.IsPullback gA X'.f X.f (Spec.map (CommRingCat.ofHom φ))), (∀ {T : Scheme.{0}} (t' : T ⟶ Spec (CommRingCat.of S')) (x y : SchemeHomOver t' X'.f), (X'.L.mul t' x y).1 ≫ gA = (X.L.mul (t' ≫ Spec.map (CommRingCat.ofHom φ)) ⟨x.1 ≫ gA, by rw [Category.assoc, hg.w, ← Category.assoc, x.2]⟩ ⟨y.1 ≫ gA, by rw [Category.assoc, hg.w, ← Category.assoc, y.2]⟩).1) ∧ (∀ i, (X'.P i).1 ≫ gA = Spec.map (CommRingCat.ofHom φ) ≫ (X.P i).1) ∧ Nonempty ((Scheme.Modules.pullback gA).obj X.pol ≅ X'.pol) ∧ (∀ x : ↥Λ, s'.act x ≫ gA = gA ≫ s.act x) ∧ s'.P.1 ≫ gA = Spec.map (CommRingCat.ofHom φ) ≫ s.P.1 def Iso {S : Type} [CommRing S] {X X' : PolarisedAbelianScheme 2 d m S} (s : QMStructure Λ star β X) (s' : QMStructure Λ star β X') : Prop := ∃ (e : X.A ≅ X'.A) (he : e.hom ≫ X'.f = X.f), (∀ {T : Scheme.{0}} (t : T ⟶ Spec (CommRingCat.of S)) (x y : SchemeHomOver t X.f), (X.L.mul t x y).1 ≫ e.hom = (X'.L.mul t ⟨x.1 ≫ e.hom, by rw [Category.assoc, he]; exact x.2⟩ ⟨y.1 ≫ e.hom, by rw [Category.assoc, he]; exact y.2⟩).1) ∧ (∀ i, (X.P i).1 ≫ e.hom = (X'.P i).1) ∧ (∀ p : ↥(Spec (CommRingCat.of S)), ∃ U : (Spec (CommRingCat.of S)).Opens, p ∈ U ∧ Nonempty ((Scheme.Modules.pullback (X.f ⁻¹ᵁ U).ι).obj ((Scheme.Modules.pullback e.hom).obj X'.pol) ≅ (Scheme.Modules.pullback (X.f ⁻¹ᵁ U).ι).obj X.pol)) ∧ (∀ x : ↥Λ, s.act x ≫ e.hom = e.hom ≫ s'.act x) ∧ s.P.1 ≫ e.hom = s'.P.1 def Packages {S : Type} [CommRing S] {X : PolarisedAbelianScheme 2 d m S} (s : QMStructure Λ star β X) (u : CerednikDrinfeld.QM.FakeEllipticCurve.WithFullLevel Λ 1 m S) : Prop := ∃ (e : u.1.A ≅ X.A) (he : e.hom ≫ X.f = u.1.f), (∀ {T : Scheme.{0}} (t : T ⟶ Spec (CommRingCat.of S)) (x y : SchemeHomOver t u.1.f), (u.1.L.mul t x y).1 ≫ e.hom = (X.L.mul t ⟨x.1 ≫ e.hom, by rw [Category.assoc, he]; exact x.2⟩ ⟨y.1 ≫ e.hom, by rw [Category.assoc, he]; exact y.2⟩).1) ∧ (∀ x : ↥Λ, u.1.act x ≫ e.hom = e.hom ≫ s.act x) ∧ u.2.P.1 ≫ e.hom = s.P.1 end QMStructure end AlgebraicGeometry.PolarisedAbelianScheme end
Statements phrased using this module (46)
- Finiteness of the QM locus over a finite-type base
AlgebraicGeometry.PolarisedAbelianScheme.QMStructure.exists_finite_represents_of_isUnit_two_of_finiteType3,156 below · depth 27 - Fine moduli for fake elliptic curves with full level m
CerednikDrinfeld.QM.exists_isFineModuli_one_of_isFineModuli_thetaTypeLocally_of_qmStructure_of_isUnit_two_three_of_finiteType3,170 below · depth 27 - Representability of QM structures by a separated quasi-compact morphism
AlgebraicGeometry.PolarisedAbelianScheme.QMStructure.exists_represents_isSeparated_quasiCompact_locallyOfFinitePresentation_of_isUnit_two3,117 below · depth 28 - Formal unramifiedness of a scheme representing QM structures
AlgebraicGeometry.PolarisedAbelianScheme.QMStructure.formallyUnramified_of_represents854 below · depth 28 - Universal closedness of a finite-type scheme representing QM structures
AlgebraicGeometry.PolarisedAbelianScheme.QMStructure.universallyClosed_of_represents_of_finiteType1,431 below · depth 28 - Fine moduli for full-level fake elliptic curves from QM pairs
CerednikDrinfeld.QM.exists_isFineModuli_one_of_represents_qmStructure_pairs_of_isUnit_two2,936 below · depth 28 - Fine moduli of quaternionic-multiplication pairs over a Q-submoduli problem
CerednikDrinfeld.QM.exists_represents_qmStructure_pairs_of_satisfying_isFineModuli_of_qmStructure_of_isUnit_two_of_finiteType1,562 below · depth 28 - QM structures force local theta type (6,6)
CerednikDrinfeld.QM.thetaTypeLocally_six_six_of_qmStructure_of_isUnit_two_three1,375 below · depth 28 - Base change of a quaternionic multiplication structure exists
AlgebraicGeometry.PolarisedAbelianScheme.QMStructure.exists_isPullback6 below · depth 29 - Extension of QM structures across a discrete valuation ring
AlgebraicGeometry.PolarisedAbelianScheme.QMStructure.exists_isPullback_algebraMap_of_isDiscreteValuationRing1,421 below · depth 29 - Representability of QM structures on polarised abelian surfaces
AlgebraicGeometry.PolarisedAbelianScheme.QMStructure.exists_represents_of_representsLatticeActions_of_isUnit_two2,930 below · depth 29 - Full-level fake elliptic curves package as QM polarised schemes
AlgebraicGeometry.PolarisedAbelianScheme.QMStructure.packages_surjective_and_iso_iff_and_isPullback_of_isUnit_two2,933 below · depth 29 - Point map on QM structures is isomorphism-invariant
AlgebraicGeometry.PolarisedAbelianScheme.QMStructure.ptZ_eq_of_iso_of_isPullback_of_isPullback847 below · depth 29 - A QM structure makes the polarisation symmetric, rooted, of type (6,6)
AlgebraicGeometry.PolarisedAbelianScheme.QMStructure.rootedSymmetricOfType_six_six_of_isUnit_six963 below · depth 29 - Gluing chart-wise QM point maps over a Q-fine moduli scheme
CerednikDrinfeld.QM.exists_schemeHomOver_forall_comp_eq_ptZ_comp_openImmersion_of_affineCharts_satisfying45 below · depth 29 - Cartesian transition maps for QM-structure schemes over affine charts
CerednikDrinfeld.QM.exists_transition_isPullback_of_represents_qmStructure_affineOpens_satisfying868 below · depth 29 - Functoriality of the glued point map for QM pairs
CerednikDrinfeld.QM.ptQ_eq_of_iso_and_ptQ_eq_comp_of_isPullback_of_affineCharts_satisfying45 below · depth 29 - Representability of QM structures from the affine charts
CerednikDrinfeld.QM.ptQ_surjective_and_iso_of_ptQ_eq_of_affineCharts_of_isMaximalOrder_of_isUnit_two_satisfying1,545 below · depth 29 - Base change of QM structures composes along χ∘φ
AlgebraicGeometry.PolarisedAbelianScheme.QMStructure.IsPullback.trans0 below · depth 30 - Base change of a QM isomorphism along φ
AlgebraicGeometry.PolarisedAbelianScheme.QMStructure.Iso.of_isPullback_of_isPullback0 below · depth 30 - Isomorphy of QM structures is an equivalence relation
AlgebraicGeometry.PolarisedAbelianScheme.QMStructure.Iso.refl_symm_trans2 below · depth 30 - Gluing QM structures over a basic open cover, 2 invertible
AlgebraicGeometry.PolarisedAbelianScheme.QMStructure.exists_forall_isPullback_of_forall_away_of_isMaximalOrder_of_isUnit_two1,528 below · depth 30 - QM structures transport along isomorphisms of polarised abelian surfaces
AlgebraicGeometry.PolarisedAbelianScheme.QMStructure.exists_iso_of_polarisedAbelianScheme_iso11 below · depth 30 - Packaging fake elliptic curves as polarised abelian surfaces
AlgebraicGeometry.PolarisedAbelianScheme.QMStructure.exists_packages_of_withFullLevel_of_isUnit_two2,923 below · depth 30 - A closed subscheme of E representing QM structures
AlgebraicGeometry.PolarisedAbelianScheme.QMStructure.exists_ptZ_of_isClosedImmersion_iff_qmConditions847 below · depth 30 - Unpacking a QM structure into a fake elliptic curve
AlgebraicGeometry.PolarisedAbelianScheme.QMStructure.exists_withFullLevel_packages2 below · depth 30 - Isomorphy of QM structures is local on the base
AlgebraicGeometry.PolarisedAbelianScheme.QMStructure.iso_of_forall_away_iso859 below · depth 30 - Uniqueness of base change for QM structures
AlgebraicGeometry.PolarisedAbelianScheme.QMStructure.iso_of_isPullback_of_isPullback0 below · depth 30 - Packaging is compatible with base change
AlgebraicGeometry.PolarisedAbelianScheme.QMStructure.withFullLevel_isPullback_of_packages_of_isPullback0 below · depth 30 - Packaging respects isomorphism of full-level fake elliptic curves
AlgebraicGeometry.PolarisedAbelianScheme.QMStructure.withFullLevel_iso_iff_iso_of_packages_of_isUnit_two1,448 below · depth 30 - Quaternionic conditions cut out a closed subscheme of E
AlgebraicGeometry.PolarisedAbelianScheme.exists_isClosedImmersion_iff_trace_and_exists_level_generator_and_exists_isCanonicalPolData_of_isUnit_two2,876 below · depth 30 - Quasi-compactness of the QM locus over the base
AlgebraicGeometry.PolarisedAbelianScheme.quasiCompact_comp_of_isClosedImmersion_iff_qmConditions1,165 below · depth 30 - Quaternionic action glues along a basic-open cover
AlgebraicGeometry.PolarisedAbelianScheme.QMStructure.exists_act_of_forall_away_of_isMaximalOrder857 below · depth 31 - Uniform bound on h⁰(L ⊗ i(βⱼ)^*L)
AlgebraicGeometry.PolarisedAbelianScheme.QMStructure.exists_forall_geomFibreH0Finrank_tensor_pullback_act_le1,164 below · depth 31 - From a polarised isomorphism to a QM isomorphism, locally
AlgebraicGeometry.PolarisedAbelianScheme.QMStructure.iso_of_polarisedAbelianScheme_iso_of_forall_away_iso847 below · depth 31 - Local uniqueness of canonical polarisation data for QM surfaces
AlgebraicGeometry.PolarisedAbelianScheme.QMStructure.locIsoOnBase_of_isCanonicalPolData_of_isCanonicalPolData_of_isUnit_two1,443 below · depth 31 - Trace and canonical-cube conditions cut out a closed subscheme
AlgebraicGeometry.PolarisedAbelianScheme.exists_isClosedImmersion_iff_trace_and_exists_isCanonicalPolData_lfp_of_isUnit_two2,871 below · depth 31 - Action laws of a QM structure are Zariski-local
AlgebraicGeometry.PolarisedAbelianScheme.QMStructure.act_laws_of_forall_comp_eq_of_forall_away0 below · depth 32 - Gluing a Λ-action along a basic open cover
AlgebraicGeometry.PolarisedAbelianScheme.QMStructure.exists_act_comp_eq_of_forall_away_of_isMaximalOrder855 below · depth 32 - Uniform fibrewise h⁰(L ⊗ s(βⱼ)^*L) for QM structures
AlgebraicGeometry.PolarisedAbelianScheme.QMStructure.exists_forall_geomFibreH0Finrank_tensor_pullback_act_eq1,163 below · depth 32 - Drinfeld's trace condition cuts out a clopen locus
AlgebraicGeometry.PolarisedAbelianScheme.exists_opens_isClosed_range_subset_iff_trace42 below · depth 32 - Geometric h⁰ of L⊗βⱼ^*L equals |n|
AlgebraicGeometry.PolarisedAbelianScheme.QMStructure.geomFibreH0Finrank_tensor_pullback_act_eq_natAbs_of_isAlgClosed1,157 below · depth 33 - Kernel of 2n(1+ι(b^⋆)ι(b)) equals the stabiliser of L⊗ι(b)^*L
AlgebraicGeometry.Polarisation.exists_comp_endKerIncl_eq_iff_isInStabilizer_tensor_pullback_of_rosatiCompatible_of_smooth590 below · depth 34 - Kernel of quaternionic multiplication has rank n²
CerednikDrinfeld.QM.isFinite_endKerStr_act_and_finrank_eq_natAbs_sq720 below · depth 34 - Action of c = 6(1 + b₀^⋆ b₀) on points
CerednikDrinfeld.QM.pushPt_act_eq_nsmul_mul_pushPt_act_star_pushPt_act_of_eq_smul_one_add_star_mul0 below · depth 34 - Quaternion order action read in the endomorphism group
CerednikDrinfeld.QM.act_add_mul_zsmul_neg_pointCommGroup0 below · depth 35