equal
deleted
inserted
replaced
130 let ?G = "\<lambda>S i. if i \<in> S then ?F i else F i" |
130 let ?G = "\<lambda>S i. if i \<in> S then ?F i else F i" |
131 assume "finite J" "J \<subseteq> K" |
131 assume "finite J" "J \<subseteq> K" |
132 then have "indep_sets (?G J) K" |
132 then have "indep_sets (?G J) K" |
133 proof induct |
133 proof induct |
134 case (insert j J) |
134 case (insert j J) |
135 moreover def G \<equiv> "?G J" |
135 moreover define G where "G = ?G J" |
136 ultimately have G: "indep_sets G K" "\<And>i. i \<in> K \<Longrightarrow> G i \<subseteq> events" and "j \<in> K" |
136 ultimately have G: "indep_sets G K" "\<And>i. i \<in> K \<Longrightarrow> G i \<subseteq> events" and "j \<in> K" |
137 by (auto simp: indep_sets_def) |
137 by (auto simp: indep_sets_def) |
138 let ?D = "{E\<in>events. indep_sets (G(j := {E})) K }" |
138 let ?D = "{E\<in>events. indep_sets (G(j := {E})) K }" |
139 { fix X assume X: "X \<in> events" |
139 { fix X assume X: "X \<in> events" |
140 assume indep: "\<And>J A. J \<noteq> {} \<Longrightarrow> J \<subseteq> K \<Longrightarrow> finite J \<Longrightarrow> j \<notin> J \<Longrightarrow> (\<forall>i\<in>J. A i \<in> G i) |
140 assume indep: "\<And>J A. J \<noteq> {} \<Longrightarrow> J \<subseteq> K \<Longrightarrow> finite J \<Longrightarrow> j \<notin> J \<Longrightarrow> (\<forall>i\<in>J. A i \<in> G i) |
462 with L(2,3)[OF \<open>j \<in> K\<close>] L(2,3)[OF \<open>k \<in> K\<close>] |
462 with L(2,3)[OF \<open>j \<in> K\<close>] L(2,3)[OF \<open>k \<in> K\<close>] |
463 show False using \<open>l \<in> L k\<close> \<open>l \<in> L j\<close> by auto |
463 show False using \<open>l \<in> L k\<close> \<open>l \<in> L j\<close> by auto |
464 qed } |
464 qed } |
465 note L_inj = this |
465 note L_inj = this |
466 |
466 |
467 def k \<equiv> "\<lambda>l. (SOME k. k \<in> K \<and> l \<in> L k)" |
467 define k where "k l = (SOME k. k \<in> K \<and> l \<in> L k)" for l |
468 { fix x j l assume *: "j \<in> K" "l \<in> L j" |
468 { fix x j l assume *: "j \<in> K" "l \<in> L j" |
469 have "k l = j" unfolding k_def |
469 have "k l = j" unfolding k_def |
470 proof (rule some_equality) |
470 proof (rule some_equality) |
471 fix k assume "k \<in> K \<and> l \<in> L k" |
471 fix k assume "k \<in> K \<and> l \<in> L k" |
472 with * L_inj show "k = j" by auto |
472 with * L_inj show "k = j" by auto |
1263 lemma (in prob_space) indep_vars_nn_integral: |
1263 lemma (in prob_space) indep_vars_nn_integral: |
1264 assumes I: "finite I" "indep_vars (\<lambda>_. borel) X I" "\<And>i \<omega>. i \<in> I \<Longrightarrow> 0 \<le> X i \<omega>" |
1264 assumes I: "finite I" "indep_vars (\<lambda>_. borel) X I" "\<And>i \<omega>. i \<in> I \<Longrightarrow> 0 \<le> X i \<omega>" |
1265 shows "(\<integral>\<^sup>+\<omega>. (\<Prod>i\<in>I. X i \<omega>) \<partial>M) = (\<Prod>i\<in>I. \<integral>\<^sup>+\<omega>. X i \<omega> \<partial>M)" |
1265 shows "(\<integral>\<^sup>+\<omega>. (\<Prod>i\<in>I. X i \<omega>) \<partial>M) = (\<Prod>i\<in>I. \<integral>\<^sup>+\<omega>. X i \<omega> \<partial>M)" |
1266 proof cases |
1266 proof cases |
1267 assume "I \<noteq> {}" |
1267 assume "I \<noteq> {}" |
1268 def Y \<equiv> "\<lambda>i \<omega>. if i \<in> I then X i \<omega> else 0" |
1268 define Y where [abs_def]: "Y i \<omega> = (if i \<in> I then X i \<omega> else 0)" for i \<omega> |
1269 { fix i have "i \<in> I \<Longrightarrow> random_variable borel (X i)" |
1269 { fix i have "i \<in> I \<Longrightarrow> random_variable borel (X i)" |
1270 using I(2) by (cases "i\<in>I") (auto simp: indep_vars_def) } |
1270 using I(2) by (cases "i\<in>I") (auto simp: indep_vars_def) } |
1271 note rv_X = this |
1271 note rv_X = this |
1272 |
1272 |
1273 { fix i have "random_variable borel (Y i)" |
1273 { fix i have "random_variable borel (Y i)" |
1300 assumes I: "finite I" "indep_vars (\<lambda>_. borel) X I" "\<And>i. i \<in> I \<Longrightarrow> integrable M (X i)" |
1300 assumes I: "finite I" "indep_vars (\<lambda>_. borel) X I" "\<And>i. i \<in> I \<Longrightarrow> integrable M (X i)" |
1301 shows indep_vars_lebesgue_integral: "(\<integral>\<omega>. (\<Prod>i\<in>I. X i \<omega>) \<partial>M) = (\<Prod>i\<in>I. \<integral>\<omega>. X i \<omega> \<partial>M)" (is ?eq) |
1301 shows indep_vars_lebesgue_integral: "(\<integral>\<omega>. (\<Prod>i\<in>I. X i \<omega>) \<partial>M) = (\<Prod>i\<in>I. \<integral>\<omega>. X i \<omega> \<partial>M)" (is ?eq) |
1302 and indep_vars_integrable: "integrable M (\<lambda>\<omega>. (\<Prod>i\<in>I. X i \<omega>))" (is ?int) |
1302 and indep_vars_integrable: "integrable M (\<lambda>\<omega>. (\<Prod>i\<in>I. X i \<omega>))" (is ?int) |
1303 proof (induct rule: case_split) |
1303 proof (induct rule: case_split) |
1304 assume "I \<noteq> {}" |
1304 assume "I \<noteq> {}" |
1305 def Y \<equiv> "\<lambda>i \<omega>. if i \<in> I then X i \<omega> else 0" |
1305 define Y where [abs_def]: "Y i \<omega> = (if i \<in> I then X i \<omega> else 0)" for i \<omega> |
1306 { fix i have "i \<in> I \<Longrightarrow> random_variable borel (X i)" |
1306 { fix i have "i \<in> I \<Longrightarrow> random_variable borel (X i)" |
1307 using I(2) by (cases "i\<in>I") (auto simp: indep_vars_def) } |
1307 using I(2) by (cases "i\<in>I") (auto simp: indep_vars_def) } |
1308 note rv_X = this[measurable] |
1308 note rv_X = this[measurable] |
1309 |
1309 |
1310 { fix i have "random_variable borel (Y i)" |
1310 { fix i have "random_variable borel (Y i)" |