Theorem: MeasureTheory.AECover.integrable_of_integral_norm_bounded
File: Mathlib/MeasureTheory/Integral/IntegralEqImproper.lean

tactic: have hfm : AEStronglyMeasurable f μ :=
  hφ.aestronglyMeasurable fun i => (hfi i).aestronglyMeasurable
state_before: α : Type u_2
ι : Type u_1
E : Type u_3
inst✝³ : MeasurableSpace α
μ : Measure α
l : Filter ι
inst✝² : NormedAddCommGroup E
inst✝¹ : NeBot l
inst✝ : IsCountablyGenerated l
φ : ι → Set α
hφ : AECover μ l φ
f : α → E
I : ℝ
hfi : ∀ (i : ι), IntegrableOn f (φ i)
hbounded : ∀ᶠ (i : ι) in l, (∫ (x : α) in φ i, ‖f x‖ ∂μ) ≤ I
⊢ Integrable f

tactic: refine' hφ.integrable_of_lintegral_nnnorm_bounded I hfm _
state_before: α : Type u_2
ι : Type u_1
E : Type u_3
inst✝³ : MeasurableSpace α
μ : Measure α
l : Filter ι
inst✝² : NormedAddCommGroup E
inst✝¹ : NeBot l
inst✝ : IsCountablyGenerated l
φ : ι → Set α
hφ : AECover μ l φ
f : α → E
I : ℝ
hfi : ∀ (i : ι), IntegrableOn f (φ i)
hbounded : ∀ᶠ (i : ι) in l, (∫ (x : α) in φ i, ‖f x‖ ∂μ) ≤ I
hfm : AEStronglyMeasurable f μ
⊢ Integrable f

tactic: conv at hbounded in integral _ _ =>
  rw [integral_eq_lintegral_of_nonneg_ae (ae_of_all _ fun x => @norm_nonneg E _ (f x))
      hfm.norm.restrict]
state_before: α : Type u_2
ι : Type u_1
E : Type u_3
inst✝³ : MeasurableSpace α
μ : Measure α
l : Filter ι
inst✝² : NormedAddCommGroup E
inst✝¹ : NeBot l
inst✝ : IsCountablyGenerated l
φ : ι → Set α
hφ : AECover μ l φ
f : α → E
I : ℝ
hfi : ∀ (i : ι), IntegrableOn f (φ i)
hbounded : ∀ᶠ (i : ι) in l, (∫ (x : α) in φ i, ‖f x‖ ∂μ) ≤ I
hfm : AEStronglyMeasurable f μ
⊢ ∀ᶠ (i : ι) in l, (∫⁻ (x : α) in φ i, ↑‖f x‖₊ ∂μ) ≤ ENNReal.ofReal I

tactic: conv at hbounded in ENNReal.ofReal _ =>
  dsimp
  rw [← coe_nnnorm]
  rw [ENNReal.ofReal_coe_nnreal]
state_before: α : Type u_2
ι : Type u_1
E : Type u_3
inst✝³ : MeasurableSpace α
μ : Measure α
l : Filter ι
inst✝² : NormedAddCommGroup E
inst✝¹ : NeBot l
inst✝ : IsCountablyGenerated l
φ : ι → Set α
hφ : AECover μ l φ
f : α → E
I : ℝ
hfi : ∀ (i : ι), IntegrableOn f (φ i)
hbounded : ∀ᶠ (i : ι) in l, ENNReal.toReal (∫⁻ (a : α) in φ i, ENNReal.ofReal ‖f a‖ ∂μ) ≤ I
hfm : AEStronglyMeasurable f μ
⊢ ∀ᶠ (i : ι) in l, (∫⁻ (x : α) in φ i, ↑‖f x‖₊ ∂μ) ≤ ENNReal.ofReal I

tactic: refine' hbounded.mono fun i hi => _
state_before: α : Type u_2
ι : Type u_1
E : Type u_3
inst✝³ : MeasurableSpace α
μ : Measure α
l : Filter ι
inst✝² : NormedAddCommGroup E
inst✝¹ : NeBot l
inst✝ : IsCountablyGenerated l
φ : ι → Set α
hφ : AECover μ l φ
f : α → E
I : ℝ
hfi : ∀ (i : ι), IntegrableOn f (φ i)
hbounded : ∀ᶠ (i : ι) in l, ENNReal.toReal (∫⁻ (a : α) in φ i, ↑‖f a‖₊ ∂μ) ≤ I
hfm : AEStronglyMeasurable f μ
⊢ ∀ᶠ (i : ι) in l, (∫⁻ (x : α) in φ i, ↑‖f x‖₊ ∂μ) ≤ ENNReal.ofReal I

tactic: rw [← ENNReal.ofReal_toReal (ne_top_of_lt (hfi i).2)]
state_before: α : Type u_2
ι : Type u_1
E : Type u_3
inst✝³ : MeasurableSpace α
μ : Measure α
l : Filter ι
inst✝² : NormedAddCommGroup E
inst✝¹ : NeBot l
inst✝ : IsCountablyGenerated l
φ : ι → Set α
hφ : AECover μ l φ
f : α → E
I : ℝ
hfi : ∀ (i : ι), IntegrableOn f (φ i)
hbounded : ∀ᶠ (i : ι) in l, ENNReal.toReal (∫⁻ (a : α) in φ i, ↑‖f a‖₊ ∂μ) ≤ I
hfm : AEStronglyMeasurable f μ
i : ι
hi : ENNReal.toReal (∫⁻ (a : α) in φ i, ↑‖f a‖₊ ∂μ) ≤ I
⊢ (∫⁻ (x : α) in φ i, ↑‖f x‖₊ ∂μ) ≤ ENNReal.ofReal I

tactic: apply ENNReal.ofReal_le_ofReal hi
state_before: α : Type u_2
ι : Type u_1
E : Type u_3
inst✝³ : MeasurableSpace α
μ : Measure α
l : Filter ι
inst✝² : NormedAddCommGroup E
inst✝¹ : NeBot l
inst✝ : IsCountablyGenerated l
φ : ι → Set α
hφ : AECover μ l φ
f : α → E
I : ℝ
hfi : ∀ (i : ι), IntegrableOn f (φ i)
hbounded : ∀ᶠ (i : ι) in l, ENNReal.toReal (∫⁻ (a : α) in φ i, ↑‖f a‖₊ ∂μ) ≤ I
hfm : AEStronglyMeasurable f μ
i : ι
hi : ENNReal.toReal (∫⁻ (a : α) in φ i, ↑‖f a‖₊ ∂μ) ≤ I
⊢ ENNReal.ofReal (ENNReal.toReal (∫⁻ (a : α) in φ i, ↑‖f a‖₊ ∂μ)) ≤ ENNReal.ofReal I