Skip to content

Commit 9815670

Browse files
committed
rebase and fix
- fix changelog - mv defs to appropriate files
1 parent a2941ed commit 9815670

File tree

4 files changed

+71
-202
lines changed

4 files changed

+71
-202
lines changed

CHANGELOG_UNRELEASED.md

Lines changed: 4 additions & 138 deletions
Original file line numberDiff line numberDiff line change
@@ -73,16 +73,9 @@
7373
`derivable_oy_continuousW`,
7474
`derivable_Nyo_continuousWoo`,
7575
`derivable_Nyo_continuousW`
76-
- in `probability.v`:
77-
+ lemmas `eq_bernoulli`, `eq_bernoulliV2`
78-
- file `mathcomp_extra.v`
79-
+ lemmas `ge_trunc`, `lt_succ_trunc`, `trunc_ge_nat`, `trunc_lt_nat`
80-
81-
- file `Rstruct.v`
82-
+ lemma `Pos_to_natE` (from `mathcomp_extra.v`)
83-
+ lemmas `RabsE`, `RdistE`, `sum_f_R0E`, `factE`
8476

85-
- new file `internal_Eqdep_dec.v` (don't use, internal, to be removed)
77+
- in `measurable_function.v`:
78+
+ lemma `preimage_set_system_compS`
8679

8780
- in `numfun.v`:
8881
+ defintions `funrpos`, `funrneg` with notations `^\+` and `^\-`
@@ -92,9 +85,8 @@
9285
`funrD_posD`, `funrpos_le`, `funrneg_le`
9386
+ lemmas `funerpos`, `funerneg`
9487

95-
- in `measure.v`:
96-
+ lemma `preimage_class_comp`
97-
+ defintions `preimage_display`, `g_sigma_algebra_preimageType`, `g_sigma_algebra_preimage`,
88+
- in `measurable_structure.v`:
89+
+ definitions `preimage_display`, `g_sigma_algebra_preimageType`, `g_sigma_algebra_preimage`,
9890
notations `.-preimage`, `.-preimage.-measurable`
9991

10092
- in `measurable_realfun.v`:
@@ -114,44 +106,6 @@
114106
+ lemma `expectationM_ge0`, `integrable_expectationM`, `independent_integrableM`,
115107
` expectation_prod`
116108

117-
- in `numfun.v`
118-
+ lemmas `funeposE`, `funenegE`, `funepos_comp`, `funeneg_comp`
119-
120-
- in `classical_sets.v`:
121-
+ lemmas `xsectionE`, `ysectionE`
122-
123-
- file `constructive_ereal.v`:
124-
+ definition `iter_mule`
125-
+ lemma `prodEFin`
126-
127-
- file `exp.v`:
128-
+ lemma `expR_sum`
129-
130-
- file `lebesgue_integral.v`:
131-
+ lemma `measurable_fun_le`
132-
133-
- in `trigo.v`:
134-
+ lemma `integral0oo_atan`
135-
136-
- in `measure.v`:
137-
+ lemmas `mnormalize_id`, `measurable_fun_eqP`
138-
139-
- in `ftc.v`:
140-
+ lemma `integrable_locally`
141-
142-
- in `constructive_ereal.v`:
143-
+ lemma `EFin_bigmax`
144-
145-
- in `mathcomp_extra.v`:
146-
+ lemmas `inr_inj`, `inl_inj`
147-
148-
- in `classical_sets.v`:
149-
+ lemmas `in_set1`, `inr_in_set_inr`, `inl_in_set_inr`, `mem_image`, `mem_range`, `image_f`
150-
+ lemmas `inr_in_set_inl`, `inl_in_set_inl`
151-
152-
- in `lebesgue_integral_approximation.v`:
153-
+ lemma `measurable_prod`
154-
155109
### Changed
156110

157111
### Renamed
@@ -170,55 +124,6 @@
170124
+ `le_ereal_inf` -> `ereal_inf_le_tmp`
171125
+ `lb_ereal_inf` -> `le_ereal_inf_tmp`
172126
+ `ereal_sup_ge` -> `le_ereal_sup_tmp`
173-
- in `kernel.v`:
174-
+ `isFiniteTransition` -> `isFiniteTransitionKernel`
175-
- in `lebesgue_integral.v`:
176-
+ `fubini1a` -> `integrable12ltyP`
177-
+ `fubini1b` -> `integrable21ltyP`
178-
+ `measurable_funP` -> `measurable_funPT` (field of `isMeasurableFun` mixin)
179-
180-
- in `mathcomp_extra.v`
181-
+ `comparable_min_le_min` -> `comparable_le_min2`
182-
+ `comparable_max_le_max` -> `comparable_le_max2`
183-
+ `min_le_min` -> `le_min2`
184-
+ `max_le_max` -> `le_max2`
185-
+ `real_sqrtC` -> `sqrtC_real`
186-
- in `measure.v`
187-
+ `preimage_class` -> `preimage_set_system`
188-
+ `image_class` -> `image_set_system`
189-
+ `preimage_classes` -> `g_sigma_preimageU`
190-
+ `preimage_class_measurable_fun` -> `preimage_set_system_measurable_fun`
191-
+ `sigma_algebra_preimage_class` -> `sigma_algebra_preimage`
192-
+ `sigma_algebra_image_class` -> `sigma_algebra_image`
193-
+ `sigma_algebra_preimage_classE` -> `g_sigma_preimageE`
194-
+ `preimage_classes_comp` -> `g_sigma_preimageU_comp`
195-
196-
### Renamed
197-
198-
- in `lebesgue_measure.v`:
199-
+ `measurable_fun_indic` -> `measurable_indic`
200-
+ `emeasurable_fun_sum` -> `emeasurable_sum`
201-
+ `emeasurable_fun_fsum` -> `emeasurable_fsum`
202-
+ `ge0_emeasurable_fun_sum` -> `ge0_emeasurable_sum`
203-
- in `probability.v`:
204-
+ `expectationM` -> `expectationZl`
205-
206-
- in `classical_sets.v`:
207-
+ `preimage_itv_o_infty` -> `preimage_itvoy`
208-
+ `preimage_itv_c_infty` -> `preimage_itvcy`
209-
+ `preimage_itv_infty_o` -> `preimage_itvNyo`
210-
+ `preimage_itv_infty_c` -> `preimage_itvNyc`
211-
212-
- in `constructive_ereal.v`:
213-
+ `maxeMr` -> `maxe_pMr`
214-
+ `maxeMl` -> `maxe_pMl`
215-
+ `mineMr` -> `mine_pMr`
216-
+ `mineMl` -> `mine_pMl`
217-
218-
- in `probability.v`:
219-
+ `integral_distribution` -> `ge0_integral_distribution`
220-
221-
- file `homotopy_theory/path.v` -> `homotopy_theory/continuous_path.v`
222127

223128
### Generalized
224129

@@ -263,45 +168,6 @@
263168
(deprecated since 1.2.0)
264169
- in `ereal.v`:
265170
+ notation `ereal_sup_le` (was deprecated since 1.11.0)
266-
- file `mathcomp_extra.v`
267-
+ lemma `Pos_to_natE` (moved to `Rstruct.v`)
268-
+ lemma `deg_le2_ge0` (available as `deg_le2_poly_ge0` in `ssrnum.v`
269-
since MathComp 2.1.0)
270-
- in `sequences.v`:
271-
+ notations `nneseries_pred0`, `eq_nneseries`, `nneseries0`,
272-
`ereal_cvgPpinfty`, `ereal_cvgPninfty` (were deprecated since 0.6.0)
273-
- in `topology_structure.v`:
274-
+ lemma `closureC`
275-
276-
- in file `lebesgue_integral.v`:
277-
+ lemma `approximation`
278-
279-
### Removed
280-
281-
- in `lebesgue_integral.v`:
282-
+ definition `cst_mfun`
283-
+ lemma `mfun_cst`
284-
285-
- in `cardinality.v`:
286-
+ lemma `cst_fimfun_subproof`
287-
288-
- in `lebesgue_integral.v`:
289-
+ lemma `cst_mfun_subproof` (use lemma `measurable_cst` instead)
290-
+ lemma `cst_nnfun_subproof` (turned into a `Let`)
291-
+ lemma `indic_mfun_subproof` (use lemma `measurable_fun_indic` instead)
292-
293-
- in `lebesgue_integral.v`:
294-
+ lemma `measurable_indic` (was uselessly specializing `measurable_fun_indic` (now `measurable_indic`) from `lebesgue_measure.v`)
295-
+ notation `measurable_fun_indic` (deprecation since 0.6.3)
296-
- in `constructive_ereal.v`
297-
+ notation `lee_opp` (deprecated since 0.6.5)
298-
+ notation `lte_opp` (deprecated since 0.6.5)
299-
- in `measure.v`:
300-
+ `dynkin_setI_bigsetI` (use `big_ind` instead)
301-
302-
- in `lebesgue_measurable.v`:
303-
+ notation `measurable_fun_power_pos` (deprecated since 0.6.3)
304-
+ notation `measurable_power_pos` (deprecated since 0.6.4)
305171

306172
### Infrastructure
307173

experimental_reals/discrete.v

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@
44
(* Copyright (c) - 2016--2018 - Polytechnique *)
55

66
(* -------------------------------------------------------------------- *)
7-
From Coq Require Setoid.
7+
From Corelib Require Setoid.
88
From HB Require Import structures.
99
From mathcomp Require Import all_ssreflect all_algebra.
1010
From mathcomp.classical Require Import boolp.

theories/measure_theory/measurable_structure.v

Lines changed: 66 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -90,11 +90,20 @@ From mathcomp Require Import ereal topology normedtype sequences.
9090
(* ## Other measure-theoretic definitions *)
9191
(* *)
9292
(* ``` *)
93-
(* preimage_set_system D f G == set system of the preimages by f of sets in G *)
94-
(* image_set_system D f G == set system of the sets with a preimage by f *)
95-
(* in G *)
96-
(* subset_sigma_subadditive mu == alternative predicate defining *)
97-
(* sigma-subadditivity *)
93+
(* preimage_set_system D f G == set system of the preimages by f of sets *)
94+
(* in G *)
95+
(* g_sigma_algebra_preimage f == sigma-algebra generated by the *)
96+
(* function f *)
97+
(* g_sigma_algebra_preimageType f == the measurableType corresponding to *)
98+
(* g_sigma_algebra_preimage f *)
99+
(* This is an HB alias. *)
100+
(* f.-preimage.-measurable A == A is measurable for *)
101+
(* g_sigma_algebra_preimage f *)
102+
(* image_set_system D f G == set system of the sets with a preimage *)
103+
(* by f in G *)
104+
(* *)
105+
(* subset_sigma_subadditive mu == alternative predicate defining *)
106+
(* sigma-subadditivity *)
98107
(* ``` *)
99108
(* *)
100109
(* ## Product of measurable spaces *)
@@ -1325,6 +1334,58 @@ case=> h0 hC hU; split; first by exists set0 => //; rewrite preimage_set0 setI0.
13251334
exact: (mF' i).2.
13261335
Qed.
13271336

1337+
Definition preimage_display {T T'} : (T -> T') -> measure_display.
1338+
Proof. exact. Qed.
1339+
1340+
Definition g_sigma_algebra_preimageType d' (T : pointedType)
1341+
(T' : measurableType d') (f : T -> T') : Type := T.
1342+
1343+
Definition g_sigma_algebra_preimage d' (T : pointedType)
1344+
(T' : measurableType d') (f : T -> T') :=
1345+
preimage_set_system setT f (@measurable _ T').
1346+
1347+
Section preimage_generated_sigma_algebra.
1348+
Context {d'} (T : pointedType) (T' : measurableType d').
1349+
Variable f : T -> T'.
1350+
1351+
Let preimage_set0 : g_sigma_algebra_preimage f set0.
1352+
Proof.
1353+
rewrite /g_sigma_algebra_preimage /preimage_set_system/=.
1354+
by exists set0 => //; rewrite preimage_set0 setI0.
1355+
Qed.
1356+
1357+
Let preimage_setC A :
1358+
g_sigma_algebra_preimage f A -> g_sigma_algebra_preimage f (~` A).
1359+
Proof.
1360+
rewrite /g_sigma_algebra_preimage /preimage_set_system/= => -[B mB] <-{A}.
1361+
by exists (~` B); [exact: measurableC|rewrite !setTI preimage_setC].
1362+
Qed.
1363+
1364+
Let preimage_bigcup (F : (set T)^nat) :
1365+
(forall i, g_sigma_algebra_preimage f (F i)) ->
1366+
g_sigma_algebra_preimage f (\bigcup_i (F i)).
1367+
Proof.
1368+
move=> mF; rewrite /g_sigma_algebra_preimage /preimage_set_system/=.
1369+
pose g := fun i => sval (cid2 (mF i)).
1370+
pose mg := fun i => svalP (cid2 (mF i)).
1371+
exists (\bigcup_i g i).
1372+
by apply: bigcup_measurable => k; case: (mg k).
1373+
rewrite setTI /g preimage_bigcup; apply: eq_bigcupr => k _.
1374+
by case: (mg k) => _; rewrite setTI.
1375+
Qed.
1376+
1377+
HB.instance Definition _ := Pointed.on (g_sigma_algebra_preimageType f).
1378+
1379+
HB.instance Definition _ := @isMeasurable.Build (preimage_display f)
1380+
(g_sigma_algebra_preimageType f) (g_sigma_algebra_preimage f)
1381+
preimage_set0 preimage_setC preimage_bigcup.
1382+
1383+
End preimage_generated_sigma_algebra.
1384+
1385+
Notation "f .-preimage" := (preimage_display f) : measure_display_scope.
1386+
Notation "f .-preimage.-measurable" :=
1387+
(measurable : set (set (g_sigma_algebra_preimageType f))) : classical_set_scope.
1388+
13281389
Definition image_set_system (aT rT : Type) (D : set aT) (f : aT -> rT)
13291390
(G : set (set aT)) : set (set rT) :=
13301391
[set B : set rT | G (D `&` f @^-1` B)].

theories/probability.v

Lines changed: 0 additions & 58 deletions
Original file line numberDiff line numberDiff line change
@@ -1183,64 +1183,6 @@ Definition mutual_independence (I0 : choiceType) (I : set I0)
11831183

11841184
End mutual_independence.
11851185

1186-
(* g_sigma_algebra_preimage f == sigma-algebra generated by the function f *)
1187-
(* g_sigma_algebra_preimageType f == the measurableType corresponding to *)
1188-
(* g_sigma_algebra_preimage f *)
1189-
(* This is an HB alias. *)
1190-
(* f.-preimage.-measurable A == A is measurable for g_sigma_algebra_preimage f *)
1191-
1192-
Definition preimage_display {T T'} : (T -> T') -> measure_display.
1193-
Proof. exact. Qed.
1194-
1195-
Definition g_sigma_algebra_preimageType d' (T : pointedType)
1196-
(T' : measurableType d') (f : T -> T') : Type := T.
1197-
1198-
Definition g_sigma_algebra_preimage d' (T : pointedType)
1199-
(T' : measurableType d') (f : T -> T') :=
1200-
preimage_set_system setT f (@measurable _ T').
1201-
1202-
Section preimage_generated_sigma_algebra.
1203-
Context {d'} (T : pointedType) (T' : measurableType d').
1204-
Variable f : T -> T'.
1205-
1206-
Let preimage_set0 : g_sigma_algebra_preimage f set0.
1207-
Proof.
1208-
rewrite /g_sigma_algebra_preimage /preimage_set_system/=.
1209-
by exists set0 => //; rewrite preimage_set0 setI0.
1210-
Qed.
1211-
1212-
Let preimage_setC A :
1213-
g_sigma_algebra_preimage f A -> g_sigma_algebra_preimage f (~` A).
1214-
Proof.
1215-
rewrite /g_sigma_algebra_preimage /preimage_set_system/= => -[B mB] <-{A}.
1216-
by exists (~` B); [exact: measurableC|rewrite !setTI preimage_setC].
1217-
Qed.
1218-
1219-
Let preimage_bigcup (F : (set T)^nat) :
1220-
(forall i, g_sigma_algebra_preimage f (F i)) ->
1221-
g_sigma_algebra_preimage f (\bigcup_i (F i)).
1222-
Proof.
1223-
move=> mF; rewrite /g_sigma_algebra_preimage /preimage_set_system/=.
1224-
pose g := fun i => sval (cid2 (mF i)).
1225-
pose mg := fun i => svalP (cid2 (mF i)).
1226-
exists (\bigcup_i g i).
1227-
by apply: bigcup_measurable => k; case: (mg k).
1228-
rewrite setTI /g preimage_bigcup; apply: eq_bigcupr => k _.
1229-
by case: (mg k) => _; rewrite setTI.
1230-
Qed.
1231-
1232-
HB.instance Definition _ := Pointed.on (g_sigma_algebra_preimageType f).
1233-
1234-
HB.instance Definition _ := @isMeasurable.Build (preimage_display f)
1235-
(g_sigma_algebra_preimageType f) (g_sigma_algebra_preimage f)
1236-
preimage_set0 preimage_setC preimage_bigcup.
1237-
1238-
End preimage_generated_sigma_algebra.
1239-
1240-
Notation "f .-preimage" := (preimage_display f) : measure_display_scope.
1241-
Notation "f .-preimage.-measurable" :=
1242-
(measurable : set (set (g_sigma_algebra_preimageType f))) : classical_set_scope.
1243-
12441186
Section independent_RVs.
12451187
Context {R : realType} d d' (T : measurableType d) (T' : measurableType d').
12461188
Variable P : probability T R.

0 commit comments

Comments
 (0)