@@ -2196,6 +2196,7 @@ by rewrite preimage_nnfun0.
21962196Qed .
21972197
21982198End integralM_indic.
2199+ Arguments integralM_indic {d T R m D} mD f.
21992200
22002201Section integral_mscale.
22012202Local Open Scope ereal_scope.
@@ -2389,6 +2390,57 @@ Qed.
23892390
23902391End integral_cst.
23912392
2393+ Section transfer.
2394+ Local Open Scope ereal_scope.
2395+ Variables (d1 d2 : _) (X : measurableType d1) (Y : measurableType d2).
2396+ Variables (phi : X -> Y) (mphi : measurable_fun setT phi).
2397+ Variables (R : realType) (mu : {measure set X -> \bar R}).
2398+
2399+ Lemma integral_pushforward (f : Y -> \bar R) :
2400+ measurable_fun setT f -> (forall y, 0 <= f y) ->
2401+ \int[pushforward mu mphi]_y f y = \int[mu]_x (f \o phi) x.
2402+ Proof .
2403+ move=> mf f0.
2404+ have [f_ [ndf_ f_f]] := approximation measurableT mf (fun t _ => f0 t).
2405+ transitivity (lim (fun n => \int[pushforward mu mphi]_x (f_ n x)%:E)).
2406+ rewrite -monotone_convergence//.
2407+ - by apply: eq_integral => y _; apply/esym/cvg_lim => //; exact: f_f.
2408+ - by move=> n; exact/EFin_measurable_fun.
2409+ - by move=> n y _; rewrite lee_fin.
2410+ - by move=> y _ m n mn; rewrite lee_fin; apply/lefP/ndf_.
2411+ rewrite (_ : (fun _ => _) = (fun n => \int[mu]_x (EFin \o f_ n \o phi) x)).
2412+ rewrite -monotone_convergence//; last 3 first.
2413+ - move=> n /=; apply: measurable_fun_comp; first exact: measurable_fun_EFin.
2414+ by apply: measurable_fun_comp => //; exact: measurable_sfun.
2415+ - by move=> n x _ /=; rewrite lee_fin.
2416+ - by move=> x _ m n mn; rewrite lee_fin; exact/lefP/ndf_.
2417+ by apply: eq_integral => x _ /=; apply/cvg_lim => //; exact: f_f.
2418+ apply/funext => n.
2419+ have mfnphi r : measurable (f_ n @^-1` [set r] \o phi).
2420+ rewrite -[_ \o _]/(phi @^-1` (f_ n @^-1` [set r])) -(setTI (_ @^-1` _)).
2421+ exact/mphi.
2422+ transitivity (\sum_(k <- fset_set (range (f_ n)))
2423+ \int[mu]_x (k * \1_((f_ n @^-1` [set k]) \o phi) x)%:E).
2424+ under eq_integral do rewrite fimfunE -sumEFin.
2425+ rewrite ge0_integral_sum//; last 2 first.
2426+ - move=> y; apply/EFin_measurable_fun; apply: measurable_funM.
2427+ exact: measurable_fun_cst.
2428+ by rewrite (_ : \1_ _ = mindic R (measurable_sfunP (f_ n) y)).
2429+ - by move=> y x _; rewrite nnfun_muleindic_ge0.
2430+ apply eq_bigr => r _; rewrite integralM_indic_nnsfun// integral_indic//=.
2431+ rewrite (integralM_indic _ (fun r => f_ n @^-1` [set r] \o phi))//.
2432+ by congr (_ * _); rewrite [RHS](@integral_indic).
2433+ by move=> r0; rewrite preimage_nnfun0.
2434+ rewrite -ge0_integral_sum//; last 2 first.
2435+ - move=> r; apply/EFin_measurable_fun; apply: measurable_funM.
2436+ exact: measurable_fun_cst.
2437+ by rewrite (_ : \1_ _ = mindic R (mfnphi r)).
2438+ - by move=> r x _; rewrite nnfun_muleindic_ge0.
2439+ by apply eq_integral => x _; rewrite sumEFin -fimfunE.
2440+ Qed .
2441+
2442+ End transfer.
2443+
23922444Section integral_dirac.
23932445Local Open Scope ereal_scope.
23942446Variables (d : measure_display) (T : measurableType d) (a : T) (R : realType).
0 commit comments