| author | wenzelm | 
| Fri, 09 Jun 2017 22:55:18 +0200 | |
| changeset 66058 | 637b26fd3349 | 
| parent 63626 | 44ce6b524ff3 | 
| child 69260 | 0a9688695a1b | 
| permissions | -rw-r--r-- | 
| 
50042
 
6fe18351e9dd
moved lemmas into projective_family; added header for theory Projective_Family
 
immler@in.tum.de 
parents: 
50041 
diff
changeset
 | 
1  | 
(* Title: HOL/Probability/Projective_Family.thy  | 
| 
 
6fe18351e9dd
moved lemmas into projective_family; added header for theory Projective_Family
 
immler@in.tum.de 
parents: 
50041 
diff
changeset
 | 
2  | 
Author: Fabian Immler, TU München  | 
| 
 
6fe18351e9dd
moved lemmas into projective_family; added header for theory Projective_Family
 
immler@in.tum.de 
parents: 
50041 
diff
changeset
 | 
3  | 
Author: Johannes Hölzl, TU München  | 
| 
 
6fe18351e9dd
moved lemmas into projective_family; added header for theory Projective_Family
 
immler@in.tum.de 
parents: 
50041 
diff
changeset
 | 
4  | 
*)  | 
| 
 
6fe18351e9dd
moved lemmas into projective_family; added header for theory Projective_Family
 
immler@in.tum.de 
parents: 
50041 
diff
changeset
 | 
5  | 
|
| 61808 | 6  | 
section \<open>Projective Family\<close>  | 
| 
50042
 
6fe18351e9dd
moved lemmas into projective_family; added header for theory Projective_Family
 
immler@in.tum.de 
parents: 
50041 
diff
changeset
 | 
7  | 
|
| 
50039
 
bfd5198cbe40
added projective_family; generalized generator in product_prob_space to projective_family
 
immler@in.tum.de 
parents:  
diff
changeset
 | 
8  | 
theory Projective_Family  | 
| 
63626
 
44ce6b524ff3
move measure theory from HOL-Probability to HOL-Multivariate_Analysis
 
hoelzl 
parents: 
63040 
diff
changeset
 | 
9  | 
imports Giry_Monad  | 
| 
50039
 
bfd5198cbe40
added projective_family; generalized generator in product_prob_space to projective_family
 
immler@in.tum.de 
parents:  
diff
changeset
 | 
10  | 
begin  | 
| 
 
bfd5198cbe40
added projective_family; generalized generator in product_prob_space to projective_family
 
immler@in.tum.de 
parents:  
diff
changeset
 | 
11  | 
|
| 
61359
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
12  | 
lemma vimage_restrict_preseve_mono:  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
13  | 
assumes J: "J \<subseteq> I"  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
14  | 
  and sets: "A \<subseteq> (\<Pi>\<^sub>E i\<in>J. S i)" "B \<subseteq> (\<Pi>\<^sub>E i\<in>J. S i)" and ne: "(\<Pi>\<^sub>E i\<in>I. S i) \<noteq> {}"
 | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
15  | 
and eq: "(\<lambda>x. restrict x J) -` A \<inter> (\<Pi>\<^sub>E i\<in>I. S i) \<subseteq> (\<lambda>x. restrict x J) -` B \<inter> (\<Pi>\<^sub>E i\<in>I. S i)"  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
16  | 
shows "A \<subseteq> B"  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
17  | 
proof (intro subsetI)  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
18  | 
fix x assume "x \<in> A"  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
19  | 
from ne obtain y where y: "\<And>i. i \<in> I \<Longrightarrow> y i \<in> S i" by auto  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
20  | 
  have "J \<inter> (I - J) = {}" by auto
 | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
21  | 
show "x \<in> B"  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
22  | 
proof cases  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
23  | 
assume x: "x \<in> (\<Pi>\<^sub>E i\<in>J. S i)"  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
24  | 
have "merge J (I - J) (x,y) \<in> (\<lambda>x. restrict x J) -` A \<inter> (\<Pi>\<^sub>E i\<in>I. S i)"  | 
| 61808 | 25  | 
using y x \<open>J \<subseteq> I\<close> PiE_cancel_merge[of "J" "I - J" x y S] \<open>x\<in>A\<close>  | 
| 
61359
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
26  | 
by (auto simp del: PiE_cancel_merge simp add: Un_absorb1)  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
27  | 
also have "\<dots> \<subseteq> (\<lambda>x. restrict x J) -` B \<inter> (\<Pi>\<^sub>E i\<in>I. S i)" by fact  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
28  | 
finally show "x \<in> B"  | 
| 61808 | 29  | 
using y x \<open>J \<subseteq> I\<close> PiE_cancel_merge[of "J" "I - J" x y S] \<open>x\<in>A\<close> eq  | 
| 
61359
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
30  | 
by (auto simp del: PiE_cancel_merge simp add: Un_absorb1)  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
31  | 
qed (insert \<open>x\<in>A\<close> sets, auto)  | 
| 50087 | 32  | 
qed  | 
33  | 
||
| 
50039
 
bfd5198cbe40
added projective_family; generalized generator in product_prob_space to projective_family
 
immler@in.tum.de 
parents:  
diff
changeset
 | 
34  | 
locale projective_family =  | 
| 
61359
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
35  | 
  fixes I :: "'i set" and P :: "'i set \<Rightarrow> ('i \<Rightarrow> 'a) measure" and M :: "'i \<Rightarrow> 'a measure"
 | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
36  | 
assumes P: "\<And>J H. J \<subseteq> H \<Longrightarrow> finite H \<Longrightarrow> H \<subseteq> I \<Longrightarrow> P J = distr (P H) (PiM J M) (\<lambda>f. restrict f J)"  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
37  | 
assumes prob_space_P: "\<And>J. finite J \<Longrightarrow> J \<subseteq> I \<Longrightarrow> prob_space (P J)"  | 
| 
50039
 
bfd5198cbe40
added projective_family; generalized generator in product_prob_space to projective_family
 
immler@in.tum.de 
parents:  
diff
changeset
 | 
38  | 
begin  | 
| 
 
bfd5198cbe40
added projective_family; generalized generator in product_prob_space to projective_family
 
immler@in.tum.de 
parents:  
diff
changeset
 | 
39  | 
|
| 
61359
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
40  | 
lemma sets_P: "finite J \<Longrightarrow> J \<subseteq> I \<Longrightarrow> sets (P J) = sets (PiM J M)"  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
41  | 
by (subst P[of J J]) simp_all  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
42  | 
|
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
43  | 
lemma space_P: "finite J \<Longrightarrow> J \<subseteq> I \<Longrightarrow> space (P J) = space (PiM J M)"  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
44  | 
using sets_P by (rule sets_eq_imp_space_eq)  | 
| 
50039
 
bfd5198cbe40
added projective_family; generalized generator in product_prob_space to projective_family
 
immler@in.tum.de 
parents:  
diff
changeset
 | 
45  | 
|
| 
61359
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
46  | 
lemma not_empty_M: "i \<in> I \<Longrightarrow> space (M i) \<noteq> {}"
 | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
47  | 
using prob_space_P[THEN prob_space.not_empty] by (auto simp: space_PiM space_P)  | 
| 
50039
 
bfd5198cbe40
added projective_family; generalized generator in product_prob_space to projective_family
 
immler@in.tum.de 
parents:  
diff
changeset
 | 
48  | 
|
| 
61359
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
49  | 
lemma not_empty: "space (PiM I M) \<noteq> {}"
 | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
50  | 
by (simp add: not_empty_M)  | 
| 
50039
 
bfd5198cbe40
added projective_family; generalized generator in product_prob_space to projective_family
 
immler@in.tum.de 
parents:  
diff
changeset
 | 
51  | 
|
| 50124 | 52  | 
abbreviation  | 
| 
61359
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
53  | 
"emb L K \<equiv> prod_emb L M K"  | 
| 50124 | 54  | 
|
| 
61359
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
55  | 
lemma emb_preserve_mono:  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
56  | 
assumes "J \<subseteq> L" "L \<subseteq> I" and sets: "X \<in> sets (Pi\<^sub>M J M)" "Y \<in> sets (Pi\<^sub>M J M)"  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
57  | 
assumes "emb L J X \<subseteq> emb L J Y"  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
58  | 
shows "X \<subseteq> Y"  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
59  | 
proof (rule vimage_restrict_preseve_mono)  | 
| 
53015
 
a1119cf551e8
standardized symbols via "isabelle update_sub_sup", excluding src/Pure and src/Tools/WWW_Find;
 
wenzelm 
parents: 
50252 
diff
changeset
 | 
60  | 
show "X \<subseteq> (\<Pi>\<^sub>E i\<in>J. space (M i))" "Y \<subseteq> (\<Pi>\<^sub>E i\<in>J. space (M i))"  | 
| 
50244
 
de72bbe42190
qualified interpretation of sigma_algebra, to avoid name clashes
 
immler 
parents: 
50124 
diff
changeset
 | 
61  | 
using sets[THEN sets.sets_into_space] by (auto simp: space_PiM)  | 
| 
61359
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
62  | 
  show "(\<Pi>\<^sub>E i\<in>L. space (M i)) \<noteq> {}"
 | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
