584 by (subst asm, subst emeasure_count_space_finite) auto |
584 by (subst asm, subst emeasure_count_space_finite) auto |
585 moreover have "emeasure lborel {undefined} \<noteq> 1" by simp |
585 moreover have "emeasure lborel {undefined} \<noteq> 1" by simp |
586 ultimately show False by contradiction |
586 ultimately show False by contradiction |
587 qed |
587 qed |
588 |
588 |
|
589 lemma mem_closed_if_AE_lebesgue_open: |
|
590 assumes "open S" "closed C" |
|
591 assumes "AE x \<in> S in lebesgue. x \<in> C" |
|
592 assumes "x \<in> S" |
|
593 shows "x \<in> C" |
|
594 proof (rule ccontr) |
|
595 assume xC: "x \<notin> C" |
|
596 with openE[of "S - C"] assms |
|
597 obtain e where e: "0 < e" "ball x e \<subseteq> S - C" |
|
598 by blast |
|
599 then obtain a b where box: "x \<in> box a b" "box a b \<subseteq> S - C" |
|
600 by (metis rational_boxes order_trans) |
|
601 then have "0 < emeasure lebesgue (box a b)" |
|
602 by (auto simp: emeasure_lborel_box_eq mem_box algebra_simps intro!: prod_pos) |
|
603 also have "\<dots> \<le> emeasure lebesgue (S - C)" |
|
604 using assms box |
|
605 by (auto intro!: emeasure_mono) |
|
606 also have "\<dots> = 0" |
|
607 using assms |
|
608 by (auto simp: eventually_ae_filter completion.complete2 set_diff_eq null_setsD1) |
|
609 finally show False by simp |
|
610 qed |
|
611 |
|
612 lemma mem_closed_if_AE_lebesgue: "closed C \<Longrightarrow> (AE x in lebesgue. x \<in> C) \<Longrightarrow> x \<in> C" |
|
613 using mem_closed_if_AE_lebesgue_open[OF open_UNIV] by simp |
|
614 |
|
615 |
589 subsection \<open>Affine transformation on the Lebesgue-Borel\<close> |
616 subsection \<open>Affine transformation on the Lebesgue-Borel\<close> |
590 |
617 |
591 lemma lborel_eqI: |
618 lemma lborel_eqI: |
592 fixes M :: "'a::euclidean_space measure" |
619 fixes M :: "'a::euclidean_space measure" |
593 assumes emeasure_eq: "\<And>l u. (\<And>b. b \<in> Basis \<Longrightarrow> l \<bullet> b \<le> u \<bullet> b) \<Longrightarrow> emeasure M (box l u) = (\<Prod>b\<in>Basis. (u - l) \<bullet> b)" |
620 assumes emeasure_eq: "\<And>l u. (\<And>b. b \<in> Basis \<Longrightarrow> l \<bullet> b \<le> u \<bullet> b) \<Longrightarrow> emeasure M (box l u) = (\<Prod>b\<in>Basis. (u - l) \<bullet> b)" |