src/HOL/Analysis/Measure_Space.thy
changeset 67399 eab6ce8368fa
parent 66453 cc19f7ca2ed6
child 67673 c8caefb20564
equal deleted inserted replaced
67398:5eb932e604a2 67399:eab6ce8368fa
  2346   shows "emeasure (restrict_space M \<Omega>) A = emeasure M A"
  2346   shows "emeasure (restrict_space M \<Omega>) A = emeasure M A"
  2347 proof (cases "A \<in> sets M")
  2347 proof (cases "A \<in> sets M")
  2348   case True
  2348   case True
  2349   show ?thesis
  2349   show ?thesis
  2350   proof (rule emeasure_measure_of[OF restrict_space_def])
  2350   proof (rule emeasure_measure_of[OF restrict_space_def])
  2351     show "op \<inter> \<Omega> ` sets M \<subseteq> Pow (\<Omega> \<inter> space M)" "A \<in> sets (restrict_space M \<Omega>)"
  2351     show "(\<inter>) \<Omega> ` sets M \<subseteq> Pow (\<Omega> \<inter> space M)" "A \<in> sets (restrict_space M \<Omega>)"
  2352       using \<open>A \<subseteq> \<Omega>\<close> \<open>A \<in> sets M\<close> sets.space_closed by (auto simp: sets_restrict_space)
  2352       using \<open>A \<subseteq> \<Omega>\<close> \<open>A \<in> sets M\<close> sets.space_closed by (auto simp: sets_restrict_space)
  2353     show "positive (sets (restrict_space M \<Omega>)) (emeasure M)"
  2353     show "positive (sets (restrict_space M \<Omega>)) (emeasure M)"
  2354       by (auto simp: positive_def)
  2354       by (auto simp: positive_def)
  2355     show "countably_additive (sets (restrict_space M \<Omega>)) (emeasure M)"
  2355     show "countably_additive (sets (restrict_space M \<Omega>)) (emeasure M)"
  2356     proof (rule countably_additiveI)
  2356     proof (rule countably_additiveI)
  2425 proof -
  2425 proof -
  2426   interpret sigma_finite_measure M by fact
  2426   interpret sigma_finite_measure M by fact
  2427   from sigma_finite_countable obtain C
  2427   from sigma_finite_countable obtain C
  2428     where C: "countable C" "C \<subseteq> sets M" "(\<Union>C) = space M" "\<forall>a\<in>C. emeasure M a \<noteq> \<infinity>"
  2428     where C: "countable C" "C \<subseteq> sets M" "(\<Union>C) = space M" "\<forall>a\<in>C. emeasure M a \<noteq> \<infinity>"
  2429     by blast
  2429     by blast
  2430   let ?C = "op \<inter> A ` C"
  2430   let ?C = "(\<inter>) A ` C"
  2431   from C have "countable ?C" "?C \<subseteq> sets (restrict_space M A)" "(\<Union>?C) = space (restrict_space M A)"
  2431   from C have "countable ?C" "?C \<subseteq> sets (restrict_space M A)" "(\<Union>?C) = space (restrict_space M A)"
  2432     by(auto simp add: sets_restrict_space space_restrict_space)
  2432     by(auto simp add: sets_restrict_space space_restrict_space)
  2433   moreover {
  2433   moreover {
  2434     fix a
  2434     fix a
  2435     assume "a \<in> ?C"
  2435     assume "a \<in> ?C"
  2859           done
  2859           done
  2860       qed
  2860       qed
  2861       also have "\<dots> = ?S (\<Union>i. X i)"
  2861       also have "\<dots> = ?S (\<Union>i. X i)"
  2862         unfolding UN_extend_simps(4)
  2862         unfolding UN_extend_simps(4)
  2863         by (auto simp add: suminf_add[symmetric] Diff_eq[symmetric] simp del: UN_simps
  2863         by (auto simp add: suminf_add[symmetric] Diff_eq[symmetric] simp del: UN_simps
  2864                  intro!: SUP_cong arg_cong2[where f="op +"] suminf_emeasure
  2864                  intro!: SUP_cong arg_cong2[where f="(+)"] suminf_emeasure
  2865                          disjoint_family_on_bisimulation[OF \<open>disjoint_family X\<close>])
  2865                          disjoint_family_on_bisimulation[OF \<open>disjoint_family X\<close>])
  2866       finally show "(\<Sum>i. ?S (X i)) = ?S (\<Union>i. X i)" .
  2866       finally show "(\<Sum>i. ?S (X i)) = ?S (\<Union>i. X i)" .
  2867     qed
  2867     qed
  2868   qed (auto dest: sets.sets_into_space simp: positive_def intro!: SUP_const)
  2868   qed (auto dest: sets.sets_into_space simp: positive_def intro!: SUP_const)
  2869 qed
  2869 qed
  3393   finally show ?thesis .
  3393   finally show ?thesis .
  3394 qed
  3394 qed
  3395 
  3395 
  3396 lemma emeasure_SUP_chain:
  3396 lemma emeasure_SUP_chain:
  3397   assumes sets: "\<And>i. i \<in> A \<Longrightarrow> sets (M i) = sets N" "X \<in> sets N"
  3397   assumes sets: "\<And>i. i \<in> A \<Longrightarrow> sets (M i) = sets N" "X \<in> sets N"
  3398   assumes ch: "Complete_Partial_Order.chain op \<le> (M ` A)" and "A \<noteq> {}"
  3398   assumes ch: "Complete_Partial_Order.chain (\<le>) (M ` A)" and "A \<noteq> {}"
  3399   shows "emeasure (SUP i:A. M i) X = (SUP i:A. emeasure (M i) X)"
  3399   shows "emeasure (SUP i:A. M i) X = (SUP i:A. emeasure (M i) X)"
  3400 proof (subst emeasure_SUP[OF sets \<open>A \<noteq> {}\<close>])
  3400 proof (subst emeasure_SUP[OF sets \<open>A \<noteq> {}\<close>])
  3401   show "(SUP J:{J. J \<noteq> {} \<and> finite J \<and> J \<subseteq> A}. emeasure (SUPREMUM J M) X) = (SUP i:A. emeasure (M i) X)"
  3401   show "(SUP J:{J. J \<noteq> {} \<and> finite J \<and> J \<subseteq> A}. emeasure (SUPREMUM J M) X) = (SUP i:A. emeasure (M i) X)"
  3402   proof (rule SUP_eq)
  3402   proof (rule SUP_eq)
  3403     fix J assume "J \<in> {J. J \<noteq> {} \<and> finite J \<and> J \<subseteq> A}"
  3403     fix J assume "J \<in> {J. J \<noteq> {} \<and> finite J \<and> J \<subseteq> A}"
  3404     then have J: "Complete_Partial_Order.chain op \<le> (M ` J)" "finite J" "J \<noteq> {}" and "J \<subseteq> A"
  3404     then have J: "Complete_Partial_Order.chain (\<le>) (M ` J)" "finite J" "J \<noteq> {}" and "J \<subseteq> A"
  3405       using ch[THEN chain_subset, of "M`J"] by auto
  3405       using ch[THEN chain_subset, of "M`J"] by auto
  3406     with in_chain_finite[OF J(1)] obtain j where "j \<in> J" "(SUP j:J. M j) = M j"
  3406     with in_chain_finite[OF J(1)] obtain j where "j \<in> J" "(SUP j:J. M j) = M j"
  3407       by auto
  3407       by auto
  3408     with \<open>J \<subseteq> A\<close> show "\<exists>j\<in>A. emeasure (SUPREMUM J M) X \<le> emeasure (M j) X"
  3408     with \<open>J \<subseteq> A\<close> show "\<exists>j\<in>A. emeasure (SUPREMUM J M) X \<le> emeasure (M j) X"
  3409       by auto
  3409       by auto