src/HOL/Probability/Infinite_Product_Measure.thy
changeset 62975 1d066f6ab25d
parent 62390 842917225d56
child 63540 f8652d0534fa
equal deleted inserted replaced
62974:f17602cbf76a 62975:1d066f6ab25d
    45   "J \<subseteq> I \<Longrightarrow> finite J \<Longrightarrow> X \<in> sets (PiM J M) \<Longrightarrow> emeasure (Pi\<^sub>M I M) (emb I J X) = PiM J M X"
    45   "J \<subseteq> I \<Longrightarrow> finite J \<Longrightarrow> X \<in> sets (PiM J M) \<Longrightarrow> emeasure (Pi\<^sub>M I M) (emb I J X) = PiM J M X"
    46   by (subst distr_PiM_restrict_finite[symmetric, of J])
    46   by (subst distr_PiM_restrict_finite[symmetric, of J])
    47      (auto intro!: emeasure_distr_restrict[symmetric])
    47      (auto intro!: emeasure_distr_restrict[symmetric])
    48 
    48 
    49 lemma (in product_prob_space) emeasure_PiM_emb:
    49 lemma (in product_prob_space) emeasure_PiM_emb:
    50   "J \<subseteq> I \<Longrightarrow> finite J \<Longrightarrow> (\<And>i. i \<in> J \<Longrightarrow> X i \<in> sets (M i)) \<Longrightarrow> 
    50   "J \<subseteq> I \<Longrightarrow> finite J \<Longrightarrow> (\<And>i. i \<in> J \<Longrightarrow> X i \<in> sets (M i)) \<Longrightarrow>
    51     emeasure (Pi\<^sub>M I M) (emb I J (Pi\<^sub>E J X)) = (\<Prod> i\<in>J. emeasure (M i) (X i))"
    51     emeasure (Pi\<^sub>M I M) (emb I J (Pi\<^sub>E J X)) = (\<Prod> i\<in>J. emeasure (M i) (X i))"
    52   by (subst emeasure_PiM_emb') (auto intro!: emeasure_PiM)
    52   by (subst emeasure_PiM_emb') (auto intro!: emeasure_PiM)
    53 
    53 
    54 sublocale product_prob_space \<subseteq> P?: prob_space "Pi\<^sub>M I M"
    54 sublocale product_prob_space \<subseteq> P?: prob_space "Pi\<^sub>M I M"
    55 proof
    55 proof
    76 
    76 
    77 lemma (in product_prob_space) measure_PiM_emb:
    77 lemma (in product_prob_space) measure_PiM_emb:
    78   assumes "J \<subseteq> I" "finite J" "\<And>i. i \<in> J \<Longrightarrow> X i \<in> sets (M i)"
    78   assumes "J \<subseteq> I" "finite J" "\<And>i. i \<in> J \<Longrightarrow> X i \<in> sets (M i)"
    79   shows "measure (PiM I M) (emb I J (Pi\<^sub>E J X)) = (\<Prod> i\<in>J. measure (M i) (X i))"
    79   shows "measure (PiM I M) (emb I J (Pi\<^sub>E J X)) = (\<Prod> i\<in>J. measure (M i) (X i))"
    80   using emeasure_PiM_emb[OF assms]
    80   using emeasure_PiM_emb[OF assms]
    81   unfolding emeasure_eq_measure M.emeasure_eq_measure by (simp add: setprod_ereal)
    81   unfolding emeasure_eq_measure M.emeasure_eq_measure
       
    82   by (simp add: setprod_ennreal measure_nonneg setprod_nonneg)
    82 
    83 
    83 lemma sets_Collect_single':
    84 lemma sets_Collect_single':
    84   "i \<in> I \<Longrightarrow> {x\<in>space (M i). P x} \<in> sets (M i) \<Longrightarrow> {x\<in>space (PiM I M). P (x i)} \<in> sets (PiM I M)"
    85   "i \<in> I \<Longrightarrow> {x\<in>space (M i). P x} \<in> sets (M i) \<Longrightarrow> {x\<in>space (PiM I M). P (x i)} \<in> sets (PiM I M)"
    85   using sets_Collect_single[of i I "{x\<in>space (M i). P x}" M]
    86   using sets_Collect_single[of i I "{x\<in>space (M i). P x}" M]
    86   by (simp add: space_PiM PiE_iff cong: conj_cong)
    87   by (simp add: space_PiM PiE_iff cong: conj_cong)
   201     by (auto simp: prod_emb_def Pi_iff decseq_def)
   202     by (auto simp: prod_emb_def Pi_iff decseq_def)
   202   ultimately show ?thesis
   203   ultimately show ?thesis
   203     by (simp add: finite_Lim_measure_decseq)
   204     by (simp add: finite_Lim_measure_decseq)
   204 qed
   205 qed
   205 
   206 
   206 lemma nat_eq_diff_eq: 
   207 lemma nat_eq_diff_eq:
   207   fixes a b c :: nat
   208   fixes a b c :: nat
   208   shows "c \<le> b \<Longrightarrow> a = b - c \<longleftrightarrow> a + c = b"
   209   shows "c \<le> b \<Longrightarrow> a = b - c \<longleftrightarrow> a + c = b"
   209   by auto
   210   by auto
   210 
   211 
   211 lemma PiM_comb_seq:
   212 lemma PiM_comb_seq: