Theorem: MeasureTheory.intervalIntegral_tendsto_integral_Iic
File: Mathlib/MeasureTheory/Integral/IntegralEqImproper.lean

tactic: let φ i := Ioi (a i)
state_before: ι : Type u_1
E : Type u_2
μ : Measure ℝ
l : Filter ι
inst✝³ : l.IsCountablyGenerated
inst✝² : NormedAddCommGroup E
inst✝¹ : NormedSpace ℝ E
inst✝ : CompleteSpace E
a b✝ : ι → ℝ
f : ℝ → E
b : ℝ
hfi : IntegrableOn f (Iic b) μ
ha : Tendsto a l atBot
⊢ Tendsto (fun i => ∫ (x : ℝ) in a i..b, f x ∂μ) l (𝓝 (∫ (x : ℝ) in Iic b, f x ∂μ))
state_after: ι : Type u_1
E : Type u_2
μ : Measure ℝ
l : Filter ι
inst✝³ : l.IsCountablyGenerated
inst✝² : NormedAddCommGroup E
inst✝¹ : NormedSpace ℝ E
inst✝ : CompleteSpace E
a b✝ : ι → ℝ
f : ℝ → E
b : ℝ
hfi : IntegrableOn f (Iic b) μ
ha : Tendsto a l atBot
φ : ι → Set ℝ := fun i => Ioi (a i)
⊢ Tendsto (fun i => ∫ (x : ℝ) in a i..b, f x ∂μ) l (𝓝 (∫ (x : ℝ) in Iic b, f x ∂μ))

tactic: have hφ : AECover (μ.restrict <| Iic b) l φ := aecover_Ioi ha
state_before: ι : Type u_1
E : Type u_2
μ : Measure ℝ
l : Filter ι
inst✝³ : l.IsCountablyGenerated
inst✝² : NormedAddCommGroup E
inst✝¹ : NormedSpace ℝ E
inst✝ : CompleteSpace E
a b✝ : ι → ℝ
f : ℝ → E
b : ℝ
hfi : IntegrableOn f (Iic b) μ
ha : Tendsto a l atBot
φ : ι → Set ℝ := fun i => Ioi (a i)
⊢ Tendsto (fun i => ∫ (x : ℝ) in a i..b, f x ∂μ) l (𝓝 (∫ (x : ℝ) in Iic b, f x ∂μ))
state_after: ι : Type u_1
E : Type u_2
μ : Measure ℝ
l : Filter ι
inst✝³ : l.IsCountablyGenerated
inst✝² : NormedAddCommGroup E
inst✝¹ : NormedSpace ℝ E
inst✝ : CompleteSpace E
a b✝ : ι → ℝ
f : ℝ → E
b : ℝ
hfi : IntegrableOn f (Iic b) μ
ha : Tendsto a l atBot
φ : ι → Set ℝ := fun i => Ioi (a i)
hφ : AECover (μ.restrict (Iic b)) l φ
⊢ Tendsto (fun i => ∫ (x : ℝ) in a i..b, f x ∂μ) l (𝓝 (∫ (x : ℝ) in Iic b, f x ∂μ))

tactic: refine (hφ.integral_tendsto_of_countably_generated hfi).congr' ?_
state_before: ι : Type u_1
E : Type u_2
μ : Measure ℝ
l : Filter ι
inst✝³ : l.IsCountablyGenerated
inst✝² : NormedAddCommGroup E
inst✝¹ : NormedSpace ℝ E
inst✝ : CompleteSpace E
a b✝ : ι → ℝ
f : ℝ → E
b : ℝ
hfi : IntegrableOn f (Iic b) μ
ha : Tendsto a l atBot
φ : ι → Set ℝ := fun i => Ioi (a i)
hφ : AECover (μ.restrict (Iic b)) l φ
⊢ Tendsto (fun i => ∫ (x : ℝ) in a i..b, f x ∂μ) l (𝓝 (∫ (x : ℝ) in Iic b, f x ∂μ))
state_after: ι : Type u_1
E : Type u_2
μ : Measure ℝ
l : Filter ι
inst✝³ : l.IsCountablyGenerated
inst✝² : NormedAddCommGroup E
inst✝¹ : NormedSpace ℝ E
inst✝ : CompleteSpace E
a b✝ : ι → ℝ
f : ℝ → E
b : ℝ
hfi : IntegrableOn f (Iic b) μ
ha : Tendsto a l atBot
φ : ι → Set ℝ := fun i => Ioi (a i)
hφ : AECover (μ.restrict (Iic b)) l φ
⊢ (fun i => ∫ (x : ℝ) in φ i, f x ∂μ.restrict (Iic b)) =ᶠ[l] fun i => ∫ (x : ℝ) in a i..b, f x ∂μ

