Theorem: VectorFourier.fourierIntegral_convergent_iff
File: Mathlib/Analysis/Fourier/FourierTransform.lean

Proof steps:
state_before: 𝕜 : Type u_1
inst✝¹⁶ : CommRing 𝕜
V : Type u_2
inst✝¹⁵ : AddCommGroup V
inst✝¹⁴ : Module 𝕜 V
inst✝¹³ : MeasurableSpace V
W : Type u_3
inst✝¹² : AddCommGroup W
inst✝¹¹ : Module 𝕜 W
E : Type u_4
F : Type u_5
G : Type u_6
inst✝¹⁰ : NormedAddCommGroup E
inst✝⁹ : NormedSpace ℂ E
inst✝⁸ : NormedAddCommGroup F
inst✝⁷ : NormedSpace ℂ F
inst✝⁶ : NormedAddCommGroup G
inst✝⁵ : NormedSpace ℂ G
inst✝⁴ : TopologicalSpace 𝕜
inst✝³ : TopologicalRing 𝕜
inst✝² : TopologicalSpace V
inst✝¹ : BorelSpace V
inst✝ : TopologicalSpace W
e : AddChar 𝕜 ↥𝕊
μ : Measure V
L : V →ₗ[𝕜] W →ₗ[𝕜] 𝕜
he : Continuous ⇑e
hL : Continuous fun p => (L p.1) p.2
f : V → E
w : W
⊢ Integrable (fun v => e (-(L v) w) • f v) μ ↔ Integrable f μ
state_after: 𝕜 : Type u_1
inst✝¹⁶ : CommRing 𝕜
V : Type u_2
inst✝¹⁵ : AddCommGroup V
inst✝¹⁴ : Module 𝕜 V
inst✝¹³ : MeasurableSpace V
W : Type u_3
inst✝¹² : AddCommGroup W
inst✝¹¹ : Module 𝕜 W
E : Type u_4
F : Type u_5
G : Type u_6
inst✝¹⁰ : NormedAddCommGroup E
inst✝⁹ : NormedSpace ℂ E
inst✝⁸ : NormedAddCommGroup F
inst✝⁷ : NormedSpace ℂ F
inst✝⁶ : NormedAddCommGroup G
inst✝⁵ : NormedSpace ℂ G
inst✝⁴ : TopologicalSpace 𝕜
inst✝³ : TopologicalRing 𝕜
inst✝² : TopologicalSpace V
inst✝¹ : BorelSpace V
inst✝ : TopologicalSpace W
e : AddChar 𝕜 ↥𝕊
μ : Measure V
L : V →ₗ[𝕜] W →ₗ[𝕜] 𝕜
he : Continuous ⇑e
hL : Continuous fun p => (L p.1) p.2
f : V → E
w : W
aux : ∀ {g : V → E}, Integrable g μ → ∀ (x : W), Integrable (fun v => e (-(L v) x) • g v) μ
⊢ Integrable (fun v => e (-(L v) w) • f v) μ ↔ Integrable f μ
tactic: have aux {g : V → E} (hg : Integrable g μ) (x : W) :
      Integrable (fun v : V ↦ e (-L v x) • g v) μ := by
    have c : Continuous fun v ↦ e (-L v x) :=
      he.comp (hL.comp (continuous_prod_mk.mpr ⟨continuous_id, continuous_const⟩)).neg
    simp_rw [← integrable_norm_iff (c.aestronglyMeasurable.smul hg.1), norm_circle_smul]
    exact hg.norm
