Definitions/Def_CerednikDrinfeld_DrinfeldQuadrupleRelations.lean
Base change and translation relations for Drinfeld data
Throughout, \mathcal O is a commutative ring with an algebra map to a field K, \pi\in\mathcal O, and B a commutative \mathcal O-algebra; \mathtt{DrinfeldDatum}\ \pi\ B is the rigidified datum consisting of lattice functions N_0(x)\le N_1(x) on \operatorname{Spec} B, invertible B-modules T_0,T_1 with maps \Pi_0:T_0\to T_1, \Pi_1:T_1\to T_0 satisfying \Pi_1\Pi_0=\pi=\Pi_0\Pi_1, and stalkwise surjections u_i from B_x\otimes_{\mathcal O}N_i(x) to the localisation of T_i at x. Since such a datum carries its own modules, the operations of base change and of translation by \mathrm{GL}_2(K) are formalised here not as constructions but as relations between two given data, witnessed by structures whose fields are the required identities.
For an \mathcal O-algebra map f:B\to B', pointUnder f x' is the image of x' under the map on prime spectra induced by f, and BaseChangeAlong f Q Q' records: N'_i(x')=N_i(\mathtt{pointUnder}\ f\ x') for i=0,1; f-semilinear maps \tau_i:T_i\to T'_i whose images span T'_i over B'; the intertwining relations \tau_1\Pi_0=\Pi'_0\tau_0 and \tau_0\Pi_1=\Pi'_1\tau_1; and, for each x', each v lying in both N_i(\mathtt{pointUnder}\ f\ x') and N'_i(x'), each t\in T_i and s\in B with f(s)\notin x', the implication that if u_i(1\otimes v) is the fraction t/s then u'_i(1\otimes v)=\tau_i(t)/f(s). IsBaseChangeAlong is the assertion that such a structure exists.
For g\in\mathrm{GL}_2(K) and c\in K^\times, TranslateEven g c Q Q' requires N'_i(x)=(c\,g^{-1})N_i(x), B-linear equivalences \tau_i:T_i\to T'_i intertwining the \Pi's as above, and u'_i(1\otimes (c\,g^{-1})v) equal to the image of u_i(1\otimes v) under the localisation of \tau_i. TranslateOdd g c_0 c_1 Q Q' imposes c_0=\pi c_1 in K and interchanges the indices: N'_0(x)=(c_0g^{-1})N_1(x), N'_1(x)=(c_1g^{-1})N_0(x), equivalences \sigma_0:T_1\to T'_0, \sigma_1:T_0\to T'_1 with \sigma_1\Pi_1=\Pi'_0\sigma_0, \sigma_0\Pi_0=\Pi'_1\sigma_1, and the corresponding index-swapped compatibilities for u_0,u_1. IsTranslateEven and IsTranslateOdd are the existence statements. Finally, Iso.toTranslateEven turns an isomorphism of Drinfeld data over B into a translation relation with g=1, c=1.
Relation to Mathlib
Mathlib has no notion of Drinfeld datum or of Drinfeld's functor on \mathcal O-algebras; these relations are the project's own. The only Mathlib ingredient reused directly is PrimeSpectrum.comap, wrapped here as pointUnder, together with localisations of rings and modules and semilinear maps.
Where it is used
These relations express the functoriality in B and the \mathrm{GL}_2(K)-equivariance of the quadruple description of Drinfeld's functor, on the side of Drinfeld data rather than of Deligne data, and thus feed into the Čerednik–Drinfeld uniformisation used for Shimura curves in the formalisation.
References
- V. G. Drinfeld, Coverings of p-adic symmetric domains, Functional Analysis and Its Applications 10 (1976), 107–115
- 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
References are suggested automatically and have not been individually verified.
English text generated automatically from the Lean source; the Lean statement is authoritative.
- 146 lines
- 23 declarations
- used in the statements of 55 theorems and imported by 60 proofs
- imports 1 definition modules
Source file: Definitions/Def_CerednikDrinfeld_DrinfeldQuadrupleRelations.lean
Imported by
- no other definition module
Declarations
- abbrev
CerednikDrinfeld.FormalOmega.DrinfeldDatum.pointUnder - structure
CerednikDrinfeld.FormalOmega.DrinfeldDatum.BaseChangeAlong - field
CerednikDrinfeld.FormalOmega.DrinfeldDatum.BaseChangeAlong.N₀_eq - field
CerednikDrinfeld.FormalOmega.DrinfeldDatum.BaseChangeAlong.N₁_eq - field
CerednikDrinfeld.FormalOmega.DrinfeldDatum.BaseChangeAlong.u₀_eq - field
CerednikDrinfeld.FormalOmega.DrinfeldDatum.BaseChangeAlong.t - field
CerednikDrinfeld.FormalOmega.DrinfeldDatum.BaseChangeAlong.u₁_eq - field
CerednikDrinfeld.FormalOmega.DrinfeldDatum.BaseChangeAlong.t - def
CerednikDrinfeld.FormalOmega.DrinfeldDatum.IsBaseChangeAlong - structure
CerednikDrinfeld.FormalOmega.DrinfeldDatum.TranslateEven - field
CerednikDrinfeld.FormalOmega.DrinfeldDatum.TranslateEven.N₀_eq - field
CerednikDrinfeld.FormalOmega.DrinfeldDatum.TranslateEven.N₁_eq - field
CerednikDrinfeld.FormalOmega.DrinfeldDatum.TranslateEven.hv' - field
CerednikDrinfeld.FormalOmega.DrinfeldDatum.TranslateEven.hv' - def
CerednikDrinfeld.FormalOmega.DrinfeldDatum.IsTranslateEven - structure
CerednikDrinfeld.FormalOmega.DrinfeldDatum.TranslateOdd - field
CerednikDrinfeld.FormalOmega.DrinfeldDatum.TranslateOdd.c₀_eq - field
CerednikDrinfeld.FormalOmega.DrinfeldDatum.TranslateOdd.N₀_eq - field
CerednikDrinfeld.FormalOmega.DrinfeldDatum.TranslateOdd.N₁_eq - field
CerednikDrinfeld.FormalOmega.DrinfeldDatum.TranslateOdd.hw' - field
CerednikDrinfeld.FormalOmega.DrinfeldDatum.TranslateOdd.hv' - def
CerednikDrinfeld.FormalOmega.DrinfeldDatum.IsTranslateOdd - def
CerednikDrinfeld.FormalOmega.DrinfeldDatum.Iso.toTranslateEven
Source
import Mathlib import Definitions.Def_CerednikDrinfeld_DrinfeldQuadruple set_option autoImplicit false noncomputable section open scoped TensorProduct MatrixGroups open LT.LatticeTree TensorProduct Matrix namespace CerednikDrinfeld namespace FormalOmega namespace DrinfeldDatum variable {𝒪 : Type} [CommRing 𝒪] {K : Type} [Field K] [Algebra 𝒪 K] {π : 𝒪} variable {B : Type} [CommRing B] [Algebra 𝒪 B] section BaseChange variable {B' : Type} [CommRing B'] [Algebra 𝒪 B'] abbrev pointUnder (f : B →ₐ[𝒪] B') (x' : PrimeSpectrum B') : PrimeSpectrum B := PrimeSpectrum.comap (f : B →+* B') x' structure BaseChangeAlong (f : B →ₐ[𝒪] B') (Q : DrinfeldDatum (K := K) π B) (Q' : DrinfeldDatum (K := K) π B') : Type where N₀_eq : ∀ x' : PrimeSpectrum B', Q'.N₀ x' = Q.N₀ (pointUnder f x') N₁_eq : ∀ x' : PrimeSpectrum B', Q'.N₁ x' = Q.N₁ (pointUnder f x') τ₀ : Q.T₀ →ₛₗ[(f : B →+* B')] Q'.T₀ τ₁ : Q.T₁ →ₛₗ[(f : B →+* B')] Q'.T₁ span_range_τ₀ : Submodule.span B' (Set.range τ₀) = ⊤ span_range_τ₁ : Submodule.span B' (Set.range τ₁) = ⊤ τ₁_Pi₀ : ∀ t, τ₁ (Q.Pi₀ t) = Q'.Pi₀ (τ₀ t) τ₀_Pi₁ : ∀ t, τ₀ (Q.Pi₁ t) = Q'.Pi₁ (τ₁ t) u₀_eq : ∀ (x' : PrimeSpectrum B') (v : Fin 2 → K) (hv : v ∈ Q.N₀ (pointUnder f x')) (hv' : v ∈ Q'.N₀ x') (t : Q.T₀) (s : B) (hs : f s ∉ x'.asIdeal), Q.u₀ (pointUnder f x') ((1 : locRing B (pointUnder f x')) ⊗ₜ[𝒪] (⟨v, hv⟩ : ↥(Q.N₀ (pointUnder f x')))) = LocalizedModule.mk t (⟨s, hs⟩ : (pointUnder f x').asIdeal.primeCompl) → Q'.u₀ x' ((1 : locRing B' x') ⊗ₜ[𝒪] (⟨v, hv'⟩ : ↥(Q'.N₀ x'))) = LocalizedModule.mk (τ₀ t) (⟨f s, hs⟩ : x'.asIdeal.primeCompl) u₁_eq : ∀ (x' : PrimeSpectrum B') (v : Fin 2 → K) (hv : v ∈ Q.N₁ (pointUnder f x')) (hv' : v ∈ Q'.N₁ x') (t : Q.T₁) (s : B) (hs : f s ∉ x'.asIdeal), Q.u₁ (pointUnder f x') ((1 : locRing B (pointUnder f x')) ⊗ₜ[𝒪] (⟨v, hv⟩ : ↥(Q.N₁ (pointUnder f x')))) = LocalizedModule.mk t (⟨s, hs⟩ : (pointUnder f x').asIdeal.primeCompl) → Q'.u₁ x' ((1 : locRing B' x') ⊗ₜ[𝒪] (⟨v, hv'⟩ : ↥(Q'.N₁ x'))) = LocalizedModule.mk (τ₁ t) (⟨f s, hs⟩ : x'.asIdeal.primeCompl) def IsBaseChangeAlong (f : B →ₐ[𝒪] B') (Q : DrinfeldDatum (K := K) π B) (Q' : DrinfeldDatum (K := K) π B') : Prop := Nonempty (BaseChangeAlong f Q Q') end BaseChange section Translate structure TranslateEven (g : GL (Fin 2) K) (c : Kˣ) (Q Q' : DrinfeldDatum (K := K) π B) : Type where N₀_eq : ∀ x : PrimeSpectrum B, Q'.N₀ x = latticeMap (scalarGL c * g⁻¹) (Q.N₀ x) N₁_eq : ∀ x : PrimeSpectrum B, Q'.N₁ x = latticeMap (scalarGL c * g⁻¹) (Q.N₁ x) τ₀ : Q.T₀ ≃ₗ[B] Q'.T₀ τ₁ : Q.T₁ ≃ₗ[B] Q'.T₁ τ₁_Pi₀ : ∀ t, τ₁ (Q.Pi₀ t) = Q'.Pi₀ (τ₀ t) τ₀_Pi₁ : ∀ t, τ₀ (Q.Pi₁ t) = Q'.Pi₁ (τ₁ t) τ₀_u₀ : ∀ (x : PrimeSpectrum B) (v : Fin 2 → K) (hv : v ∈ Q.N₀ x) (hv' : ((scalarGL c * g⁻¹ : GL (Fin 2) K) : Matrix (Fin 2) (Fin 2) K) *ᵥ v ∈ Q'.N₀ x), Q'.u₀ x ((1 : locRing B x) ⊗ₜ[𝒪] (⟨_, hv'⟩ : ↥(Q'.N₀ x))) = LocalizedModule.map x.asIdeal.primeCompl τ₀.toLinearMap (Q.u₀ x ((1 : locRing B x) ⊗ₜ[𝒪] (⟨v, hv⟩ : ↥(Q.N₀ x)))) τ₁_u₁ : ∀ (x : PrimeSpectrum B) (v : Fin 2 → K) (hv : v ∈ Q.N₁ x) (hv' : ((scalarGL c * g⁻¹ : GL (Fin 2) K) : Matrix (Fin 2) (Fin 2) K) *ᵥ v ∈ Q'.N₁ x), Q'.u₁ x ((1 : locRing B x) ⊗ₜ[𝒪] (⟨_, hv'⟩ : ↥(Q'.N₁ x))) = LocalizedModule.map x.asIdeal.primeCompl τ₁.toLinearMap (Q.u₁ x ((1 : locRing B x) ⊗ₜ[𝒪] (⟨v, hv⟩ : ↥(Q.N₁ x)))) def IsTranslateEven (g : GL (Fin 2) K) (c : Kˣ) (Q Q' : DrinfeldDatum (K := K) π B) : Prop := Nonempty (TranslateEven g c Q Q') structure TranslateOdd (g : GL (Fin 2) K) (c₀ c₁ : Kˣ) (Q Q' : DrinfeldDatum (K := K) π B) : Type where c₀_eq : (c₀ : K) = algebraMap 𝒪 K π * c₁ N₀_eq : ∀ x : PrimeSpectrum B, Q'.N₀ x = latticeMap (scalarGL c₀ * g⁻¹) (Q.N₁ x) N₁_eq : ∀ x : PrimeSpectrum B, Q'.N₁ x = latticeMap (scalarGL c₁ * g⁻¹) (Q.N₀ x) σ₀ : Q.T₁ ≃ₗ[B] Q'.T₀ σ₁ : Q.T₀ ≃ₗ[B] Q'.T₁ σ₁_Pi₁ : ∀ t, σ₁ (Q.Pi₁ t) = Q'.Pi₀ (σ₀ t) σ₀_Pi₀ : ∀ t, σ₀ (Q.Pi₀ t) = Q'.Pi₁ (σ₁ t) σ₀_u₀ : ∀ (x : PrimeSpectrum B) (w : Fin 2 → K) (hw : w ∈ Q.N₁ x) (hw' : ((scalarGL c₀ * g⁻¹ : GL (Fin 2) K) : Matrix (Fin 2) (Fin 2) K) *ᵥ w ∈ Q'.N₀ x), Q'.u₀ x ((1 : locRing B x) ⊗ₜ[𝒪] (⟨_, hw'⟩ : ↥(Q'.N₀ x))) = LocalizedModule.map x.asIdeal.primeCompl σ₀.toLinearMap (Q.u₁ x ((1 : locRing B x) ⊗ₜ[𝒪] (⟨w, hw⟩ : ↥(Q.N₁ x)))) σ₁_u₁ : ∀ (x : PrimeSpectrum B) (v : Fin 2 → K) (hv : v ∈ Q.N₀ x) (hv' : ((scalarGL c₁ * g⁻¹ : GL (Fin 2) K) : Matrix (Fin 2) (Fin 2) K) *ᵥ v ∈ Q'.N₁ x), Q'.u₁ x ((1 : locRing B x) ⊗ₜ[𝒪] (⟨_, hv'⟩ : ↥(Q'.N₁ x))) = LocalizedModule.map x.asIdeal.primeCompl σ₁.toLinearMap (Q.u₀ x ((1 : locRing B x) ⊗ₜ[𝒪] (⟨v, hv⟩ : ↥(Q.N₀ x)))) def IsTranslateOdd (g : GL (Fin 2) K) (c₀ c₁ : Kˣ) (Q Q' : DrinfeldDatum (K := K) π B) : Prop := Nonempty (TranslateOdd g c₀ c₁ Q Q') def Iso.toTranslateEven {Q Q' : DrinfeldDatum (K := K) π B} (e : Iso Q Q') : TranslateEven 1 1 Q Q' where N₀_eq x := by rw [scalarGL_one, one_mul, inv_one, latticeMap_one]; exact (e.N₀_eq x).symm N₁_eq x := by rw [scalarGL_one, one_mul, inv_one, latticeMap_one]; exact (e.N₁_eq x).symm τ₀ := e.τ₀ τ₁ := e.τ₁ τ₁_Pi₀ := e.τ₁_Pi₀ τ₀_Pi₁ := e.τ₀_Pi₁ τ₀_u₀ x v hv hv' := by have h1 : ((scalarGL (1 : Kˣ) * (1 : GL (Fin 2) K)⁻¹ : GL (Fin 2) K) : Matrix (Fin 2) (Fin 2) K) *ᵥ v = v := by rw [scalarGL_one, one_mul, inv_one, Units.val_one, Matrix.one_mulVec] have hv'' : v ∈ Q'.N₀ x := by rw [← h1]; exact hv' have key := e.τ₀_u₀ x v hv hv'' have hsub : (⟨_, hv'⟩ : ↥(Q'.N₀ x)) = ⟨v, hv''⟩ := Subtype.ext h1 rw [hsub]; exact key τ₁_u₁ x v hv hv' := by have h1 : ((scalarGL (1 : Kˣ) * (1 : GL (Fin 2) K)⁻¹ : GL (Fin 2) K) : Matrix (Fin 2) (Fin 2) K) *ᵥ v = v := by rw [scalarGL_one, one_mul, inv_one, Units.val_one, Matrix.one_mulVec] have hv'' : v ∈ Q'.N₁ x := by rw [← h1]; exact hv' have key := e.τ₁_u₁ x v hv hv'' have hsub : (⟨_, hv'⟩ : ↥(Q'.N₁ x)) = ⟨v, hv''⟩ := Subtype.ext h1 rw [hsub]; exact key end Translate end DrinfeldDatum end FormalOmega end CerednikDrinfeld end
Statements phrased using this module (55)
- Naturality in the test algebra of the quadruple–point comparison
CerednikDrinfeld.FormalOmega.DrinfeldDatum.IsQuadrupleOf.map_of_isBaseChangeAlong0 below · depth 32 - Drinfeld quadruples transport along even translates
CerednikDrinfeld.FormalOmega.DrinfeldDatum.IsQuadrupleOf.pullback_of_isTranslateEven0 below · depth 32 - Odd translates preserve the quadruple–Deligne datum correspondence
CerednikDrinfeld.FormalOmega.DrinfeldDatum.IsQuadrupleOf.pullback_of_isTranslateOdd0 below · depth 32 - Cartier quadruples of rigidified modules commute with base change
CerednikDrinfeld.SpecialFormal.Rigidified.IsCartierQuadruple.isBaseChangeAlong101 below · depth 32 - Cartier quadruples of e-translates are E(e)-translates
CerednikDrinfeld.SpecialFormal.Rigidified.IsCartierQuadruple.isTranslateEven_or_isTranslateOdd_of_isTranslate89 below · depth 32 - Lattice squeeze along a base change of Drinfeld data
CerednikDrinfeld.FormalOmega.DrinfeldDatum.N_eq_of_le_of_mem_stratum_iff3 below · depth 33 - Zariski gluing of Drinfeld data along a basic open cover
CerednikDrinfeld.FormalOmega.DrinfeldDatum.exists_forall_isBaseChangeAlong_away_of_overlap12 below · depth 33 - Drinfeld data descend along localisations of the base
CerednikDrinfeld.FormalOmega.DrinfeldDatum.exists_isBaseChangeAlong_of_isLocalization0 below · depth 33 - Base change along f is invariant under isomorphism of the target datum
CerednikDrinfeld.FormalOmega.DrinfeldDatum.isBaseChangeAlong_of_isBaseChangeAlong_of_isIsomorphic0 below · depth 33 - Being the quadruple of a Deligne datum is Zariski-local
CerednikDrinfeld.FormalOmega.DrinfeldDatum.isQuadrupleOf_of_forall_isBaseChangeAlong_away0 below · depth 33 - The two strata of a Drinfeld datum cover Spec B
CerednikDrinfeld.FormalOmega.DrinfeldDatum.mem_stratum0_or_mem_stratum11 below · depth 33 - Strata of Drinfeld data pull back along semilinear comparisons
CerednikDrinfeld.FormalOmega.DrinfeldDatum.mem_stratum_iff_of_semilinear1 below · depth 33 - Lattice stalks of an even isogeny translate
CerednikDrinfeld.SpecialFormal.Rigidified.IsCartierQuadruple.N_eq_latticeMap_of_isTranslate_of_even82 below · depth 33 - Odd isogeny-translate lattices in a Čerednik–Drinfeld Cartier quadruple
CerednikDrinfeld.SpecialFormal.Rigidified.IsCartierQuadruple.N_eq_latticeMap_of_isTranslate_of_odd85 below · depth 33 - Base change of a Cartier quadruple: the lattices can only grow
CerednikDrinfeld.SpecialFormal.Rigidified.IsCartierQuadruple.N_le_of_map87 below · depth 33 - Cartier quadruples match under an even isogeny translate
CerednikDrinfeld.SpecialFormal.Rigidified.IsCartierQuadruple.exists_linearEquiv_stalkMap_comp_of_isTranslate_of_even82 below · depth 33 - Cartier quadruples of an odd isogeny translate, pieces swapped
CerednikDrinfeld.SpecialFormal.Rigidified.IsCartierQuadruple.exists_linearEquiv_stalkMap_comp_of_isTranslate_of_odd85 below · depth 33 - Semilinear tangent maps under base change of Cartier quadruples
CerednikDrinfeld.SpecialFormal.Rigidified.IsCartierQuadrupleVia.exists_semilinear_tangent1 below · depth 33 - Base change of the stalk maps u₀,u₁ of a Cartier quadruple
CerednikDrinfeld.SpecialFormal.Rigidified.IsCartierQuadrupleVia.u_baseChange90 below · depth 33 - Off the opposite stratum, N₀ = pN₁ or N₀ = N₁
CerednikDrinfeld.FormalOmega.DrinfeldDatum.N0_eq_of_not_mem_stratum1 below · depth 34 - Gluing the modules of Drinfeld data along basic opens
CerednikDrinfeld.FormalOmega.DrinfeldDatum.exists_gluedModules_of_baseChangeAlong_overlap10 below · depth 34 - Gluing submodule-valued functions along a basic open cover of Spec B
CerednikDrinfeld.FormalOmega.exists_forall_pointUnder_eq_and_isOpen_setOf_mem_of_span_eq_top0 below · depth 34 - Base change comparison of graded Cartier data for rigidified triples
CerednikDrinfeld.SpecialFormal.Rigidified.exists_baseChange_comparison19 below · depth 34 - Transport of η-sections under an odd isogeny translate
CerednikDrinfeld.SpecialFormal.Rigidified.exists_isEtaSection_iff_isEtaSection_of_isTranslate_of_odd84 below · depth 34 - Rigidified coordinates exist for elements of ηᵢ(L')
CerednikDrinfeld.SpecialFormal.Rigidified.exists_isEtaSection_of_mem_etaPiece_of_isAlgClosed174 below · depth 34 - Translated rigidification numerator equals the A-twisted numerator
CerednikDrinfeld.SpecialFormal.Rigidified.exists_nsmul_nMap_rigidNum_translate_eq_nsmul_rigidNum_mulVec0 below · depth 34 - Base change of η-sections with rigidified coordinates
CerednikDrinfeld.SpecialFormal.Rigidified.isEtaSection_map_nMap_of_isBaseChangeAlong0 below · depth 34 - Graded pieces split over basic opens of a p-nilpotent base
CerednikDrinfeld.SpecialFormal.Rigidified.isGradedS_and_isGradedSbar_and_isGradedPhiS_awayHom6 below · depth 34 - Equality of fractions from agreeing coordinates in a localised submodule
CerednikDrinfeld.SpecialFormal.Rigidified.localizedModule_mk_eq_of_coord0 below · depth 34 - Nested ℤₚ-lattices of equal determinant index coincide
LT.LatticeTree.eq_of_le_of_hasDetIndex_padic0 below · depth 34 - Composition of base-change witnesses for Drinfeld data
CerednikDrinfeld.FormalOmega.DrinfeldDatum.BaseChangeAlong.exists_comp0 below · depth 35 - Uniqueness of base change of a Drinfeld datum along g
CerednikDrinfeld.FormalOmega.DrinfeldDatum.BaseChangeAlong.exists_iso0 below · depth 35 - Uniqueness of base-change comparison maps τ₀,τ₁
CerednikDrinfeld.FormalOmega.DrinfeldDatum.BaseChangeAlong.tau_unique2 below · depth 35 - Existence of even or odd GL₂(K)-translates of a Drinfeld datum
CerednikDrinfeld.FormalOmega.DrinfeldDatum.exists_isTranslateEven_or_exists_isTranslateOdd2 below · depth 35 - Rigidified ℚₚ-coordinates on the η-pieces over algebraically closed fields
CerednikDrinfeld.SpecialFormal.Rigidified.isEtaSection_coordinates_of_isAlgClosed173 below · depth 35 - Existence of the even translate when det(cg⁻¹) is a unit
CerednikDrinfeld.FormalOmega.DrinfeldDatum.exists_isTranslateEven_of_det_eq_algebraMap0 below · depth 36 - Existence of the odd translate of a Drinfeld datum
CerednikDrinfeld.FormalOmega.DrinfeldDatum.exists_isTranslateOdd_of_det_mul_eq_algebraMap0 below · depth 36 - Injectivity of the rigid numerator over an algebraically closed field
CerednikDrinfeld.SpecialFormal.Rigidified.eq_zero_of_nsmul_rigidNum_eq_zero_of_isAlgClosed83 below · depth 36 - Additive bijections ℤₚ² → ηᵢ for rigidified special formal modules
CerednikDrinfeld.SpecialFormal.Rigidified.exists_bijOn_etaPiece_of_isAlgClosed48 below · depth 36 - Rigid numbering lies in reduced η up to a p-power
CerednikDrinfeld.SpecialFormal.Rigidified.exists_mem_etaPiece_nsmul_rigidNum_eq_etaRed_nVarpi_of_isAlgClosed113 below · depth 36 - p-power commensurability of η-pieces with `rigidNum`
CerednikDrinfeld.SpecialFormal.Rigidified.exists_nsmul_etaRed_nVarpi_eq_rigidNum_of_mem_etaPiece_of_isAlgClosed162 below · depth 36 - Tangent germs transported by a Cartier quadruple isomorphism
CerednikDrinfeld.SpecialFormal.Rigidified.IsCartierQuadrupleVia.awayToLoc_tangent_eq_sum_of_iso0 below · depth 37 - Lie transport along an isomorphism of Cartier quadruples
CerednikDrinfeld.SpecialFormal.Rigidified.IsCartierQuadrupleVia.exists_linearEquiv_lie_of_iso_of_isIsomorphic_map_fstHom305 below · depth 37 - Line transport determines first-order deformations at a smooth point
CerednikDrinfeld.SpecialFormal.Rigidified.IsCartierQuadrupleVia.isIsomorphic_of_line_transport_of_not_node380 below · depth 37 - Existence of a canonical L-map for the base-changed module Φ̄
CerednikDrinfeld.SpecialFormal.Rigidified.exists_isCanonicalLMap_phibarS_of_isAlgClosed82 below · depth 37 - Pointwise p-power divisibility of η₀ into the base-changed rigidification
CerednikDrinfeld.SpecialFormal.Rigidified.exists_nsmul_eq_nMap_bcPhi_apply_of_mem_etaPiece_of_isAlgClosed150 below · depth 37 - Pointwise p-power comparison of η-pieces along ρ̄
CerednikDrinfeld.SpecialFormal.Rigidified.exists_nsmul_etaRed_nVarpi_eq_nMap_rhoC_of_mem_etaPiece_of_isAlgClosed119 below · depth 37 - Base change sends r_Φ into the degree-zero η-piece
CerednikDrinfeld.SpecialFormal.Rigidified.nMap_bcPhi_apply_mem_etaPiece_zero_of_isAlgClosed106 below · depth 37 - Transport of ηᵢ-sections along Λ with prescribed tangent vector
CerednikDrinfeld.SpecialFormal.Rigidified.IsCartierQuadrupleVia.exists_mem_etaPiece_tangent_eq_of_line_transport303 below · depth 38 - Transport of a Cartier quadruple along an isomorphism of rigidified modules
CerednikDrinfeld.SpecialFormal.Rigidified.IsCartierQuadrupleVia.exists_via_linearPart_of_isODHom_of_comp_eq3 below · depth 38 - Uniform p-power exponent for base change onto η₀
CerednikDrinfeld.SpecialFormal.Rigidified.exists_nsmul_eq_nMap_bcPhi_apply_of_mem_etaPiece_of_isAlgClosed_uniform149 below · depth 38 - Uniform exponent for η-pieces under reduction and isogeny
CerednikDrinfeld.SpecialFormal.Rigidified.exists_nsmul_etaRed_nVarpi_eq_nMap_rhoC_of_mem_etaPiece_of_isAlgClosed_uniform118 below · depth 38 - A rank-two ℤₚ-frame for η₀ after base change
CerednikDrinfeld.SpecialFormal.Rigidified.exists_bijOn_etaPiece_zero_phibarS_of_isAlgClosed48 below · depth 39 - Injectivity and p-power cofinal image of ρ̄_* on Cartier modules
CerednikDrinfeld.SpecialFormal.Rigidified.exists_rhoC_eq_nsmul_and_rhoC_injective_of_isAlgClosed23 below · depth 39 - Base change after rigidification is injective on ℤₚ²
CerednikDrinfeld.SpecialFormal.Rigidified.nMap_bcPhi_rPhi_injective_of_isAlgClosed82 below · depth 39