Skip to content

Commit 71bf1c4

Browse files
committed
Update AddCircleMulti.lean
1 parent 76551ff commit 71bf1c4

1 file changed

Lines changed: 18 additions & 10 deletions

File tree

Mathlib/Analysis/Fourier/AddCircleMulti.lean

Lines changed: 18 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -158,16 +158,24 @@ variable {E : Type*} [NormedAddCommGroup E] [NormedSpace ℝ E]
158158
theorem integral_preimage (f : UnitAddTorus d → E) (a : d → ℝ) :
159159
∫ x : UnitAddTorus d, f x =
160160
∫ (x : d → ℝ) in {x : d → ℝ | ∀ i, x i ∈ Ioc (a i) (a i + 1)}, f (fun i => x i) := by
161-
have m : MeasurableSet {x : d → ℝ | ∀ i, x i ∈ Ioc (a i) (a i + 1)} := by sorry
162-
have h := integral_map_equiv (μ := volume.comap Subtype.val) (measurableEquivPiIoc a).symm f
163-
have : ∫ (x : {x : d → ℝ | ∀ (i : d), x i ∈ Ioc (a i) (a i + 1)}),
164-
f ((measurableEquivPiIoc a).symm x) ∂Measure.comap Subtype.val volume =
165-
∫ (x : {x : d → ℝ | ∀ (i : d), x i ∈ Ioc (a i) (a i + 1)}),
166-
f (fun i => x.1 i) ∂Measure.comap Subtype.val volume := rfl
167-
simp only [← coe_eq_subtype, this, integral_subtype_comap m (f := fun x => f (fun i => x i))] at h
168-
convert h
169-
rw [volume_pi]
170-
sorry
161+
have m : MeasurableSet {x : d → ℝ | ∀ i, x i ∈ Ioc (a i) (a i + 1)} :=
162+
(MeasurableSet.univ_pi (fun i : d => measurableSet_Ioc (a := a i) (b := a i + 1))).congr
163+
(by grind)
164+
have hl : (measurableEquivPiIoc a).symm = fun (x : {x : d → ℝ | ∀ i, x i ∈ Ioc (a i) (a i + 1)})
165+
(i : d) => (x.1 i : UnitAddCircle) := rfl
166+
convert integral_map_equiv (μ := volume.comap Subtype.val) (measurableEquivPiIoc a).symm f
167+
· have := Measure.map_map (μ := volume.comap Subtype.val) (measurable_pi_lambda
168+
(fun (x : d → ℝ) => (fun i => x i : UnitAddTorus d))
169+
(fun i => AddCircle.measurable_mk'.comp (measurable_pi_apply i)))
170+
measurable_subtype_coe (α := {x : d → ℝ | ∀ i, x i ∈ Ioc (a i) (a i + 1)})
171+
simp only [coe_setOf, mem_setOf_eq, Function.comp_def] at this
172+
simp_rw [hl, coe_setOf, mem_setOf_eq, ← this]
173+
convert (measurePreserving_pi _ _ (fun i => AddCircle.measurePreserving_mk 1 (a i))).map_eq.symm
174+
· simp [volume, AddCircle.haarAddCircle]
175+
· convert (map_comap_subtype_coe m volume)
176+
convert (Measure.restrict_pi_pi (fun i => volume) (fun i => Ioc (a i) (a i + 1))).symm
177+
grind
178+
· simp only [← coe_eq_subtype, hl, integral_subtype_comap m (f := fun x => f (fun i => x i))]
171179

172180
end Integral
173181

0 commit comments

Comments
 (0)