src/HOL/Probability/Radon_Nikodym.thy
changeset 50021 d96a3f468203
parent 50003 8c213922ed49
child 50244 de72bbe42190
equal deleted inserted replaced
50020:6b9611abcd4c 50021:d96a3f468203
   920     by (intro h.density_unique_finite_measure absolutely_continuous_AE[of M])
   920     by (intro h.density_unique_finite_measure absolutely_continuous_AE[of M])
   921        (auto simp add: AE_density)
   921        (auto simp add: AE_density)
   922   then show "AE x in M. f x = f' x"
   922   then show "AE x in M. f x = f' x"
   923     unfolding eventually_ae_filter using h_borel pos
   923     unfolding eventually_ae_filter using h_borel pos
   924     by (auto simp add: h_null_sets null_sets_density_iff not_less[symmetric]
   924     by (auto simp add: h_null_sets null_sets_density_iff not_less[symmetric]
   925                           AE_iff_null_sets[symmetric])
   925                           AE_iff_null_sets[symmetric]) blast
   926        blast
       
   927 qed
   926 qed
   928 
   927 
   929 lemma (in sigma_finite_measure) density_unique_iff:
   928 lemma (in sigma_finite_measure) density_unique_iff:
   930   assumes f: "f \<in> borel_measurable M" and "AE x in M. 0 \<le> f x"
   929   assumes f: "f \<in> borel_measurable M" and "AE x in M. 0 \<le> f x"
   931   assumes f': "f' \<in> borel_measurable M" and "AE x in M. 0 \<le> f' x"
   930   assumes f': "f' \<in> borel_measurable M" and "AE x in M. 0 \<le> f' x"
  1124 
  1123 
  1125 lemma (in sigma_finite_measure) RN_deriv_distr:
  1124 lemma (in sigma_finite_measure) RN_deriv_distr:
  1126   fixes T :: "'a \<Rightarrow> 'b"
  1125   fixes T :: "'a \<Rightarrow> 'b"
  1127   assumes T: "T \<in> measurable M M'" and T': "T' \<in> measurable M' M"
  1126   assumes T: "T \<in> measurable M M'" and T': "T' \<in> measurable M' M"
  1128     and inv: "\<forall>x\<in>space M. T' (T x) = x"
  1127     and inv: "\<forall>x\<in>space M. T' (T x) = x"
  1129   and ac: "absolutely_continuous (distr M M' T) (distr N M' T)"
  1128   and ac[simp]: "absolutely_continuous (distr M M' T) (distr N M' T)"
  1130   and N: "sets N = sets M"
  1129   and N: "sets N = sets M"
  1131   shows "AE x in M. RN_deriv (distr M M' T) (distr N M' T) (T x) = RN_deriv M N x"
  1130   shows "AE x in M. RN_deriv (distr M M' T) (distr N M' T) (T x) = RN_deriv M N x"
  1132 proof (rule RN_deriv_unique)
  1131 proof (rule RN_deriv_unique)
  1133   have [simp]: "sets N = sets M" by fact
  1132   have [simp]: "sets N = sets M" by fact
  1134   note sets_eq_imp_space_eq[OF N, simp]
  1133   note sets_eq_imp_space_eq[OF N, simp]
  1160       ultimately show "emeasure ?M' (T' -` F i \<inter> space ?M') \<noteq> \<infinity>"
  1159       ultimately show "emeasure ?M' (T' -` F i \<inter> space ?M') \<noteq> \<infinity>"
  1161         using F T T' by (simp add: emeasure_distr)
  1160         using F T T' by (simp add: emeasure_distr)
  1162     qed
  1161     qed
  1163   qed
  1162   qed
  1164   have "(RN_deriv ?M' ?N') \<circ> T \<in> borel_measurable M"
  1163   have "(RN_deriv ?M' ?N') \<circ> T \<in> borel_measurable M"
  1165     using T ac by measurable simp
  1164     using T ac by measurable
  1166   then show "(\<lambda>x. RN_deriv ?M' ?N' (T x)) \<in> borel_measurable M"
  1165   then show "(\<lambda>x. RN_deriv ?M' ?N' (T x)) \<in> borel_measurable M"
  1167     by (simp add: comp_def)
  1166     by (simp add: comp_def)
  1168   show "AE x in M. 0 \<le> RN_deriv ?M' ?N' (T x)" using M'.RN_deriv_nonneg[OF ac] by auto
  1167   show "AE x in M. 0 \<le> RN_deriv ?M' ?N' (T x)" using M'.RN_deriv_nonneg[OF ac] by auto
  1169 
  1168 
  1170   have "N = distr N M (T' \<circ> T)"
  1169   have "N = distr N M (T' \<circ> T)"