@@ -7,7 +7,7 @@ import Mathlib.MeasureTheory.Measure.Haar.Basic
7
7
import Mathlib.MeasureTheory.Group.FundamentalDomain
8
8
import Mathlib.Algebra.Group.Opposite
9
9
10
- #align_import measure_theory.measure.haar.quotient from "leanprover-community/mathlib" @"fd5edc43dc4f10b85abfe544b88f82cf13c5f844 "
10
+ #align_import measure_theory.measure.haar.quotient from "leanprover-community/mathlib" @"3b52265189f3fb43aa631edffce5d060fafaf82f "
11
11
12
12
/-!
13
13
# Haar quotient measure
@@ -34,7 +34,7 @@ Note that a group `G` with Haar measure that is both left and right invariant is
34
34
35
35
open Set MeasureTheory TopologicalSpace MeasureTheory.Measure
36
36
37
- open scoped Pointwise NNReal
37
+ open scoped Pointwise NNReal ENNReal
38
38
39
39
variable {G : Type *} [Group G] [MeasurableSpace G] [TopologicalSpace G] [TopologicalGroup G]
40
40
[BorelSpace G] {μ : Measure G} {Γ : Subgroup G}
@@ -113,16 +113,15 @@ theorem MeasureTheory.IsFundamentalDomain.isMulLeftInvariant_map [Subgroup.Norma
113
113
#align measure_theory.is_fundamental_domain.is_mul_left_invariant_map MeasureTheory.IsFundamentalDomain.isMulLeftInvariant_map
114
114
#align measure_theory.is_add_fundamental_domain.is_add_left_invariant_map MeasureTheory.IsAddFundamentalDomain.isAddLeftInvariant_map
115
115
116
- variable [T2Space (G ⧸ Γ)] [SecondCountableTopology (G ⧸ Γ)] (K : PositiveCompacts (G ⧸ Γ))
117
-
118
116
/-- Given a normal subgroup `Γ` of a topological group `G` with Haar measure `μ`, which is also
119
117
right-invariant, and a finite volume fundamental domain `𝓕`, the pushforward to the quotient
120
118
group `G ⧸ Γ` of the restriction of `μ` to `𝓕` is a multiple of Haar measure on `G ⧸ Γ`. -/
121
119
@[to_additive "Given a normal subgroup `Γ` of an additive topological group `G` with Haar measure
122
120
`μ`, which is also right-invariant, and a finite volume fundamental domain `𝓕`, the pushforward
123
121
to the quotient group `G ⧸ Γ` of the restriction of `μ` to `𝓕` is a multiple of Haar measure on
124
122
`G ⧸ Γ`." ]
125
- theorem MeasureTheory.IsFundamentalDomain.map_restrict_quotient [Subgroup.Normal Γ]
123
+ theorem MeasureTheory.IsFundamentalDomain.map_restrict_quotient [T2Space (G ⧸ Γ)]
124
+ [SecondCountableTopology (G ⧸ Γ)] (K : PositiveCompacts (G ⧸ Γ)) [Subgroup.Normal Γ]
126
125
[MeasureTheory.Measure.IsHaarMeasure μ] [μ.IsMulRightInvariant] (h𝓕_finite : μ 𝓕 < ⊤) :
127
126
Measure.map (QuotientGroup.mk' Γ) (μ.restrict 𝓕) =
128
127
μ (𝓕 ∩ QuotientGroup.mk' Γ ⁻¹' K) • MeasureTheory.Measure.haarMeasure K := by
@@ -147,12 +146,167 @@ theorem MeasureTheory.IsFundamentalDomain.map_restrict_quotient [Subgroup.Normal
147
146
topological group `G` with Haar measure `μ`, which is also right-invariant, and a finite volume
148
147
fundamental domain `𝓕`, the quotient map to `G ⧸ Γ` is measure-preserving between appropriate
149
148
multiples of Haar measure on `G` and `G ⧸ Γ`." ]
150
- theorem MeasurePreservingQuotientGroup.mk' [Subgroup.Normal Γ]
151
- [MeasureTheory.Measure.IsHaarMeasure μ] [μ.IsMulRightInvariant] (h𝓕_finite : μ 𝓕 < ⊤) (c : ℝ≥0 )
149
+ theorem MeasurePreservingQuotientGroup.mk' [T2Space (G ⧸ Γ)] [SecondCountableTopology (G ⧸ Γ)]
150
+ (K : PositiveCompacts (G ⧸ Γ)) [Subgroup.Normal Γ] [μ.IsHaarMeasure]
151
+ [μ.IsMulRightInvariant] (h𝓕_finite : μ 𝓕 < ⊤) (c : ℝ≥0 )
152
152
(h : μ (𝓕 ∩ QuotientGroup.mk' Γ ⁻¹' K) = c) :
153
153
MeasurePreserving (QuotientGroup.mk' Γ) (μ.restrict 𝓕)
154
154
(c • MeasureTheory.Measure.haarMeasure K) where
155
155
measurable := continuous_quotient_mk'.measurable
156
156
map_eq := by rw [h𝓕.map_restrict_quotient K h𝓕_finite, h]; rfl
157
157
#align measure_preserving_quotient_group.mk' MeasurePreservingQuotientGroup.mk'
158
158
#align measure_preserving_quotient_add_group.mk' MeasurePreservingQuotientAddGroup.mk'
159
+
160
+ section
161
+
162
+ local notation "μ_𝓕" => Measure.map (@QuotientGroup.mk G _ Γ) (μ.restrict 𝓕)
163
+
164
+ /-- The `essSup` of a function `g` on the quotient space `G ⧸ Γ` with respect to the pushforward
165
+ of the restriction, `μ_𝓕`, of a right-invariant measure `μ` to a fundamental domain `𝓕`, is the
166
+ same as the `essSup` of `g`'s lift to the universal cover `G` with respect to `μ`. -/
167
+ @[to_additive "The `essSup` of a function `g` on the additive quotient space `G ⧸ Γ` with respect
168
+ to the pushforward of the restriction, `μ_𝓕`, of a right-invariant measure `μ` to a fundamental
169
+ domain `𝓕`, is the same as the `essSup` of `g`'s lift to the universal cover `G` with respect
170
+ to `μ`." ]
171
+ lemma essSup_comp_quotientGroup_mk [μ.IsMulRightInvariant] {g : G ⧸ Γ → ℝ≥0 ∞}
172
+ (g_ae_measurable : AEMeasurable g μ_𝓕) : essSup g μ_𝓕 = essSup (fun (x : G) ↦ g x) μ := by
173
+ have hπ : Measurable (QuotientGroup.mk : G → G ⧸ Γ) := continuous_quotient_mk'.measurable
174
+ rw [essSup_map_measure g_ae_measurable hπ.aemeasurable]
175
+ refine h𝓕.essSup_measure_restrict ?_
176
+ intro ⟨γ, hγ⟩ x
177
+ dsimp
178
+ congr 1
179
+ exact QuotientGroup.mk_mul_of_mem x hγ
180
+
181
+ /-- Given a quotient space `G ⧸ Γ` where `Γ` is `Countable`, and the restriction,
182
+ `μ_𝓕`, of a right-invariant measure `μ` on `G` to a fundamental domain `𝓕`, a set
183
+ in the quotient which has `μ_𝓕`-measure zero, also has measure zero under the
184
+ folding of `μ` under the quotient. Note that, if `Γ` is infinite, then the folded map
185
+ will take the value `∞` on any open set in the quotient! -/
186
+ @[to_additive "Given an additive quotient space `G ⧸ Γ` where `Γ` is `Countable`, and the
187
+ restriction, `μ_𝓕`, of a right-invariant measure `μ` on `G` to a fundamental domain `𝓕`, a set
188
+ in the quotient which has `μ_𝓕`-measure zero, also has measure zero under the
189
+ folding of `μ` under the quotient. Note that, if `Γ` is infinite, then the folded map
190
+ will take the value `∞` on any open set in the quotient!" ]
191
+ lemma _root_.MeasureTheory.IsFundamentalDomain.absolutelyContinuous_map
192
+ [μ.IsMulRightInvariant] :
193
+ map (QuotientGroup.mk : G → G ⧸ Γ) μ ≪ map (QuotientGroup.mk : G → G ⧸ Γ) (μ.restrict 𝓕) := by
194
+ set π : G → G ⧸ Γ := QuotientGroup.mk
195
+ have meas_π : Measurable π := continuous_quotient_mk'.measurable
196
+ apply AbsolutelyContinuous.mk
197
+ intro s s_meas hs
198
+ rw [map_apply meas_π s_meas] at hs ⊢
199
+ rw [Measure.restrict_apply] at hs
200
+ apply h𝓕.measure_zero_of_invariant _ _ hs
201
+ · intro γ
202
+ ext g
203
+ rw [Set.mem_smul_set_iff_inv_smul_mem, mem_preimage, mem_preimage]
204
+ congr! 1
205
+ convert QuotientGroup.mk_mul_of_mem g (γ⁻¹).2 using 1
206
+ exact MeasurableSet.preimage s_meas meas_π
207
+
208
+ attribute [-instance] Quotient.instMeasurableSpace
209
+
210
+ /-- This is a simple version of the **Unfolding Trick** : Given a subgroup `Γ` of a group `G`, the
211
+ integral of a function `f` on `G` with respect to a right-invariant measure `μ` is equal to the
212
+ integral over the quotient `G ⧸ Γ` of the automorphization of `f`. -/
213
+ @[to_additive "This is a simple version of the **Unfolding Trick**: Given a subgroup `Γ` of an
214
+ additive group `G`, the integral of a function `f` on `G` with respect to a right-invariant
215
+ measure `μ` is equal to the integral over the quotient `G ⧸ Γ` of the automorphization of `f`." ]
216
+ lemma QuotientGroup.integral_eq_integral_automorphize {E : Type *} [NormedAddCommGroup E]
217
+ [NormedSpace ℝ E] [μ.IsMulRightInvariant] {f : G → E}
218
+ (hf₁ : Integrable f μ) (hf₂ : AEStronglyMeasurable (automorphize f) μ_𝓕) :
219
+ ∫ x : G, f x ∂μ = ∫ x : G ⧸ Γ, automorphize f x ∂μ_𝓕 := by
220
+ calc ∫ x : G, f x ∂μ = ∑' γ : (Subgroup.opposite Γ), ∫ x in 𝓕, f (γ • x) ∂μ :=
221
+ h𝓕.integral_eq_tsum'' f hf₁
222
+ _ = ∫ x in 𝓕, ∑' γ : (Subgroup.opposite Γ), f (γ • x) ∂μ := ?_
223
+ _ = ∫ x : G ⧸ Γ, automorphize f x ∂μ_𝓕 :=
224
+ (integral_map continuous_quotient_mk'.aemeasurable hf₂).symm
225
+ rw [integral_tsum]
226
+ · exact fun i ↦ (hf₁.1 .comp_quasiMeasurePreserving
227
+ (measurePreserving_smul i μ).quasiMeasurePreserving).restrict
228
+ · rw [← h𝓕.lintegral_eq_tsum'' (fun x ↦ ‖f x‖₊)]
229
+ exact ne_of_lt hf₁.2
230
+
231
+ /-- This is the **Unfolding Trick** : Given a subgroup `Γ` of a group `G`, the integral of a
232
+ function `f` on `G` times the lift to `G` of a function `g` on the quotient `G ⧸ Γ` with respect
233
+ to a right-invariant measure `μ` on `G`, is equal to the integral over the quotient of the
234
+ automorphization of `f` times `g`. -/
235
+ lemma QuotientGroup.integral_mul_eq_integral_automorphize_mul {K : Type *} [NormedField K]
236
+ [NormedSpace ℝ K] [μ.IsMulRightInvariant] {f : G → K}
237
+ (f_ℒ_1 : Integrable f μ) {g : G ⧸ Γ → K} (hg : AEStronglyMeasurable g μ_𝓕)
238
+ (g_ℒ_infinity : essSup (fun x ↦ ↑‖g x‖₊) μ_𝓕 ≠ ∞)
239
+ (F_ae_measurable : AEStronglyMeasurable (QuotientGroup.automorphize f) μ_𝓕) :
240
+ ∫ x : G, g (x : G ⧸ Γ) * (f x) ∂μ
241
+ = ∫ x : G ⧸ Γ, g x * (QuotientGroup.automorphize f x) ∂μ_𝓕 := by
242
+ let π : G → G ⧸ Γ := QuotientGroup.mk
243
+ have meas_π : Measurable π := continuous_quotient_mk'.measurable
244
+ have H₀ : QuotientGroup.automorphize ((g ∘ π) * f) = g * (QuotientGroup.automorphize f) := by
245
+ exact QuotientGroup.automorphize_smul_left f g
246
+ calc ∫ (x : G), g (π x) * (f x) ∂μ =
247
+ ∫ (x : G ⧸ Γ), QuotientGroup.automorphize ((g ∘ π) * f) x ∂μ_𝓕 := ?_
248
+ _ = ∫ (x : G ⧸ Γ), g x * (QuotientGroup.automorphize f x) ∂μ_𝓕 := by simp [H₀]
249
+ have H₁ : Integrable ((g ∘ π) * f) μ
250
+ · have : AEStronglyMeasurable (fun (x : G) ↦ g (x : (G ⧸ Γ))) μ
251
+ · refine (AEStronglyMeasurable.mono' hg ?_).comp_measurable meas_π
252
+ exact h𝓕.absolutelyContinuous_map
253
+ refine Integrable.essSup_smul f_ℒ_1 this ?_
254
+ have hg' : AEStronglyMeasurable (fun x ↦ (‖g x‖₊ : ℝ≥0 ∞)) μ_𝓕 :=
255
+ (ENNReal.continuous_coe.comp continuous_nnnorm).comp_aestronglyMeasurable hg
256
+ rw [← essSup_comp_quotientGroup_mk h𝓕 hg'.aemeasurable]
257
+ exact g_ℒ_infinity
258
+ have H₂ : AEStronglyMeasurable (QuotientGroup.automorphize ((g ∘ π) * f)) μ_𝓕
259
+ · simp_rw [H₀]
260
+ exact hg.mul F_ae_measurable
261
+ apply QuotientGroup.integral_eq_integral_automorphize h𝓕 H₁ H₂
262
+
263
+ end
264
+
265
+ section
266
+
267
+ variable {G' : Type *} [AddGroup G'] [MeasurableSpace G'] [TopologicalSpace G']
268
+ [TopologicalAddGroup G'] [BorelSpace G']
269
+ {μ' : Measure G'}
270
+ {Γ' : AddSubgroup G'}
271
+ [Countable Γ'] [MeasurableSpace (G' ⧸ Γ')] [BorelSpace (G' ⧸ Γ')]
272
+ {𝓕' : Set G'}
273
+
274
+ local notation "μ_𝓕" => Measure.map (@QuotientAddGroup.mk G' _ Γ') (μ'.restrict 𝓕')
275
+
276
+ /-- This is the **Unfolding Trick** : Given an additive subgroup `Γ'` of an additive group `G'`, the
277
+ integral of a function `f` on `G'` times the lift to `G'` of a function `g` on the quotient
278
+ `G' ⧸ Γ'` with respect to a right-invariant measure `μ` on `G'`, is equal to the integral over
279
+ the quotient of the automorphization of `f` times `g`. -/
280
+ lemma QuotientAddGroup.integral_mul_eq_integral_automorphize_mul {K : Type *} [NormedField K]
281
+ [NormedSpace ℝ K] [μ'.IsAddRightInvariant] {f : G' → K}
282
+ (f_ℒ_1 : Integrable f μ') {g : G' ⧸ Γ' → K} (hg : AEStronglyMeasurable g μ_𝓕)
283
+ (g_ℒ_infinity : essSup (fun x ↦ (‖g x‖₊ : ℝ≥0 ∞)) μ_𝓕 ≠ ∞)
284
+ (F_ae_measurable : AEStronglyMeasurable (QuotientAddGroup.automorphize f) μ_𝓕)
285
+ (h𝓕 : IsAddFundamentalDomain (AddSubgroup.opposite Γ') 𝓕' μ') :
286
+ ∫ x : G', g (x : G' ⧸ Γ') * (f x) ∂μ'
287
+ = ∫ x : G' ⧸ Γ', g x * (QuotientAddGroup.automorphize f x) ∂μ_𝓕 := by
288
+ let π : G' → G' ⧸ Γ' := QuotientAddGroup.mk
289
+ have meas_π : Measurable π := continuous_quotient_mk'.measurable
290
+ have H₀ : QuotientAddGroup.automorphize ((g ∘ π) * f) = g * (QuotientAddGroup.automorphize f) :=
291
+ by exact QuotientAddGroup.automorphize_smul_left f g
292
+ calc ∫ (x : G'), g (π x) * f x ∂μ' =
293
+ ∫ (x : G' ⧸ Γ'), QuotientAddGroup.automorphize ((g ∘ π) * f) x ∂μ_𝓕 := ?_
294
+ _ = ∫ (x : G' ⧸ Γ'), g x * (QuotientAddGroup.automorphize f x) ∂μ_𝓕 := by simp [H₀]
295
+ have H₁ : Integrable ((g ∘ π) * f) μ'
296
+ · have : AEStronglyMeasurable (fun (x : G') ↦ g (x : (G' ⧸ Γ'))) μ'
297
+ · refine (AEStronglyMeasurable.mono' hg ?_).comp_measurable meas_π
298
+ exact h𝓕.absolutelyContinuous_map
299
+ refine Integrable.essSup_smul f_ℒ_1 this ?_
300
+ have hg' : AEStronglyMeasurable (fun x ↦ (‖g x‖₊ : ℝ≥0 ∞)) μ_𝓕 :=
301
+ (ENNReal.continuous_coe.comp continuous_nnnorm).comp_aestronglyMeasurable hg
302
+ rw [← essSup_comp_quotientAddGroup_mk h𝓕 hg'.aemeasurable]
303
+ exact g_ℒ_infinity
304
+ have H₂ : AEStronglyMeasurable (QuotientAddGroup.automorphize ((g ∘ π) * f)) μ_𝓕
305
+ · simp_rw [H₀]
306
+ exact hg.mul F_ae_measurable
307
+ apply QuotientAddGroup.integral_eq_integral_automorphize h𝓕 H₁ H₂
308
+
309
+ end
310
+
311
+ attribute [to_additive existing QuotientGroup.integral_mul_eq_integral_automorphize_mul]
312
+ QuotientAddGroup.integral_mul_eq_integral_automorphize_mul
0 commit comments