@@ -1674,7 +1674,7 @@ Qed.
16741674Section measure_continuity.
16751675Local Open Scope ereal_scope.
16761676
1677- Lemma nondecreasing_cvg_mu d (T : ringOfSetsType d) (R : realFieldType)
1677+ Lemma nondecreasing_cvg_measure d (T : ringOfSetsType d) (R : realFieldType)
16781678 (mu : {measure set T -> \bar R}) (F : (set T) ^nat) :
16791679 (forall i, measurable (F i)) -> measurable (\bigcup_n F n) ->
16801680 nondecreasing_seq F ->
@@ -1697,7 +1697,7 @@ under eq_fun do rewrite -(big_mkord predT (mu \o seqD F)).
16971697exact/(nS m.+1)/(leq_trans nm).
16981698Qed .
16991699
1700- Lemma nonincreasing_cvg_mu d (T : algebraOfSetsType d) (R : realFieldType)
1700+ Lemma nonincreasing_cvg_measure d (T : algebraOfSetsType d) (R : realFieldType)
17011701 (mu : {measure set T -> \bar R}) (F : (set T) ^nat) :
17021702 mu (F 0%N) < +oo ->
17031703 (forall i, measurable (F i)) -> measurable (\bigcap_n F n) ->
@@ -1716,14 +1716,47 @@ have -> : \bigcap_n F n = F 0%N `&` \bigcap_n F n.
17161716rewrite -measureD // setDE setC_bigcap setI_bigcupr -[x in bigcup _ x]/G.
17171717have -> : (fun n => mu (F 0%N) - mu (F n)) = mu \o G.
17181718 by apply: funext => n /=; rewrite measureD// setIidr//; exact/subsetPset/niF.
1719- apply: nondecreasing_cvg_mu .
1719+ apply: nondecreasing_cvg_measure .
17201720- by move=> ?; apply: measurableD; exact: mF.
17211721- rewrite -setI_bigcupr; apply: measurableI; first exact: mF.
17221722 by rewrite -@setC_bigcap; exact: measurableC.
17231723- by move=> n m NM; apply/subsetPset; apply: setDS; apply/subsetPset/niF.
17241724Qed .
17251725
1726+ Lemma cvg_measure_bigcup {d} {M : sigmaRingType d} {R : realFieldType}
1727+ {mu : {measure set M -> \bar R}} (A : (set M)^nat)
1728+ (mA : forall i, measurable (A i)) :
1729+ mu (\bigcup_(i < n) A i) @[n-->\oo] --> mu (\bigcup_n A n).
1730+ Proof .
1731+ rewrite -bigcup_bigsetU_bigcup bigcup_bigsetU.
1732+ under eq_bigcupr do rewrite -bigcup_mkord.
1733+ apply: nondecreasing_cvg_measure => [i||n m nm]; [exact: bigcup_measurable|
1734+ by apply: bigcup_measurable => ? ?; exact: bigcup_measurable|].
1735+ by apply/subsetPset => x [i/= i_n Aix]; exists i => //=; exact: leq_trans nm.
1736+ Qed .
1737+
1738+ Lemma cvg_measure_bigcap {d} {M : measurableType d} {R : realFieldType}
1739+ {mu : {measure set M -> \bar R}} (A : (set M)^nat)
1740+ (mA : forall i, measurable (A i)) :
1741+ mu (A 0%N) \is a fin_num ->
1742+ mu (\bigcap_(i < n.+1) A i) @[n-->\oo] --> mu (\bigcap_n A n).
1743+ Proof .
1744+ move=> muA0.
1745+ rewrite [\bigcap_n A n] (_:_ = \bigcap_n (\bigcap_(i < n.+1) A i)).
1746+ by rewrite eqEsubset/bigcap; split=> [a/= + j _ i _|a/= aIa i _];
1747+ [exact|exact: (aIa i.+1)].
1748+ apply: nonincreasing_cvg_measure.
1749+ - by rewrite bigcap_mkord big_ord1 -ge0_fin_numE.
1750+ - by move=> i; exact: bigcap_measurableType.
1751+ - by apply: bigcap_measurableType=> k _; exact: bigcap_measurableType.
1752+ - by move=> n m nm; apply/subsetPset=> x + i/= i_n; apply; exact: leq_trans nm.
1753+ Qed .
1754+
17261755End measure_continuity.
1756+ #[deprecated(since="mathcomp-analysis 1.17.0", use=nondecreasing_cvg_measure)]
1757+ Notation nondecreasing_cvg_mu := nondecreasing_cvg_measure.
1758+ #[deprecated(since="mathcomp-analysis 1.17.0", use=nonincreasing_cvg_measure)]
1759+ Notation nonincreasing_cvg_mu := nonincreasing_cvg_measure.
17271760
17281761Section g_sigma_algebra_measure_unique_trace.
17291762Context d (R : realType) (T : measurableType d).
0 commit comments