state_before: 𝕜 : Type u_1
inst✝¹⁶ : CommRing 𝕜
V : Type u_2
inst✝¹⁵ : AddCommGroup V
inst✝¹⁴ : Module 𝕜 V
inst✝¹³ : MeasurableSpace V
W : Type u_3
inst✝¹² : AddCommGroup W
inst✝¹¹ : Module 𝕜 W
E : Type u_4
F : Type u_5
G : Type u_6
inst✝¹⁰ : NormedAddCommGroup E
inst✝⁹ : NormedSpace ℂ E
inst✝⁸ : NormedAddCommGroup F
inst✝⁷ : NormedSpace ℂ F
inst✝⁶ : NormedAddCommGroup G
inst✝⁵ : NormedSpace ℂ G
inst✝⁴ : TopologicalSpace 𝕜
inst✝³ : TopologicalRing 𝕜
inst✝² : TopologicalSpace V
inst✝¹ : BorelSpace V
inst✝ : TopologicalSpace W
e : AddChar 𝕜 ↥𝕊
μ : Measure V
L : V →ₗ[𝕜] W →ₗ[𝕜] 𝕜
he : Continuous ⇑e
hL : Continuous fun p => (L p.1) p.2
f : V → E
w : W
aux : ∀ {g : V → E}, Integrable g μ → ∀ (x : W), Integrable (fun v => e (-(L v) x) • g v) μ
⊢ Integrable (fun v => e (-(L v) w) • f v) μ ↔ Integrable f μ
state_after: 𝕜 : Type u_1
inst✝¹⁶ : CommRing 𝕜
V : Type u_2
inst✝¹⁵ : AddCommGroup V
inst✝¹⁴ : Module 𝕜 V
inst✝¹³ : MeasurableSpace V
W : Type u_3
inst✝¹² : AddCommGroup W
inst✝¹¹ : Module 𝕜 W
E : Type u_4
F : Type u_5
G : Type u_6
inst✝¹⁰ : NormedAddCommGroup E
inst✝⁹ : NormedSpace ℂ E
inst✝⁸ : NormedAddCommGroup F
inst✝⁷ : NormedSpace ℂ F
inst✝⁶ : NormedAddCommGroup G
inst✝⁵ : NormedSpace ℂ G
inst✝⁴ : TopologicalSpace 𝕜
inst✝³ : TopologicalRing 𝕜
inst✝² : TopologicalSpace V
inst✝¹ : BorelSpace V
inst✝ : TopologicalSpace W
e : AddChar 𝕜 ↥𝕊
μ : Measure V
L : V →ₗ[𝕜] W →ₗ[𝕜] 𝕜
he : Continuous ⇑e
hL : Continuous fun p => (L p.1) p.2
f : V → E
w : W
aux : ∀ {g : V → E}, Integrable g μ → ∀ (x : W), Integrable (fun v => e (-(L v) x) • g v) μ
hf : Integrable (fun v => e (-(L v) w) • f v) μ
⊢ Integrable f μ
tactic: refine ⟨fun hf ↦ ?_, fun hf ↦ aux hf w⟩
state_before: 𝕜 : Type u_1
inst✝¹⁶ : CommRing 𝕜
V : Type u_2
inst✝¹⁵ : AddCommGroup V
inst✝¹⁴ : Module 𝕜 V
inst✝¹³ : MeasurableSpace V
W : Type u_3
inst✝¹² : AddCommGroup W
inst✝¹¹ : Module 𝕜 W
E : Type u_4
F : Type u_5
G : Type u_6
inst✝¹⁰ : NormedAddCommGroup E
inst✝⁹ : NormedSpace ℂ E
inst✝⁸ : NormedAddCommGroup F
inst✝⁷ : NormedSpace ℂ F
inst✝⁶ : NormedAddCommGroup G
inst✝⁵ : NormedSpace ℂ G
inst✝⁴ : TopologicalSpace 𝕜
inst✝³ : TopologicalRing 𝕜
inst✝² : TopologicalSpace V
inst✝¹ : BorelSpace V
inst✝ : TopologicalSpace W
e : AddChar 𝕜 ↥𝕊
μ : Measure V
L : V →ₗ[𝕜] W →ₗ[𝕜] 𝕜
he : Continuous ⇑e
hL : Continuous fun p => (L p.1) p.2
f : V → E
w : W
aux : ∀ {g : V → E}, Integrable g μ → ∀ (x : W), Integrable (fun v => e (-(L v) x) • g v) μ
hf : Integrable (fun v => e (-(L v) w) • f v) μ
⊢ Integrable f μ
state_after: 𝕜 : Type u_1
inst✝¹⁶ : CommRing 𝕜
V : Type u_2
inst✝¹⁵ : AddCommGroup V
inst✝¹⁴ : Module 𝕜 V
inst✝¹³ : MeasurableSpace V
W : Type u_3
inst✝¹² : AddCommGroup W
inst✝¹¹ : Module 𝕜 W
E : Type u_4
F : Type u_5
G : Type u_6
inst✝¹⁰ : NormedAddCommGroup E
inst✝⁹ : NormedSpace ℂ E
inst✝⁸ : NormedAddCommGroup F
inst✝⁷ : NormedSpace ℂ F
inst✝⁶ : NormedAddCommGroup G
inst✝⁵ : NormedSpace ℂ G
inst✝⁴ : TopologicalSpace 𝕜
inst✝³ : TopologicalRing 𝕜
inst✝² : TopologicalSpace V
inst✝¹ : BorelSpace V
inst✝ : TopologicalSpace W
e : AddChar 𝕜 ↥𝕊
μ : Measure V
L : V →ₗ[𝕜] W →ₗ[𝕜] 𝕜
he : Continuous ⇑e
hL : Continuous fun p => (L p.1) p.2
f : V → E
w : W
aux : ∀ {g : V → E}, Integrable g μ → ∀ (x : W), Integrable (fun v => e (-(L v) x) • g v) μ
hf : Integrable (fun v => e (-(L v) w) • f v) μ
this : Integrable (fun v => e (-(L v) (-w)) • e (-(L v) w) • f v) μ
⊢ Integrable f μ
tactic: have := aux hf (-w)
state_before: 𝕜 : Type u_1
inst✝¹⁶ : CommRing 𝕜
V : Type u_2
inst✝¹⁵ : AddCommGroup V
inst✝¹⁴ : Module 𝕜 V
inst✝¹³ : MeasurableSpace V
W : Type u_3
inst✝¹² : AddCommGroup W
inst✝¹¹ : Module 𝕜 W
E : Type u_4
F : Type u_5
G : Type u_6
inst✝¹⁰ : NormedAddCommGroup E
inst✝⁹ : NormedSpace ℂ E
inst✝⁸ : NormedAddCommGroup F
inst✝⁷ : NormedSpace ℂ F
inst✝⁶ : NormedAddCommGroup G
inst✝⁵ : NormedSpace ℂ G
inst✝⁴ : TopologicalSpace 𝕜
inst✝³ : TopologicalRing 𝕜
inst✝² : TopologicalSpace V
inst✝¹ : BorelSpace V
inst✝ : TopologicalSpace W
e : AddChar 𝕜 ↥𝕊
μ : Measure V
L : V →ₗ[𝕜] W →ₗ[𝕜] 𝕜
he : Continuous ⇑e
hL : Continuous fun p => (L p.1) p.2
f : V → E
w : W
aux : ∀ {g : V → E}, Integrable g μ → ∀ (x : W), Integrable (fun v => e (-(L v) x) • g v) μ
hf : Integrable (fun v => e (-(L v) w) • f v) μ
this : Integrable (fun v => e (-(L v) (-w)) • e (-(L v) w) • f v) μ
⊢ Integrable f μ
state_after: 𝕜 : Type u_1
inst✝¹⁶ : CommRing 𝕜
V : Type u_2
inst✝¹⁵ : AddCommGroup V
inst✝¹⁴ : Module 𝕜 V
inst✝¹³ : MeasurableSpace V
W : Type u_3
inst✝¹² : AddCommGroup W
inst✝¹¹ : Module 𝕜 W
E : Type u_4
F : Type u_5
G : Type u_6
inst✝¹⁰ : NormedAddCommGroup E
inst✝⁹ : NormedSpace ℂ E
inst✝⁸ : NormedAddCommGroup F
inst✝⁷ : NormedSpace ℂ F
inst✝⁶ : NormedAddCommGroup G
inst✝⁵ : NormedSpace ℂ G
inst✝⁴ : TopologicalSpace 𝕜
inst✝³ : TopologicalRing 𝕜
inst✝² : TopologicalSpace V
inst✝¹ : BorelSpace V
inst✝ : TopologicalSpace W
e : AddChar 𝕜 ↥𝕊
μ : Measure V
L : V →ₗ[𝕜] W →ₗ[𝕜] 𝕜
he : Continuous ⇑e
hL : Continuous fun p => (L p.1) p.2
f : V → E
w : W
aux : ∀ {g : V → E}, Integrable g μ → ∀ (x : W), Integrable (fun v => e (-(L v) x) • g v) μ
hf : Integrable (fun v => e (-(L v) w) • f v) μ
this : Integrable (fun v => f v) μ
⊢ Integrable f μ
tactic: simp_rw [← mul_smul (e _) (e _) (f _), ← e.map_add_eq_mul, LinearMap.map_neg, neg_add_self,
    e.map_zero_eq_one, one_smul] at this
