Skip to content

Commit 7783800

Browse files
committed
mv defs to appropriate files
1 parent f25bda5 commit 7783800

File tree

3 files changed

+67
-65
lines changed

3 files changed

+67
-65
lines changed

CHANGELOG_UNRELEASED.md

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -74,11 +74,10 @@
7474
- in `probability.v`:
7575
+ lemmas `eq_bernoulli`, `eq_bernoulliV2`
7676

77-
7877
- file `mathcomp_extra.v`
7978
+ lemmas `ge_trunc`, `lt_succ_trunc`, `trunc_ge_nat`, `trunc_lt_nat`
8079

81-
- in `measure.v`:
80+
- in `measurable_function.v`:
8281
+ lemma `preimage_set_system_compS`
8382

8483
- in `numfun.v`:

theories/measure_theory/measurable_structure.v

Lines changed: 66 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -92,11 +92,20 @@ From mathcomp Require Import sequences esum numfun.
9292
(* ## Other measure-theoretic definitions *)
9393
(* *)
9494
(* ``` *)
95-
(* preimage_set_system D f G == set system of the preimages by f of sets in G *)
96-
(* image_set_system D f G == set system of the sets with a preimage by f *)
97-
(* in G *)
98-
(* subset_sigma_subadditive mu == alternative predicate defining *)
99-
(* sigma-subadditivity *)
95+
(* preimage_set_system D f G == set system of the preimages by f of sets *)
96+
(* in G *)
97+
(* g_sigma_algebra_preimage f == sigma-algebra generated by the *)
98+
(* function f *)
99+
(* g_sigma_algebra_preimageType f == the measurableType corresponding to *)
100+
(* g_sigma_algebra_preimage f *)
101+
(* This is an HB alias. *)
102+
(* f.-preimage.-measurable A == A is measurable for *)
103+
(* g_sigma_algebra_preimage f *)
104+
(* image_set_system D f G == set system of the sets with a preimage *)
105+
(* by f in G *)
106+
(* *)
107+
(* subset_sigma_subadditive mu == alternative predicate defining *)
108+
(* sigma-subadditivity *)
100109
(* ``` *)
101110
(* *)
102111
(* ## Product of measurable spaces *)
@@ -1343,6 +1352,58 @@ case=> h0 hC hU; split; first by exists set0 => //; rewrite preimage_set0 setI0.
13431352
exact: (mF' i).2.
13441353
Qed.
13451354

1355+
Definition preimage_display {T T'} : (T -> T') -> measure_display.
1356+
Proof. exact. Qed.
1357+
1358+
Definition g_sigma_algebra_preimageType d' (T : pointedType)
1359+
(T' : measurableType d') (f : T -> T') : Type := T.
1360+
1361+
Definition g_sigma_algebra_preimage d' (T : pointedType)
1362+
(T' : measurableType d') (f : T -> T') :=
1363+
preimage_set_system setT f (@measurable _ T').
1364+
1365+
Section preimage_generated_sigma_algebra.
1366+
Context {d'} (T : pointedType) (T' : measurableType d').
1367+
Variable f : T -> T'.
1368+
1369+
Let preimage_set0 : g_sigma_algebra_preimage f set0.
1370+
Proof.
1371+
rewrite /g_sigma_algebra_preimage /preimage_set_system/=.
1372+
by exists set0 => //; rewrite preimage_set0 setI0.
1373+
Qed.
1374+
1375+
Let preimage_setC A :
1376+
g_sigma_algebra_preimage f A -> g_sigma_algebra_preimage f (~` A).
1377+
Proof.
1378+
rewrite /g_sigma_algebra_preimage /preimage_set_system/= => -[B mB] <-{A}.
1379+
by exists (~` B); [exact: measurableC|rewrite !setTI preimage_setC].
1380+
Qed.
1381+
1382+
Let preimage_bigcup (F : (set T)^nat) :
1383+
(forall i, g_sigma_algebra_preimage f (F i)) ->
1384+
g_sigma_algebra_preimage f (\bigcup_i (F i)).
1385+
Proof.
1386+
move=> mF; rewrite /g_sigma_algebra_preimage /preimage_set_system/=.
1387+
pose g := fun i => sval (cid2 (mF i)).
1388+
pose mg := fun i => svalP (cid2 (mF i)).
1389+
exists (\bigcup_i g i).
1390+
by apply: bigcup_measurable => k; case: (mg k).
1391+
rewrite setTI /g preimage_bigcup; apply: eq_bigcupr => k _.
1392+
by case: (mg k) => _; rewrite setTI.
1393+
Qed.
1394+
1395+
HB.instance Definition _ := Pointed.on (g_sigma_algebra_preimageType f).
1396+
1397+
HB.instance Definition _ := @isMeasurable.Build (preimage_display f)
1398+
(g_sigma_algebra_preimageType f) (g_sigma_algebra_preimage f)
1399+
preimage_set0 preimage_setC preimage_bigcup.
1400+
1401+
End preimage_generated_sigma_algebra.
1402+
1403+
Notation "f .-preimage" := (preimage_display f) : measure_display_scope.
1404+
Notation "f .-preimage.-measurable" :=
1405+
(measurable : set (set (g_sigma_algebra_preimageType f))) : classical_set_scope.
1406+
13461407
Definition image_set_system (aT rT : Type) (D : set aT) (f : aT -> rT)
13471408
(G : set (set aT)) : set (set rT) :=
13481409
[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
@@ -1179,64 +1179,6 @@ Definition mutual_independence (I0 : choiceType) (I : set I0)
11791179

11801180
End mutual_independence.
11811181

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

0 commit comments

Comments
 (0)