Definitions/Def_AutomorphicForm_WindowedSiegelSet.lean
Windowed Siegel sets for adelic
For a normed field K and g=\begin{pmatrix}a&b\\c&d\end{pmatrix}\in\mathrm{GL}_2(K) the module defines four real-valued functionals: topNormSq =\|a\|^2+\|b\|^2 and rowNormSq =\|c\|^2+\|d\|^2 (both on matrices), localHeight g=\|\det g\|/\mathrm{rowNormSq}(g) and xWindowSq g=\mathrm{topNormSq}(g)/\mathrm{rowNormSq}(g)-\mathrm{localHeight}(g)^2 (on units). For a number field F, archHeight F of g\in\mathrm{GL}_2(\mathbb{A}_{F,\infty}) is \prod_{v\mid\infty}\mathrm{localHeight}(g_v)^{\mathrm{mult}(v)}, the v-component being taken through the project's AdelicLevel.archComponent. The central object, integralWindowedSiegelSet F c u, is the subset of the project's carrier AdelicGL2 (π F) F of those g whose finite part AdelicLevel.glFin lies in AdelicLevel.finiteIntegralGL2, whose archimedean part has archHeight \ge c, and which satisfy \mathrm{xWindowSq}(g_v)\le u^2 at every infinite place v. Auxiliary definitions: globalTranslate F Ξ³ g is left multiplication by the image of \gamma\in\mathrm{GL}_2(F) under globalPoints; siegelOverlapSet F c u is the set of \gamma for which some point of the set is carried into the set; and three Prop-valued definitions stating properties rather than proving them: WindowedSiegelProperty (the image of the overlap set in \mathrm{GL}_2(F)/Z is finite), WindowedAdelicReduction (every adelic point has a rational translate in the set), and MeasureZeroOrInfiniteAt (a given measure on the carrier assigns the set measure 0 or \infty).
The theorems proved are elementary: \mathrm{rowNormSq}>0 and \mathrm{localHeight}>0 on invertible matrices (via non-vanishing of the bottom row), \mathrm{archHeight}>0, the normalisations at the identity, membership of 1 when c\le 1, the scaling of topNormSq, rowNormSq by \|z\|^2 and the invariance of localHeight, xWindowSq, archHeight under left multiplication by a matrix with diagonal entries z and vanishing off-diagonal entries, whence stability of the windowed Siegel set under such central elements with finite part 1 and nonvanishing archimedean components; finally, the trivial remark that a measure satisfying MeasureZeroOrInfiniteAt cannot give the set finite nonzero measure.
Relation to Mathlib
Mathlib has no notion of Siegel set or of these height/window functionals; all definitions here are the project's own, built on Mathlib's GL (Fin 2), InfiniteAdeleRing, AdeleRing, InfinitePlace and MeasureTheory.Measure.
Where it is used
The windowed Siegel set supplies the explicit domain used when adelic automorphic forms for \mathrm{GL}_2 are handled through the project's carrier-pins bundle; the Prop-valued definitions WindowedSiegelProperty, WindowedAdelicReduction and MeasureZeroOrInfiniteAt are the reduction-theoretic and measure-theoretic statements that consumer modules assume or establish about it.
References
- A. Borel, Introduction aux groupes arithmΓ©tiques, Publications de l'Institut de MathΓ©matique de l'UniversitΓ© de Strasbourg XV, Hermann, 1969
- S. Gelbart, Automorphic Forms on Adele Groups, Annals of Mathematics Studies 83, Princeton University Press, 1975
References are suggested automatically and have not been individually verified.
English text generated automatically from the Lean source; the Lean statement is authoritative.
- 308 lines
- 29 declarations
- used in the statements of 28 theorems and imported by 35 proofs
- imports 2 definition modules
Source file: Definitions/Def_AutomorphicForm_WindowedSiegelSet.lean
Declarations
- def
AutomorphicForm.WindowedSiegel.topNormSq - def
AutomorphicForm.WindowedSiegel.rowNormSq - def
AutomorphicForm.WindowedSiegel.localHeight - def
AutomorphicForm.WindowedSiegel.xWindowSq - theorem
AutomorphicForm.WindowedSiegel.rowNormSq_one - theorem
AutomorphicForm.WindowedSiegel.localHeight_one - theorem
AutomorphicForm.WindowedSiegel.xWindowSq_one - def
AutomorphicForm.WindowedSiegel.archHeight - theorem
AutomorphicForm.WindowedSiegel.archHeight_one - def
AutomorphicForm.WindowedSiegel.integralWindowedSiegelSet - def
AutomorphicForm.WindowedSiegel.globalTranslate - def
AutomorphicForm.WindowedSiegel.siegelOverlapSet - def
AutomorphicForm.WindowedSiegel.WindowedSiegelProperty - def
AutomorphicForm.WindowedSiegel.WindowedAdelicReduction - theorem
AutomorphicForm.WindowedSiegel.one_mem_integralWindowedSiegelSet - theorem
AutomorphicForm.WindowedSiegel.bottom_row_ne_zero - theorem
AutomorphicForm.WindowedSiegel.rowNormSq_pos - theorem
AutomorphicForm.WindowedSiegel.rowNormSq_scalar_entries_mul - theorem
AutomorphicForm.WindowedSiegel.topNormSq_scalar_entries_mul - theorem
AutomorphicForm.WindowedSiegel.localHeight_scalar_entries_mul - theorem
AutomorphicForm.WindowedSiegel.xWindowSq_scalar_entries_mul - theorem
AutomorphicForm.WindowedSiegel.glFin_scalar_eq_one - theorem
AutomorphicForm.WindowedSiegel.archHeight_scalar_entries_mul - theorem
AutomorphicForm.WindowedSiegel.scalar_smul_mem_integralWindowedSiegelSet - theorem
AutomorphicForm.WindowedSiegel.localHeight_pos - theorem
AutomorphicForm.WindowedSiegel.archHeight_pos - def
AutomorphicForm.WindowedSiegel.MeasureZeroOrInfiniteAt - theorem
AutomorphicForm.WindowedSiegel.not_pos_and_lt_top_of_eq_zero_or_top - theorem
AutomorphicForm.WindowedSiegel.not_pos_and_lt_top_of_measureZeroOrInfiniteAt
Source
import Definitions.Def_AutomorphicForm_CarrierPins import Definitions.Def_NumberField_AdelicLevel open IsDedekindDomain NumberField Matrix MeasureTheory open scoped ENNReal noncomputable section namespace AutomorphicForm namespace WindowedSiegel variable {K : Type*} [NormedField K] def topNormSq (g : Matrix (Fin 2) (Fin 2) K) : β := βg 0 0β ^ 2 + βg 0 1β ^ 2 def rowNormSq (g : Matrix (Fin 2) (Fin 2) K) : β := βg 1 0β ^ 2 + βg 1 1β ^ 2 def localHeight (g : GL (Fin 2) K) : β := β(g : Matrix (Fin 2) (Fin 2) K).detβ / rowNormSq (g : Matrix (Fin 2) (Fin 2) K) def xWindowSq (g : GL (Fin 2) K) : β := topNormSq (g : Matrix (Fin 2) (Fin 2) K) / rowNormSq (g : Matrix (Fin 2) (Fin 2) K) - localHeight g ^ 2 theorem rowNormSq_one : rowNormSq (1 : Matrix (Fin 2) (Fin 2) K) = 1 := by unfold rowNormSq rw [Matrix.one_apply_ne (by decide : (1 : Fin 2) β 0), Matrix.one_apply_eq] simp theorem localHeight_one : localHeight (1 : GL (Fin 2) K) = 1 := by unfold localHeight rw [show ((1 : GL (Fin 2) K) : Matrix (Fin 2) (Fin 2) K) = 1 from rfl, rowNormSq_one, Matrix.det_one] simp theorem xWindowSq_one : xWindowSq (1 : GL (Fin 2) K) = 0 := by unfold xWindowSq topNormSq rw [show ((1 : GL (Fin 2) K) : Matrix (Fin 2) (Fin 2) K) = 1 from rfl, rowNormSq_one, localHeight_one, Matrix.one_apply_eq, Matrix.one_apply_ne (by decide : (0 : Fin 2) β 1)] simp variable (F : Type) [Field F] [NumberField F] def archHeight (g : GL (Fin 2) (InfiniteAdeleRing F)) : β := β v : InfinitePlace F, localHeight (AdelicLevel.archComponent F v g) ^ v.mult theorem archHeight_one : archHeight F (1 : GL (Fin 2) (InfiniteAdeleRing F)) = 1 := by unfold archHeight simp [map_one, localHeight_one] def integralWindowedSiegelSet (c u : β) : Set (AdelicGL2 (π F) F) := {g | AdelicLevel.glFin (π F) F g β AdelicLevel.finiteIntegralGL2 (π F) F β§ c β€ archHeight F (AdelicLevel.glArch (π F) F g) β§ β v : InfinitePlace F, xWindowSq (AdelicLevel.archComponent F v (AdelicLevel.glArch (π F) F g)) β€ u ^ 2} def globalTranslate (Ξ³ : GL (Fin 2) F) (g : AdelicGL2 (π F) F) : AdelicGL2 (π F) F := globalPoints (π F) F Ξ³ * g def siegelOverlapSet (c u : β) : Set (GL (Fin 2) F) := {Ξ³ | β g β integralWindowedSiegelSet F c u, globalTranslate F Ξ³ g β integralWindowedSiegelSet F c u} def WindowedSiegelProperty (c u : β) : Prop := (((QuotientGroup.mk : GL (Fin 2) F β GL (Fin 2) F β§Έ Subgroup.center (GL (Fin 2) F))) '' siegelOverlapSet F c u).Finite def WindowedAdelicReduction (c u : β) : Prop := β g : AdelicGL2 (π F) F, β Ξ³ : GL (Fin 2) F, globalTranslate F Ξ³ g β integralWindowedSiegelSet F c u theorem one_mem_integralWindowedSiegelSet {c u : β} (hc : c β€ 1) : (1 : AdelicGL2 (π F) F) β integralWindowedSiegelSet F c u := by refine β¨?_, ?_, fun v => ?_β© Β· rw [map_one] exact one_mem _ Β· rw [map_one, archHeight_one] exact hc Β· rw [map_one, map_one, xWindowSq_one] exact sq_nonneg u section Invariance variable {K : Type*} [NormedField K] theorem bottom_row_ne_zero (g : GL (Fin 2) K) : (g : Matrix (Fin 2) (Fin 2) K) 1 0 β 0 β¨ (g : Matrix (Fin 2) (Fin 2) K) 1 1 β 0 := by rcases eq_or_ne ((g : Matrix (Fin 2) (Fin 2) K) 1 0) 0 with h0 | h0 Β· rcases eq_or_ne ((g : Matrix (Fin 2) (Fin 2) K) 1 1) 0 with h1 | h1 Β· exact absurd (by rw [Matrix.det_fin_two, h0, h1]; ring) (Matrix.GeneralLinearGroup.det_ne_zero g) Β· exact Or.inr h1 Β· exact Or.inl h0 theorem rowNormSq_pos (g : GL (Fin 2) K) : 0 < rowNormSq (g : Matrix (Fin 2) (Fin 2) K) := by unfold rowNormSq rcases bottom_row_ne_zero g with h | h Β· exact add_pos_of_pos_of_nonneg (pow_pos (norm_pos_iff.2 h) 2) (sq_nonneg _) Β· exact add_pos_of_nonneg_of_pos (sq_nonneg _) (pow_pos (norm_pos_iff.2 h) 2) theorem rowNormSq_scalar_entries_mul {s : GL (Fin 2) K} {z : K} (h10 : (s : Matrix (Fin 2) (Fin 2) K) 1 0 = 0) (h11 : (s : Matrix (Fin 2) (Fin 2) K) 1 1 = z) (g : GL (Fin 2) K) : rowNormSq ((s * g : GL (Fin 2) K) : Matrix (Fin 2) (Fin 2) K) = βzβ ^ 2 * rowNormSq (g : Matrix (Fin 2) (Fin 2) K) := by have hcoe : ((s * g : GL (Fin 2) K) : Matrix (Fin 2) (Fin 2) K) = (s : Matrix (Fin 2) (Fin 2) K) * (g : Matrix (Fin 2) (Fin 2) K) := rfl have hbot : β j : Fin 2, ((s : Matrix (Fin 2) (Fin 2) K) * (g : Matrix (Fin 2) (Fin 2) K)) 1 j = z * (g : Matrix (Fin 2) (Fin 2) K) 1 j := by intro j rw [Matrix.mul_apply, Fin.sum_univ_two, h10, h11] ring unfold rowNormSq rw [hcoe, hbot 0, hbot 1, norm_mul, norm_mul, mul_pow, mul_pow] ring theorem topNormSq_scalar_entries_mul {s : GL (Fin 2) K} {z : K} (h00 : (s : Matrix (Fin 2) (Fin 2) K) 0 0 = z) (h01 : (s : Matrix (Fin 2) (Fin 2) K) 0 1 = 0) (g : GL (Fin 2) K) : topNormSq ((s * g : GL (Fin 2) K) : Matrix (Fin 2) (Fin 2) K) = βzβ ^ 2 * topNormSq (g : Matrix (Fin 2) (Fin 2) K) := by have hcoe : ((s * g : GL (Fin 2) K) : Matrix (Fin 2) (Fin 2) K) = (s : Matrix (Fin 2) (Fin 2) K) * (g : Matrix (Fin 2) (Fin 2) K) := rfl have htop : β j : Fin 2, ((s : Matrix (Fin 2) (Fin 2) K) * (g : Matrix (Fin 2) (Fin 2) K)) 0 j = z * (g : Matrix (Fin 2) (Fin 2) K) 0 j := by intro j rw [Matrix.mul_apply, Fin.sum_univ_two, h00, h01] ring unfold topNormSq rw [hcoe, htop 0, htop 1, norm_mul, norm_mul, mul_pow, mul_pow] ring theorem localHeight_scalar_entries_mul {s : GL (Fin 2) K} {z : K} (hz : z β 0) (h00 : (s : Matrix (Fin 2) (Fin 2) K) 0 0 = z) (h01 : (s : Matrix (Fin 2) (Fin 2) K) 0 1 = 0) (h10 : (s : Matrix (Fin 2) (Fin 2) K) 1 0 = 0) (h11 : (s : Matrix (Fin 2) (Fin 2) K) 1 1 = z) (g : GL (Fin 2) K) : localHeight (s * g) = localHeight g := by have hcoe : ((s * g : GL (Fin 2) K) : Matrix (Fin 2) (Fin 2) K) = (s : Matrix (Fin 2) (Fin 2) K) * (g : Matrix (Fin 2) (Fin 2) K) := rfl have hdets : (s : Matrix (Fin 2) (Fin 2) K).det = z ^ 2 := by rw [Matrix.det_fin_two, h00, h01, h10, h11] ring have hdet : β((s * g : GL (Fin 2) K) : Matrix (Fin 2) (Fin 2) K).detβ = βzβ ^ 2 * β(g : Matrix (Fin 2) (Fin 2) K).detβ := by rw [hcoe, Matrix.det_mul, hdets, norm_mul, norm_pow] have hz2 : (0 : β) < βzβ ^ 2 := pow_pos (norm_pos_iff.2 hz) 2 have hrow := rowNormSq_scalar_entries_mul h10 h11 g unfold localHeight rw [hdet, hrow, div_eq_div_iff (mul_pos hz2 (rowNormSq_pos g)).ne' (rowNormSq_pos g).ne'] ring theorem xWindowSq_scalar_entries_mul {s : GL (Fin 2) K} {z : K} (hz : z β 0) (h00 : (s : Matrix (Fin 2) (Fin 2) K) 0 0 = z) (h01 : (s : Matrix (Fin 2) (Fin 2) K) 0 1 = 0) (h10 : (s : Matrix (Fin 2) (Fin 2) K) 1 0 = 0) (h11 : (s : Matrix (Fin 2) (Fin 2) K) 1 1 = z) (g : GL (Fin 2) K) : xWindowSq (s * g) = xWindowSq g := by have hz2 : (βzβ ^ 2 : β) β 0 := (pow_pos (norm_pos_iff.2 hz) 2).ne' unfold xWindowSq rw [topNormSq_scalar_entries_mul h00 h01 g, rowNormSq_scalar_entries_mul h10 h11 g, localHeight_scalar_entries_mul hz h00 h01 h10 h11 g, mul_div_mul_left _ _ hz2] end Invariance section AdelicInvariance variable (F : Type) [Field F] [NumberField F] theorem glFin_scalar_eq_one {s : AdelicGL2 (π F) F} {w : AdeleRing (π F) F} (hwf : w.2 = 1) (h00 : (s : Matrix (Fin 2) (Fin 2) (AdeleRing (π F) F)) 0 0 = w) (h01 : (s : Matrix (Fin 2) (Fin 2) (AdeleRing (π F) F)) 0 1 = 0) (h10 : (s : Matrix (Fin 2) (Fin 2) (AdeleRing (π F) F)) 1 0 = 0) (h11 : (s : Matrix (Fin 2) (Fin 2) (AdeleRing (π F) F)) 1 1 = w) : AdelicLevel.glFin (π F) F s = 1 := by have h00' : ((s : Matrix (Fin 2) (Fin 2) (AdeleRing (π F) F)) 0 0).2 = 1 := by rw [h00, hwf] have h01' : ((s : Matrix (Fin 2) (Fin 2) (AdeleRing (π F) F)) 0 1).2 = 0 := by rw [h01]; rfl have h10' : ((s : Matrix (Fin 2) (Fin 2) (AdeleRing (π F) F)) 1 0).2 = 0 := by rw [h10]; rfl have h11' : ((s : Matrix (Fin 2) (Fin 2) (AdeleRing (π F) F)) 1 1).2 = 1 := by rw [h11, hwf] apply Units.ext apply Matrix.ext intro i j fin_cases i <;> fin_cases j <;> simp [AdelicLevel.glFin_apply, h00', h01', h10', h11'] theorem archHeight_scalar_entries_mul {s : GL (Fin 2) (InfiniteAdeleRing F)} {z : InfiniteAdeleRing F} (hz : β v : InfinitePlace F, z v β 0) (h00 : (s : Matrix (Fin 2) (Fin 2) (InfiniteAdeleRing F)) 0 0 = z) (h01 : (s : Matrix (Fin 2) (Fin 2) (InfiniteAdeleRing F)) 0 1 = 0) (h10 : (s : Matrix (Fin 2) (Fin 2) (InfiniteAdeleRing F)) 1 0 = 0) (h11 : (s : Matrix (Fin 2) (Fin 2) (InfiniteAdeleRing F)) 1 1 = z) (g : GL (Fin 2) (InfiniteAdeleRing F)) : archHeight F (s * g) = archHeight F g := by unfold archHeight refine Finset.prod_congr rfl fun v _ β¦ ?_ rw [map_mul] congr 1 refine localHeight_scalar_entries_mul (hz v) ?_ ?_ ?_ ?_ (AdelicLevel.archComponent F v g) Β· rw [AdelicLevel.archComponent_apply, h00] Β· rw [AdelicLevel.archComponent_apply, h01] rfl Β· rw [AdelicLevel.archComponent_apply, h10] rfl Β· rw [AdelicLevel.archComponent_apply, h11] theorem scalar_smul_mem_integralWindowedSiegelSet {c u : β} {s : AdelicGL2 (π F) F} {w : AdeleRing (π F) F} (hwf : w.2 = 1) (hwa : β v : InfinitePlace F, w.1 v β 0) (h00 : (s : Matrix (Fin 2) (Fin 2) (AdeleRing (π F) F)) 0 0 = w) (h01 : (s : Matrix (Fin 2) (Fin 2) (AdeleRing (π F) F)) 0 1 = 0) (h10 : (s : Matrix (Fin 2) (Fin 2) (AdeleRing (π F) F)) 1 0 = 0) (h11 : (s : Matrix (Fin 2) (Fin 2) (AdeleRing (π F) F)) 1 1 = w) {g : AdelicGL2 (π F) F} (hg : g β integralWindowedSiegelSet F c u) : s * g β integralWindowedSiegelSet F c u := by obtain β¨h1, h2, h3β© := hg have hglFin : AdelicLevel.glFin (π F) F s = 1 := glFin_scalar_eq_one F hwf h00 h01 h10 h11 have harch00 : ((AdelicLevel.glArch (π F) F s : GL (Fin 2) (InfiniteAdeleRing F)) : Matrix (Fin 2) (Fin 2) (InfiniteAdeleRing F)) 0 0 = w.1 := by rw [AdelicLevel.glArch_apply, h00] have harch01 : ((AdelicLevel.glArch (π F) F s : GL (Fin 2) (InfiniteAdeleRing F)) : Matrix (Fin 2) (Fin 2) (InfiniteAdeleRing F)) 0 1 = 0 := by rw [AdelicLevel.glArch_apply, h01] rfl have harch10 : ((AdelicLevel.glArch (π F) F s : GL (Fin 2) (InfiniteAdeleRing F)) : Matrix (Fin 2) (Fin 2) (InfiniteAdeleRing F)) 1 0 = 0 := by rw [AdelicLevel.glArch_apply, h10] rfl have harch11 : ((AdelicLevel.glArch (π F) F s : GL (Fin 2) (InfiniteAdeleRing F)) : Matrix (Fin 2) (Fin 2) (InfiniteAdeleRing F)) 1 1 = w.1 := by rw [AdelicLevel.glArch_apply, h11] refine β¨?_, ?_, fun v => ?_β© Β· rw [map_mul, hglFin, one_mul] exact h1 Β· rw [map_mul, archHeight_scalar_entries_mul F hwa harch00 harch01 harch10 harch11] exact h2 Β· rw [map_mul, map_mul] have hcomp00 : ((AdelicLevel.archComponent F v (AdelicLevel.glArch (π F) F s) : GL (Fin 2) (v.Completion)) : Matrix (Fin 2) (Fin 2) (v.Completion)) 0 0 = w.1 v := by rw [AdelicLevel.archComponent_apply, harch00] have hcomp01 : ((AdelicLevel.archComponent F v (AdelicLevel.glArch (π F) F s) : GL (Fin 2) (v.Completion)) : Matrix (Fin 2) (Fin 2) (v.Completion)) 0 1 = 0 := by rw [AdelicLevel.archComponent_apply, harch01] rfl have hcomp10 : ((AdelicLevel.archComponent F v (AdelicLevel.glArch (π F) F s) : GL (Fin 2) (v.Completion)) : Matrix (Fin 2) (Fin 2) (v.Completion)) 1 0 = 0 := by rw [AdelicLevel.archComponent_apply, harch10] rfl have hcomp11 : ((AdelicLevel.archComponent F v (AdelicLevel.glArch (π F) F s) : GL (Fin 2) (v.Completion)) : Matrix (Fin 2) (Fin 2) (v.Completion)) 1 1 = w.1 v := by rw [AdelicLevel.archComponent_apply, harch11] rw [xWindowSq_scalar_entries_mul (hwa v) hcomp00 hcomp01 hcomp10 hcomp11] exact h3 v end AdelicInvariance section Positivity variable {K : Type*} [NormedField K] theorem localHeight_pos (g : GL (Fin 2) K) : 0 < localHeight g := by refine div_pos ?_ (rowNormSq_pos g) rw [norm_pos_iff] exact Matrix.GeneralLinearGroup.det_ne_zero g end Positivity variable (F : Type) [Field F] [NumberField F] theorem archHeight_pos (g : GL (Fin 2) (InfiniteAdeleRing F)) : 0 < archHeight F g := by unfold archHeight exact Finset.prod_pos fun v _ => pow_pos (localHeight_pos _) _ def MeasureZeroOrInfiniteAt [MeasurableSpace (AdelicGL2 (π F) F)] (ΞΌ : Measure (AdelicGL2 (π F) F)) (c u : β) : Prop := ΞΌ (integralWindowedSiegelSet F c u) = 0 β¨ ΞΌ (integralWindowedSiegelSet F c u) = β€ theorem not_pos_and_lt_top_of_eq_zero_or_top {x : ββ₯0β} (h : x = 0 β¨ x = β€) : Β¬(0 < x β§ x < β€) := by rcases h with h | h <;> simp [h] theorem not_pos_and_lt_top_of_measureZeroOrInfiniteAt [MeasurableSpace (AdelicGL2 (π F) F)] {ΞΌ : Measure (AdelicGL2 (π F) F)} {c u : β} (h : MeasureZeroOrInfiniteAt F ΞΌ c u) : Β¬(0 < ΞΌ (integralWindowedSiegelSet F c u) β§ ΞΌ (integralWindowedSiegelSet F c u) < β€) := not_pos_and_lt_top_of_eq_zero_or_top h end WindowedSiegel end AutomorphicForm end
Statements phrased using this module (28)
- Decay of rational unipotent sums minus box average in Siegel sets
AutomorphicForm.norm_tsum_sub_average_le_mul_inv_archHeight_pow_of_isFactorizableTestFn57 below Β· depth 16 - Siegel support property high in the cusp, with central twist
AutomorphicForm.WindowedSiegel.exists_forall_apply_one_zero_eq_zero_of_inv_mul_globalPoints_mul_mul_centralScalar_mem0 below Β· depth 17 - Compact cover of the low part of a windowed Siegel set
AutomorphicForm.WindowedSiegel.exists_isCompact_cover_of_archHeight_le3 below Β· depth 17 - Measurable fundamental domain inside finitely many Siegel translates
AutomorphicForm.exists_measurableSet_isFundamentalDomain_subset_iUnion_integralWindowedSiegelSet_of_coversModCentre12 below Β· depth 17 - RankinβSelberg test data: bad-place part analytic and positive past 1/2
AutomorphicForm.RankinSelberg.exists_testData_sPartIntegral_self_analyticOnNhd_re_pos390 below Β· depth 19 - Holomorphy of the RankinβSelberg slab integral over a centre-cut Siegel cover
AutomorphicForm.exists_analyticOnNhd_eq_sub_mul_peterssonIntegral_of_norm_le_archHeight_pow_centreCutSiegelSet3 below Β· depth 19 - Analyticity of a kernel-twisted Petersson integral on GLβ
AutomorphicForm.exists_analyticOnNhd_eq_sub_one_half_mul_peterssonIntegral_of_norm_le_archHeight_pow3 below Β· depth 19 - Regularised BruhatβEisenstein family: continuation and moderate growth
AutomorphicForm.exists_analyticOnNhd_sub_one_half_mul_bruhatEisenstein_norm_le_archHeight_pow_of_isArchKFinite_family123 below Β· depth 19 - Non-vanishing of the self-Petersson integral over a slab fundamental domain
AutomorphicForm.peterssonIntegral_self_ne_zero_of_isFundamentalDomain_of_continuous6 below Β· depth 19 - Casimir symmetry and raisingβlowering adjointness on a fundamental domain
AutomorphicForm.setIntegral_archCasimirAt_mul_conj_eq_and_lower_adjoint_of_isFundamentalDomain19 below Β· depth 19 - Induced sections agreeing on the maximal compact are equal
AutomorphicForm.IsInducedSection.eq_of_eqOn_maximalCompact2 below Β· depth 20 - Borel-times-compact factorisation of right translates, with height bounds
AutomorphicForm.exists_isCompact_forall_mul_eq_borel_mul_archHeight_le_of_glFin_mem_finiteIntegralGL25 below Β· depth 20 - Fundamental domain in centre-cut Siegel translates over a determinant slab
AutomorphicForm.exists_measurableSet_isFundamentalDomain_subset_iUnion_centreCutSiegelSet_of_coversModCentre12 below Β· depth 20 - Integrability of βΟ*fβΒ² against height powers on Siegel pieces
AutomorphicForm.integrableOn_norm_rightConv_sq_mul_archHeight_pow_mul_ideleNorm_rpow_inter_centreCutSiegelSet88 below Β· depth 20 - Skew-symmetry of real-place flow derivatives on a determinant slab
AutomorphicForm.setIntegral_archDerivAt_mul_conj_add_eq_zero_of_isFundamentalDomain17 below Β· depth 20 - RankinβSelberg test data: bad part analytic, non-zero at centre
AutomorphicForm.RankinSelberg.exists_testData_sPartIntegral_pair_analyticOnNhd_ne_zero420 below Β· depth 21 - Moderate growth across the centre of a continued Eisenstein family
AutomorphicForm.exists_analyticOnNhd_sub_mul_bruhatEisenstein_norm_le_archHeight_pow_of_ne_of_isArchKFinite_family163 below Β· depth 21 - Export package for translates of a smoothed cuspidal realisation
AutomorphicForm.SmoothCuspRealizationAt.exports_rightConv_sum_translate_of_isCuspConstituent109 below Β· depth 22 - Invariance of the archimedean height under central scalars
AutomorphicForm.archHeight_glArch_centralScalar_mul0 below Β· depth 22 - Adjointness of partial_X,partialΜ_X and the Casimir operators at a complex place
AutomorphicForm.setIntegral_archCasimirAtComplex_mul_conj_eq_and_archDelAt_adjoint_of_isFundamentalDomain19 below Β· depth 23 - Skew-symmetry of complex-place flow derivatives against the Petersson pairing
AutomorphicForm.setIntegral_archDerivAtComplex_mul_conj_add_eq_zero_of_isFundamentalDomain17 below Β· depth 23 - Support lemma: high in the cusp forces Ξ³ββ=0
AutomorphicForm.WindowedSiegel.exists_forall_apply_one_zero_eq_zero_of_inv_mul_globalPoints_mul_mem0 below Β· depth 24 - Godement's bound for the truncated theta integral on a Siegel set
NumberField.AdelicFourier.exists_forall_setIntegral_tsum_norm_apply_smul_vecMul_mul_rpow_le_mul_archHeight_pow_of_mem_integralWindowedSiegelSet65 below Β· depth 25 - Galois action preserves archimedean height and finite integrality
AutomorphicForm.archHeight_glArch_sigmaAdelicAct_and_glFin_sigmaAdelicAct_mem_finiteIntegralGL20 below Β· depth 26 - Bounded-height part of a centre-cut Siegel set lies in a compact
AutomorphicForm.exists_isCompact_forall_mem_centreCutSiegelSet_archHeight_le_mem1 below Β· depth 26 - Godement's estimate on GLβ(A_β), small-norm half
NumberField.AdelicFourier.exists_forall_setIntegral_norm_le_one_tsum_norm_apply_smul_vecMul_mul_rpow_le_mul_archHeight_pow_of_mem_integralWindowedSiegelSet_rat65 below Β· depth 27 - Godement Eisenstein series: continuation, functional equation, strip bounds
AutomorphicForm.exists_entire_eq_godementEisenstein_fe_norm_le_of_mem_schwartzBruhat286 below Β· depth 28 - Weight bridge: sum_w m_wlog(topcdotrow/βdetβΒ²) versus archimedean heights
AutomorphicForm.WindowedSiegel.sum_mult_mul_log_topNormSq_mul_rowNormSq_div_eq_neg_log_archHeight_sub_log_archHeight_weyl_mul0 below Β· depth 34