src/HOL/Probability/Caratheodory.thy
changeset 42950 6e5c2a3c69da
parent 42145 8448713d48b7
child 43920 cedb5cb948fd
equal deleted inserted replaced
42949:618adb3584e5 42950:6e5c2a3c69da
     6 header {*Caratheodory Extension Theorem*}
     6 header {*Caratheodory Extension Theorem*}
     7 
     7 
     8 theory Caratheodory
     8 theory Caratheodory
     9   imports Sigma_Algebra Extended_Real_Limits
     9   imports Sigma_Algebra Extended_Real_Limits
    10 begin
    10 begin
       
    11 
       
    12 lemma sums_def2:
       
    13   "f sums x \<longleftrightarrow> (\<lambda>n. (\<Sum>i\<le>n. f i)) ----> x"
       
    14   unfolding sums_def
       
    15   apply (subst LIMSEQ_Suc_iff[symmetric])
       
    16   unfolding atLeastLessThanSuc_atLeastAtMost atLeast0AtMost ..
    11 
    17 
    12 text {*
    18 text {*
    13   Originally from the Hurd/Coble measure theory development, translated by Lawrence Paulson.
    19   Originally from the Hurd/Coble measure theory development, translated by Lawrence Paulson.
    14 *}
    20 *}
    15 
    21 
   851     by (intro exI[of _ ?infm]) auto
   857     by (intro exI[of _ ?infm]) auto
   852 qed
   858 qed
   853 
   859 
   854 subsubsection {*Alternative instances of caratheodory*}
   860 subsubsection {*Alternative instances of caratheodory*}
   855 
   861 
   856 lemma sums_def2:
       
   857   "f sums x \<longleftrightarrow> (\<lambda>n. (\<Sum>i\<le>n. f i)) ----> x"
       
   858   unfolding sums_def
       
   859   apply (subst LIMSEQ_Suc_iff[symmetric])
       
   860   unfolding atLeastLessThanSuc_atLeastAtMost atLeast0AtMost ..
       
   861 
       
   862 lemma (in ring_of_sets) countably_additive_iff_continuous_from_below:
   862 lemma (in ring_of_sets) countably_additive_iff_continuous_from_below:
   863   assumes f: "positive M f" "additive M f"
   863   assumes f: "positive M f" "additive M f"
   864   shows "countably_additive M f \<longleftrightarrow>
   864   shows "countably_additive M f \<longleftrightarrow>
   865     (\<forall>A. range A \<subseteq> sets M \<longrightarrow> incseq A \<longrightarrow> (\<Union>i. A i) \<in> sets M \<longrightarrow> (\<lambda>i. f (A i)) ----> f (\<Union>i. A i))"
   865     (\<forall>A. range A \<subseteq> sets M \<longrightarrow> incseq A \<longrightarrow> (\<Union>i. A i) \<in> sets M \<longrightarrow> (\<lambda>i. f (A i)) ----> f (\<Union>i. A i))"
   866   unfolding countably_additive_def
   866   unfolding countably_additive_def
   898     unfolding sums_def2 by simp
   898     unfolding sums_def2 by simp
   899   from sums_unique[OF this]
   899   from sums_unique[OF this]
   900   show "(\<Sum>i. f (A i)) = f (\<Union>i. A i)" by simp
   900   show "(\<Sum>i. f (A i)) = f (\<Union>i. A i)" by simp
   901 qed
   901 qed
   902 
   902 
   903 lemma uminus_extreal_add_uminus_uminus:
       
   904   fixes a b :: extreal shows "a \<noteq> \<infinity> \<Longrightarrow> b \<noteq> \<infinity> \<Longrightarrow> - (- a + - b) = a + b"
       
   905   by (cases rule: extreal2_cases[of a b]) auto
       
   906 
       
   907 lemma INFI_extreal_add:
       
   908   assumes "decseq f" "decseq g" and fin: "\<And>i. f i \<noteq> \<infinity>" "\<And>i. g i \<noteq> \<infinity>"
       
   909   shows "(INF i. f i + g i) = INFI UNIV f + INFI UNIV g"
       
   910 proof -
       
   911   have INF_less: "(INF i. f i) < \<infinity>" "(INF i. g i) < \<infinity>"
       
   912     using assms unfolding INF_less_iff by auto
       
   913   { fix i from fin[of i] have "- ((- f i) + (- g i)) = f i + g i"
       
   914       by (rule uminus_extreal_add_uminus_uminus) }
       
   915   then have "(INF i. f i + g i) = (INF i. - ((- f i) + (- g i)))"
       
   916     by simp
       
   917   also have "\<dots> = INFI UNIV f + INFI UNIV g"
       
   918     unfolding extreal_INFI_uminus
       
   919     using assms INF_less
       
   920     by (subst SUPR_extreal_add)
       
   921        (auto simp: extreal_SUPR_uminus intro!: uminus_extreal_add_uminus_uminus)
       
   922   finally show ?thesis .
       
   923 qed
       
   924 
       
   925 lemma (in ring_of_sets) continuous_from_above_iff_empty_continuous:
   903 lemma (in ring_of_sets) continuous_from_above_iff_empty_continuous:
   926   assumes f: "positive M f" "additive M f"
   904   assumes f: "positive M f" "additive M f"
   927   shows "(\<forall>A. range A \<subseteq> sets M \<longrightarrow> decseq A \<longrightarrow> (\<Inter>i. A i) \<in> sets M \<longrightarrow> (\<forall>i. f (A i) \<noteq> \<infinity>) \<longrightarrow> (\<lambda>i. f (A i)) ----> f (\<Inter>i. A i))
   905   shows "(\<forall>A. range A \<subseteq> sets M \<longrightarrow> decseq A \<longrightarrow> (\<Inter>i. A i) \<in> sets M \<longrightarrow> (\<forall>i. f (A i) \<noteq> \<infinity>) \<longrightarrow> (\<lambda>i. f (A i)) ----> f (\<Inter>i. A i))
   928      \<longleftrightarrow> (\<forall>A. range A \<subseteq> sets M \<longrightarrow> decseq A \<longrightarrow> (\<Inter>i. A i) = {} \<longrightarrow> (\<forall>i. f (A i) \<noteq> \<infinity>) \<longrightarrow> (\<lambda>i. f (A i)) ----> 0)"
   906      \<longleftrightarrow> (\<forall>A. range A \<subseteq> sets M \<longrightarrow> decseq A \<longrightarrow> (\<Inter>i. A i) = {} \<longrightarrow> (\<forall>i. f (A i) \<noteq> \<infinity>) \<longrightarrow> (\<lambda>i. f (A i)) ----> 0)"
   929 proof safe
   907 proof safe