@@ -78,33 +78,6 @@ Lemma preimage_set1 T {U : eqType} (X : T -> U) r :
7878 X @^-1` [set r] = [set i | X i == r].
7979Proof . by apply/seteqP; split => [x /eqP H//|x /eqP]. Qed .
8080
81- (* PR in progress *)
82- Lemma integral21_prod_meas2 {d1} {T1 : measurableType d1} d2 {T2 : measurableType d2}
83- {R : realType} (m1 : {sigma_finite_measure set T1 -> \bar R})
84- (m2 : {sigma_finite_measure set T2 -> \bar R}) (f : T1 * T2 -> \bar R) :
85- (m1 \x m2)%E.-integrable [set: T1 * T2] f ->
86- (\int[m2]_x fubini_G m1 f x = \int[(m1 \x^ m2)%E]_z f z)%E.
87- Proof .
88- move=> intf; rewrite fubini2//.
89- apply: eq_measure_integral => //= A mA _.
90- apply: product_measure_unique => // B C mB mC/=.
91- by rewrite product_measure2E.
92- Qed .
93-
94- (* PR in progress *)
95- Lemma integral12_prod_meas2 {d1} {T1 : measurableType d1}
96- {d2} {T2 : measurableType d2} {R : realType}
97- (m1 : {sigma_finite_measure set T1 -> \bar R})
98- (m2 : {sigma_finite_measure set T2 -> \bar R}) (f : T1 * T2 -> \bar R) :
99- (m1 \x m2)%E.-integrable [set: T1 * T2] f ->
100- (\int[m1]_x fubini_F m2 f x = \int[(m1 \x^ m2)%E]_z f z)%E.
101- Proof .
102- move=> intf; rewrite fubini1//.
103- apply: eq_measure_integral => //= A mA _.
104- apply: product_measure_unique => // B C mB mC/=.
105- by rewrite product_measure2E.
106- Qed .
107-
10881(* PR in progress *)
10982Lemma integrable_prod_measP {d1} {T1 : measurableType d1} d2 {T2 : measurableType d2}
11083 {R : realType} (m1 : {sigma_finite_measure set T1 -> \bar R})
@@ -126,7 +99,7 @@ Lemma integral_prod_meas1E {d1} {T1 : measurableType d1}
12699 (m2 : {sigma_finite_measure set T2 -> \bar R}) (f : T1 * T2 -> \bar R) :
127100 (m1 \x m2)%E.-integrable [set: T1 * T2] f ->
128101 (\int[m1 \x^ m2]_x f x = \int[(m1 \x m2)%E]_z f z)%E.
129- Proof . by move=> intf; rewrite -fubini1 // integral12_prod_meas2. Qed .
102+ Proof . by move=> intf; rewrite -integral12_prod_meas1 // integral12_prod_meas2. Qed .
130103
131104Section PR_to_hoelder.
132105Context d (T : measurableType d) (R : realType).
@@ -228,10 +201,10 @@ Local Open Scope ereal_scope.
228201Definition pair_of_tuple n (w : n.+1.-tuple T) :=
229202 (thead w, [the _.-tuple _ of behead w]).
230203
231- Lemma measurable_pair_of_tuple n :
232- measurable_fun [set: _.-tuple _] (@pair_of_tuple n).
204+ Lemma measurable_pair_of_tuple n (D : set (n.+1.-tuple T)) :
205+ measurable_fun D (@pair_of_tuple n).
233206Proof .
234- by apply/measurable_fun_pair => /=;
207+ by apply/measurable_funTS/ measurable_fun_pair => /=;
235208 [exact: measurable_tnth|exact: measurable_behead].
236209Qed .
237210
@@ -374,7 +347,8 @@ Proof.
374347move=> mf f0.
375348rewrite -(@ge0_integral_pushforward _ _ _ _ R _ (measurable_tuple_of_pair n) _
376349 setT (fun x : n.+1.-tuple T => (f x)%:E)).
377- - by apply: eq_measure_integral => A mA _ /=; rewrite image_pair_of_tuple.
350+ - apply: eq_measure_integral => /=; first exact: measurable_tuple_of_pair.
351+ by move=> _ A mA _ /=; rewrite image_pair_of_tuple.
378352- exact: measurableT.
379353- exact: measurableT_comp.
380354- by move=> x/= _; rewrite lee_fin.
@@ -408,8 +382,8 @@ Proof.
408382move=> /integrableP[mf intf].
409383rewrite -(@integral_pushforward _ _ _ _ R _ (measurable_tuple_of_pair n) _
410384 setT (fun x : n.+1.-tuple T => (f x)%:E)).
411- - apply: eq_measure_integral => A mA _ /= .
412- by rewrite image_pair_of_tuple.
385+ - apply: eq_measure_integral => /=; first exact: measurable_tuple_of_pair .
386+ by move=> _ A mA _ /=; rewrite image_pair_of_tuple.
413387- exact: mf.
414388- rewrite /=.
415389 apply/integrable_prod_measP => /=.
@@ -421,12 +395,14 @@ rewrite -(@integral_pushforward _ _ _ _ R _ (measurable_tuple_of_pair n) _
421395 \o (pair_of_tuple n)) x); last first.
422396 by apply: eq_integral => x _ /=; rewrite tuple_of_pairK.
423397 rewrite le_eqVlt; apply/orP; left; apply/eqP.
424- rewrite -[RHS](@integral_pushforward _ _ _ _ R _ (measurable_pair_of_tuple n)
398+ rewrite -[RHS](@integral_pushforward _ _ _ _ R _ (measurable_pair_of_tuple n setT )
425399 _ setT (fun x => (abse \o (EFin \o (f \o (tuple_of_pair n)))) x))//.
426- + apply: eq_measure_integral => // A mA _.
427- apply: product_measure_unique => // B C mB mC.
428- rewrite /= /pushforward/= -product_measure2E//; congr (_ _).
429- by rewrite image_preimage// range_pair_of_tuple.
400+ + apply: eq_measure_integral => /=; first exact: measurable_pair_of_tuple.
401+ move=> _ A mA _/=; rewrite /pushforward /=.
402+ rewrite image_pair_of_tuple -comp_preimage (_ : _ \o _ = id); last first.
403+ by apply/funext=> x/=; rewrite pair_of_tupleK.
404+ rewrite preimage_id; apply: product_measure_unique => // B C mB mC.
405+ by rewrite /= /pushforward/= -product_measure2E.
430406 + apply/measurable_EFinP => //=; apply: measurableT_comp => //=.
431407 by apply: measurableT_comp => //=; [exact/measurable_EFinP|
432408 exact: measurable_tuple_of_pair].
@@ -447,7 +423,8 @@ Proof.
447423rewrite -(preimage_setT ((@tnth n _)^~ i)).
448424rewrite -(@ge0_integral_pushforward _ _ _ _ _ _ (measurable_tnth i) (\X_n P) _
449425 (EFin \o normr \o f) measurableT).
450- - by apply: eq_measure_integral => A mA _/=; rewrite /pushforward ipro_tnth.
426+ - apply: eq_measure_integral => /=; first exact: measurable_tnth.
427+ by move=> _ A mA _/=; rewrite /pushforward ipro_tnth.
451428- by do 2 apply: measurableT_comp.
452429- by move=> y _/=; rewrite lee_fin normr_ge0.
453430Qed .
@@ -577,16 +554,16 @@ rewrite -integral12_prod_meas2/=; last first.
577554 by apply: integral_ge0 => //.
578555 rewrite lte_mul_pinfty//.
579556 - exact: integral_ge0.
580- - exact/integral_fune_fin_num /Lfun1_integrable/Lfun_norm.
557+ - exact/integrable_fin_num /Lfun1_integrable/Lfun_norm.
581558 - by move: lX => /Lfun1_integrable/integrableP[_ /=].
582559rewrite /fubini_F/=.
583560under eq_integral => x _.
584561 under eq_integral => y _ do rewrite EFinM.
585562 rewrite integralZl//; last exact/Lfun1_integrable.
586- rewrite -[X in _ * X]fineK ?integral_fune_fin_num //; last exact/Lfun1_integrable.
563+ rewrite -[X in _ * X]fineK ?integrable_fin_num //; last exact/Lfun1_integrable.
587564 over.
588565rewrite /=integralZr//; last exact/Lfun1_integrable.
589- by rewrite fineK// integral_fune_fin_num ; last exact/Lfun1_integrable.
566+ by rewrite fineK// integrable_fin_num ; last exact/Lfun1_integrable.
590567Qed .
591568
592569End properties_of_expectation.
@@ -618,7 +595,7 @@ have h2 : (\prod_(i < n) Tnth (behead_tuple X) i)%R \in Lfun (\X_n P) 1.
618595 have := IH (behead_tuple X).
619596 rewrite unlock /= => ->; last by move => x /mem_behead/lfunX.
620597 rewrite abse_prod -ge0_fin_numE ?prode_ge0// prode_fin_num// => i _.
621- rewrite abse_fin_num integral_fune_fin_num //.
598+ rewrite abse_fin_num integrable_fin_num //.
622599 exact/Lfun1_integrable/lfunX/mem_behead/mem_tnth.
623600rewrite [LHS](@integral_iproS _ _ _ _ _ MF); last first.
624601 rewrite /MF/F; apply/integrableP; split; first exact: measurableT_comp.
@@ -734,13 +711,13 @@ Qed.
734711End properties_of_independence.
735712
736713HB.mixin Record RV_isBernoulli d (T : measurableType d) (R : realType)
737- (P : probability T R) (p : R) (X : T -> bool) of @isMeasurableFun d _ T bool X := {
738- bernoulliP : distribution P X = bernoulli p }.
714+ (P : probability T R) (p : R) (X : T -> bool) of @isMeasurableFun d _ T bool X
715+ := { bernoulliP : distribution P X = bernoulli p }.
739716
740717#[short(type=bernoulliRV)]
741718HB.structure Definition BernoulliRV d (T : measurableType d) (R : realType)
742719 (P : probability T R) (p : R) :=
743- {X of @RV_isBernoulli _ _ _ P p X}.
720+ {X of @RV_isBernoulli _ _ _ P p X & MeasurableFun d X }.
744721Arguments bernoulliRV {d T R}.
745722
746723Section properties_of_BernoulliRV.
0 commit comments