equal
deleted
inserted
replaced
1120 have open_real: "open (real -` (B - {0}) :: ereal set)" |
1120 have open_real: "open (real -` (B - {0}) :: ereal set)" |
1121 unfolding open_ereal_def * using `open B` by auto |
1121 unfolding open_ereal_def * using `open B` by auto |
1122 show "(real -` B \<inter> space borel :: ereal set) \<in> sets borel" |
1122 show "(real -` B \<inter> space borel :: ereal set) \<in> sets borel" |
1123 proof cases |
1123 proof cases |
1124 assume "0 \<in> B" |
1124 assume "0 \<in> B" |
1125 then have *: "real -` B = real -` (B - {0}) \<union> {-\<infinity>, \<infinity>, 0}" |
1125 then have *: "real -` B = real -` (B - {0}) \<union> {-\<infinity>, \<infinity>, 0::ereal}" |
1126 by (auto simp add: real_of_ereal_eq_0) |
1126 by (auto simp add: real_of_ereal_eq_0) |
1127 then show "(real -` B :: ereal set) \<inter> space borel \<in> sets borel" |
1127 then show "(real -` B :: ereal set) \<inter> space borel \<in> sets borel" |
1128 using open_real by auto |
1128 using open_real by auto |
1129 next |
1129 next |
1130 assume "0 \<notin> B" |
1130 assume "0 \<notin> B" |
1146 from borel_measurable_real_of_ereal[OF this] |
1146 from borel_measurable_real_of_ereal[OF this] |
1147 show "f \<in> borel_measurable M" by auto |
1147 show "f \<in> borel_measurable M" by auto |
1148 qed auto |
1148 qed auto |
1149 |
1149 |
1150 lemma (in sigma_algebra) borel_measurable_ereal_iff_real: |
1150 lemma (in sigma_algebra) borel_measurable_ereal_iff_real: |
1151 "f \<in> borel_measurable M \<longleftrightarrow> |
1151 fixes f :: "'a \<Rightarrow> ereal" |
|
1152 shows "f \<in> borel_measurable M \<longleftrightarrow> |
1152 ((\<lambda>x. real (f x)) \<in> borel_measurable M \<and> f -` {\<infinity>} \<inter> space M \<in> sets M \<and> f -` {-\<infinity>} \<inter> space M \<in> sets M)" |
1153 ((\<lambda>x. real (f x)) \<in> borel_measurable M \<and> f -` {\<infinity>} \<inter> space M \<in> sets M \<and> f -` {-\<infinity>} \<inter> space M \<in> sets M)" |
1153 proof safe |
1154 proof safe |
1154 assume *: "(\<lambda>x. real (f x)) \<in> borel_measurable M" "f -` {\<infinity>} \<inter> space M \<in> sets M" "f -` {-\<infinity>} \<inter> space M \<in> sets M" |
1155 assume *: "(\<lambda>x. real (f x)) \<in> borel_measurable M" "f -` {\<infinity>} \<inter> space M \<in> sets M" "f -` {-\<infinity>} \<inter> space M \<in> sets M" |
1155 have "f -` {\<infinity>} \<inter> space M = {x\<in>space M. f x = \<infinity>}" "f -` {-\<infinity>} \<inter> space M = {x\<in>space M. f x = -\<infinity>}" by auto |
1156 have "f -` {\<infinity>} \<inter> space M = {x\<in>space M. f x = \<infinity>}" "f -` {-\<infinity>} \<inter> space M = {x\<in>space M. f x = -\<infinity>}" by auto |
1156 with * have **: "{x\<in>space M. f x = \<infinity>} \<in> sets M" "{x\<in>space M. f x = -\<infinity>} \<in> sets M" by simp_all |
1157 with * have **: "{x\<in>space M. f x = \<infinity>} \<in> sets M" "{x\<in>space M. f x = -\<infinity>} \<in> sets M" by simp_all |
1206 proof |
1207 proof |
1207 assume ?l from borel_measurable_uminus_ereal[OF this] show ?r by simp |
1208 assume ?l from borel_measurable_uminus_ereal[OF this] show ?r by simp |
1208 qed auto |
1209 qed auto |
1209 |
1210 |
1210 lemma (in sigma_algebra) borel_measurable_eq_atMost_ereal: |
1211 lemma (in sigma_algebra) borel_measurable_eq_atMost_ereal: |
1211 "(f::'a \<Rightarrow> ereal) \<in> borel_measurable M \<longleftrightarrow> (\<forall>a. f -` {..a} \<inter> space M \<in> sets M)" |
1212 fixes f :: "'a \<Rightarrow> ereal" |
|
1213 shows "f \<in> borel_measurable M \<longleftrightarrow> (\<forall>a. f -` {..a} \<inter> space M \<in> sets M)" |
1212 proof (intro iffI allI) |
1214 proof (intro iffI allI) |
1213 assume pos[rule_format]: "\<forall>a. f -` {..a} \<inter> space M \<in> sets M" |
1215 assume pos[rule_format]: "\<forall>a. f -` {..a} \<inter> space M \<in> sets M" |
1214 show "f \<in> borel_measurable M" |
1216 show "f \<in> borel_measurable M" |
1215 unfolding borel_measurable_ereal_iff_real borel_measurable_iff_le |
1217 unfolding borel_measurable_ereal_iff_real borel_measurable_iff_le |
1216 proof (intro conjI allI) |
1218 proof (intro conjI allI) |
1224 qed } |
1226 qed } |
1225 then have "f -` {\<infinity>} \<inter> space M = space M - (\<Union>i::nat. f -` {.. real i} \<inter> space M)" |
1227 then have "f -` {\<infinity>} \<inter> space M = space M - (\<Union>i::nat. f -` {.. real i} \<inter> space M)" |
1226 by (auto simp: not_le) |
1228 by (auto simp: not_le) |
1227 then show "f -` {\<infinity>} \<inter> space M \<in> sets M" using pos by (auto simp del: UN_simps intro!: Diff) |
1229 then show "f -` {\<infinity>} \<inter> space M \<in> sets M" using pos by (auto simp del: UN_simps intro!: Diff) |
1228 moreover |
1230 moreover |
1229 have "{-\<infinity>} = {..-\<infinity>}" by auto |
1231 have "{-\<infinity>::ereal} = {..-\<infinity>}" by auto |
1230 then show "f -` {-\<infinity>} \<inter> space M \<in> sets M" using pos by auto |
1232 then show "f -` {-\<infinity>} \<inter> space M \<in> sets M" using pos by auto |
1231 moreover have "{x\<in>space M. f x \<le> ereal a} \<in> sets M" |
1233 moreover have "{x\<in>space M. f x \<le> ereal a} \<in> sets M" |
1232 using pos[of "ereal a"] by (simp add: vimage_def Int_def conj_commute) |
1234 using pos[of "ereal a"] by (simp add: vimage_def Int_def conj_commute) |
1233 moreover have "{w \<in> space M. real (f w) \<le> a} = |
1235 moreover have "{w \<in> space M. real (f w) \<le> a} = |
1234 (if a < 0 then {w \<in> space M. f w \<le> ereal a} - f -` {-\<infinity>} \<inter> space M |
1236 (if a < 0 then {w \<in> space M. f w \<le> ereal a} - f -` {-\<infinity>} \<inter> space M |