equal
deleted
inserted
replaced
2036 finally show "?g n = ?h n" by (simp only: mult_ac) |
2036 finally show "?g n = ?h n" by (simp only: mult_ac) |
2037 qed |
2037 qed |
2038 |
2038 |
2039 moreover from z double_in_nonpos_Ints_imp[of z] have "2 * z \<notin> \<int>\<^sub>\<le>\<^sub>0" by auto |
2039 moreover from z double_in_nonpos_Ints_imp[of z] have "2 * z \<notin> \<int>\<^sub>\<le>\<^sub>0" by auto |
2040 hence "?g \<longlonglongrightarrow> ?powr 2 (2*z) * Gamma z * Gamma (z+1/2) / Gamma (2*z)" |
2040 hence "?g \<longlonglongrightarrow> ?powr 2 (2*z) * Gamma z * Gamma (z+1/2) / Gamma (2*z)" |
2041 using LIMSEQ_subseq_LIMSEQ[OF Gamma_series'_LIMSEQ, of "op*2" "2*z"] |
2041 using LIMSEQ_subseq_LIMSEQ[OF Gamma_series'_LIMSEQ, of "( * )2" "2*z"] |
2042 by (intro tendsto_intros Gamma_series'_LIMSEQ) |
2042 by (intro tendsto_intros Gamma_series'_LIMSEQ) |
2043 (simp_all add: o_def strict_mono_def Gamma_eq_zero_iff) |
2043 (simp_all add: o_def strict_mono_def Gamma_eq_zero_iff) |
2044 ultimately have "?h \<longlonglongrightarrow> ?powr 2 (2*z) * Gamma z * Gamma (z+1/2) / Gamma (2*z)" |
2044 ultimately have "?h \<longlonglongrightarrow> ?powr 2 (2*z) * Gamma z * Gamma (z+1/2) / Gamma (2*z)" |
2045 by (rule Lim_transform_eventually) |
2045 by (rule Lim_transform_eventually) |
2046 } note lim = this |
2046 } note lim = this |
3086 also have "\<dots> = (\<integral>\<^sup>+t. \<integral>\<^sup>+u. ennreal (indicator ({0..}\<times>{t..}) (t,u) * t powr (a - 1) * |
3086 also have "\<dots> = (\<integral>\<^sup>+t. \<integral>\<^sup>+u. ennreal (indicator ({0..}\<times>{t..}) (t,u) * t powr (a - 1) * |
3087 (u - t) powr (b - 1) / exp u) \<partial>lborel \<partial>lborel)" |
3087 (u - t) powr (b - 1) / exp u) \<partial>lborel \<partial>lborel)" |
3088 proof (rule nn_integral_cong, goal_cases) |
3088 proof (rule nn_integral_cong, goal_cases) |
3089 case (1 t) |
3089 case (1 t) |
3090 have "(\<integral>\<^sup>+u. ennreal (indicator ({0..}\<times>{0..}) (t,u) * t powr (a - 1) * |
3090 have "(\<integral>\<^sup>+u. ennreal (indicator ({0..}\<times>{0..}) (t,u) * t powr (a - 1) * |
3091 u powr (b - 1) / exp (t + u)) \<partial>distr lborel borel (op + (-t))) = |
3091 u powr (b - 1) / exp (t + u)) \<partial>distr lborel borel ((+) (-t))) = |
3092 (\<integral>\<^sup>+u. ennreal (indicator ({0..}\<times>{t..}) (t,u) * t powr (a - 1) * |
3092 (\<integral>\<^sup>+u. ennreal (indicator ({0..}\<times>{t..}) (t,u) * t powr (a - 1) * |
3093 (u - t) powr (b - 1) / exp u) \<partial>lborel)" |
3093 (u - t) powr (b - 1) / exp u) \<partial>lborel)" |
3094 by (subst nn_integral_distr) (auto intro!: nn_integral_cong simp: indicator_def) |
3094 by (subst nn_integral_distr) (auto intro!: nn_integral_cong simp: indicator_def) |
3095 thus ?case by (subst (asm) lborel_distr_plus) |
3095 thus ?case by (subst (asm) lborel_distr_plus) |
3096 qed |
3096 qed |
3114 show ?case |
3114 show ?case |
3115 proof (cases "u > 0") |
3115 proof (cases "u > 0") |
3116 case True |
3116 case True |
3117 have "(\<integral>\<^sup>+t. ennreal (indicator {0..u} t * t powr (a - 1) * (u - t) powr (b - 1)) \<partial>lborel) = |
3117 have "(\<integral>\<^sup>+t. ennreal (indicator {0..u} t * t powr (a - 1) * (u - t) powr (b - 1)) \<partial>lborel) = |
3118 (\<integral>\<^sup>+t. ennreal (indicator {0..1} t * (u * t) powr (a - 1) * (u - u * t) powr (b - 1)) |
3118 (\<integral>\<^sup>+t. ennreal (indicator {0..1} t * (u * t) powr (a - 1) * (u - u * t) powr (b - 1)) |
3119 \<partial>distr lborel borel (op * (1 / u)))" (is "_ = nn_integral _ ?f") |
3119 \<partial>distr lborel borel (( * ) (1 / u)))" (is "_ = nn_integral _ ?f") |
3120 using True |
3120 using True |
3121 by (subst nn_integral_distr) (auto simp: indicator_def field_simps intro!: nn_integral_cong) |
3121 by (subst nn_integral_distr) (auto simp: indicator_def field_simps intro!: nn_integral_cong) |
3122 also have "distr lborel borel (op * (1 / u)) = density lborel (\<lambda>_. u)" |
3122 also have "distr lborel borel (( * ) (1 / u)) = density lborel (\<lambda>_. u)" |
3123 using \<open>u > 0\<close> by (subst lborel_distr_mult) auto |
3123 using \<open>u > 0\<close> by (subst lborel_distr_mult) auto |
3124 also have "nn_integral \<dots> ?f = (\<integral>\<^sup>+x. ennreal (indicator {0..1} x * (u * (u * x) powr (a - 1) * |
3124 also have "nn_integral \<dots> ?f = (\<integral>\<^sup>+x. ennreal (indicator {0..1} x * (u * (u * x) powr (a - 1) * |
3125 (u * (1 - x)) powr (b - 1))) \<partial>lborel)" using \<open>u > 0\<close> |
3125 (u * (1 - x)) powr (b - 1))) \<partial>lborel)" using \<open>u > 0\<close> |
3126 by (subst nn_integral_density) (auto simp: ennreal_mult' [symmetric] algebra_simps) |
3126 by (subst nn_integral_density) (auto simp: ennreal_mult' [symmetric] algebra_simps) |
3127 also have "\<dots> = (\<integral>\<^sup>+x. ennreal (u powr (a + b - 1)) * |
3127 also have "\<dots> = (\<integral>\<^sup>+x. ennreal (u powr (a + b - 1)) * |