state_before: 𝕜 : Type u_1
inst✝¹⁶ : CommRing 𝕜
V : Type u_2
inst✝¹⁵ : AddCommGroup V
inst✝¹⁴ : Module 𝕜 V
inst✝¹³ : MeasurableSpace V
W : Type u_3
inst✝¹² : AddCommGroup W
inst✝¹¹ : Module 𝕜 W
E : Type u_4
F : Type u_5
G : Type u_6
inst✝¹⁰ : NormedAddCommGroup E
inst✝⁹ : NormedSpace ℂ E
inst✝⁸ : NormedAddCommGroup F
inst✝⁷ : NormedSpace ℂ F
inst✝⁶ : NormedAddCommGroup G
inst✝⁵ : NormedSpace ℂ G
inst✝⁴ : TopologicalSpace 𝕜
inst✝³ : TopologicalRing 𝕜
inst✝² : TopologicalSpace V
inst✝¹ : BorelSpace V
inst✝ : TopologicalSpace W
e : AddChar 𝕜 ↥𝕊
μ : Measure V
L : V →ₗ[𝕜] W →ₗ[𝕜] 𝕜
he : Continuous ⇑e
hL : Continuous fun p => (L p.1) p.2
f : V → E
w : W
aux : ∀ {g : V → E}, Integrable g μ → ∀ (x : W), Integrable (fun v => e (-(L v) x) • g v) μ
hf : Integrable (fun v => e (-(L v) w) • f v) μ
this : Integrable (fun v => f v) μ
⊢ Integrable f μ
state_after: no goals
tactic: exact this