Definitions/Def_AutomorphicForm_WindowedSiegelTopology.lean
Continuity and measurability of integrally windowed Siegel sets
This module proves topological and measure-theoretic facts about the windowed Siegel set apparatus introduced in the imported module AutomorphicForm_WindowedSiegelSet; it introduces no new definitions. The notions it manipulates are the project's own: over a normed field K, topNormSq and rowNormSq of a matrix are \|g_{00}\|^2+\|g_{01}\|^2 and \|g_{10}\|^2+\|g_{11}\|^2, localHeight is \|\det g\|/\mathrm{rowNormSq}(g) (legitimate since rowNormSq_pos gives positivity on \mathrm{GL}_2), and xWindowSq is \mathrm{topNormSq}(g)/\mathrm{rowNormSq}(g)-\mathrm{localHeight}(g)^2. The continuity lemmas continuous_entry, continuous_topNormSq_gl, continuous_rowNormSq_gl, continuous_det_gl, continuous_localHeight and continuous_xWindowSq assert continuity of these functions on \mathrm{GL}_2(K) for an arbitrary normed field K; continuous_archHeight asserts continuity of archHeight F for a number field F, proved as a finite product over the infinite places of powers of localHeight composed with the archimedean component maps.
The three main statements concern integralWindowedSiegelSet F c u, which is by definition the set of g in AdelicGL2 (π F) F whose finite part glFin lies in AdelicLevel.finiteIntegralGL2, with c \le \mathrm{archHeight}\,F of its archimedean part, and with \mathrm{xWindowSq} \le u^2 at every infinite place. First, if c < 1 and u \neq 0 then the identity lies in the interior of this set, the proof using openness of the integral level subgroup, continuity of the component homomorphisms, \mathrm{archHeight}(1)=1 and \mathrm{xWindowSq}(1)=0. Secondly, for any measurable space structure on AdelicGL2 (π F) F that is the Borel structure of its topology, and for all real c,u, the set is measurable. Thirdly, exists_isOpen_subset_integralWindowedSiegelSet packages the interior point as the existence of a nonempty open subset contained in the Siegel set. No statement here asserts any measure value, finiteness, or a covering property of the Siegel set.
Relation to Mathlib
The continuity proofs rest on Mathlib's Units.continuous_val together with matrix_elem and matrix_det; the windowed Siegel set and its height and window functionals are the project's own notions, Mathlib having no adelic Siegel sets.
Where it is used
These lemmas are the interface through which measure statements about the windowed Siegel set in \mathrm{GL}_2 of the adeles are obtained in the automorphic part of the development: measurability for integration arguments, and the interior point for positivity of the measure of the set and of its image under the open quotient map to the projective group.
References
- A. Borel, Introduction aux groupes arithmΓ©tiques, Publications de l'Institut de MathΓ©matique de l'UniversitΓ© de Strasbourg XV, Hermann, 1969
- V. Platonov and A. Rapinchuk, Algebraic Groups and Number Theory, Pure and Applied Mathematics 139, Academic Press, 1994
References are suggested automatically and have not been individually verified.
English text generated automatically from the Lean source; the Lean statement is authoritative.
- 132 lines
- 10 declarations
- used in the statements of 0 theorems and imported by 6 proofs
- imports 1 definition modules
Source file: Definitions/Def_AutomorphicForm_WindowedSiegelTopology.lean
Imported by
Declarations
- theorem
AutomorphicForm.WindowedSiegel.continuous_entry - theorem
AutomorphicForm.WindowedSiegel.continuous_topNormSq_gl - theorem
AutomorphicForm.WindowedSiegel.continuous_rowNormSq_gl - theorem
AutomorphicForm.WindowedSiegel.continuous_det_gl - theorem
AutomorphicForm.WindowedSiegel.continuous_localHeight - theorem
AutomorphicForm.WindowedSiegel.continuous_xWindowSq - theorem
AutomorphicForm.WindowedSiegel.continuous_archHeight - theorem
AutomorphicForm.WindowedSiegel.one_mem_interior_integralWindowedSiegelSet - theorem
AutomorphicForm.WindowedSiegel.measurableSet_integralWindowedSiegelSet - theorem
AutomorphicForm.WindowedSiegel.exists_isOpen_subset_integralWindowedSiegelSet
Source
import Definitions.Def_AutomorphicForm_WindowedSiegelSet open IsDedekindDomain NumberField MeasureTheory Matrix noncomputable section namespace AutomorphicForm namespace WindowedSiegel variable (F : Type) [Field F] [NumberField F] section Continuity variable {K : Type*} [NormedField K] theorem continuous_entry (i j : Fin 2) : Continuous fun g : GL (Fin 2) K => (g : Matrix (Fin 2) (Fin 2) K) i j := Units.continuous_val.matrix_elem i j theorem continuous_topNormSq_gl : Continuous fun g : GL (Fin 2) K => topNormSq (g : Matrix (Fin 2) (Fin 2) K) := by unfold topNormSq exact ((continuous_entry 0 0).norm.pow 2).add ((continuous_entry 0 1).norm.pow 2) theorem continuous_rowNormSq_gl : Continuous fun g : GL (Fin 2) K => rowNormSq (g : Matrix (Fin 2) (Fin 2) K) := by unfold rowNormSq exact ((continuous_entry 1 0).norm.pow 2).add ((continuous_entry 1 1).norm.pow 2) theorem continuous_det_gl : Continuous fun g : GL (Fin 2) K => ((g : Matrix (Fin 2) (Fin 2) K)).det := Units.continuous_val.matrix_det theorem continuous_localHeight : Continuous (localHeight (K := K)) := by unfold localHeight exact continuous_det_gl.norm.div continuous_rowNormSq_gl fun g => (rowNormSq_pos g).ne' theorem continuous_xWindowSq : Continuous (xWindowSq (K := K)) := by unfold xWindowSq exact (continuous_topNormSq_gl.div continuous_rowNormSq_gl fun g => (rowNormSq_pos g).ne').sub (continuous_localHeight.pow 2) end Continuity theorem continuous_archHeight : Continuous (archHeight F) := by unfold archHeight exact continuous_finsetProd _ fun v _ => (continuous_localHeight.comp (AdelicLevel.continuous_archComponent F v)).pow _ theorem one_mem_interior_integralWindowedSiegelSet {c u : β} (hc : c < 1) (hu : u β 0) : (1 : AdelicGL2 (π F) F) β interior (integralWindowedSiegelSet F c u) := by have htop : (β€ : Ideal (π F)) β β₯ := by simp have hKf : IsOpen {g : AdelicGL2 (π F) F | AdelicLevel.glFin (π F) F g β AdelicLevel.finiteIntegralGL2 (π F) F} := (AdelicLevel.isOpen_finiteLevelZero (π F) F htop).preimage (AdelicLevel.continuous_glFin (π F) F) have hArch : IsOpen {g : AdelicGL2 (π F) F | c < archHeight F (AdelicLevel.glArch (π F) F g)} := isOpen_lt continuous_const ((continuous_archHeight F).comp (AdelicLevel.continuous_glArch (π F) F)) have hWin : IsOpen {g : AdelicGL2 (π F) F | β v : InfinitePlace F, xWindowSq (AdelicLevel.archComponent F v (AdelicLevel.glArch (π F) F g)) < u ^ 2} := by have hset : {g : AdelicGL2 (π F) F | β v : InfinitePlace F, xWindowSq (AdelicLevel.archComponent F v (AdelicLevel.glArch (π F) F g)) < u ^ 2} = β v : InfinitePlace F, {g : AdelicGL2 (π F) F | xWindowSq (AdelicLevel.archComponent F v (AdelicLevel.glArch (π F) F g)) < u ^ 2} := by ext g simp [Set.mem_iInter] rw [hset] exact isOpen_iInter_of_finite fun v => isOpen_lt (continuous_xWindowSq.comp ((AdelicLevel.continuous_archComponent F v).comp (AdelicLevel.continuous_glArch (π F) F))) continuous_const rw [mem_interior] refine β¨{g : AdelicGL2 (π F) F | AdelicLevel.glFin (π F) F g β AdelicLevel.finiteIntegralGL2 (π F) F} β© {g | c < archHeight F (AdelicLevel.glArch (π F) F g)} β© {g | β v : InfinitePlace F, xWindowSq (AdelicLevel.archComponent F v (AdelicLevel.glArch (π F) F g)) < u ^ 2}, fun g hg => β¨hg.1.1, hg.1.2.le, fun v => (hg.2 v).leβ©, (hKf.inter hArch).inter hWin, β¨β¨?_, ?_β©, ?_β©β© Β· show AdelicLevel.glFin (π F) F 1 β AdelicLevel.finiteIntegralGL2 (π F) F rw [map_one] exact (AdelicLevel.finiteIntegralGL2 (π F) F).one_mem Β· show c < archHeight F (AdelicLevel.glArch (π F) F 1) rw [map_one, archHeight_one] exact hc Β· intro v show xWindowSq (AdelicLevel.archComponent F v (AdelicLevel.glArch (π F) F 1)) < u ^ 2 rw [map_one, map_one, xWindowSq_one] positivity theorem measurableSet_integralWindowedSiegelSet {mS : MeasurableSpace (AdelicGL2 (π F) F)} [BorelSpace (AdelicGL2 (π F) F)] (c u : β) : MeasurableSet (integralWindowedSiegelSet F c u) := by have htop : (β€ : Ideal (π F)) β β₯ := by simp have h : integralWindowedSiegelSet F c u = {g : AdelicGL2 (π F) F | AdelicLevel.glFin (π F) F g β AdelicLevel.finiteIntegralGL2 (π F) F} β© ({g : AdelicGL2 (π F) F | c β€ archHeight F (AdelicLevel.glArch (π F) F g)} β© {g : AdelicGL2 (π F) F | β v : InfinitePlace F, xWindowSq (AdelicLevel.archComponent F v (AdelicLevel.glArch (π F) F g)) β€ u ^ 2}) := rfl rw [h] refine MeasurableSet.inter ?_ (MeasurableSet.inter ?_ ?_) Β· exact ((AdelicLevel.isOpen_finiteLevelZero (π F) F htop).preimage (AdelicLevel.continuous_glFin (π F) F)).measurableSet Β· exact (isClosed_le continuous_const ((continuous_archHeight F).comp (AdelicLevel.continuous_glArch (π F) F))).measurableSet Β· have hset : {g : AdelicGL2 (π F) F | β v : InfinitePlace F, xWindowSq (AdelicLevel.archComponent F v (AdelicLevel.glArch (π F) F g)) β€ u ^ 2} = β v : InfinitePlace F, {g : AdelicGL2 (π F) F | xWindowSq (AdelicLevel.archComponent F v (AdelicLevel.glArch (π F) F g)) β€ u ^ 2} := by ext g simp [Set.mem_iInter] rw [hset] exact MeasurableSet.iInter fun v => (isClosed_le (continuous_xWindowSq.comp ((AdelicLevel.continuous_archComponent F v).comp (AdelicLevel.continuous_glArch (π F) F))) continuous_const).measurableSet theorem exists_isOpen_subset_integralWindowedSiegelSet {c u : β} (hc : c < 1) (hu : u β 0) : β U : Set (AdelicGL2 (π F) F), IsOpen U β§ U.Nonempty β§ U β integralWindowedSiegelSet F c u := β¨interior (integralWindowedSiegelSet F c u), isOpen_interior, β¨1, one_mem_interior_integralWindowedSiegelSet F hc huβ©, interior_subsetβ© end WindowedSiegel end AutomorphicForm end
Statements phrased using this module (0)
No statement module imports it directly (it is used through other definition modules or by proofs).