853 |
853 |
854 lemma real_cond_exp_cdiv [intro, simp]: |
854 lemma real_cond_exp_cdiv [intro, simp]: |
855 fixes c::real |
855 fixes c::real |
856 assumes "integrable M f" |
856 assumes "integrable M f" |
857 shows "AE x in M. real_cond_exp M F (\<lambda>x. f x / c) x = real_cond_exp M F f x / c" |
857 shows "AE x in M. real_cond_exp M F (\<lambda>x. f x / c) x = real_cond_exp M F f x / c" |
858 using real_cond_exp_cmult[of _ "1/c", OF assms] by (auto simp add: divide_simps) |
858 using real_cond_exp_cmult[of _ "1/c", OF assms] by (auto simp add: field_split_simps) |
859 |
859 |
860 lemma real_cond_exp_diff [intro, simp]: |
860 lemma real_cond_exp_diff [intro, simp]: |
861 assumes [measurable]: "integrable M f" "integrable M g" |
861 assumes [measurable]: "integrable M f" "integrable M g" |
862 shows "AE x in M. real_cond_exp M F (\<lambda>x. f x - g x) x = real_cond_exp M F f x - real_cond_exp M F g x" |
862 shows "AE x in M. real_cond_exp M F (\<lambda>x. f x - g x) x = real_cond_exp M F f x - real_cond_exp M F g x" |
863 proof - |
863 proof - |
1138 proof (cases "x < y") |
1138 proof (cases "x < y") |
1139 case True |
1139 case True |
1140 have "q x + phi x * (y-x) \<le> q y" |
1140 have "q x + phi x * (y-x) \<le> q y" |
1141 unfolding phi_def apply (rule convex_le_Inf_differential) using \<open>convex_on I q\<close> that \<open>interior I = I\<close> by auto |
1141 unfolding phi_def apply (rule convex_le_Inf_differential) using \<open>convex_on I q\<close> that \<open>interior I = I\<close> by auto |
1142 then have "phi x \<le> (q x - q y) / (x - y)" |
1142 then have "phi x \<le> (q x - q y) / (x - y)" |
1143 using that \<open>x < y\<close> by (auto simp add: divide_simps algebra_simps) |
1143 using that \<open>x < y\<close> by (auto simp add: field_split_simps algebra_simps) |
1144 moreover have "(q x - q y)/(x - y) \<le> phi y" |
1144 moreover have "(q x - q y)/(x - y) \<le> phi y" |
1145 unfolding phi_def proof (rule cInf_greatest, auto) |
1145 unfolding phi_def proof (rule cInf_greatest, auto) |
1146 fix t assume "t \<in> I" "y < t" |
1146 fix t assume "t \<in> I" "y < t" |
1147 have "(q x - q y) / (x - y) \<le> (q x - q t) / (x - t)" |
1147 have "(q x - q y) / (x - y) \<le> (q x - q t) / (x - t)" |
1148 apply (rule convex_on_diff[OF q(2)]) using \<open>y < t\<close> \<open>x < y\<close> \<open>t \<in> I\<close> \<open>x \<in> I\<close> by auto |
1148 apply (rule convex_on_diff[OF q(2)]) using \<open>y < t\<close> \<open>x < y\<close> \<open>t \<in> I\<close> \<open>x \<in> I\<close> by auto |
1170 "g \<in> borel_measurable F" "g \<in> borel_measurable M" |
1170 "g \<in> borel_measurable F" "g \<in> borel_measurable M" |
1171 "G \<in> borel_measurable F" "G \<in> borel_measurable M" |
1171 "G \<in> borel_measurable F" "G \<in> borel_measurable M" |
1172 using X measurable_from_subalg[OF subalg] unfolding G_def g_def by auto |
1172 using X measurable_from_subalg[OF subalg] unfolding G_def g_def by auto |
1173 have int1: "integrable (restr_to_subalg M F) (\<lambda>x. g x * q (real_cond_exp M F X x))" |
1173 have int1: "integrable (restr_to_subalg M F) (\<lambda>x. g x * q (real_cond_exp M F X x))" |
1174 apply (rule Bochner_Integration.integrable_bound[of _ f], auto simp add: subalg \<open>integrable (restr_to_subalg M F) f\<close>) |
1174 apply (rule Bochner_Integration.integrable_bound[of _ f], auto simp add: subalg \<open>integrable (restr_to_subalg M F) f\<close>) |
1175 unfolding g_def by (auto simp add: divide_simps abs_mult algebra_simps) |
1175 unfolding g_def by (auto simp add: field_split_simps abs_mult algebra_simps) |
1176 have int2: "integrable M (\<lambda>x. G x * (X x - real_cond_exp M F X x))" |
1176 have int2: "integrable M (\<lambda>x. G x * (X x - real_cond_exp M F X x))" |
1177 apply (rule Bochner_Integration.integrable_bound[of _ "\<lambda>x. \<bar>X x\<bar> + \<bar>real_cond_exp M F X x\<bar>"]) |
1177 apply (rule Bochner_Integration.integrable_bound[of _ "\<lambda>x. \<bar>X x\<bar> + \<bar>real_cond_exp M F X x\<bar>"]) |
1178 apply (auto intro!: Bochner_Integration.integrable_add integrable_abs real_cond_exp_int \<open>integrable M X\<close> AE_I2) |
1178 apply (auto intro!: Bochner_Integration.integrable_add integrable_abs real_cond_exp_int \<open>integrable M X\<close> AE_I2) |
1179 using G unfolding abs_mult by (meson abs_ge_zero abs_triangle_ineq4 dual_order.trans mult_left_le_one_le) |
1179 using G unfolding abs_mult by (meson abs_ge_zero abs_triangle_ineq4 dual_order.trans mult_left_le_one_le) |
1180 have int3: "integrable M (\<lambda>x. g x * q (X x))" |
1180 have int3: "integrable M (\<lambda>x. g x * q (X x))" |
1206 moreover have "AE x in M. real_cond_exp M F (\<lambda>x. real_cond_exp M F X x) x = real_cond_exp M F X x " |
1206 moreover have "AE x in M. real_cond_exp M F (\<lambda>x. real_cond_exp M F X x) x = real_cond_exp M F X x " |
1207 by (rule real_cond_exp_F_meas, auto intro!: real_cond_exp_int \<open>integrable M X\<close>) |
1207 by (rule real_cond_exp_F_meas, auto intro!: real_cond_exp_int \<open>integrable M X\<close>) |
1208 ultimately have "AE x in M. g x * real_cond_exp M F (\<lambda>x. q (X x)) x \<ge> g x * q (real_cond_exp M F X x)" |
1208 ultimately have "AE x in M. g x * real_cond_exp M F (\<lambda>x. q (X x)) x \<ge> g x * q (real_cond_exp M F X x)" |
1209 by auto |
1209 by auto |
1210 then show "AE x in M. real_cond_exp M F (\<lambda>x. q (X x)) x \<ge> q (real_cond_exp M F X x)" |
1210 then show "AE x in M. real_cond_exp M F (\<lambda>x. q (X x)) x \<ge> q (real_cond_exp M F X x)" |
1211 using g(1) by (auto simp add: divide_simps) |
1211 using g(1) by (auto simp add: field_split_simps) |
1212 qed |
1212 qed |
1213 |
1213 |
1214 text \<open>Jensen's inequality does not imply that $q(E(X|F))$ is integrable, as it only proves an upper |
1214 text \<open>Jensen's inequality does not imply that $q(E(X|F))$ is integrable, as it only proves an upper |
1215 bound for it. Indeed, this is not true in general, as the following counterexample shows: |
1215 bound for it. Indeed, this is not true in general, as the following counterexample shows: |
1216 |
1216 |