equal
deleted
inserted
replaced
367 assumes sets: "\<And>i A. i \<in> I \<Longrightarrow> A \<in> sets (M i) \<Longrightarrow> {x\<in>space N. x i \<in> A} \<in> sets N" |
367 assumes sets: "\<And>i A. i \<in> I \<Longrightarrow> A \<in> sets (M i) \<Longrightarrow> {x\<in>space N. x i \<in> A} \<in> sets N" |
368 shows "sets (\<Pi>\<^sub>M i \<in> I. M i) \<subseteq> sets N" |
368 shows "sets (\<Pi>\<^sub>M i \<in> I. M i) \<subseteq> sets N" |
369 unfolding sets_PiM_single space[symmetric] |
369 unfolding sets_PiM_single space[symmetric] |
370 by (intro sets.sigma_sets_subset subsetI) (auto intro: sets) |
370 by (intro sets.sigma_sets_subset subsetI) (auto intro: sets) |
371 |
371 |
372 lemma sets_PiM_cong: assumes "I = J" "\<And>i. i \<in> J \<Longrightarrow> sets (M i) = sets (N i)" shows "sets (PiM I M) = sets (PiM J N)" |
372 lemma sets_PiM_cong[measurable_cong]: |
|
373 assumes "I = J" "\<And>i. i \<in> J \<Longrightarrow> sets (M i) = sets (N i)" shows "sets (PiM I M) = sets (PiM J N)" |
373 using assms sets_eq_imp_space_eq[OF assms(2)] by (simp add: sets_PiM_single cong: PiE_cong conj_cong) |
374 using assms sets_eq_imp_space_eq[OF assms(2)] by (simp add: sets_PiM_single cong: PiE_cong conj_cong) |
374 |
375 |
375 lemma sets_PiM_I: |
376 lemma sets_PiM_I: |
376 assumes "finite J" "J \<subseteq> I" "\<forall>i\<in>J. E i \<in> sets (M i)" |
377 assumes "finite J" "J \<subseteq> I" "\<forall>i\<in>J. E i \<in> sets (M i)" |
377 shows "prod_emb I M J (PIE j:J. E j) \<in> sets (PIM i:I. M i)" |
378 shows "prod_emb I M J (PIE j:J. E j) \<in> sets (PIM i:I. M i)" |
468 lemma measurable_case_nat[measurable (raw)]: |
469 lemma measurable_case_nat[measurable (raw)]: |
469 assumes [measurable (raw)]: "i = 0 \<Longrightarrow> f \<in> measurable M N" |
470 assumes [measurable (raw)]: "i = 0 \<Longrightarrow> f \<in> measurable M N" |
470 "\<And>j. i = Suc j \<Longrightarrow> (\<lambda>x. g x j) \<in> measurable M N" |
471 "\<And>j. i = Suc j \<Longrightarrow> (\<lambda>x. g x j) \<in> measurable M N" |
471 shows "(\<lambda>x. case_nat (f x) (g x) i) \<in> measurable M N" |
472 shows "(\<lambda>x. case_nat (f x) (g x) i) \<in> measurable M N" |
472 by (cases i) simp_all |
473 by (cases i) simp_all |
473 |
474 |
474 lemma measurable_case_nat'[measurable (raw)]: |
475 lemma measurable_case_nat'[measurable (raw)]: |
475 assumes fg[measurable]: "f \<in> measurable N M" "g \<in> measurable N (\<Pi>\<^sub>M i\<in>UNIV. M)" |
476 assumes fg[measurable]: "f \<in> measurable N M" "g \<in> measurable N (\<Pi>\<^sub>M i\<in>UNIV. M)" |
476 shows "(\<lambda>x. case_nat (f x) (g x)) \<in> measurable N (\<Pi>\<^sub>M i\<in>UNIV. M)" |
477 shows "(\<lambda>x. case_nat (f x) (g x)) \<in> measurable N (\<Pi>\<^sub>M i\<in>UNIV. M)" |
477 using fg[THEN measurable_space] |
478 using fg[THEN measurable_space] |
478 by (auto intro!: measurable_PiM_single' simp add: space_PiM PiE_iff split: nat.split) |
479 by (auto intro!: measurable_PiM_single' simp add: space_PiM PiE_iff split: nat.split) |
882 proof (intro measure_eqI[symmetric]) |
883 proof (intro measure_eqI[symmetric]) |
883 interpret I: finite_product_sigma_finite M "{i}" by default simp |
884 interpret I: finite_product_sigma_finite M "{i}" by default simp |
884 |
885 |
885 have eq: "\<And>x. x \<in> extensional {i} \<Longrightarrow> (\<lambda>j\<in>{i}. x i) = x" |
886 have eq: "\<And>x. x \<in> extensional {i} \<Longrightarrow> (\<lambda>j\<in>{i}. x i) = x" |
886 by (auto simp: extensional_def restrict_def) |
887 by (auto simp: extensional_def restrict_def) |
|
888 |
|
889 have [measurable]: "\<And>j. j \<in> {i} \<Longrightarrow> (\<lambda>x. x) \<in> measurable (M i) (M j)" by simp |
887 |
890 |
888 fix A assume A: "A \<in> sets ?P" |
891 fix A assume A: "A \<in> sets ?P" |
889 then have "emeasure ?P A = (\<integral>\<^sup>+x. indicator A x \<partial>?P)" |
892 then have "emeasure ?P A = (\<integral>\<^sup>+x. indicator A x \<partial>?P)" |
890 by simp |
893 by simp |
891 also have "\<dots> = (\<integral>\<^sup>+x. indicator ((\<lambda>x. \<lambda>i\<in>{i}. x) -` A \<inter> space (M i)) (x i) \<partial>PiM {i} M)" |
894 also have "\<dots> = (\<integral>\<^sup>+x. indicator ((\<lambda>x. \<lambda>i\<in>{i}. x) -` A \<inter> space (M i)) (x i) \<partial>PiM {i} M)" |