@@ -714,6 +714,79 @@ theorem IntegrableOn.continuousOn_primitive_Ioi [NoAtoms μ] {a : ℝ}
714714
715715end PrimitiveIoi
716716
717+ section PrimitiveIio
718+
719+ theorem IntegrableOn.tendsto_primitive_Iio {a b₀ : ℝ} (hf : IntegrableOn f (Iio a) μ)
720+ (hb₀ : b₀ ≤ a) :
721+ Tendsto (fun b ↦ ∫ x in Iio b, f x ∂μ) (𝓝[≤] b₀) (𝓝 (∫ x in Iio b₀, f x ∂μ)) := by
722+ simp_rw [← integral_indicator measurableSet_Iio]
723+ apply tendsto_integral_filter_of_dominated_convergence
724+ · filter_upwards [self_mem_nhdsWithin] with b hb
725+ rw [aestronglyMeasurable_indicator_iff measurableSet_Iio]
726+ apply Integrable.aestronglyMeasurable
727+ exact hf.mono_set (Iio_subset_Iio (hb.trans hb₀))
728+ · filter_upwards [self_mem_nhdsWithin] with b hb
729+ apply ae_of_all
730+ intro x
731+ rw [norm_indicator_eq_indicator_norm]
732+ apply indicator_le_indicator_of_subset (Iio_subset_Iio (hb.trans hb₀))
733+ intro _
734+ exact norm_nonneg _
735+ · simpa [integrable_indicator_iff measurableSet_Iio] using hf.norm
736+ · apply ae_of_all
737+ intro x
738+ rw [indicator_apply]
739+ by_cases hx : x < b₀
740+ · simp only [mem_Iio, hx, if_true]
741+ apply tendsto_const_nhds.congr'
742+ filter_upwards [mem_nhdsWithin_of_mem_nhds (Ioi_mem_nhds hx)] with b (hb : x < b)
743+ simp [hb]
744+ · simp only [mem_Iio, hx, if_false]
745+ simp at hx
746+ apply tendsto_const_nhds.congr'
747+ filter_upwards [self_mem_nhdsWithin] with b hb
748+ simp [hb.trans hx]
749+
750+ theorem IntegrableOn.continuousWithinAt_primitive_Iio {a b₀ : ℝ} (hf : IntegrableOn f (Iio a) μ)
751+ (hb₀ : b₀ ≤ a) :
752+ ContinuousWithinAt (fun b ↦ ∫ x in Iio b, f x ∂μ) (Iic b₀) b₀ :=
753+ hf.tendsto_primitive_Iio hb₀
754+
755+ theorem IntegrableOn.continuousOn_primitive_Iio [NoAtoms μ] {a : ℝ}
756+ (hf : IntegrableOn f (Iio a) μ) :
757+ ContinuousOn (fun b ↦ ∫ x in Iio b, f x ∂μ) (Iic a) := by
758+ intro b₀ hb₀
759+ rw [mem_Iic] at hb₀
760+ simp_rw [← integral_indicator measurableSet_Iio]
761+ apply tendsto_integral_filter_of_dominated_convergence
762+ · filter_upwards [self_mem_nhdsWithin] with b hb
763+ rw [aestronglyMeasurable_indicator_iff measurableSet_Iio]
764+ apply Integrable.aestronglyMeasurable
765+ exact hf.mono_set (Iio_subset_Iio hb)
766+ · filter_upwards [self_mem_nhdsWithin] with b hb
767+ apply ae_of_all
768+ intro x
769+ rw [norm_indicator_eq_indicator_norm]
770+ apply indicator_le_indicator_of_subset (Iio_subset_Iio hb)
771+ intro _
772+ exact norm_nonneg _
773+ · simpa [integrable_indicator_iff measurableSet_Iio] using hf.norm
774+ · have hne : ∀ᵐ x ∂μ, x ≠ b₀ := by simp [ae_iff]
775+ filter_upwards [hne] with x hx
776+ rw [indicator_apply]
777+ by_cases hxb : x < b₀
778+ · simp only [mem_Iio, hxb, if_true]
779+ apply tendsto_const_nhds.congr'
780+ filter_upwards [mem_nhdsWithin_of_mem_nhds (Ioi_mem_nhds hxb)] with b (hb : x < b)
781+ simp [hb]
782+ · simp only [mem_Iio, hxb, if_false]
783+ have hxb' : b₀ < x := lt_of_le_of_ne (not_lt.mp hxb) (Ne.symm hx)
784+ apply tendsto_const_nhds.congr'
785+ filter_upwards [mem_nhdsWithin_of_mem_nhds (Iio_mem_nhds hxb')] with b (hb : b < x)
786+ simp [hb.le]
787+
788+ end PrimitiveIio
789+
717790end MeasureTheory
718791
719792end DominatedConvergenceTheorem
0 commit comments