測度論と積分

7.3. ディラック測度🔗

定義.

X を可測空間とし、x \in X とする。 ディラック測度 \delta_x とは、任意の可測集合 A \subseteq X に対して \delta_x(A) \coloneqq 1_A(x) で定まる X 上の測度である。

Lean code
def Measure.dirac (x : X) : Measure X := Measure.ofMeasurable (fun A _ indicator A (fun _ 1) x) (X:Type u_1Y:Type u_2Z:Type u_3inst✝²:MeasurableSpace Xinst✝¹:MeasurableSpace Yinst✝:MeasurableSpace Zx:X(fun A x_1 => A.indicator (fun x => 1) x) = 0 All goals completed! 🐙) <| X:Type u_1Y:Type u_2Z:Type u_3inst✝²:MeasurableSpace Xinst✝¹:MeasurableSpace Yinst✝:MeasurableSpace Zx:X f : Set X (h : (i : ), MeasurableSet (f i)), Pairwise (Function.onFun Disjoint f) (fun A x_1 => A.indicator (fun x => 1) x) (⋃ i, f i) = ∑' (i : ), (fun A x_1 => A.indicator (fun x => 1) x) (f i) intro A X:Type u_1Y:Type u_2Z:Type u_3inst✝²:MeasurableSpace Xinst✝¹:MeasurableSpace Yinst✝:MeasurableSpace Zx:XA: Set XhA: (i : ), MeasurableSet (A i)Pairwise (Function.onFun Disjoint A) (fun A x_1 => A.indicator (fun x => 1) x) (⋃ i, A i) = ∑' (i : ), (fun A x_1 => A.indicator (fun x => 1) x) (A i) X:Type u_1Y:Type u_2Z:Type u_3inst✝²:MeasurableSpace Xinst✝¹:MeasurableSpace Yinst✝:MeasurableSpace Zx:XA: Set XhA: (i : ), MeasurableSet (A i)hAd:Pairwise (Function.onFun Disjoint A)(fun A x_1 => A.indicator (fun x => 1) x) (⋃ i, A i) = ∑' (i : ), (fun A x_1 => A.indicator (fun x => 1) x) (A i) X:Type u_1Y:Type u_2Z:Type u_3inst✝²:MeasurableSpace Xinst✝¹:MeasurableSpace Yinst✝:MeasurableSpace Zx:XA: Set XhA: (i : ), MeasurableSet (A i)hAd:Pairwise (Function.onFun Disjoint A)(⋃ i, A i).indicator (fun x => 1) x = ∑' (i : ), (A i).indicator (fun x => 1) x X:Type u_1Y:Type u_2Z:Type u_3inst✝²:MeasurableSpace Xinst✝¹:MeasurableSpace Yinst✝:MeasurableSpace Zx:XA: Set XhA: (i : ), MeasurableSet (A i)hAd:Pairwise (Function.onFun Disjoint A)hx:x i, A i(⋃ i, A i).indicator (fun x => 1) x = ∑' (i : ), (A i).indicator (fun x => 1) xX:Type u_1Y:Type u_2Z:Type u_3inst✝²:MeasurableSpace Xinst✝¹:MeasurableSpace Yinst✝:MeasurableSpace Zx:XA: Set XhA: (i : ), MeasurableSet (A i)hAd:Pairwise (Function.onFun Disjoint A)hx:x i, A i(⋃ i, A i).indicator (fun x => 1) x = ∑' (i : ), (A i).indicator (fun x => 1) x X:Type u_1Y:Type u_2Z:Type u_3inst✝²:MeasurableSpace Xinst✝¹:MeasurableSpace Yinst✝:MeasurableSpace Zx:XA: Set XhA: (i : ), MeasurableSet (A i)hAd:Pairwise (Function.onFun Disjoint A)hx:x i, A i(⋃ i, A i).indicator (fun x => 1) x = ∑' (i : ), (A i).indicator (fun x => 1) x X:Type u_1Y:Type u_2Z:Type u_3inst✝²:MeasurableSpace Xinst✝¹:MeasurableSpace Yinst✝:MeasurableSpace Zx:XA: Set XhA: (i : ), MeasurableSet (A i)hAd:Pairwise (Function.onFun Disjoint A)hx:x i, A i1 = ∑' (i : ), (A i).indicator (fun x => 1) x X:Type u_1Y:Type u_2Z:Type u_3inst✝²:MeasurableSpace Xinst✝¹:MeasurableSpace Yinst✝:MeasurableSpace Zx:XA: Set XhA: (i : ), MeasurableSet (A i)hAd:Pairwise (Function.onFun Disjoint A)hx: i, x A i1 = ∑' (i : ), (A i).indicator (fun x => 1) x X:Type u_1Y:Type u_2Z:Type u_3inst✝²:MeasurableSpace Xinst✝¹:MeasurableSpace Yinst✝:MeasurableSpace Zx:XA: Set XhA: (i : ), MeasurableSet (A i)hAd:Pairwise (Function.onFun Disjoint A)hx: i, x A ii:hi:x A i1 = ∑' (i : ), (A i).indicator (fun x => 1) x have : ∑' (i : ), (A i).indicator (fun x (1 : ℝ≥0∞)) x = (A i).indicator (fun x (1 : ℝ≥0∞)) x + ∑' k : , if k = i then 0 else (A k).indicator (fun x (1 : ℝ≥0∞)) x := X:Type u_1Y:Type u_2Z:Type u_3inst✝²:MeasurableSpace Xinst✝¹:MeasurableSpace Yinst✝:MeasurableSpace Zx:X f : Set X (h : (i : ), MeasurableSet (f i)), Pairwise (Function.onFun Disjoint f) (fun A x_1 => A.indicator (fun x => 1) x) (⋃ i, f i) = ∑' (i : ), (fun A x_1 => A.indicator (fun x => 1) x) (f i) All goals completed! 🐙 X:Type u_1Y:Type u_2Z:Type u_3inst✝²:MeasurableSpace Xinst✝¹:MeasurableSpace Yinst✝:MeasurableSpace Zx:XA: Set XhA: (i : ), MeasurableSet (A i)hAd:Pairwise (Function.onFun Disjoint A)hx: i, x A ii:hi:x A ithis:∑' (i : ), (A i).indicator (fun x => 1) x = (A i).indicator (fun x => 1) x + ∑' (k : ), if k = i then 0 else (A k).indicator (fun x => 1) x := Eq.mpr (eq_of_heq ((fun α a a_1 a' e'_3 => Eq.casesOn (motive := fun a_2 x => a' = a_2 e'_3 x (a = a_1) (a = a')) e'_3 (fun h => Eq.ndrec (motive := fun a' => (e_3 : a_1 = a'), e_3 Eq.refl a_1 (a = a_1) (a = a')) (fun e_3 h => HEq.refl (a = a_1)) (Eq.symm h) e'_3) (Eq.refl a') (HEq.refl e'_3)) ℝ≥0∞ (∑' (i : ), (A i).indicator (fun x => 1) x) ((A i).indicator (fun x => 1) x + ∑' (k : ), if k = i then 0 else (A k).indicator (fun x => 1) x) ((A i).indicator (fun x => 1) x + ∑' (x_1 : ), if x_1 = i then 0 else (A x_1).indicator (fun x => 1) x) (eq_of_heq ((fun α β γ self a a_1 a' e'_6 => Eq.casesOn (motive := fun a_2 x => a' = a_2 e'_6 x a + a_1 a + a') e'_6 (fun h => Eq.ndrec (motive := fun a' => (e_6 : a_1 = a'), e_6 Eq.refl a_1 a + a_1 a + a') (fun e_6 h => HEq.refl (a + a_1)) (Eq.symm h) e'_6) (Eq.refl a') (HEq.refl e'_6)) ℝ≥0∞ ℝ≥0∞ ℝ≥0∞ instHAdd ((A i).indicator (fun x => 1) x) (∑' (k : ), if k = i then 0 else (A k).indicator (fun x => 1) x) (∑' (x_1 : ), if x_1 = i then 0 else (A x_1).indicator (fun x => 1) x) (eq_of_heq ((fun α β inst inst_1 f f' e'_5 L => Eq.casesOn (motive := fun a x => f' = a e'_5 x tsum f L tsum f' L) e'_5 (fun h => Eq.ndrec (motive := fun f' => (e_5 : f = f'), e_5 Eq.refl f tsum f L tsum f' L) (fun e_5 h => HEq.refl (tsum f L)) (Eq.symm h) e'_5) (Eq.refl f') (HEq.refl e'_5)) ℝ≥0∞ instAddCommMonoid instTopologicalSpace (fun k => if k = i then 0 else (A k).indicator (fun x => 1) x) (fun x_1 => if x_1 = i then 0 else (A x_1).indicator (fun x => 1) x) (funext fun x_1 => ite_congr (Eq.refl (x_1 = i)) (fun a => Eq.refl 0) fun a => Eq.refl ((A x_1).indicator (fun x => 1) x)))))))) (tsum_eq_add_tsum_ite i)1 = (A i).indicator (fun x => 1) x + ∑' (k : ), if k = i then 0 else (A k).indicator (fun x => 1) x X:Type u_1Y:Type u_2Z:Type u_3inst✝²:MeasurableSpace Xinst✝¹:MeasurableSpace Yinst✝:MeasurableSpace Zx:XA: Set XhA: (i : ), MeasurableSet (A i)hAd:Pairwise (Function.onFun Disjoint A)hx: i, x A ii:hi:x A ithis:∑' (i : ), (A i).indicator (fun x => 1) x = (A i).indicator (fun x => 1) x + ∑' (k : ), if k = i then 0 else (A k).indicator (fun x => 1) x := Eq.mpr (eq_of_heq ((fun α a a_1 a' e'_3 => Eq.casesOn (motive := fun a_2 x => a' = a_2 e'_3 x (a = a_1) (a = a')) e'_3 (fun h => Eq.ndrec (motive := fun a' => (e_3 : a_1 = a'), e_3 Eq.refl a_1 (a = a_1) (a = a')) (fun e_3 h => HEq.refl (a = a_1)) (Eq.symm h) e'_3) (Eq.refl a') (HEq.refl e'_3)) ℝ≥0∞ (∑' (i : ), (A i).indicator (fun x => 1) x) ((A i).indicator (fun x => 1) x + ∑' (k : ), if k = i then 0 else (A k).indicator (fun x => 1) x) ((A i).indicator (fun x => 1) x + ∑' (x_1 : ), if x_1 = i then 0 else (A x_1).indicator (fun x => 1) x) (eq_of_heq ((fun α β γ self a a_1 a' e'_6 => Eq.casesOn (motive := fun a_2 x => a' = a_2 e'_6 x a + a_1 a + a') e'_6 (fun h => Eq.ndrec (motive := fun a' => (e_6 : a_1 = a'), e_6 Eq.refl a_1 a + a_1 a + a') (fun e_6 h => HEq.refl (a + a_1)) (Eq.symm h) e'_6) (Eq.refl a') (HEq.refl e'_6)) ℝ≥0∞ ℝ≥0∞ ℝ≥0∞ instHAdd ((A i).indicator (fun x => 1) x) (∑' (k : ), if k = i then 0 else (A k).indicator (fun x => 1) x) (∑' (x_1 : ), if x_1 = i then 0 else (A x_1).indicator (fun x => 1) x) (eq_of_heq ((fun α β inst inst_1 f f' e'_5 L => Eq.casesOn (motive := fun a x => f' = a e'_5 x tsum f L tsum f' L) e'_5 (fun h => Eq.ndrec (motive := fun f' => (e_5 : f = f'), e_5 Eq.refl f tsum f L tsum f' L) (fun e_5 h => HEq.refl (tsum f L)) (Eq.symm h) e'_5) (Eq.refl f') (HEq.refl e'_5)) ℝ≥0∞ instAddCommMonoid instTopologicalSpace (fun k => if k = i then 0 else (A k).indicator (fun x => 1) x) (fun x_1 => if x_1 = i then 0 else (A x_1).indicator (fun x => 1) x) (funext fun x_1 => ite_congr (Eq.refl (x_1 = i)) (fun a => Eq.refl 0) fun a => Eq.refl ((A x_1).indicator (fun x => 1) x)))))))) (tsum_eq_add_tsum_ite i)1 = 1 + ∑' (k : ), if k = i then 0 else (A k).indicator (fun x => 1) x suffices (∑' k : , if k = i then 0 else (A k).indicator (fun x (1 : ℝ≥0∞)) x) = 0 X:Type u_1Y:Type u_2Z:Type u_3inst✝²:MeasurableSpace Xinst✝¹:MeasurableSpace Yinst✝:MeasurableSpace Zx:XA: Set XhA: (i : ), MeasurableSet (A i)hAd:Pairwise (Function.onFun Disjoint A)hx: i, x A ii:hi:x A ithis✝:∑' (i : ), (A i).indicator (fun x => 1) x = (A i).indicator (fun x => 1) x + ∑' (k : ), if k = i then 0 else (A k).indicator (fun x => 1) x := Eq.mpr (eq_of_heq ((fun α a a_1 a' e'_3 => Eq.casesOn (motive := fun a_2 x => a' = a_2 e'_3 x (a = a_1) (a = a')) e'_3 (fun h => Eq.ndrec (motive := fun a' => (e_3 : a_1 = a'), e_3 Eq.refl a_1 (a = a_1) (a = a')) (fun e_3 h => HEq.refl (a = a_1)) (Eq.symm h) e'_3) (Eq.refl a') (HEq.refl e'_3)) ℝ≥0∞ (∑' (i : ), (A i).indicator (fun x => 1) x) ((A i).indicator (fun x => 1) x + ∑' (k : ), if k = i then 0 else (A k).indicator (fun x => 1) x) ((A i).indicator (fun x => 1) x + ∑' (x_1 : ), if x_1 = i then 0 else (A x_1).indicator (fun x => 1) x) (eq_of_heq ((fun α β γ self a a_1 a' e'_6 => Eq.casesOn (motive := fun a_2 x => a' = a_2 e'_6 x a + a_1 a + a') e'_6 (fun h => Eq.ndrec (motive := fun a' => (e_6 : a_1 = a'), e_6 Eq.refl a_1 a + a_1 a + a') (fun e_6 h => HEq.refl (a + a_1)) (Eq.symm h) e'_6) (Eq.refl a') (HEq.refl e'_6)) ℝ≥0∞ ℝ≥0∞ ℝ≥0∞ instHAdd ((A i).indicator (fun x => 1) x) (∑' (k : ), if k = i then 0 else (A k).indicator (fun x => 1) x) (∑' (x_1 : ), if x_1 = i then 0 else (A x_1).indicator (fun x => 1) x) (eq_of_heq ((fun α β inst inst_1 f f' e'_5 L => Eq.casesOn (motive := fun a x => f' = a e'_5 x tsum f L tsum f' L) e'_5 (fun h => Eq.ndrec (motive := fun f' => (e_5 : f = f'), e_5 Eq.refl f tsum f L tsum f' L) (fun e_5 h => HEq.refl (tsum f L)) (Eq.symm h) e'_5) (Eq.refl f') (HEq.refl e'_5)) ℝ≥0∞ instAddCommMonoid instTopologicalSpace (fun k => if k = i then 0 else (A k).indicator (fun x => 1) x) (fun x_1 => if x_1 = i then 0 else (A x_1).indicator (fun x => 1) x) (funext fun x_1 => ite_congr (Eq.refl (x_1 = i)) (fun a => Eq.refl 0) fun a => Eq.refl ((A x_1).indicator (fun x => 1) x)))))))) (tsum_eq_add_tsum_ite i)this:(∑' (k : ), if k = i then 0 else (A k).indicator (fun x => 1) x) = 0 := ?m.3451 = 1 + ∑' (k : ), if k = i then 0 else (A k).indicator (fun x => 1) x X:Type u_1Y:Type u_2Z:Type u_3inst✝²:MeasurableSpace Xinst✝¹:MeasurableSpace Yinst✝:MeasurableSpace Zx:XA: Set XhA: (i : ), MeasurableSet (A i)hAd:Pairwise (Function.onFun Disjoint A)hx: i, x A ii:hi:x A ithis✝:∑' (i : ), (A i).indicator (fun x => 1) x = (A i).indicator (fun x => 1) x + ∑' (k : ), if k = i then 0 else (A k).indicator (fun x => 1) x := Eq.mpr (eq_of_heq ((fun α a a_1 a' e'_3 => Eq.casesOn (motive := fun a_2 x => a' = a_2 e'_3 x (a = a_1) (a = a')) e'_3 (fun h => Eq.ndrec (motive := fun a' => (e_3 : a_1 = a'), e_3 Eq.refl a_1 (a = a_1) (a = a')) (fun e_3 h => HEq.refl (a = a_1)) (Eq.symm h) e'_3) (Eq.refl a') (HEq.refl e'_3)) ℝ≥0∞ (∑' (i : ), (A i).indicator (fun x => 1) x) ((A i).indicator (fun x => 1) x + ∑' (k : ), if k = i then 0 else (A k).indicator (fun x => 1) x) ((A i).indicator (fun x => 1) x + ∑' (x_1 : ), if x_1 = i then 0 else (A x_1).indicator (fun x => 1) x) (eq_of_heq ((fun α β γ self a a_1 a' e'_6 => Eq.casesOn (motive := fun a_2 x => a' = a_2 e'_6 x a + a_1 a + a') e'_6 (fun h => Eq.ndrec (motive := fun a' => (e_6 : a_1 = a'), e_6 Eq.refl a_1 a + a_1 a + a') (fun e_6 h => HEq.refl (a + a_1)) (Eq.symm h) e'_6) (Eq.refl a') (HEq.refl e'_6)) ℝ≥0∞ ℝ≥0∞ ℝ≥0∞ instHAdd ((A i).indicator (fun x => 1) x) (∑' (k : ), if k = i then 0 else (A k).indicator (fun x => 1) x) (∑' (x_1 : ), if x_1 = i then 0 else (A x_1).indicator (fun x => 1) x) (eq_of_heq ((fun α β inst inst_1 f f' e'_5 L => Eq.casesOn (motive := fun a x => f' = a e'_5 x tsum f L tsum f' L) e'_5 (fun h => Eq.ndrec (motive := fun f' => (e_5 : f = f'), e_5 Eq.refl f tsum f L tsum f' L) (fun e_5 h => HEq.refl (tsum f L)) (Eq.symm h) e'_5) (Eq.refl f') (HEq.refl e'_5)) ℝ≥0∞ instAddCommMonoid instTopologicalSpace (fun k => if k = i then 0 else (A k).indicator (fun x => 1) x) (fun x_1 => if x_1 = i then 0 else (A x_1).indicator (fun x => 1) x) (funext fun x_1 => ite_congr (Eq.refl (x_1 = i)) (fun a => Eq.refl 0) fun a => Eq.refl ((A x_1).indicator (fun x => 1) x)))))))) (tsum_eq_add_tsum_ite i)this:(∑' (k : ), if k = i then 0 else (A k).indicator (fun x => 1) x) = 0 := ?m.3451 = 1 + 0 All goals completed! 🐙 X:Type u_1Y:Type u_2Z:Type u_3inst✝²:MeasurableSpace Xinst✝¹:MeasurableSpace Yinst✝:MeasurableSpace Zx:XA: Set XhA: (i : ), MeasurableSet (A i)hAd:Pairwise (Function.onFun Disjoint A)hx: i, x A ii:hi:x A ithis:∑' (i : ), (A i).indicator (fun x => 1) x = (A i).indicator (fun x => 1) x + ∑' (k : ), if k = i then 0 else (A k).indicator (fun x => 1) x := Eq.mpr (eq_of_heq ((fun α a a_1 a' e'_3 => Eq.casesOn (motive := fun a_2 x => a' = a_2 e'_3 x (a = a_1) (a = a')) e'_3 (fun h => Eq.ndrec (motive := fun a' => (e_3 : a_1 = a'), e_3 Eq.refl a_1 (a = a_1) (a = a')) (fun e_3 h => HEq.refl (a = a_1)) (Eq.symm h) e'_3) (Eq.refl a') (HEq.refl e'_3)) ℝ≥0∞ (∑' (i : ), (A i).indicator (fun x => 1) x) ((A i).indicator (fun x => 1) x + ∑' (k : ), if k = i then 0 else (A k).indicator (fun x => 1) x) ((A i).indicator (fun x => 1) x + ∑' (x_1 : ), if x_1 = i then 0 else (A x_1).indicator (fun x => 1) x) (eq_of_heq ((fun α β γ self a a_1 a' e'_6 => Eq.casesOn (motive := fun a_2 x => a' = a_2 e'_6 x a + a_1 a + a') e'_6 (fun h => Eq.ndrec (motive := fun a' => (e_6 : a_1 = a'), e_6 Eq.refl a_1 a + a_1 a + a') (fun e_6 h => HEq.refl (a + a_1)) (Eq.symm h) e'_6) (Eq.refl a') (HEq.refl e'_6)) ℝ≥0∞ ℝ≥0∞ ℝ≥0∞ instHAdd ((A i).indicator (fun x => 1) x) (∑' (k : ), if k = i then 0 else (A k).indicator (fun x => 1) x) (∑' (x_1 : ), if x_1 = i then 0 else (A x_1).indicator (fun x => 1) x) (eq_of_heq ((fun α β inst inst_1 f f' e'_5 L => Eq.casesOn (motive := fun a x => f' = a e'_5 x tsum f L tsum f' L) e'_5 (fun h => Eq.ndrec (motive := fun f' => (e_5 : f = f'), e_5 Eq.refl f tsum f L tsum f' L) (fun e_5 h => HEq.refl (tsum f L)) (Eq.symm h) e'_5) (Eq.refl f') (HEq.refl e'_5)) ℝ≥0∞ instAddCommMonoid instTopologicalSpace (fun k => if k = i then 0 else (A k).indicator (fun x => 1) x) (fun x_1 => if x_1 = i then 0 else (A x_1).indicator (fun x => 1) x) (funext fun x_1 => ite_congr (Eq.refl (x_1 = i)) (fun a => Eq.refl 0) fun a => Eq.refl ((A x_1).indicator (fun x => 1) x)))))))) (tsum_eq_add_tsum_ite i) (i_1 : ), (if i_1 = i then 0 else (A i_1).indicator (fun x => 1) x) = 0 X:Type u_1Y:Type u_2Z:Type u_3inst✝²:MeasurableSpace Xinst✝¹:MeasurableSpace Yinst✝:MeasurableSpace Zx:XA: Set XhA: (i : ), MeasurableSet (A i)hAd:Pairwise (Function.onFun Disjoint A)hx: i, x A ii:hi:x A ithis:∑' (i : ), (A i).indicator (fun x => 1) x = (A i).indicator (fun x => 1) x + ∑' (k : ), if k = i then 0 else (A k).indicator (fun x => 1) x := Eq.mpr (eq_of_heq ((fun α a a_1 a' e'_3 => Eq.casesOn (motive := fun a_2 x => a' = a_2 e'_3 x (a = a_1) (a = a')) e'_3 (fun h => Eq.ndrec (motive := fun a' => (e_3 : a_1 = a'), e_3 Eq.refl a_1 (a = a_1) (a = a')) (fun e_3 h => HEq.refl (a = a_1)) (Eq.symm h) e'_3) (Eq.refl a') (HEq.refl e'_3)) ℝ≥0∞ (∑' (i : ), (A i).indicator (fun x => 1) x) ((A i).indicator (fun x => 1) x + ∑' (k : ), if k = i then 0 else (A k).indicator (fun x => 1) x) ((A i).indicator (fun x => 1) x + ∑' (x_1 : ), if x_1 = i then 0 else (A x_1).indicator (fun x => 1) x) (eq_of_heq ((fun α β γ self a a_1 a' e'_6 => Eq.casesOn (motive := fun a_2 x => a' = a_2 e'_6 x a + a_1 a + a') e'_6 (fun h => Eq.ndrec (motive := fun a' => (e_6 : a_1 = a'), e_6 Eq.refl a_1 a + a_1 a + a') (fun e_6 h => HEq.refl (a + a_1)) (Eq.symm h) e'_6) (Eq.refl a') (HEq.refl e'_6)) ℝ≥0∞ ℝ≥0∞ ℝ≥0∞ instHAdd ((A i).indicator (fun x => 1) x) (∑' (k : ), if k = i then 0 else (A k).indicator (fun x => 1) x) (∑' (x_1 : ), if x_1 = i then 0 else (A x_1).indicator (fun x => 1) x) (eq_of_heq ((fun α β inst inst_1 f f' e'_5 L => Eq.casesOn (motive := fun a x => f' = a e'_5 x tsum f L tsum f' L) e'_5 (fun h => Eq.ndrec (motive := fun f' => (e_5 : f = f'), e_5 Eq.refl f tsum f L tsum f' L) (fun e_5 h => HEq.refl (tsum f L)) (Eq.symm h) e'_5) (Eq.refl f') (HEq.refl e'_5)) ℝ≥0∞ instAddCommMonoid instTopologicalSpace (fun k => if k = i then 0 else (A k).indicator (fun x => 1) x) (fun x_1 => if x_1 = i then 0 else (A x_1).indicator (fun x => 1) x) (funext fun x_1 => ite_congr (Eq.refl (x_1 = i)) (fun a => Eq.refl 0) fun a => Eq.refl ((A x_1).indicator (fun x => 1) x)))))))) (tsum_eq_add_tsum_ite i)k:(if k = i then 0 else (A k).indicator (fun x => 1) x) = 0 X:Type u_1Y:Type u_2Z:Type u_3inst✝²:MeasurableSpace Xinst✝¹:MeasurableSpace Yinst✝:MeasurableSpace Zx:XA: Set XhA: (i : ), MeasurableSet (A i)hAd:Pairwise (Function.onFun Disjoint A)hx: i, x A ii:hi:x A ithis:∑' (i : ), (A i).indicator (fun x => 1) x = (A i).indicator (fun x => 1) x + ∑' (k : ), if k = i then 0 else (A k).indicator (fun x => 1) x := Eq.mpr (eq_of_heq ((fun α a a_1 a' e'_3 => Eq.casesOn (motive := fun a_2 x => a' = a_2 e'_3 x (a = a_1) (a = a')) e'_3 (fun h => Eq.ndrec (motive := fun a' => (e_3 : a_1 = a'), e_3 Eq.refl a_1 (a = a_1) (a = a')) (fun e_3 h => HEq.refl (a = a_1)) (Eq.symm h) e'_3) (Eq.refl a') (HEq.refl e'_3)) ℝ≥0∞ (∑' (i : ), (A i).indicator (fun x => 1) x) ((A i).indicator (fun x => 1) x + ∑' (k : ), if k = i then 0 else (A k).indicator (fun x => 1) x) ((A i).indicator (fun x => 1) x + ∑' (x_1 : ), if x_1 = i then 0 else (A x_1).indicator (fun x => 1) x) (eq_of_heq ((fun α β γ self a a_1 a' e'_6 => Eq.casesOn (motive := fun a_2 x => a' = a_2 e'_6 x a + a_1 a + a') e'_6 (fun h => Eq.ndrec (motive := fun a' => (e_6 : a_1 = a'), e_6 Eq.refl a_1 a + a_1 a + a') (fun e_6 h => HEq.refl (a + a_1)) (Eq.symm h) e'_6) (Eq.refl a') (HEq.refl e'_6)) ℝ≥0∞ ℝ≥0∞ ℝ≥0∞ instHAdd ((A i).indicator (fun x => 1) x) (∑' (k : ), if k = i then 0 else (A k).indicator (fun x => 1) x) (∑' (x_1 : ), if x_1 = i then 0 else (A x_1).indicator (fun x => 1) x) (eq_of_heq ((fun α β inst inst_1 f f' e'_5 L => Eq.casesOn (motive := fun a x => f' = a e'_5 x tsum f L tsum f' L) e'_5 (fun h => Eq.ndrec (motive := fun f' => (e_5 : f = f'), e_5 Eq.refl f tsum f L tsum f' L) (fun e_5 h => HEq.refl (tsum f L)) (Eq.symm h) e'_5) (Eq.refl f') (HEq.refl e'_5)) ℝ≥0∞ instAddCommMonoid instTopologicalSpace (fun k => if k = i then 0 else (A k).indicator (fun x => 1) x) (fun x_1 => if x_1 = i then 0 else (A x_1).indicator (fun x => 1) x) (funext fun x_1 => ite_congr (Eq.refl (x_1 = i)) (fun a => Eq.refl 0) fun a => Eq.refl ((A x_1).indicator (fun x => 1) x)))))))) (tsum_eq_add_tsum_ite i)k:¬k = i x A k intro hik X:Type u_1Y:Type u_2Z:Type u_3inst✝²:MeasurableSpace Xinst✝¹:MeasurableSpace Yinst✝:MeasurableSpace Zx:XA: Set XhA: (i : ), MeasurableSet (A i)hAd:Pairwise (Function.onFun Disjoint A)hx: i, x A ii:hi:x A ithis:∑' (i : ), (A i).indicator (fun x => 1) x = (A i).indicator (fun x => 1) x + ∑' (k : ), if k = i then 0 else (A k).indicator (fun x => 1) x := Eq.mpr (eq_of_heq ((fun α a a_1 a' e'_3 => Eq.casesOn (motive := fun a_2 x => a' = a_2 e'_3 x (a = a_1) (a = a')) e'_3 (fun h => Eq.ndrec (motive := fun a' => (e_3 : a_1 = a'), e_3 Eq.refl a_1 (a = a_1) (a = a')) (fun e_3 h => HEq.refl (a = a_1)) (Eq.symm h) e'_3) (Eq.refl a') (HEq.refl e'_3)) ℝ≥0∞ (∑' (i : ), (A i).indicator (fun x => 1) x) ((A i).indicator (fun x => 1) x + ∑' (k : ), if k = i then 0 else (A k).indicator (fun x => 1) x) ((A i).indicator (fun x => 1) x + ∑' (x_1 : ), if x_1 = i then 0 else (A x_1).indicator (fun x => 1) x) (eq_of_heq ((fun α β γ self a a_1 a' e'_6 => Eq.casesOn (motive := fun a_2 x => a' = a_2 e'_6 x a + a_1 a + a') e'_6 (fun h => Eq.ndrec (motive := fun a' => (e_6 : a_1 = a'), e_6 Eq.refl a_1 a + a_1 a + a') (fun e_6 h => HEq.refl (a + a_1)) (Eq.symm h) e'_6) (Eq.refl a') (HEq.refl e'_6)) ℝ≥0∞ ℝ≥0∞ ℝ≥0∞ instHAdd ((A i).indicator (fun x => 1) x) (∑' (k : ), if k = i then 0 else (A k).indicator (fun x => 1) x) (∑' (x_1 : ), if x_1 = i then 0 else (A x_1).indicator (fun x => 1) x) (eq_of_heq ((fun α β inst inst_1 f f' e'_5 L => Eq.casesOn (motive := fun a x => f' = a e'_5 x tsum f L tsum f' L) e'_5 (fun h => Eq.ndrec (motive := fun f' => (e_5 : f = f'), e_5 Eq.refl f tsum f L tsum f' L) (fun e_5 h => HEq.refl (tsum f L)) (Eq.symm h) e'_5) (Eq.refl f') (HEq.refl e'_5)) ℝ≥0∞ instAddCommMonoid instTopologicalSpace (fun k => if k = i then 0 else (A k).indicator (fun x => 1) x) (fun x_1 => if x_1 = i then 0 else (A x_1).indicator (fun x => 1) x) (funext fun x_1 => ite_congr (Eq.refl (x_1 = i)) (fun a => Eq.refl 0) fun a => Eq.refl ((A x_1).indicator (fun x => 1) x)))))))) (tsum_eq_add_tsum_ite i)k:hik:¬k = ihAk:x A kFalse have hx : x A i A k := X:Type u_1Y:Type u_2Z:Type u_3inst✝²:MeasurableSpace Xinst✝¹:MeasurableSpace Yinst✝:MeasurableSpace Zx:X f : Set X (h : (i : ), MeasurableSet (f i)), Pairwise (Function.onFun Disjoint f) (fun A x_1 => A.indicator (fun x => 1) x) (⋃ i, f i) = ∑' (i : ), (fun A x_1 => A.indicator (fun x => 1) x) (f i) All goals completed! 🐙 X:Type u_1Y:Type u_2Z:Type u_3inst✝²:MeasurableSpace Xinst✝¹:MeasurableSpace Yinst✝:MeasurableSpace Zx:XA: Set XhA: (i : ), MeasurableSet (A i)hAd:Pairwise (Function.onFun Disjoint A)hx✝: i, x A ii:hi:x A ithis:∑' (i : ), (A i).indicator (fun x => 1) x = (A i).indicator (fun x => 1) x + ∑' (k : ), if k = i then 0 else (A k).indicator (fun x => 1) x := Eq.mpr (eq_of_heq ((fun α a a_1 a' e'_3 => Eq.casesOn (motive := fun a_2 x => a' = a_2 e'_3 x (a = a_1) (a = a')) e'_3 (fun h => Eq.ndrec (motive := fun a' => (e_3 : a_1 = a'), e_3 Eq.refl a_1 (a = a_1) (a = a')) (fun e_3 h => HEq.refl (a = a_1)) (Eq.symm h) e'_3) (Eq.refl a') (HEq.refl e'_3)) ℝ≥0∞ (∑' (i : ), (A i).indicator (fun x => 1) x) ((A i).indicator (fun x => 1) x + ∑' (k : ), if k = i then 0 else (A k).indicator (fun x => 1) x) ((A i).indicator (fun x => 1) x + ∑' (x_1 : ), if x_1 = i then 0 else (A x_1).indicator (fun x => 1) x) (eq_of_heq ((fun α β γ self a a_1 a' e'_6 => Eq.casesOn (motive := fun a_2 x => a' = a_2 e'_6 x a + a_1 a + a') e'_6 (fun h => Eq.ndrec (motive := fun a' => (e_6 : a_1 = a'), e_6 Eq.refl a_1 a + a_1 a + a') (fun e_6 h => HEq.refl (a + a_1)) (Eq.symm h) e'_6) (Eq.refl a') (HEq.refl e'_6)) ℝ≥0∞ ℝ≥0∞ ℝ≥0∞ instHAdd ((A i).indicator (fun x => 1) x) (∑' (k : ), if k = i then 0 else (A k).indicator (fun x => 1) x) (∑' (x_1 : ), if x_1 = i then 0 else (A x_1).indicator (fun x => 1) x) (eq_of_heq ((fun α β inst inst_1 f f' e'_5 L => Eq.casesOn (motive := fun a x => f' = a e'_5 x tsum f L tsum f' L) e'_5 (fun h => Eq.ndrec (motive := fun f' => (e_5 : f = f'), e_5 Eq.refl f tsum f L tsum f' L) (fun e_5 h => HEq.refl (tsum f L)) (Eq.symm h) e'_5) (Eq.refl f') (HEq.refl e'_5)) ℝ≥0∞ instAddCommMonoid instTopologicalSpace (fun k => if k = i then 0 else (A k).indicator (fun x => 1) x) (fun x_1 => if x_1 = i then 0 else (A x_1).indicator (fun x => 1) x) (funext fun x_1 => ite_congr (Eq.refl (x_1 = i)) (fun a => Eq.refl 0) fun a => Eq.refl ((A x_1).indicator (fun x => 1) x)))))))) (tsum_eq_add_tsum_ite i)k:hik:¬k = ihAk:x A khx:x A i A k := mem_inter hi hAkA i A k A kX:Type u_1Y:Type u_2Z:Type u_3inst✝²:MeasurableSpace Xinst✝¹:MeasurableSpace Yinst✝:MeasurableSpace Zx:XA: Set XhA: (i : ), MeasurableSet (A i)hAd:Pairwise (Function.onFun Disjoint A)hx✝: i, x A ii:hi:x A ithis:∑' (i : ), (A i).indicator (fun x => 1) x = (A i).indicator (fun x => 1) x + ∑' (k : ), if k = i then 0 else (A k).indicator (fun x => 1) x := Eq.mpr (eq_of_heq ((fun α a a_1 a' e'_3 => Eq.casesOn (motive := fun a_2 x => a' = a_2 e'_3 x (a = a_1) (a = a')) e'_3 (fun h => Eq.ndrec (motive := fun a' => (e_3 : a_1 = a'), e_3 Eq.refl a_1 (a = a_1) (a = a')) (fun e_3 h => HEq.refl (a = a_1)) (Eq.symm h) e'_3) (Eq.refl a') (HEq.refl e'_3)) ℝ≥0∞ (∑' (i : ), (A i).indicator (fun x => 1) x) ((A i).indicator (fun x => 1) x + ∑' (k : ), if k = i then 0 else (A k).indicator (fun x => 1) x) ((A i).indicator (fun x => 1) x + ∑' (x_1 : ), if x_1 = i then 0 else (A x_1).indicator (fun x => 1) x) (eq_of_heq ((fun α β γ self a a_1 a' e'_6 => Eq.casesOn (motive := fun a_2 x => a' = a_2 e'_6 x a + a_1 a + a') e'_6 (fun h => Eq.ndrec (motive := fun a' => (e_6 : a_1 = a'), e_6 Eq.refl a_1 a + a_1 a + a') (fun e_6 h => HEq.refl (a + a_1)) (Eq.symm h) e'_6) (Eq.refl a') (HEq.refl e'_6)) ℝ≥0∞ ℝ≥0∞ ℝ≥0∞ instHAdd ((A i).indicator (fun x => 1) x) (∑' (k : ), if k = i then 0 else (A k).indicator (fun x => 1) x) (∑' (x_1 : ), if x_1 = i then 0 else (A x_1).indicator (fun x => 1) x) (eq_of_heq ((fun α β inst inst_1 f f' e'_5 L => Eq.casesOn (motive := fun a x => f' = a e'_5 x tsum f L tsum f' L) e'_5 (fun h => Eq.ndrec (motive := fun f' => (e_5 : f = f'), e_5 Eq.refl f tsum f L tsum f' L) (fun e_5 h => HEq.refl (tsum f L)) (Eq.symm h) e'_5) (Eq.refl f') (HEq.refl e'_5)) ℝ≥0∞ instAddCommMonoid instTopologicalSpace (fun k => if k = i then 0 else (A k).indicator (fun x => 1) x) (fun x_1 => if x_1 = i then 0 else (A x_1).indicator (fun x => 1) x) (funext fun x_1 => ite_congr (Eq.refl (x_1 = i)) (fun a => Eq.refl 0) fun a => Eq.refl ((A x_1).indicator (fun x => 1) x)))))))) (tsum_eq_add_tsum_ite i)k:hik:¬k = ihAk:x A khx:x A i A k := mem_inter hi hAkA i A k A i X:Type u_1Y:Type u_2Z:Type u_3inst✝²:MeasurableSpace Xinst✝¹:MeasurableSpace Yinst✝:MeasurableSpace Zx:XA: Set XhA: (i : ), MeasurableSet (A i)hAd:Pairwise (Function.onFun Disjoint A)hx✝: i, x A ii:hi:x A ithis:∑' (i : ), (A i).indicator (fun x => 1) x = (A i).indicator (fun x => 1) x + ∑' (k : ), if k = i then 0 else (A k).indicator (fun x => 1) x := Eq.mpr (eq_of_heq ((fun α a a_1 a' e'_3 => Eq.casesOn (motive := fun a_2 x => a' = a_2 e'_3 x (a = a_1) (a = a')) e'_3 (fun h => Eq.ndrec (motive := fun a' => (e_3 : a_1 = a'), e_3 Eq.refl a_1 (a = a_1) (a = a')) (fun e_3 h => HEq.refl (a = a_1)) (Eq.symm h) e'_3) (Eq.refl a') (HEq.refl e'_3)) ℝ≥0∞ (∑' (i : ), (A i).indicator (fun x => 1) x) ((A i).indicator (fun x => 1) x + ∑' (k : ), if k = i then 0 else (A k).indicator (fun x => 1) x) ((A i).indicator (fun x => 1) x + ∑' (x_1 : ), if x_1 = i then 0 else (A x_1).indicator (fun x => 1) x) (eq_of_heq ((fun α β γ self a a_1 a' e'_6 => Eq.casesOn (motive := fun a_2 x => a' = a_2 e'_6 x a + a_1 a + a') e'_6 (fun h => Eq.ndrec (motive := fun a' => (e_6 : a_1 = a'), e_6 Eq.refl a_1 a + a_1 a + a') (fun e_6 h => HEq.refl (a + a_1)) (Eq.symm h) e'_6) (Eq.refl a') (HEq.refl e'_6)) ℝ≥0∞ ℝ≥0∞ ℝ≥0∞ instHAdd ((A i).indicator (fun x => 1) x) (∑' (k : ), if k = i then 0 else (A k).indicator (fun x => 1) x) (∑' (x_1 : ), if x_1 = i then 0 else (A x_1).indicator (fun x => 1) x) (eq_of_heq ((fun α β inst inst_1 f f' e'_5 L => Eq.casesOn (motive := fun a x => f' = a e'_5 x tsum f L tsum f' L) e'_5 (fun h => Eq.ndrec (motive := fun f' => (e_5 : f = f'), e_5 Eq.refl f tsum f L tsum f' L) (fun e_5 h => HEq.refl (tsum f L)) (Eq.symm h) e'_5) (Eq.refl f') (HEq.refl e'_5)) ℝ≥0∞ instAddCommMonoid instTopologicalSpace (fun k => if k = i then 0 else (A k).indicator (fun x => 1) x) (fun x_1 => if x_1 = i then 0 else (A x_1).indicator (fun x => 1) x) (funext fun x_1 => ite_congr (Eq.refl (x_1 = i)) (fun a => Eq.refl 0) fun a => Eq.refl ((A x_1).indicator (fun x => 1) x)))))))) (tsum_eq_add_tsum_ite i)k:hik:¬k = ihAk:x A khx:x A i A k := mem_inter hi hAkA i A k A k All goals completed! 🐙 X:Type u_1Y:Type u_2Z:Type u_3inst✝²:MeasurableSpace Xinst✝¹:MeasurableSpace Yinst✝:MeasurableSpace Zx:XA: Set XhA: (i : ), MeasurableSet (A i)hAd:Pairwise (Function.onFun Disjoint A)hx✝: i, x A ii:hi:x A ithis:∑' (i : ), (A i).indicator (fun x => 1) x = (A i).indicator (fun x => 1) x + ∑' (k : ), if k = i then 0 else (A k).indicator (fun x => 1) x := Eq.mpr (eq_of_heq ((fun α a a_1 a' e'_3 => Eq.casesOn (motive := fun a_2 x => a' = a_2 e'_3 x (a = a_1) (a = a')) e'_3 (fun h => Eq.ndrec (motive := fun a' => (e_3 : a_1 = a'), e_3 Eq.refl a_1 (a = a_1) (a = a')) (fun e_3 h => HEq.refl (a = a_1)) (Eq.symm h) e'_3) (Eq.refl a') (HEq.refl e'_3)) ℝ≥0∞ (∑' (i : ), (A i).indicator (fun x => 1) x) ((A i).indicator (fun x => 1) x + ∑' (k : ), if k = i then 0 else (A k).indicator (fun x => 1) x) ((A i).indicator (fun x => 1) x + ∑' (x_1 : ), if x_1 = i then 0 else (A x_1).indicator (fun x => 1) x) (eq_of_heq ((fun α β γ self a a_1 a' e'_6 => Eq.casesOn (motive := fun a_2 x => a' = a_2 e'_6 x a + a_1 a + a') e'_6 (fun h => Eq.ndrec (motive := fun a' => (e_6 : a_1 = a'), e_6 Eq.refl a_1 a + a_1 a + a') (fun e_6 h => HEq.refl (a + a_1)) (Eq.symm h) e'_6) (Eq.refl a') (HEq.refl e'_6)) ℝ≥0∞ ℝ≥0∞ ℝ≥0∞ instHAdd ((A i).indicator (fun x => 1) x) (∑' (k : ), if k = i then 0 else (A k).indicator (fun x => 1) x) (∑' (x_1 : ), if x_1 = i then 0 else (A x_1).indicator (fun x => 1) x) (eq_of_heq ((fun α β inst inst_1 f f' e'_5 L => Eq.casesOn (motive := fun a x => f' = a e'_5 x tsum f L tsum f' L) e'_5 (fun h => Eq.ndrec (motive := fun f' => (e_5 : f = f'), e_5 Eq.refl f tsum f L tsum f' L) (fun e_5 h => HEq.refl (tsum f L)) (Eq.symm h) e'_5) (Eq.refl f') (HEq.refl e'_5)) ℝ≥0∞ instAddCommMonoid instTopologicalSpace (fun k => if k = i then 0 else (A k).indicator (fun x => 1) x) (fun x_1 => if x_1 = i then 0 else (A x_1).indicator (fun x => 1) x) (funext fun x_1 => ite_congr (Eq.refl (x_1 = i)) (fun a => Eq.refl 0) fun a => Eq.refl ((A x_1).indicator (fun x => 1) x)))))))) (tsum_eq_add_tsum_ite i)k:hik:¬k = ihAk:x A khx:x A i A k := mem_inter hi hAkA i A k A i All goals completed! 🐙 X:Type u_1Y:Type u_2Z:Type u_3inst✝²:MeasurableSpace Xinst✝¹:MeasurableSpace Yinst✝:MeasurableSpace Zx:XA: Set XhA: (i : ), MeasurableSet (A i)hAd:Pairwise (Function.onFun Disjoint A)hx:x i, A i(⋃ i, A i).indicator (fun x => 1) x = ∑' (i : ), (A i).indicator (fun x => 1) x X:Type u_1Y:Type u_2Z:Type u_3inst✝²:MeasurableSpace Xinst✝¹:MeasurableSpace Yinst✝:MeasurableSpace Zx:XA: Set XhA: (i : ), MeasurableSet (A i)hAd:Pairwise (Function.onFun Disjoint A)hx:x i, A i0 = ∑' (i : ), (A i).indicator (fun x => 1) x X:Type u_1Y:Type u_2Z:Type u_3inst✝²:MeasurableSpace Xinst✝¹:MeasurableSpace Yinst✝:MeasurableSpace Zx:XA: Set XhA: (i : ), MeasurableSet (A i)hAd:Pairwise (Function.onFun Disjoint A)hx: (x_1 : ), x A x_10 = ∑' (i : ), (A i).indicator (fun x => 1) x X:Type u_1Y:Type u_2Z:Type u_3inst✝²:MeasurableSpace Xinst✝¹:MeasurableSpace Yinst✝:MeasurableSpace Zx:XA: Set XhA: (i : ), MeasurableSet (A i)hAd:Pairwise (Function.onFun Disjoint A)hx: (x_1 : ), x A x_1∑' (i : ), (A i).indicator (fun x => 1) x = 0 X:Type u_1Y:Type u_2Z:Type u_3inst✝²:MeasurableSpace Xinst✝¹:MeasurableSpace Yinst✝:MeasurableSpace Zx:XA: Set XhA: (i : ), MeasurableSet (A i)hAd:Pairwise (Function.onFun Disjoint A)hx: (x_1 : ), x A x_1 (i : ), (A i).indicator (fun x => 1) x = 0 X:Type u_1Y:Type u_2Z:Type u_3inst✝²:MeasurableSpace Xinst✝¹:MeasurableSpace Yinst✝:MeasurableSpace Zx:XA: Set XhA: (i : ), MeasurableSet (A i)hAd:Pairwise (Function.onFun Disjoint A)hx: (x_1 : ), x A x_1i:(A i).indicator (fun x => 1) x = 0 All goals completed! 🐙
@[simp] theorem Measure.dirac_apply (x : X) (A : Set X) (hA : MeasurableSet A) : Measure.dirac x A = indicator A (fun _ 1) x := X:Type u_1inst✝:MeasurableSpace Xx:XA:Set XhA:MeasurableSet A(dirac x) A = A.indicator (fun x => 1) x All goals completed! 🐙
補題.

f : X \to [0,\infty] を可測とする。 このとき \underline{\int}_{y \in X} f(y)\,d\delta_x = f(x). が成り立つ。

Lean code
theorem Measure.dirac_lintegral (f : X ℝ≥0∞) (hf : Measurable f) (x : X) : ∫⁻ y, f y (dirac x) = f x := X:Type u_1inst✝:MeasurableSpace Xf:X ℝ≥0∞hf:Measurable fx:X∫⁻ (y : X), f y dirac x = f x have : f =ᶠ[ae (dirac x)] Function.const X (f x) := X:Type u_1inst✝:MeasurableSpace Xf:X ℝ≥0∞hf:Measurable fx:X∫⁻ (y : X), f y dirac x = f x have : ∀ᵐ y (dirac x), y { y | f y = f x } := X:Type u_1inst✝:MeasurableSpace Xf:X ℝ≥0∞hf:Measurable fx:X∫⁻ (y : X), f y dirac x = f x X:Type u_1inst✝:MeasurableSpace Xf:X ℝ≥0∞hf:Measurable fx:X{y | f y = f x}.indicator (fun x => 1) x = 0X:Type u_1inst✝:MeasurableSpace Xf:X ℝ≥0∞hf:Measurable fx:XMeasurableSet {y | f y = f x} X:Type u_1inst✝:MeasurableSpace Xf:X ℝ≥0∞hf:Measurable fx:X{y | f y = f x}.indicator (fun x => 1) x = 0 All goals completed! 🐙 X:Type u_1inst✝:MeasurableSpace Xf:X ℝ≥0∞hf:Measurable fx:XMeasurableSet {y | f y = f x} X:Type u_1inst✝:MeasurableSpace Xf:X ℝ≥0∞hf:Measurable fx:XMeasurableSet {y | f y = f x} X:Type u_1inst✝:MeasurableSpace Xf:X ℝ≥0∞hf:Measurable fx:XMeasurableSet (f ⁻¹' {f x}) All goals completed! 🐙 filter_upwards [this] with y X:Type u_1inst✝:MeasurableSpace Xf:X ℝ≥0∞hf:Measurable fx:Xthis:∀ᵐ (y : X) dirac x, y {y | f y = f x} := Eq.mpr (id (congrArg (fun _a => _a) (propext eventually_mem_set))) (Eq.mpr (id (congrArg (fun _a => _a) (propext mem_ae_iff))) (Eq.mpr (id (congrArg (fun _a => _a = 0) (dirac_apply x {y | f y = f x} (MeasurableSet.compl (have this := hf (measurableSet_singleton (f x)); this))))) (of_eq_true (Eq.trans (congrFun' (congrArg Eq (indicator_of_notMem (of_eq_true (Eq.trans (congrArg Not (Eq.trans (mem_compl_iff._simp_1 {y | f y = f x} x) (Eq.trans (congrArg Not (eq_self (f x))) not_true_eq_false))) not_false_eq_true)) fun x => 1)) 0) (eq_self 0)))))y:Xhy:f y = f xf y = Function.const X (f x) y using X:Type u_1inst✝:MeasurableSpace Xf:X ℝ≥0∞hf:Measurable fx:Xthis:∀ᵐ (y : X) dirac x, y {y | f y = f x} := Eq.mpr (id (congrArg (fun _a => _a) (propext eventually_mem_set))) (Eq.mpr (id (congrArg (fun _a => _a) (propext mem_ae_iff))) (Eq.mpr (id (congrArg (fun _a => _a = 0) (dirac_apply x {y | f y = f x} (MeasurableSet.compl (have this := hf (measurableSet_singleton (f x)); this))))) (of_eq_true (Eq.trans (congrFun' (congrArg Eq (indicator_of_notMem (of_eq_true (Eq.trans (congrArg Not (Eq.trans (mem_compl_iff._simp_1 {y | f y = f x} x) (Eq.trans (congrArg Not (eq_self (f x))) not_true_eq_false))) not_false_eq_true)) fun x => 1)) 0) (eq_self 0)))))y:Xhy:f y = f xf y = Function.const X (f x) y All goals completed! 🐙 apply (lintegral_congr_ae this).trans (X:Type u_1inst✝:MeasurableSpace Xf:X ℝ≥0∞hf:Measurable fx:Xthis:f =ᶠ[ae (dirac x)] Function.const X (f x) := have this := Eq.mpr (id (congrArg (fun _a => _a) (propext eventually_mem_set))) (Eq.mpr (id (congrArg (fun _a => _a) (propext mem_ae_iff))) (Eq.mpr (id (congrArg (fun _a => _a = 0) (dirac_apply x {y | f y = f x} (MeasurableSet.compl (have this := hf (measurableSet_singleton (f x)); this))))) (of_eq_true (Eq.trans (congrFun' (congrArg Eq (indicator_of_notMem (of_eq_true (Eq.trans (congrArg Not (Eq.trans (mem_compl_iff._simp_1 {y | f y = f x} x) (Eq.trans (congrArg Not (eq_self (f x))) not_true_eq_false))) not_false_eq_true)) fun x => 1)) 0) (eq_self 0))))); mp_mem this (univ_mem' (id fun y hy => id hy))∫⁻ (a : X), Function.const X (f x) a dirac x = f x All goals completed! 🐙)