tactic: filter_upwards [ha.eventually (eventually_le_atBot <| b)] with i hai
state_before: ι : Type u_1
E : Type u_2
μ : Measure ℝ
l : Filter ι
inst✝³ : l.IsCountablyGenerated
inst✝² : NormedAddCommGroup E
inst✝¹ : NormedSpace ℝ E
inst✝ : CompleteSpace E
a b✝ : ι → ℝ
f : ℝ → E
b : ℝ
hfi : IntegrableOn f (Iic b) μ
ha : Tendsto a l atBot
φ : ι → Set ℝ := fun i => Ioi (a i)
hφ : AECover (μ.restrict (Iic b)) l φ
⊢ (fun i => ∫ (x : ℝ) in φ i, f x ∂μ.restrict (Iic b)) =ᶠ[l] fun i => ∫ (x : ℝ) in a i..b, f x ∂μ
state_after: case h
ι : Type u_1
E : Type u_2
μ : Measure ℝ
l : Filter ι
inst✝³ : l.IsCountablyGenerated
inst✝² : NormedAddCommGroup E
inst✝¹ : NormedSpace ℝ E
inst✝ : CompleteSpace E
a b✝ : ι → ℝ
f : ℝ → E
b : ℝ
hfi : IntegrableOn f (Iic b) μ
ha : Tendsto a l atBot
φ : ι → Set ℝ := fun i => Ioi (a i)
hφ : AECover (μ.restrict (Iic b)) l φ
i : ι
hai : a i ≤ b
⊢ ∫ (x : ℝ) in φ i, f x ∂μ.restrict (Iic b) = ∫ (x : ℝ) in a i..b, f x ∂μ

tactic: rw [intervalIntegral.integral_of_le hai, Measure.restrict_restrict (hφ.measurableSet i)]
state_before: case h
ι : Type u_1
E : Type u_2
μ : Measure ℝ
l : Filter ι
inst✝³ : l.IsCountablyGenerated
inst✝² : NormedAddCommGroup E
inst✝¹ : NormedSpace ℝ E
inst✝ : CompleteSpace E
a b✝ : ι → ℝ
f : ℝ → E
b : ℝ
hfi : IntegrableOn f (Iic b) μ
ha : Tendsto a l atBot
φ : ι → Set ℝ := fun i => Ioi (a i)
hφ : AECover (μ.restrict (Iic b)) l φ
i : ι
hai : a i ≤ b
⊢ ∫ (x : ℝ) in φ i, f x ∂μ.restrict (Iic b) = ∫ (x : ℝ) in a i..b, f x ∂μ
state_after: case h
ι : Type u_1
E : Type u_2
μ : Measure ℝ
l : Filter ι
inst✝³ : l.IsCountablyGenerated
inst✝² : NormedAddCommGroup E
inst✝¹ : NormedSpace ℝ E
inst✝ : CompleteSpace E
a b✝ : ι → ℝ
f : ℝ → E
b : ℝ
hfi : IntegrableOn f (Iic b) μ
ha : Tendsto a l atBot
φ : ι → Set ℝ := fun i => Ioi (a i)
hφ : AECover (μ.restrict (Iic b)) l φ
i : ι
hai : a i ≤ b
⊢ ∫ (x : ℝ) in φ i ∩ Iic b, f x ∂μ = ∫ (x : ℝ) in Ioc (a i) b, f x ∂μ

tactic: rfl
state_before: case h
ι : Type u_1
E : Type u_2
μ : Measure ℝ
l : Filter ι
inst✝³ : l.IsCountablyGenerated
inst✝² : NormedAddCommGroup E
inst✝¹ : NormedSpace ℝ E
inst✝ : CompleteSpace E
a b✝ : ι → ℝ
f : ℝ → E
b : ℝ
hfi : IntegrableOn f (Iic b) μ
ha : Tendsto a l atBot
φ : ι → Set ℝ := fun i => Ioi (a i)
hφ : AECover (μ.restrict (Iic b)) l φ
i : ι
hai : a i ≤ b
⊢ ∫ (x : ℝ) in φ i ∩ Iic b, f x ∂μ = ∫ (x : ℝ) in Ioc (a i) b, f x ∂μ
state_after: no goals