63  | 
using \<open>L \<subseteq> I\<close> by (auto simp add: not_empty_M space_PiM[symmetric])  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
64  | 
show "(\<lambda>x. restrict x J) -` X \<inter> (\<Pi>\<^sub>E i\<in>L. space (M i)) \<subseteq> (\<lambda>x. restrict x J) -` Y \<inter> (\<Pi>\<^sub>E i\<in>L. space (M i))"  | 
| 61808 | 65  | 
using \<open>prod_emb L M J X \<subseteq> prod_emb L M J Y\<close> by (simp add: prod_emb_def)  | 
| 
50042
 
6fe18351e9dd
moved lemmas into projective_family; added header for theory Projective_Family
 
immler@in.tum.de 
parents: 
50041 
diff
changeset
 | 
66  | 
qed fact  | 
| 
 
6fe18351e9dd
moved lemmas into projective_family; added header for theory Projective_Family
 
immler@in.tum.de 
parents: 
50041 
diff
changeset
 | 
67  | 
|
| 
61359
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
68  | 
lemma emb_injective:  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
69  | 
assumes L: "J \<subseteq> L" "L \<subseteq> I" and X: "X \<in> sets (Pi\<^sub>M J M)" and Y: "Y \<in> sets (Pi\<^sub>M J M)"  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
70  | 
shows "emb L J X = emb L J Y \<Longrightarrow> X = Y"  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
71  | 
by (intro antisym emb_preserve_mono[OF L X Y] emb_preserve_mono[OF L Y X]) auto  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
72  | 
|
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
73  | 
lemma emeasure_P: "J \<subseteq> K \<Longrightarrow> finite K \<Longrightarrow> K \<subseteq> I \<Longrightarrow> X \<in> sets (PiM J M) \<Longrightarrow> P K (emb K J X) = P J X"  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
74  | 
by (auto intro!: emeasure_distr_restrict[symmetric] simp: P sets_P)  | 
| 
50042
 
6fe18351e9dd
moved lemmas into projective_family; added header for theory Projective_Family
 
immler@in.tum.de 
parents: 
50041 
diff
changeset
 | 
75  | 
|
| 
61359
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
76  | 
inductive_set generator :: "('i \<Rightarrow> 'a) set set" where
 | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
77  | 
"finite J \<Longrightarrow> J \<subseteq> I \<Longrightarrow> X \<in> sets (Pi\<^sub>M J M) \<Longrightarrow> emb I J X \<in> generator"  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
78  | 
|
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
79  | 
lemma algebra_generator: "algebra (space (PiM I M)) generator"  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
80  | 
unfolding algebra_iff_Int  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
81  | 
proof (safe elim!: generator.cases)  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
82  | 
fix J X assume J: "finite J" "J \<subseteq> I" and X: "X \<in> sets (PiM J M)"  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
83  | 
|
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
84  | 
from X[THEN sets.sets_into_space] J show "x \<in> emb I J X \<Longrightarrow> x \<in> space (PiM I M)" for x  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
85  | 
by (auto simp: prod_emb_def space_PiM)  | 
| 
50042
 
6fe18351e9dd
moved lemmas into projective_family; added header for theory Projective_Family
 
immler@in.tum.de 
parents: 
50041 
diff
changeset
 | 
86  | 
|
| 
61359
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
87  | 
have "emb I J (space (PiM J M) - X) \<in> generator"  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
88  | 
by (intro generator.intros J sets.Diff sets.top X)  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
89  | 
with J show "space (Pi\<^sub>M I M) - emb I J X \<in> generator"  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
90  | 
by (simp add: space_PiM prod_emb_PiE)  | 
| 
62975
 
1d066f6ab25d
Probability: move emeasure and nn_integral from ereal to ennreal
 
hoelzl 
parents: 
62026 
diff
changeset
 | 
91  | 
|
| 
61359
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
92  | 
fix K Y assume K: "finite K" "K \<subseteq> I" and Y: "Y \<in> sets (PiM K M)"  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
93  | 
have "emb I (J \<union> K) (emb (J \<union> K) J X) \<inter> emb I (J \<union> K) (emb (J \<union> K) K Y) \<in> generator"  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
94  | 
unfolding prod_emb_Int[symmetric]  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
95  | 
by (intro generator.intros sets.Int measurable_prod_emb) (auto intro!: J K X Y)  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
96  | 
with J K X Y show "emb I J X \<inter> emb I K Y \<in> generator"  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
97  | 
by simp  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
98  | 
qed (force simp: generator.simps prod_emb_empty[symmetric])  | 
| 
50042
 
6fe18351e9dd
moved lemmas into projective_family; added header for theory Projective_Family
 
immler@in.tum.de 
parents: 
50041 
diff
changeset
 | 
99  | 
|
| 61605 | 100  | 
interpretation generator: algebra "space (PiM I M)" generator  | 
| 
61359
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
101  | 
by (rule algebra_generator)  | 
| 
50042
 
6fe18351e9dd
moved lemmas into projective_family; added header for theory Projective_Family
 
immler@in.tum.de 
parents: 
50041 
diff
changeset
 | 
102  | 
|
| 
61359
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
103  | 
lemma sets_PiM_generator: "sets (PiM I M) = sigma_sets (space (PiM I M)) generator"  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
104  | 
proof (intro antisym sets.sigma_sets_subset)  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
105  | 
show "sets (PiM I M) \<subseteq> sigma_sets (space (PiM I M)) generator"  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
106  | 
unfolding sets_PiM_single space_PiM[symmetric]  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
107  | 
proof (intro sigma_sets_mono', safe)  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
108  | 
fix i A assume "i \<in> I" and A: "A \<in> sets (M i)"  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
109  | 
    then have "{f \<in> space (Pi\<^sub>M I M). f i \<in> A} = emb I {i} (\<Pi>\<^sub>E j\<in>{i}. A)"
 | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
110  | 
by (auto simp: prod_emb_def space_PiM restrict_def Pi_iff PiE_iff extensional_def)  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
111  | 
    with \<open>i\<in>I\<close> A show "{f \<in> space (Pi\<^sub>M I M). f i \<in> A} \<in> generator"
 | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
112  | 
by (auto intro!: generator.intros sets_PiM_I_finite)  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
113  | 
qed  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
114  | 
qed (auto elim!: generator.cases)  | 
| 
50042
 
6fe18351e9dd
moved lemmas into projective_family; added header for theory Projective_Family
 
immler@in.tum.de 
parents: 
50041 
diff
changeset
 | 
115  | 
|
| 50252 | 116  | 
definition mu_G ("\<mu>G") where
 | 
| 
61359
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
117  | 
"\<mu>G A = (THE x. \<forall>J\<subseteq>I. finite J \<longrightarrow> (\<forall>X\<in>sets (Pi\<^sub>M J M). A = emb I J X \<longrightarrow> x = emeasure (P J) X))"  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
118  | 
|
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
119  | 
definition lim :: "('i \<Rightarrow> 'a) measure" where
 | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
120  | 
"lim = extend_measure (space (PiM I M)) generator (\<lambda>x. x) \<mu>G"  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
121  | 
|
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
122  | 
lemma space_lim[simp]: "space lim = space (PiM I M)"  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
123  | 
using generator.space_closed  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
124  | 
unfolding lim_def by (intro space_extend_measure) simp  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
125  | 
|
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
126  | 
lemma sets_lim[simp, measurable]: "sets lim = sets (PiM I M)"  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
127  | 
using generator.space_closed by (simp add: lim_def sets_PiM_generator sets_extend_measure)  | 
| 
50042
 
6fe18351e9dd
moved lemmas into projective_family; added header for theory Projective_Family
 
immler@in.tum.de 
parents: 
50041 
diff
changeset
 | 
128  | 
|
| 50252 | 129  | 
lemma mu_G_spec:  | 
| 
61359
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
130  | 
assumes J: "finite J" "J \<subseteq> I" "X \<in> sets (Pi\<^sub>M J M)"  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
131  | 
shows "\<mu>G (emb I J X) = emeasure (P J) X"  | 
| 50252 | 132  | 
unfolding mu_G_def  | 
| 
50042
 
6fe18351e9dd
moved lemmas into projective_family; added header for theory Projective_Family
 
immler@in.tum.de 
parents: 
50041 
diff
changeset
 | 
133  | 
proof (intro the_equality allI impI ballI)  | 
| 
61359
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
134  | 
fix K Y assume K: "finite K" "K \<subseteq> I" "Y \<in> sets (Pi\<^sub>M K M)"  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
135  | 
and [simp]: "emb I J X = emb I K Y"  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
136  | 
have "emeasure (P K) Y = emeasure (P (K \<union> J)) (emb (K \<union> J) K Y)"  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
137  | 
using K J by (simp add: emeasure_P)  | 
| 
50042
 
6fe18351e9dd
moved lemmas into projective_family; added header for theory Projective_Family
 
immler@in.tum.de 
parents: 
50041 
diff
changeset
 | 
138  | 
also have "emb (K \<union> J) K Y = emb (K \<union> J) J X"  | 
| 
61359
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
139  | 
using K J by (simp add: emb_injective[of "K \<union> J" I])  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
140  | 
also have "emeasure (P (K \<union> J)) (emb (K \<union> J) J X) = emeasure (P J) X"  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
141  | 
using K J by (subst emeasure_P) simp_all  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
142  | 
finally show "emeasure (P J) X = emeasure (P K) Y" ..  | 
| 
50042
 
6fe18351e9dd
moved lemmas into projective_family; added header for theory Projective_Family
 
immler@in.tum.de 
parents: 
50041 
diff
changeset
 | 
143  | 
qed (insert J, force)  | 
| 
 
6fe18351e9dd
moved lemmas into projective_family; added header for theory Projective_Family
 
immler@in.tum.de 
parents: 
50041 
diff
changeset
 | 
144  | 
|
| 
61359
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
145  | 
lemma positive_mu_G: "positive generator \<mu>G"  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
146  | 
proof -  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
147  | 
show ?thesis  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
148  | 
proof (safe intro!: positive_def[THEN iffD2])  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
149  | 
obtain J where "finite J" "J \<subseteq> I" by auto  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
150  | 
    then have "\<mu>G (emb I J {}) = 0"
 | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
151  | 
by (subst mu_G_spec) auto  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
152  | 
    then show "\<mu>G {} = 0" by simp
 | 
| 
62975
 
1d066f6ab25d
Probability: move emeasure and nn_integral from ereal to ennreal
 
hoelzl 
parents: 
62026 
diff
changeset
 | 
153  | 
qed  | 
| 
61359
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
154  | 
qed  | 
| 
50042
 
6fe18351e9dd
moved lemmas into projective_family; added header for theory Projective_Family
 
immler@in.tum.de 
parents: 
50041 
diff
changeset
 | 
155  | 
|
| 
61359
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
156  | 
lemma additive_mu_G: "additive generator \<mu>G"  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
157  | 
proof (safe intro!: additive_def[THEN iffD2] elim!: generator.cases)  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
158  | 
fix J X K Y assume J: "finite J" "J \<subseteq> I" "X \<in> sets (PiM J M)"  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
159  | 
and K: "finite K" "K \<subseteq> I" "Y \<in> sets (PiM K M)"  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
160  | 
    and "emb I J X \<inter> emb I K Y = {}"
 | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
161  | 
  then have JK_disj: "emb (J \<union> K) J X \<inter> emb (J \<union> K) K Y = {}"
 | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
162  | 
    by (intro emb_injective[of "J \<union> K" I _ "{}"]) (auto simp: sets.Int prod_emb_Int)
 | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
163  | 
have "\<mu>G (emb I J X \<union> emb I K Y) = \<mu>G (emb I (J \<union> K) (emb (J \<union> K) J X \<union> emb (J \<union> K) K Y))"  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
164  | 
using J K by simp  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
165  | 
also have "\<dots> = emeasure (P (J \<union> K)) (emb (J \<union> K) J X \<union> emb (J \<union> K) K Y)"  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
166  | 
using J K by (simp add: mu_G_spec sets.Un del: prod_emb_Un)  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
167  | 
also have "\<dots> = \<mu>G (emb I J X) + \<mu>G (emb I K Y)"  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
168  | 
using J K JK_disj by (simp add: plus_emeasure[symmetric] mu_G_spec emeasure_P sets_P)  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
169  | 
finally show "\<mu>G (emb I J X \<union> emb I K Y) = \<mu>G (emb I J X) + \<mu>G (emb I K Y)" .  | 
| 
50042
 
6fe18351e9dd
moved lemmas into projective_family; added header for theory Projective_Family
 
immler@in.tum.de 
parents: 
50041 
diff
changeset
 | 
170  | 
qed  | 
| 
 
6fe18351e9dd
moved lemmas into projective_family; added header for theory Projective_Family
 
immler@in.tum.de 
parents: 
50041 
diff
changeset
 | 
171  | 
|
| 
61359
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
172  | 
lemma emeasure_lim:  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
173  | 
assumes JX: "finite J" "J \<subseteq> I" "X \<in> sets (PiM J M)"  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
174  | 
assumes cont: "\<And>J X. (\<And>i. J i \<subseteq> I) \<Longrightarrow> incseq J \<Longrightarrow> (\<And>i. finite (J i)) \<Longrightarrow> (\<And>i. X i \<in> sets (PiM (J i) M)) \<Longrightarrow>  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
175  | 
    decseq (\<lambda>i. emb I (J i) (X i)) \<Longrightarrow> 0 < (INF i. P (J i) (X i)) \<Longrightarrow> (\<Inter>i. emb I (J i) (X i)) \<noteq> {}"
 | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
176  | 
shows "emeasure lim (emb I J X) = P J X"  | 
| 
50042
 
6fe18351e9dd
moved lemmas into projective_family; added header for theory Projective_Family
 
immler@in.tum.de 
parents: 
50041 
diff
changeset
 | 
177  | 
proof -  | 
| 
61359
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
178  | 
have "\<exists>\<mu>. (\<forall>s\<in>generator. \<mu> s = \<mu>G s) \<and>  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
179  | 
measure_space (space (PiM I M)) (sigma_sets (space (PiM I M)) generator) \<mu>"  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
180  | 
proof (rule generator.caratheodory_empty_continuous[OF positive_mu_G additive_mu_G])  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
181  | 
show "\<And>A. A \<in> generator \<Longrightarrow> \<mu>G A \<noteq> \<infinity>"  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
182  | 
proof (clarsimp elim!: generator.cases simp: mu_G_spec del: notI)  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
183  | 
fix J assume "finite J" "J \<subseteq> I"  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
184  | 
then interpret prob_space "P J" by (rule prob_space_P)  | 
| 
62975
 
1d066f6ab25d
Probability: move emeasure and nn_integral from ereal to ennreal
 
hoelzl 
parents: 
62026 
diff
changeset
 | 
185  | 
show "\<And>X. X \<in> sets (Pi\<^sub>M J M) \<Longrightarrow> emeasure (P J) X \<noteq> top"  | 
| 
61359
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
186  | 
by simp  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
187  | 
qed  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
188  | 
next  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
189  | 
    fix A assume "range A \<subseteq> generator" and "decseq A" "(\<Inter>i. A i) = {}"
 | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
190  | 
then have "\<forall>i. \<exists>J X. A i = emb I J X \<and> finite J \<and> J \<subseteq> I \<and> X \<in> sets (PiM J M)"  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
191  | 
unfolding image_subset_iff generator.simps by blast  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
192  | 
then obtain J X where A: "\<And>i. A i = emb I (J i) (X i)"  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
193  | 
and *: "\<And>i. finite (J i)" "\<And>i. J i \<subseteq> I" "\<And>i. X i \<in> sets (PiM (J i) M)"  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
194  | 
by metis  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
195  | 
have "(INF i. P (J i) (X i)) = 0"  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
196  | 
proof (rule ccontr)  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
197  | 
assume INF_P: "(INF i. P (J i) (X i)) \<noteq> 0"  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
198  | 
      have "(\<Inter>i. emb I (\<Union>n\<le>i. J n) (emb (\<Union>n\<le>i. J n) (J i) (X i))) \<noteq> {}"
 | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
199  | 
proof (rule cont)  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
200  | 
show "decseq (\<lambda>i. emb I (\<Union>n\<le>i. J n) (emb (\<Union>n\<le>i. J n) (J i) (X i)))"  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
201  | 
using * \<open>decseq A\<close> by (subst prod_emb_trans) (auto simp: A[abs_def])  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
202  | 
show "0 < (INF i. P (\<Union>n\<le>i. J n) (emb (\<Union>n\<le>i. J n) (J i) (X i)))"  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
203  | 
using * INF_P by (subst emeasure_P) (auto simp: less_le intro!: INF_greatest)  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
204  | 
show "incseq (\<lambda>i. \<Union>n\<le>i. J n)"  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
205  | 
by (force simp: incseq_def)  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
206  | 
qed (insert *, auto)  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
207  | 
      with \<open>(\<Inter>i. A i) = {}\<close> * show False
 | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
208  | 
by (subst (asm) prod_emb_trans) (auto simp: A[abs_def])  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
209  | 
qed  | 
| 61969 | 210  | 
moreover have "(\<lambda>i. P (J i) (X i)) \<longlonglongrightarrow> (INF i. P (J i) (X i))"  | 
| 
61359
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
211  | 
proof (intro LIMSEQ_INF antimonoI)  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
212  | 
fix x y :: nat assume "x \<le> y"  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
213  | 
have "P (J y \<union> J x) (emb (J y \<union> J x) (J y) (X y)) \<le> P (J y \<union> J x) (emb (J y \<union> J x) (J x) (X x))"  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
214  | 
using \<open>decseq A\<close>[THEN decseqD, OF \<open>x\<le>y\<close>] *  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
215  | 
by (auto simp: A sets_P del: subsetI intro!: emeasure_mono \<open>x \<le> y\<close>  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
216  | 
emb_preserve_mono[of "J y \<union> J x" I, where X="emb (J y \<union> J x) (J y) (X y)"])  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
217  | 
then show "P (J y) (X y) \<le> P (J x) (X x)"  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
218  | 
using * by (simp add: emeasure_P)  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
219  | 
qed  | 
| 61969 | 220  | 
ultimately show "(\<lambda>i. \<mu>G (A i)) \<longlonglongrightarrow> 0"  | 
| 
61359
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
221  | 
by (auto simp: A[abs_def] mu_G_spec *)  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
222  | 
qed  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
223  | 
then obtain \<mu> where eq: "\<forall>s\<in>generator. \<mu> s = \<mu>G s"  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
224  | 
and ms: "measure_space (space (PiM I M)) (sets (PiM I M)) \<mu>"  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
225  | 
by (metis sets_PiM_generator)  | 
| 
50042
 
6fe18351e9dd
moved lemmas into projective_family; added header for theory Projective_Family
 
immler@in.tum.de 
parents: 
50041 
diff
changeset
 | 
226  | 
show ?thesis  | 
| 
61359
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
227  | 
proof (subst emeasure_extend_measure[OF lim_def])  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
228  | 
show "A \<in> generator \<Longrightarrow> \<mu> A = \<mu>G A" for A  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
229  | 
using eq by simp  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
230  | 
show "positive (sets lim) \<mu>" "countably_additive (sets lim) \<mu>"  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
231  | 
using ms by (auto simp add: measure_space_def)  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
232  | 
show "(\<lambda>x. x) ` generator \<subseteq> Pow (space (Pi\<^sub>M I M))"  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
233  | 
using generator.space_closed by simp  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
234  | 
show "emb I J X \<in> generator" "\<mu>G (emb I J X) = emeasure (P J) X"  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
235  | 
using JX by (auto intro: generator.intros simp: mu_G_spec)  | 
| 
50042
 
6fe18351e9dd
moved lemmas into projective_family; added header for theory Projective_Family
 
immler@in.tum.de 
parents: 
50041 
diff
changeset
 | 
236  | 
qed  | 
| 
 
6fe18351e9dd
moved lemmas into projective_family; added header for theory Projective_Family
 
immler@in.tum.de 
parents: 
50041 
diff
changeset
 | 
237  | 
qed  | 
| 
 
6fe18351e9dd
moved lemmas into projective_family; added header for theory Projective_Family
 
immler@in.tum.de 
parents: 
50041 
diff
changeset
 | 
238  | 
|
| 
50039
 
bfd5198cbe40
added projective_family; generalized generator in product_prob_space to projective_family
 
immler@in.tum.de 
parents:  
diff
changeset
 | 
239  | 
end  | 
| 
 
bfd5198cbe40
added projective_family; generalized generator in product_prob_space to projective_family
 
immler@in.tum.de 
parents:  
diff
changeset
 | 
240  | 
|
| 50087 | 241  | 
sublocale product_prob_space \<subseteq> projective_family I "\<lambda>J. PiM J M" M  | 
| 
61359
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
242  | 
unfolding projective_family_def  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
243  | 
proof (intro conjI allI impI distr_restrict)  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
244  | 
show "\<And>J. finite J \<Longrightarrow> prob_space (Pi\<^sub>M J M)"  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
245  | 
by (intro prob_spaceI) (simp add: space_PiM emeasure_PiM emeasure_space_1)  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
246  | 
qed auto  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
247  | 
|
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
248  | 
|
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
249  | 
txt \<open> Proof due to Ionescu Tulcea. \<close>  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
250  | 
|
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
251  | 
locale Ionescu_Tulcea =  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
252  | 
fixes P :: "nat \<Rightarrow> (nat \<Rightarrow> 'a) \<Rightarrow> 'a measure" and M :: "nat \<Rightarrow> 'a measure"  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
253  | 
  assumes P[measurable]: "\<And>i. P i \<in> measurable (PiM {0..<i} M) (subprob_algebra (M i))"
 | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
254  | 
  assumes prob_space_P: "\<And>i x. x \<in> space (PiM {0..<i} M) \<Longrightarrow> prob_space (P i x)"
 | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
255  | 
begin  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
256  | 
|
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
257  | 
lemma non_empty[simp]: "space (M i) \<noteq> {}"
 | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
258  | 
proof (induction i rule: less_induct)  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
259  | 
case (less i)  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
260  | 
then obtain x where "\<And>j. j < i \<Longrightarrow> x j \<in> space (M j)"  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
261  | 
unfolding ex_in_conv[symmetric] by metis  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
262  | 
  then have *: "restrict x {0..<i} \<in> space (PiM {0..<i} M)"
 | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
263  | 
by (auto simp: space_PiM PiE_iff)  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
264  | 
  then interpret prob_space "P i (restrict x {0..<i})"
 | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
265  | 
by (rule prob_space_P)  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
266  | 
show ?case  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
267  | 
using not_empty subprob_measurableD(1)[OF P, OF *] by simp  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
268  | 
qed  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
269  | 
|
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
270  | 
lemma space_PiM_not_empty[simp]: "space (PiM UNIV M) \<noteq> {}"
 | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
271  | 
unfolding space_PiM_empty_iff by auto  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
272  | 
|
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
273  | 
lemma space_P: "x \<in> space (PiM {0..<n} M) \<Longrightarrow> space (P n x) = space (M n)"
 | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
274  | 
by (simp add: P[THEN subprob_measurableD(1)])  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
275  | 
|
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
276  | 
lemma sets_P[measurable_cong]: "x \<in> space (PiM {0..<n} M) \<Longrightarrow> sets (P n x) = sets (M n)"
 | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
277  | 
by (simp add: P[THEN subprob_measurableD(2)])  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
278  | 
|
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
279  | 
definition eP :: "nat \<Rightarrow> (nat \<Rightarrow> 'a) \<Rightarrow> (nat \<Rightarrow> 'a) measure" where  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
280  | 
  "eP n \<omega> = distr (P n \<omega>) (PiM {0..<Suc n} M) (fun_upd \<omega> n)"
 | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
281  | 
|
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
282  | 
lemma measurable_eP[measurable]:  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
283  | 
  "eP n \<in> measurable (PiM {0..< n} M) (subprob_algebra (PiM {0..<Suc n} M))"
 | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
284  | 
by (auto simp: eP_def[abs_def] measurable_split_conv  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
285  | 
           intro!: measurable_fun_upd[where J="{0..<n}"] measurable_distr2[OF _ P])
 | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
286  | 
|
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
287  | 
lemma space_eP:  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
288  | 
  "x \<in> space (PiM {0..<n} M) \<Longrightarrow> space (eP n x) = space (PiM {0..<Suc n} M)"
 | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
289  | 
by (simp add: measurable_eP[THEN subprob_measurableD(1)])  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
290  | 
|
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
291  | 
lemma sets_eP[measurable]:  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
292  | 
  "x \<in> space (PiM {0..<n} M) \<Longrightarrow> sets (eP n x) = sets (PiM {0..<Suc n} M)"
 | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
293  | 
by (simp add: measurable_eP[THEN subprob_measurableD(2)])  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
294  | 
|
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
295  | 
lemma prob_space_eP: "x \<in> space (PiM {0..<n} M) \<Longrightarrow> prob_space (eP n x)"
 | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
296  | 
unfolding eP_def  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
297  | 
  by (intro prob_space.prob_space_distr prob_space_P measurable_fun_upd[where J="{0..<n}"]) auto
 | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
298  | 
|
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
299  | 
lemma nn_integral_eP:  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
300  | 
  "\<omega> \<in> space (PiM {0..<n} M) \<Longrightarrow> f \<in> borel_measurable (PiM {0..<Suc n} M) \<Longrightarrow>
 | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
301  | 
(\<integral>\<^sup>+x. f x \<partial>eP n \<omega>) = (\<integral>\<^sup>+x. f (\<omega>(n := x)) \<partial>P n \<omega>)"  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
302  | 
unfolding eP_def  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
303  | 
  by (subst nn_integral_distr) (auto intro!: measurable_fun_upd[where J="{0..<n}"] simp: space_PiM PiE_iff)
 | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
304  | 
|
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
305  | 
lemma emeasure_eP:  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
306  | 
  assumes \<omega>[simp]: "\<omega> \<in> space (PiM {0..<n} M)" and A[measurable]: "A \<in> sets (PiM {0..<Suc n} M)"
 | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
307  | 
shows "eP n \<omega> A = P n \<omega> ((\<lambda>x. \<omega>(n := x)) -` A \<inter> space (M n))"  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
308  | 
using nn_integral_eP[of \<omega> n "indicator A"]  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
309  | 
apply (simp add: sets_eP nn_integral_indicator[symmetric] sets_P del: nn_integral_indicator)  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
310  | 
apply (subst nn_integral_indicator[symmetric])  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
311  | 
using measurable_sets[OF measurable_fun_upd[OF _ measurable_const[OF \<omega>] measurable_id] A, of n]  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
312  | 
apply (auto simp add: sets_P atLeastLessThanSuc space_P simp del: nn_integral_indicator  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
313  | 
intro!: nn_integral_cong split: split_indicator)  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
314  | 
done  | 
| 
62975
 
1d066f6ab25d
Probability: move emeasure and nn_integral from ereal to ennreal
 
hoelzl 
parents: 
62026 
diff
changeset
 | 
315  | 
|
| 
61359
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
316  | 
|
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
317  | 
primrec C :: "nat \<Rightarrow> nat \<Rightarrow> (nat \<Rightarrow> 'a) \<Rightarrow> (nat \<Rightarrow> 'a) measure" where  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
318  | 
  "C n 0 \<omega> = return (PiM {0..<n} M) \<omega>"
 | 
| 62026 | 319  | 
| "C n (Suc m) \<omega> = C n m \<omega> \<bind> eP (n + m)"  | 
| 
61359
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
320  | 
|
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
321  | 
lemma measurable_C[measurable]:  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
322  | 
  "C n m \<in> measurable (PiM {0..<n} M) (subprob_algebra (PiM {0..<n + m} M))"
 | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
323  | 
by (induction m) auto  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
324  | 
|
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
325  | 
lemma space_C:  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
326  | 
  "x \<in> space (PiM {0..<n} M) \<Longrightarrow> space (C n m x) = space (PiM {0..<n + m} M)"
 | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
327  | 
by (simp add: measurable_C[THEN subprob_measurableD(1)])  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
328  | 
|
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
329  | 
lemma sets_C[measurable_cong]:  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
330  | 
  "x \<in> space (PiM {0..<n} M) \<Longrightarrow> sets (C n m x) = sets (PiM {0..<n + m} M)"
 | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
331  | 
by (simp add: measurable_C[THEN subprob_measurableD(2)])  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
332  | 
|
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
333  | 
lemma prob_space_C: "x \<in> space (PiM {0..<n} M) \<Longrightarrow> prob_space (C n m x)"
 | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
334  | 
proof (induction m)  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
335  | 
case (Suc m) then show ?case  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
336  | 
    by (auto intro!: prob_space.prob_space_bind[where S="PiM {0..<Suc (n + m)} M"]
 | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
337  | 
simp: space_C prob_space_eP)  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
338  | 
qed (auto intro!: prob_space_return simp: space_PiM)  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
339  | 
|
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
340  | 
lemma split_C:  | 
| 62026 | 341  | 
  assumes \<omega>: "\<omega> \<in> space (PiM {0..<n} M)" shows "(C n m \<omega> \<bind> C (n + m) l) = C n (m + l) \<omega>"
 | 
| 
61359
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
342  | 
proof (induction l)  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
343  | 
case 0  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
344  | 
with \<omega> show ?case  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
345  | 
by (simp add: bind_return_distr' prob_space_C[THEN prob_space.not_empty]  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
346  | 
distr_cong[OF refl sets_C[symmetric, OF \<omega>]])  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
347  | 
next  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
348  | 
case (Suc l) with \<omega> show ?case  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
349  | 
by (simp add: bind_assoc[symmetric, OF _ measurable_eP]) (simp add: ac_simps)  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
350  | 
qed  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
351  | 
|
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
352  | 
lemma nn_integral_C:  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
353  | 
  assumes "m \<le> m'" and f[measurable]: "f \<in> borel_measurable (PiM {0..<n+m} M)"
 | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
354  | 
    and nonneg: "\<And>x. x \<in> space (PiM {0..<n+m} M) \<Longrightarrow> 0 \<le> f x"
 | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
355  | 
    and x: "x \<in> space (PiM {0..<n} M)"
 | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
356  | 
  shows "(\<integral>\<^sup>+x. f x \<partial>C n m x) = (\<integral>\<^sup>+x. f (restrict x {0..<n+m}) \<partial>C n m' x)"
 | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
357  | 
using \<open>m \<le> m'\<close>  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
358  | 
proof (induction rule: dec_induct)  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
359  | 
case (step i)  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
360  | 
  let ?E = "\<lambda>x. f (restrict x {0..<n + m})" and ?C = "\<lambda>i f. \<integral>\<^sup>+x. f x \<partial>C n i x"
 | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
361  | 
from \<open>m\<le>i\<close> x have "?C i ?E = ?C (Suc i) ?E"  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
362  | 
    by (auto simp: nn_integral_bind[where B="PiM {0 ..< Suc (n + i)} M"] space_C nn_integral_eP
 | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
363  | 
intro!: nn_integral_cong)  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
364  | 
(simp add: space_PiM PiE_iff nonneg prob_space.emeasure_space_1[OF prob_space_P])  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
365  | 
with step show ?case by (simp del: restrict_apply)  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
366  | 
qed (auto simp: space_PiM space_C[OF x] simp del: restrict_apply intro!: nn_integral_cong)  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
367  | 
|
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
368  | 
lemma emeasure_C:  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
369  | 
  assumes "m \<le> m'" and A[measurable]: "A \<in> sets (PiM {0..<n+m} M)" and [simp]: "x \<in> space (PiM {0..<n} M)"
 | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
370  | 
  shows "emeasure (C n m' x) (prod_emb {0..<n + m'} M {0..<n+m} A) = emeasure (C n m x) A"
 | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
371  | 
using assms  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
372  | 
by (subst (1 2) nn_integral_indicator[symmetric])  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
373  | 
(auto intro!: nn_integral_cong split: split_indicator simp del: nn_integral_indicator  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
374  | 
simp: nn_integral_C[of m m' _ n] prod_emb_iff space_PiM PiE_iff sets_C space_C)  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
375  | 
|
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
376  | 
lemma distr_C:  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
377  | 
  assumes "m \<le> m'" and [simp]: "x \<in> space (PiM {0..<n} M)"
 | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
378  | 
  shows "C n m x = distr (C n m' x) (PiM {0..<n+m} M) (\<lambda>x. restrict x {0..<n+m})"
 | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
379  | 
proof (rule measure_eqI)  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
380  | 
fix A assume "A \<in> sets (C n m x)"  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
381  | 
  with \<open>m \<le> m'\<close> show "emeasure (C n m x) A = emeasure (distr (C n m' x) (Pi\<^sub>M {0..<n + m} M) (\<lambda>x. restrict x {0..<n + m})) A"
 | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
382  | 
by (subst emeasure_C[symmetric, OF \<open>m \<le> m'\<close>]) (auto intro!: emeasure_distr_restrict[symmetric] simp: sets_C)  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
383  | 
qed (simp add: sets_C)  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
384  | 
|
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
385  | 
definition up_to :: "nat set \<Rightarrow> nat" where  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
386  | 
"up_to J = (LEAST n. \<forall>i\<ge>n. i \<notin> J)"  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
387  | 
|
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
388  | 
lemma up_to_less: "finite J \<Longrightarrow> i \<in> J \<Longrightarrow> i < up_to J"  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
389  | 
unfolding up_to_def  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
390  | 
by (rule LeastI2[of _ "Suc (Max J)"]) (auto simp: Suc_le_eq not_le[symmetric])  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
391  | 
|
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
392  | 
lemma up_to_iff: "finite J \<Longrightarrow> up_to J \<le> n \<longleftrightarrow> (\<forall>i\<in>J. i < n)"  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
393  | 
proof safe  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
394  | 
show "finite J \<Longrightarrow> up_to J \<le> n \<Longrightarrow> i \<in> J \<Longrightarrow> i < n" for i  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
395  | 
using up_to_less[of J i] by auto  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
396  | 
qed (auto simp: up_to_def intro!: Least_le)  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
397  | 
|
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
398  | 
lemma up_to_iff_Ico: "finite J \<Longrightarrow> up_to J \<le> n \<longleftrightarrow> J \<subseteq> {0..<n}"
 | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
399  | 
by (auto simp: up_to_iff)  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
400  | 
|
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
401  | 
lemma up_to: "finite J \<Longrightarrow> J \<subseteq> {0..< up_to J}"
 | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
402  | 
by (auto simp: up_to_less)  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
403  | 
|
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
404  | 
lemma up_to_mono: "J \<subseteq> H \<Longrightarrow> finite H \<Longrightarrow> up_to J \<le> up_to H"  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
405  | 
by (auto simp add: up_to_iff finite_subset up_to_less)  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
406  | 
|
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
407  | 
definition CI :: "nat set \<Rightarrow> (nat \<Rightarrow> 'a) measure" where  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
408  | 
"CI J = distr (C 0 (up_to J) (\<lambda>x. undefined)) (PiM J M) (\<lambda>f. restrict f J)"  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
409  | 
|
| 61605 | 410  | 
sublocale PF: projective_family UNIV CI  | 
| 
61359
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
411  | 
unfolding projective_family_def  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
412  | 
proof safe  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
413  | 
show "finite J \<Longrightarrow> prob_space (CI J)" for J  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
414  | 
using up_to[of J] unfolding CI_def  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
415  | 
by (intro prob_space.prob_space_distr prob_space_C measurable_restrict) auto  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
416  | 
note measurable_cong_sets[OF sets_C, simp]  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
417  | 
have [simp]: "J \<subseteq> H \<Longrightarrow> (\<lambda>f. restrict f J) \<in> measurable (Pi\<^sub>M H M) (Pi\<^sub>M J M)" for H J  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
418  | 
by (auto intro!: measurable_restrict)  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
419  | 
|
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
420  | 
show "J \<subseteq> H \<Longrightarrow> finite H \<Longrightarrow> CI J = distr (CI H) (Pi\<^sub>M J M) (\<lambda>f. restrict f J)" for J H  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
421  | 
by (simp add: CI_def distr_C[OF up_to_mono[of J H]] up_to up_to_mono distr_distr comp_def  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
422  | 
inf.absorb2 finite_subset)  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
423  | 
qed  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
424  | 
|
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
425  | 
lemma emeasure_CI':  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
426  | 
  "finite J \<Longrightarrow> X \<in> sets (PiM J M) \<Longrightarrow> CI J X = C 0 (up_to J) (\<lambda>_. undefined) (PF.emb {0..<up_to J} J X)"
 | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
427  | 
unfolding CI_def using up_to[of J] by (rule emeasure_distr_restrict) (auto simp: sets_C)  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
428  | 
|
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
429  | 
lemma emeasure_CI:  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
430  | 
  "J \<subseteq> {0..<n} \<Longrightarrow> X \<in> sets (PiM J M) \<Longrightarrow> CI J X = C 0 n (\<lambda>_. undefined) (PF.emb {0..<n} J X)"
 | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
431  | 
apply (subst emeasure_CI', simp_all add: finite_subset)  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
432  | 
apply (subst emeasure_C[symmetric, of "up_to J" n])  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
433  | 
apply (auto simp: finite_subset up_to_iff_Ico up_to_less)  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
434  | 
apply (subst prod_emb_trans)  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
435  | 
apply (auto simp: up_to_less finite_subset up_to_iff_Ico)  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
436  | 
done  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
437  | 
|
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
438  | 
lemma lim:  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
439  | 
assumes J: "finite J" and X: "X \<in> sets (PiM J M)"  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
440  | 
shows "emeasure PF.lim (PF.emb UNIV J X) = emeasure (CI J) X"  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
441  | 
proof (rule PF.emeasure_lim[OF J subset_UNIV X])  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
442  | 
fix J X' assume J[simp]: "\<And>i. finite (J i)" and X'[measurable]: "\<And>i. X' i \<in> sets (Pi\<^sub>M (J i) M)"  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
443  | 
and dec: "decseq (\<lambda>i. PF.emb UNIV (J i) (X' i))"  | 
| 63040 | 444  | 
define X where "X n =  | 
445  | 
    (\<Inter>i\<in>{i. J i \<subseteq> {0..< n}}. PF.emb {0..<n} (J i) (X' i)) \<inter> space (PiM {0..<n} M)" for n
 | 
|
| 
61359
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
446  | 
|
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
447  | 
  have sets_X[measurable]: "X n \<in> sets (PiM {0..<n} M)" for n
 | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
448  | 
    by (cases "{i. J i \<subseteq> {0..< n}} = {}")
 | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
449  | 
(simp_all add: X_def, auto intro!: sets.countable_INT' sets.Int)  | 
| 
62975
 
1d066f6ab25d
Probability: move emeasure and nn_integral from ereal to ennreal
 
hoelzl 
parents: 
62026 
diff
changeset
 | 
450  | 
|
| 
61359
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
451  | 
  have dec_X: "n \<le> m \<Longrightarrow> X m \<subseteq> PF.emb {0..<m} {0..<n} (X n)" for n m
 | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
452  | 
unfolding X_def using ivl_subset[of 0 n 0 m]  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
453  | 
    by (cases "{i. J i \<subseteq> {0..< n}} = {}")
 | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
454  | 
(auto simp add: prod_emb_Int prod_emb_PiE space_PiM simp del: ivl_subset)  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
455  | 
|
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
456  | 
  have dec_X': "PF.emb {0..<n} (J j) (X' j) \<subseteq> PF.emb {0..<n} (J i) (X' i)"
 | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
457  | 
    if [simp]: "J i \<subseteq> {0..<n}" "J j \<subseteq> {0..<n}" "i \<le> j" for n i j
 | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
458  | 
    by (rule PF.emb_preserve_mono[of "{0..<n}" UNIV]) (auto del: subsetI intro: dec[THEN antimonoD])
 | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
459  | 
|
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
460  | 
assume "0 < (INF i. CI (J i) (X' i))"  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
461  | 
also have "\<dots> \<le> (INF i. C 0 i (\<lambda>x. undefined) (X i))"  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
462  | 
proof (intro INF_greatest)  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
463  | 
fix n  | 
| 61605 | 464  | 
interpret C: prob_space "C 0 n (\<lambda>x. undefined)"  | 
| 
61359
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
465  | 
by (rule prob_space_C) simp  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
466  | 
show "(INF i. CI (J i) (X' i)) \<le> C 0 n (\<lambda>x. undefined) (X n)"  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
467  | 
proof cases  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
468  | 
      assume "{i. J i \<subseteq> {0..< n}} = {}" with C.emeasure_space_1  show ?thesis
 | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
469  | 
by (auto simp add: X_def space_C intro!: INF_lower2[of 0] prob_space.measure_le_1 PF.prob_space_P)  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
470  | 
next  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
471  | 
      assume *: "{i. J i \<subseteq> {0..< n}} \<noteq> {}"
 | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
472  | 
have "(INF i. CI (J i) (X' i)) \<le>  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
473  | 
          (INF i:{i. J i \<subseteq> {0..<n}}. C 0 n (\<lambda>_. undefined) (PF.emb {0..<n} (J i) (X' i)))"
 | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
474  | 
by (intro INF_superset_mono) (auto simp: emeasure_CI)  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
475  | 
      also have "\<dots> = C 0 n (\<lambda>_. undefined) (\<Inter>i\<in>{i. J i \<subseteq> {0..<n}}. (PF.emb {0..<n} (J i) (X' i)))"
 | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
476  | 
using * by (intro emeasure_INT_decseq_subset[symmetric]) (auto intro!: dec_X' del: subsetI simp: sets_C)  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
477  | 
also have "\<dots> = C 0 n (\<lambda>_. undefined) (X n)"  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
478  | 
using * by (auto simp add: X_def INT_extend_simps)  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
479  | 
finally show "(INF i. CI (J i) (X' i)) \<le> C 0 n (\<lambda>_. undefined) (X n)" .  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
480  | 
qed  | 
| 
57447
 
87429bdecad5
import more stuff from the CLT proof; base the lborel measure on interval_measure; remove lebesgue measure
 
hoelzl 
parents: 
57418 
diff
changeset
 | 
481  | 
qed  | 
| 
61359
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
482  | 
finally have pos: "0 < (INF i. C 0 i (\<lambda>x. undefined) (X i))" .  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
483  | 
  from less_INF_D[OF this, of 0] have "X 0 \<noteq> {}"
 | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
484  | 
by auto  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
485  | 
|
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
486  | 
  { fix \<omega> n assume \<omega>: "\<omega> \<in> space (PiM {0..<n} M)"
 | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
487  | 
let ?C = "\<lambda>i. emeasure (C n i \<omega>) (X (n + i))"  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
488  | 
let ?C' = "\<lambda>i x. emeasure (C (Suc n) i (\<omega>(n:=x))) (X (Suc n + i))"  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
489  | 
have M: "\<And>i. ?C' i \<in> borel_measurable (P n \<omega>)"  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
490  | 
      using \<omega>[measurable, simp] measurable_fun_upd[where J="{0..<n}"] by measurable auto
 | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
491  | 
|
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
492  | 
assume "0 < (INF i. ?C i)"  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
493  | 
also have "\<dots> \<le> (INF i. emeasure (C n (1 + i) \<omega>) (X (n + (1 + i))))"  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
494  | 
by (intro INF_greatest INF_lower) auto  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
495  | 
also have "\<dots> = (INF i. \<integral>\<^sup>+x. ?C' i x \<partial>P n \<omega>)"  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
496  | 
using \<omega> measurable_C[of "Suc n"]  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
497  | 
apply (intro INF_cong refl)  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
498  | 
apply (subst split_C[symmetric, OF \<omega>])  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
499  | 
apply (subst emeasure_bind[OF _ _ sets_X])  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
500  | 
apply (simp_all del: C.simps add: space_C)  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
501  | 
apply measurable  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
502  | 
apply simp  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
503  | 
apply (simp add: bind_return[OF measurable_eP] nn_integral_eP)  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
504  | 
done  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
505  | 
also have "\<dots> = (\<integral>\<^sup>+x. (INF i. ?C' i x) \<partial>P n \<omega>)"  | 
| 
62975
 
1d066f6ab25d
Probability: move emeasure and nn_integral from ereal to ennreal
 
hoelzl 
parents: 
62026 
diff
changeset
 | 
506  | 
proof (rule nn_integral_monotone_convergence_INF_AE[symmetric])  | 
| 
61359
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
507  | 
have "(\<integral>\<^sup>+x. ?C' 0 x \<partial>P n \<omega>) \<le> (\<integral>\<^sup>+x. 1 \<partial>P n \<omega>)"  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
508  | 
by (intro nn_integral_mono) (auto split: split_indicator)  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
509  | 
also have "\<dots> < \<infinity>"  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
510  | 
using prob_space_P[OF \<omega>, THEN prob_space.emeasure_space_1] by simp  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
511  | 
finally show "(\<integral>\<^sup>+x. ?C' 0 x \<partial>P n \<omega>) < \<infinity>" .  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
512  | 
next  | 
| 
62975
 
1d066f6ab25d
Probability: move emeasure and nn_integral from ereal to ennreal
 
hoelzl 
parents: 
62026 
diff
changeset
 | 
513  | 
show "AE x in P n \<omega>. ?C' (Suc i) x \<le> ?C' i x" for i  | 
| 
 
1d066f6ab25d
Probability: move emeasure and nn_integral from ereal to ennreal
 
hoelzl 
parents: 
62026 
diff
changeset
 | 
514  | 
proof (rule AE_I2)  | 
| 
 
1d066f6ab25d
Probability: move emeasure and nn_integral from ereal to ennreal
 
hoelzl 
parents: 
62026 
diff
changeset
 | 
515  | 
fix x assume "x \<in> space (P n \<omega>)"  | 
| 
 
1d066f6ab25d
Probability: move emeasure and nn_integral from ereal to ennreal
 
hoelzl 
parents: 
62026 
diff
changeset
 | 
516  | 
        with \<omega> have \<omega>': "\<omega>(n := x) \<in> space (PiM {0..<Suc n} M)"
 | 
| 
 
1d066f6ab25d
Probability: move emeasure and nn_integral from ereal to ennreal
 
hoelzl 
parents: 
62026 
diff
changeset
 | 
517  | 
by (auto simp: space_P[OF \<omega>] space_PiM PiE_iff extensional_def)  | 
| 
 
1d066f6ab25d
Probability: move emeasure and nn_integral from ereal to ennreal
 
hoelzl 
parents: 
62026 
diff
changeset
 | 
518  | 
with \<omega> show "?C' (Suc i) x \<le> ?C' i x"  | 
| 
 
1d066f6ab25d
Probability: move emeasure and nn_integral from ereal to ennreal
 
hoelzl 
parents: 
62026 
diff
changeset
 | 
519  | 
apply (subst emeasure_C[symmetric, of i "Suc i"])  | 
| 
 
1d066f6ab25d
Probability: move emeasure and nn_integral from ereal to ennreal
 
hoelzl 
parents: 
62026 
diff
changeset
 | 
520  | 
apply (auto intro!: emeasure_mono[OF dec_X] del: subsetI  | 
| 
 
1d066f6ab25d
Probability: move emeasure and nn_integral from ereal to ennreal
 
hoelzl 
parents: 
62026 
diff
changeset
 | 
521  | 
simp: sets_C space_P)  | 
| 
 
1d066f6ab25d
Probability: move emeasure and nn_integral from ereal to ennreal
 
hoelzl 
parents: 
62026 
diff
changeset
 | 
522  | 
apply (subst sets_bind[OF sets_eP])  | 
| 
 
1d066f6ab25d
Probability: move emeasure and nn_integral from ereal to ennreal
 
hoelzl 
parents: 
62026 
diff
changeset
 | 
523  | 
apply (simp_all add: space_C space_P)  | 
| 
 
1d066f6ab25d
Probability: move emeasure and nn_integral from ereal to ennreal
 
hoelzl 
parents: 
62026 
diff
changeset
 | 
524  | 
done  | 
| 
 
1d066f6ab25d
Probability: move emeasure and nn_integral from ereal to ennreal
 
hoelzl 
parents: 
62026 
diff
changeset
 | 
525  | 
qed  | 
| 
61359
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
526  | 
qed fact  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
527  | 
finally have "(\<integral>\<^sup>+x. (INF i. ?C' i x) \<partial>P n \<omega>) \<noteq> 0"  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
528  | 
by simp  | 
| 
62975
 
1d066f6ab25d
Probability: move emeasure and nn_integral from ereal to ennreal
 
hoelzl 
parents: 
62026 
diff
changeset
 | 
529  | 
with M have "\<exists>\<^sub>F x in ae_filter (P n \<omega>). 0 < (INF i. ?C' i x)"  | 
| 
 
1d066f6ab25d
Probability: move emeasure and nn_integral from ereal to ennreal
 
hoelzl 
parents: 
62026 
diff
changeset
 | 
530  | 
by (subst (asm) nn_integral_0_iff_AE)  | 
| 
 
1d066f6ab25d
Probability: move emeasure and nn_integral from ereal to ennreal
 
hoelzl 
parents: 
62026 
diff
changeset
 | 
531  | 
(auto intro!: borel_measurable_INF simp: Filter.not_eventually not_le zero_less_iff_neq_zero)  | 
| 
61359
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
532  | 
then have "\<exists>\<^sub>F x in ae_filter (P n \<omega>). x \<in> space (M n) \<and> 0 < (INF i. ?C' i x)"  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
533  | 
by (rule frequently_mp[rotated]) (auto simp: space_P \<omega>)  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
534  | 
then obtain x where "x \<in> space (M n)" "0 < (INF i. ?C' i x)"  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
535  | 
by (auto dest: frequently_ex)  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
536  | 
from this(2)[THEN less_INF_D, of 0] this(2)  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
537  | 
have "\<exists>x. \<omega>(n := x) \<in> X (Suc n) \<and> 0 < (INF i. ?C' i x)"  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
538  | 
by (intro exI[of _ x]) (simp split: split_indicator_asm) }  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
539  | 
note step = this  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
540  | 
|
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
541  | 
  let ?\<omega> = "\<lambda>\<omega> n x. (restrict \<omega> {0..<n})(n := x)"
 | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
542  | 
let ?L = "\<lambda>\<omega> n r. INF i. emeasure (C (Suc n) i (?\<omega> \<omega> n r)) (X (Suc n + i))"  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
543  | 
have *: "(\<And>i. i < n \<Longrightarrow> ?\<omega> \<omega> i (\<omega> i) \<in> X (Suc i)) \<Longrightarrow>  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
544  | 
    restrict \<omega> {0..<n} \<in> space (Pi\<^sub>M {0..<n} M)" for \<omega> n
 | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
545  | 
using sets.sets_into_space[OF sets_X, of n]  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
546  | 
    by (cases n) (auto simp: atLeastLessThanSuc restrict_def[of _ "{}"])
 | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
547  | 
have "\<exists>\<omega>. \<forall>n. ?\<omega> \<omega> n (\<omega> n) \<in> X (Suc n) \<and> 0 < ?L \<omega> n (\<omega> n)"  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
548  | 
proof (rule dependent_wellorder_choice)  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
549  | 
fix n \<omega> assume IH: "\<And>i. i < n \<Longrightarrow> ?\<omega> \<omega> i (\<omega> i) \<in> X (Suc i) \<and> 0 < ?L \<omega> i (\<omega> i)"  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
550  | 
show "\<exists>r. ?\<omega> \<omega> n r \<in> X (Suc n) \<and> 0 < ?L \<omega> n r"  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
551  | 
proof (rule step)  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
552  | 
      show "restrict \<omega> {0..<n} \<in> space (Pi\<^sub>M {0..<n} M)"
 | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
553  | 
using IH[THEN conjunct1] by (rule *)  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
554  | 
      show "0 < (INF i. emeasure (C n i (restrict \<omega> {0..<n})) (X (n + i)))"
 | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
555  | 
proof (cases n)  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
556  | 
case 0 with pos show ?thesis  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
557  | 
by (simp add: CI_def restrict_def)  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
558  | 
next  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
559  | 
case (Suc i) then show ?thesis  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
560  | 
using IH[of i, THEN conjunct2] by (simp add: atLeastLessThanSuc)  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
561  | 
qed  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
562  | 
qed  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
563  | 
qed (simp cong: restrict_cong)  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
564  | 
then obtain \<omega> where \<omega>: "\<And>n. ?\<omega> \<omega> n (\<omega> n) \<in> X (Suc n)"  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
565  | 
by auto  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
566  | 
from this[THEN *] have \<omega>_space: "\<omega> \<in> space (PiM UNIV M)"  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
567  | 
by (auto simp: space_PiM PiE_iff Ball_def)  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
568  | 
  have *: "\<omega> \<in> PF.emb UNIV {0..<n} (X n)" for n
 | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
569  | 
proof (cases n)  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
570  | 
    case 0 with \<omega>_space \<open>X 0 \<noteq> {}\<close> sets.sets_into_space[OF sets_X, of 0] show ?thesis
 | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
571  | 
by (auto simp add: space_PiM prod_emb_def restrict_def PiE_iff)  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
572  | 
next  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
573  | 
case (Suc i) then show ?thesis  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
574  | 
using \<omega>[of i] \<omega>_space by (auto simp: prod_emb_def space_PiM PiE_iff atLeastLessThanSuc)  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
575  | 
qed  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
576  | 
  have **: "{i. J i \<subseteq> {0..<up_to (J n)}} \<noteq> {}" for n
 | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
577  | 
by (auto intro!: exI[of _ n] up_to J)  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
578  | 
have "\<omega> \<in> PF.emb UNIV (J n) (X' n)" for n  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
579  | 
using *[of "up_to (J n)"] up_to[of "J n"] by (simp add: X_def prod_emb_Int prod_emb_INT[OF **])  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
580  | 
  then show "(\<Inter>i. PF.emb UNIV (J i) (X' i)) \<noteq> {}"
 | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
581  | 
by auto  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
582  | 
qed  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
583  | 
|
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
584  | 
lemma distr_lim: assumes J[simp]: "finite J" shows "distr PF.lim (PiM J M) (\<lambda>x. restrict x J) = CI J"  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
585  | 
apply (rule measure_eqI)  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
586  | 
apply (simp add: CI_def)  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
587  | 
apply (simp add: emeasure_distr measurable_cong_sets[OF PF.sets_lim] lim[symmetric] prod_emb_def space_PiM)  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
588  | 
done  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
589  | 
|
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
590  | 
end  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
591  | 
|
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
592  | 
lemma (in product_prob_space) emeasure_lim_emb:  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
593  | 
assumes *: "finite J" "J \<subseteq> I" "X \<in> sets (PiM J M)"  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
594  | 
shows "emeasure lim (emb I J X) = emeasure (Pi\<^sub>M J M) X"  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
595  | 
proof (rule emeasure_lim[OF *], goal_cases)  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
596  | 
case (1 J X)  | 
| 
62975
 
1d066f6ab25d
Probability: move emeasure and nn_integral from ereal to ennreal
 
hoelzl 
parents: 
62026 
diff
changeset
 | 
597  | 
|
| 
61359
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
598  | 
have "\<exists>Q. (\<forall>i. sets Q = PiM (\<Union>i. J i) M \<and> distr Q (PiM (J i) M) (\<lambda>x. restrict x (J i)) = Pi\<^sub>M (J i) M)"  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
599  | 
proof cases  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
600  | 
assume "finite (\<Union>i. J i)"  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
601  | 
then have "distr (PiM (\<Union>i. J i) M) (Pi\<^sub>M (J i) M) (\<lambda>x. restrict x (J i)) = Pi\<^sub>M (J i) M" for i  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
602  | 
by (intro distr_restrict[symmetric]) auto  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
603  | 
then show ?thesis  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
604  | 
by auto  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
605  | 
next  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
606  | 
assume inf: "infinite (\<Union>i. J i)"  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
607  | 
moreover have count: "countable (\<Union>i. J i)"  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
608  | 
using 1(3) by (auto intro: countable_finite)  | 
| 63040 | 609  | 
define f where "f = from_nat_into (\<Union>i. J i)"  | 
610  | 
define t where "t = to_nat_on (\<Union>i. J i)"  | 
|
| 
61359
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
611  | 
have ft[simp]: "x \<in> J i \<Longrightarrow> f (t x) = x" for x i  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
612  | 
unfolding f_def t_def using inf count by (intro from_nat_into_to_nat_on) auto  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
613  | 
have tf[simp]: "t (f i) = i" for i  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
614  | 
unfolding t_def f_def by (intro to_nat_on_from_nat_into_infinite inf count)  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
615  | 
have inj_t: "inj_on t (\<Union>i. J i)"  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
616  | 
using count by (auto simp: t_def)  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
617  | 
then have inj_t_J: "inj_on t (J i)" for i  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
618  | 
by (rule subset_inj_on) auto  | 
| 61605 | 619  | 
interpret IT: Ionescu_Tulcea "\<lambda>i \<omega>. M (f i)" "\<lambda>i. M (f i)"  | 
| 
61359
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
620  | 
by standard auto  | 
| 61605 | 621  | 
interpret Mf: product_prob_space "\<lambda>x. M (f x)" UNIV  | 
| 
61359
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
622  | 
by standard  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
623  | 
    have C_eq_PiM: "IT.C 0 n (\<lambda>_. undefined) = PiM {0..<n} (\<lambda>x. M (f x))" for n
 | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
624  | 
proof (induction n)  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
625  | 
case 0 then show ?case  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
626  | 
by (auto simp: PiM_empty intro!: measure_eqI dest!: subset_singletonD)  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
627  | 
next  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
628  | 
case (Suc n) then show ?case  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
629  | 
apply (auto intro!: measure_eqI simp: sets_bind[OF IT.sets_eP] emeasure_bind[OF _ IT.measurable_eP])  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
630  | 
apply (auto simp: Mf.product_nn_integral_insert nn_integral_indicator[symmetric] atLeastLessThanSuc IT.emeasure_eP space_PiM  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
631  | 
split: split_indicator simp del: nn_integral_indicator intro!: nn_integral_cong)  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
632  | 
done  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
633  | 
qed  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
634  | 
have CI_eq_PiM: "IT.CI X = PiM X (\<lambda>x. M (f x))" if X: "finite X" for X  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
635  | 
by (auto simp: IT.up_to_less X IT.CI_def C_eq_PiM intro!: Mf.distr_restrict[symmetric])  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
636  | 
|
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
637  | 
let ?Q = "distr IT.PF.lim (PiM (\<Union>i. J i) M) (\<lambda>\<omega>. \<lambda>x\<in>\<Union>i. J i. \<omega> (t x))"  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
638  | 
    { fix i
 | 
| 
62975
 
1d066f6ab25d
Probability: move emeasure and nn_integral from ereal to ennreal
 
hoelzl 
parents: 
62026 
diff
changeset
 | 
639  | 
have "distr ?Q (Pi\<^sub>M (J i) M) (\<lambda>x. restrict x (J i)) =  | 
| 
61359
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
640  | 
distr IT.PF.lim (Pi\<^sub>M (J i) M) ((\<lambda>\<omega>. \<lambda>n\<in>J i. \<omega> (t n)) \<circ> (\<lambda>\<omega>. restrict \<omega> (t`J i)))"  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
641  | 
proof (subst distr_distr)  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
642  | 
have "(\<lambda>\<omega>. \<omega> (t x)) \<in> measurable (Pi\<^sub>M UNIV (\<lambda>x. M (f x))) (M x)" if x: "x \<in> J i" for x i  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
643  | 
using measurable_component_singleton[of "t x" "UNIV" "\<lambda>x. M (f x)"] unfolding ft[OF x] by simp  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
644  | 
then show "(\<lambda>\<omega>. \<lambda>x\<in>\<Union>i. J i. \<omega> (t x)) \<in> measurable IT.PF.lim (Pi\<^sub>M (UNION UNIV J) M)"  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
645  | 
by (auto intro!: measurable_restrict simp: measurable_cong_sets[OF IT.PF.sets_lim refl])  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
646  | 
qed (auto intro!: distr_cong measurable_restrict measurable_component_singleton)  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
647  | 
also have "\<dots> = distr (distr IT.PF.lim (PiM (t`J i) (\<lambda>x. M (f x))) (\<lambda>\<omega>. restrict \<omega> (t`J i))) (Pi\<^sub>M (J i) M) (\<lambda>\<omega>. \<lambda>n\<in>J i. \<omega> (t n))"  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
648  | 
proof (intro distr_distr[symmetric])  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
649  | 
have "(\<lambda>\<omega>. \<omega> (t x)) \<in> measurable (Pi\<^sub>M (t`J i) (\<lambda>x. M (f x))) (M x)" if x: "x \<in> J i" for x  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
650  | 
using measurable_component_singleton[of "t x" "t`J i" "\<lambda>x. M (f x)"] x unfolding ft[OF x] by auto  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
651  | 
then show "(\<lambda>\<omega>. \<lambda>n\<in>J i. \<omega> (t n)) \<in> measurable (Pi\<^sub>M (t ` J i) (\<lambda>x. M (f x))) (Pi\<^sub>M (J i) M)"  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
652  | 
by (auto intro!: measurable_restrict)  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
653  | 
qed (auto intro!: measurable_restrict simp: measurable_cong_sets[OF IT.PF.sets_lim refl])  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
654  | 
also have "\<dots> = distr (PiM (t`J i) (\<lambda>x. M (f x))) (Pi\<^sub>M (J i) M) (\<lambda>\<omega>. \<lambda>n\<in>J i. \<omega> (t n))"  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
655  | 
using \<open>finite (J i)\<close> by (subst IT.distr_lim) (auto simp: CI_eq_PiM)  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
656  | 
also have "\<dots> = Pi\<^sub>M (J i) M"  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
657  | 
using Mf.distr_reorder[of t "J i"] by (simp add: 1 inj_t_J cong: PiM_cong)  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
658  | 
finally have "distr ?Q (Pi\<^sub>M (J i) M) (\<lambda>x. restrict x (J i)) = Pi\<^sub>M (J i) M" . }  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
659  | 
then show "\<exists>Q. \<forall>i. sets Q = PiM (\<Union>i. J i) M \<and> distr Q (Pi\<^sub>M (J i) M) (\<lambda>x. restrict x (J i)) = Pi\<^sub>M (J i) M"  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
660  | 
by (intro exI[of _ ?Q]) auto  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
661  | 
qed  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
662  | 
then obtain Q where sets_Q: "sets Q = PiM (\<Union>i. J i) M"  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
663  | 
and Q: "\<And>i. distr Q (PiM (J i) M) (\<lambda>x. restrict x (J i)) = Pi\<^sub>M (J i) M" by blast  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
664  | 
|
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
665  | 
from 1 interpret Q: prob_space Q  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
666  | 
by (intro prob_space_distrD[of "\<lambda>x. restrict x (J 0)" Q "PiM (J 0) M"])  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
667  | 
(auto simp: Q measurable_cong_sets[OF sets_Q]  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
668  | 
intro!: prob_space_P measurable_restrict measurable_component_singleton)  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
669  | 
|
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
670  | 
have "0 < (INF i. emeasure (Pi\<^sub>M (J i) M) (X i))" by fact  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
671  | 
also have "\<dots> = (INF i. emeasure Q (emb (\<Union>i. J i) (J i) (X i)))"  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
672  | 
by (simp add: emeasure_distr_restrict[OF _ sets_Q 1(4), symmetric] SUP_upper Q)  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
673  | 
also have "\<dots> = emeasure Q (\<Inter>i. emb (\<Union>i. J i) (J i) (X i))"  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
674  | 
proof (rule INF_emeasure_decseq)  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
675  | 
from 1 show "decseq (\<lambda>n. emb (\<Union>i. J i) (J n) (X n))"  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
676  | 
by (intro antimonoI emb_preserve_mono[where X="emb (\<Union>i. J i) (J n) (X n)" and L=I and J="\<Union>i. J i" for n]  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
677  | 
measurable_prod_emb)  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
678  | 
(auto simp: SUP_least SUP_upper antimono_def)  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
679  | 
qed (insert 1, auto simp: sets_Q)  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
680  | 
  finally have "(\<Inter>i. emb (\<Union>i. J i) (J i) (X i)) \<noteq> {}"
 | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
681  | 
by auto  | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
682  | 
  moreover have "(\<Inter>i. emb I (J i) (X i)) = {} \<Longrightarrow> (\<Inter>i. emb (\<Union>i. J i) (J i) (X i)) = {}"
 | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
683  | 
    using 1 by (intro emb_injective[of "\<Union>i. J i" I _ "{}"] sets.countable_INT) (auto simp: SUP_least SUP_upper)
 | 
| 
 
e985b52c3eb3
cleanup projective limit of probability distributions; proved Ionescu-Tulcea; used it to prove infinite prob. distribution
 
hoelzl 
parents: 
58876 
diff
changeset
 | 
684  | 
ultimately show ?case by auto  | 
| 
57447
 
87429bdecad5
import more stuff from the CLT proof; base the lborel measure on interval_measure; remove lebesgue measure
 
hoelzl 
parents: 
57418 
diff
changeset
 | 
685  | 
qed  | 
| 50087 | 686  | 
|
| 
50039
 
bfd5198cbe40
added projective_family; generalized generator in product_prob_space to projective_family
 
immler@in.tum.de 
parents:  
diff
changeset
 | 
687  | 
end  |