[STATEMENT]
lemma Constrains_INT:
  assumes Co: "!!i. i \<in> I ==> F \<in> (A i) Co (A' i)"
  shows "F \<in> (\<Inter>i \<in> I. A i) Co (\<Inter>i \<in> I. A' i)"
[PROOF STATE]
proof (prove)
goal (1 subgoal):
 1. F \<in> \<Inter> (A ` I) Co \<Inter> (A' ` I)
[PROOF STEP]
apply (unfold Constrains_def)
[PROOF STATE]
proof (prove)
goal (1 subgoal):
 1. F \<in> {F. F \<in> reachable F \<inter> \<Inter> (A ` I) co \<Inter> (A' ` I)}
[PROOF STEP]
apply (rule CollectI)
[PROOF STATE]
proof (prove)
goal (1 subgoal):
 1. F \<in> reachable F \<inter> \<Inter> (A ` I) co \<Inter> (A' ` I)
[PROOF STEP]
apply (rule Co [unfolded Constrains_def, THEN CollectD, THEN constrains_INT,
                THEN constrains_weaken],   auto)
[PROOF STATE]
proof (prove)
goal:
No subgoals!
[PROOF STEP]
done


[STATEMENT]
lemma region_addresses_iff: "a' \<in> region_addresses a si \<longleftrightarrow> unat (a' - a) < si"
[PROOF STATE]
proof (prove)
goal (1 subgoal):
 1. (a' \<in> local.region_addresses a si) = (unat (a' - a) < si)
[PROOF STEP]
apply (auto simp add: region_addresses_def unsigned_of_nat)
[PROOF STATE]
proof (prove)
goal (2 subgoals):
 1. \<And>i. \<lbrakk>i < si; a' = a + word_of_nat (si - Suc i)\<rbrakk> \<Longrightarrow> take_bit LENGTH('a) (si - Suc i) < si
 2. unat (a' - a) < si \<Longrightarrow> \<exists>i<si. a' = a + word_of_nat (si - Suc i)
[PROOF STEP]
apply (metis diff_Suc_less le_less_trans less_imp_Suc_add take_bit_nat_less_eq_self zero_less_Suc)
[PROOF STATE]
proof (prove)
goal (1 subgoal):
 1. unat (a' - a) < si \<Longrightarrow> \<exists>i<si. a' = a + word_of_nat (si - Suc i)
[PROOF STEP]
by (smt (z3) add.commute add_Suc_right add_diff_cancel_left' diff_add_cancel less_add_Suc2 less_imp_Suc_add word_unat.Rep_inverse)


[STATEMENT]
lemma prime_one_plus_i_gauss_int: "prime (1 + \<i>\<^sub>\<int>)"
[PROOF STATE]
proof (prove)
goal (1 subgoal):
 1. prime (1 + \<i>\<^sub>\<int>)
[PROOF STEP]
by (simp add: prime_def prime_elem_one_plus_i_gauss_int
                gauss_int_eq_iff normalize_gauss_int_def)


[STATEMENT]
lemma emeasure_set_long: "emeasure lborel Buffon_set =
        4 * ennreal (l * (1 - sqrt (1 - (d / l)\<^sup>2)) + arccos (d / l) * d)"
[PROOF STATE]
proof (prove)
goal (1 subgoal):
 1. emeasure lborel Buffon_set = 4 * ennreal (l * (1 - sqrt (1 - (d / l)\<^sup>2)) + arccos (d / l) * d)
[PROOF STEP]
by (simp add: emeasure_buffon_set_conv_buffon_set' emeasure_buffon_set'_long l_ge_d)


[STATEMENT]
lemma ordinal_exp_eq_0 [simp]: "(x ** y = 0) = (x = 0 \<and> 0 < y)"
[PROOF STATE]
proof (prove)
goal (1 subgoal):
 1. (x ** y = 0) = (x = 0 \<and> 0 < y)
[PROOF STEP]
by (rule not_inject, simp)


[STATEMENT]
lemma cf_rcomp_Hom_ArrMap_vdomain[cat_cs_simps]:
  assumes "category \<alpha> \<CC>" and "\<GG> : \<BB> \<mapsto>\<mapsto>\<^sub>C\<^bsub>\<alpha>\<^esub> \<CC>"
  shows "\<D>\<^sub>\<circ> (Hom\<^sub>O\<^sub>.\<^sub>C\<^bsub>\<alpha>\<^esub>\<CC>(-,\<GG>-)\<lparr>ArrMap\<rparr>) = (op_cat \<CC> \<times>\<^sub>C \<BB>)\<lparr>Arr\<rparr>"
[PROOF STATE]
proof (prove)
goal (1 subgoal):
 1. \<D>\<^sub>\<circ> (Hom\<^sub>O\<^sub>.\<^sub>C\<^bsub>\<alpha>\<^esub>\<CC>(-,\<GG>-)\<lparr>ArrMap\<rparr>) = (op_cat \<CC> \<times>\<^sub>C \<BB>)\<lparr>Arr\<rparr>
[PROOF STEP]
using assms
[PROOF STATE]
proof (prove)
using this:
category \<alpha> \<CC>
\<GG> : \<BB> \<mapsto>\<mapsto>\<^sub>C\<^bsub>\<alpha>\<^esub> \<CC>

goal (1 subgoal):
 1. \<D>\<^sub>\<circ> (Hom\<^sub>O\<^sub>.\<^sub>C\<^bsub>\<alpha>\<^esub>\<CC>(-,\<GG>-)\<lparr>ArrMap\<rparr>) = (op_cat \<CC> \<times>\<^sub>C \<BB>)\<lparr>Arr\<rparr>
[PROOF STEP]
unfolding cf_rcomp_Hom_def
[PROOF STATE]
proof (prove)
using this:
category \<alpha> \<CC>
\<GG> : \<BB> \<mapsto>\<mapsto>\<^sub>C\<^bsub>\<alpha>\<^esub> \<CC>

goal (1 subgoal):
 1. \<D>\<^sub>\<circ> (cf_cn_cov_rcomp \<CC> Hom\<^sub>O\<^sub>.\<^sub>C\<^bsub>\<alpha>\<^esub>\<CC>(-,-) \<GG>\<lparr>ArrMap\<rparr>) = (op_cat \<CC> \<times>\<^sub>C \<BB>)\<lparr>Arr\<rparr>
[PROOF STEP]
by (cs_concl cs_shallow cs_simp: cat_cs_simps)


[STATEMENT]
lemma circ_simulate_2:
  "y * x\<^sup>\<circ> \<le> x\<^sup>\<circ> * y\<^sup>\<circ> \<longleftrightarrow> y\<^sup>\<circ> * x\<^sup>\<circ> \<le> x\<^sup>\<circ> * y\<^sup>\<circ>"
[PROOF STATE]
proof (prove)
goal (1 subgoal):
 1. (y * x\<^sup>\<circ> \<le> x\<^sup>\<circ> * y\<^sup>\<circ>) = (y\<^sup>\<circ> * x\<^sup>\<circ> \<le> x\<^sup>\<circ> * y\<^sup>\<circ>)
[PROOF STEP]
apply (rule iffI)
[PROOF STATE]
proof (prove)
goal (2 subgoals):
 1. y * x\<^sup>\<circ> \<le> x\<^sup>\<circ> * y\<^sup>\<circ> \<Longrightarrow> y\<^sup>\<circ> * x\<^sup>\<circ> \<le> x\<^sup>\<circ> * y\<^sup>\<circ>
 2. y\<^sup>\<circ> * x\<^sup>\<circ> \<le> x\<^sup>\<circ> * y\<^sup>\<circ> \<Longrightarrow> y * x\<^sup>\<circ> \<le> x\<^sup>\<circ> * y\<^sup>\<circ>
[PROOF STEP]
apply (metis sup_assoc sup_monoid.add_0_right circ_loop_fixpoint circ_simulate_left_plus_1 mult_assoc mult_left_zero mult_zero_sup_circ_2)
[PROOF STATE]
proof (prove)
goal (1 subgoal):
 1. y\<^sup>\<circ> * x\<^sup>\<circ> \<le> x\<^sup>\<circ> * y\<^sup>\<circ> \<Longrightarrow> y * x\<^sup>\<circ> \<le> x\<^sup>\<circ> * y\<^sup>\<circ>
[PROOF STEP]
by (metis circ_increasing mult_left_isotone order_trans)


[STATEMENT]
lemma (in CRR_market_viable) call_price:
  shows "fair_price Mkt
    (call_price u d init r matur K)
    (call_option matur K) matur"
[PROOF STATE]
proof (prove)
goal (1 subgoal):
 1. fair_price Mkt (call_price u d init r matur K) (call_option matur K) matur
[PROOF STEP]
proof -
[PROOF STATE]
proof (state)
goal (1 subgoal):
 1. fair_price Mkt (call_price u d init r matur K) (call_option matur K) matur
[PROOF STEP]
have "fair_price Mkt
    (\<Sum> w\<in> range (pseudo_proj_True matur). (prod (prob_component ((1 + r - d) / (u - d)) w) {0..<matur}) *
      (discounted_value r (\<lambda>m. (call_option matur K)) matur w))
    (call_option matur K) matur"
[PROOF STATE]
proof (prove)
goal (1 subgoal):
 1. fair_price Mkt (\<Sum>w\<in>range (pseudo_proj_True matur). prod (prob_component ((1 + r - d) / (u - d)) w) {0..<matur} * discounted_value r (\<lambda>m. call_option matur K) matur w) (call_option matur K) matur
[PROOF STEP]
by (rule CRR_market_fair_price, rule call_borel)
[PROOF STATE]
proof (state)
this:
fair_price Mkt (\<Sum>w\<in>range (pseudo_proj_True matur). prod (prob_component ((1 + r - d) / (u - d)) w) {0..<matur} * discounted_value r (\<lambda>m. call_option matur K) matur w) (call_option matur K) matur

goal (1 subgoal):
 1. fair_price Mkt (call_price u d init r matur K) (call_option matur K) matur
[PROOF STEP]
thus ?thesis
[PROOF STATE]
proof (prove)
using this:
fair_price Mkt (\<Sum>w\<in>range (pseudo_proj_True matur). prod (prob_component ((1 + r - d) / (u - d)) w) {0..<matur} * discounted_value r (\<lambda>m. call_option matur K) matur w) (call_option matur K) matur

goal (1 subgoal):
 1. fair_price Mkt (call_price u d init r matur K) (call_option matur K) matur
[PROOF STEP]
using call_effect_compute
[PROOF STATE]
proof (prove)
using this:
fair_price Mkt (\<Sum>w\<in>range (pseudo_proj_True matur). prod (prob_component ((1 + r - d) / (u - d)) w) {0..<matur} * discounted_value r (\<lambda>m. call_option matur K) matur w) (call_option matur K) matur
(\<Sum>w\<in>range (pseudo_proj_True ?matur). prod (prob_component ?pr w) {0..<?matur} * discounted_value r (\<lambda>m. call_option ?matur ?K) ?matur w) = (\<Sum>y\<in>gener_bool_list ?matur. lprob_comp ?pr y * det_discount r ?matur * max (lgeom_proc u d init (take ?matur y) - ?K) 0)

goal (1 subgoal):
 1. fair_price Mkt (call_price u d init r matur K) (call_option matur K) matur
[PROOF STEP]
by simp
[PROOF STATE]
proof (state)
this:
fair_price Mkt (call_price u d init r matur K) (call_option matur K) matur

goal:
No subgoals!
[PROOF STEP]
qed


[STATEMENT]
lemma qbs_morphismE[dest]:
  assumes "f \<in> X \<rightarrow>\<^sub>Q Y"
  shows "f \<in> qbs_space X \<rightarrow> qbs_space Y"
        "\<And>x. x \<in> qbs_space X \<Longrightarrow> f x \<in> qbs_space Y"
        "\<And>\<alpha>. \<alpha> \<in> qbs_Mx X \<Longrightarrow> f \<circ> \<alpha> \<in> qbs_Mx Y"
[PROOF STATE]
proof (prove)
goal (1 subgoal):
 1. f \<in> qbs_space X \<rightarrow> qbs_space Y &&& (\<And>x. x \<in> qbs_space X \<Longrightarrow> f x \<in> qbs_space Y) &&& (\<And>\<alpha>. \<alpha> \<in> qbs_Mx X \<Longrightarrow> f \<circ> \<alpha> \<in> qbs_Mx Y)
[PROOF STEP]
using assms
[PROOF STATE]
proof (prove)
using this:
f \<in> X \<rightarrow>\<^sub>Q Y

goal (1 subgoal):
 1. f \<in> qbs_space X \<rightarrow> qbs_space Y &&& (\<And>x. x \<in> qbs_space X \<Longrightarrow> f x \<in> qbs_space Y) &&& (\<And>\<alpha>. \<alpha> \<in> qbs_Mx X \<Longrightarrow> f \<circ> \<alpha> \<in> qbs_Mx Y)
[PROOF STEP]
by(auto simp add: qbs_morphism_def)


[STATEMENT]
lemma fls_divide_base_factor:
  fixes f g :: "'a :: division_ring fls"
  shows "fls_base_factor f / fls_base_factor g = fls_base_factor (f/g)"
[PROOF STATE]
proof (prove)
goal (1 subgoal):
 1. fls_base_factor f / fls_base_factor g = fls_base_factor (f / g)
[PROOF STEP]
using fls_divide_subdegree[of f g] fls_divide_base_factor'
[PROOF STATE]
proof (prove)
using this:
\<lbrakk>f \<noteq> 0; g \<noteq> 0\<rbrakk> \<Longrightarrow> fls_subdegree (f / g) = fls_subdegree f - fls_subdegree g
fls_base_factor ?f / fls_base_factor ?g = fls_shift (fls_subdegree ?f - fls_subdegree ?g) (?f / ?g)

goal (1 subgoal):
 1. fls_base_factor f / fls_base_factor g = fls_base_factor (f / g)
[PROOF STEP]
by    fastforce


[STATEMENT]
lemma "256 powr (7 / 4 :: real) = 16384"
[PROOF STATE]
proof (prove)
goal (1 subgoal):
 1. 256 powr (7 / 4) = 16384
[PROOF STEP]
by simp


[STATEMENT]
lemma (in SecurityInvariant_withOffendingFlows)  ENF_offending_members:
    "\<lbrakk> \<not> sinvar G nP; sinvar_all_edges_normal_form P; f \<in> set_offending_flows G nP\<rbrakk> \<Longrightarrow>
    f \<subseteq> (edges G) \<and> (\<forall> (e1, e2)\<in> f. \<not> P (nP e1) (nP e2))"
[PROOF STATE]
proof (prove)
goal (1 subgoal):
 1. \<lbrakk>\<not> sinvar G nP; sinvar_all_edges_normal_form P; f \<in> set_offending_flows G nP\<rbrakk> \<Longrightarrow> f \<subseteq> edges G \<and> (\<forall>(e1, e2)\<in>f. \<not> P (nP e1) (nP e2))
[PROOF STEP]
by(auto simp add: ENF_offending_set)


[STATEMENT]
theorem ikkbz_valid_tree: "valid_tree (create_ldeep ikkbz)"
[PROOF STATE]
proof (prove)
goal (1 subgoal):
 1. valid_tree (create_ldeep ikkbz)
[PROOF STEP]
unfolding valid_tree_def distinct_relations_def
[PROOF STATE]
proof (prove)
goal (1 subgoal):
 1. relations (create_ldeep ikkbz) = verts G \<and> distinct (inorder (create_ldeep ikkbz))
[PROOF STEP]
using inorder_ikkbz_distinct inorder_relations_eq_verts
[PROOF STATE]
proof (prove)
using this:
distinct (inorder (create_ldeep ikkbz))
relations (create_ldeep ikkbz) = verts G

goal (1 subgoal):
 1. relations (create_ldeep ikkbz) = verts G \<and> distinct (inorder (create_ldeep ikkbz))
[PROOF STEP]
by blast


[STATEMENT]
lemma fetch_jump_over1_b:
  "fetch (mopup_a n @ shift mopup_b (2 * n)) (Suc (2 * n)) Bk
 = (R, Suc (Suc (2 * n)))"
[PROOF STATE]
proof (prove)
goal (1 subgoal):
 1. fetch (mopup_a n @ shift mopup_b (2 * n)) (Suc (2 * n)) Bk = (R, Suc (Suc (2 * n)))
[PROOF STEP]
apply(subgoal_tac "length (mopup_a n) = 4 * n")
[PROOF STATE]
proof (prove)
goal (2 subgoals):
 1. length (mopup_a n) = 4 * n \<Longrightarrow> fetch (mopup_a n @ shift mopup_b (2 * n)) (Suc (2 * n)) Bk = (R, Suc (Suc (2 * n)))
 2. length (mopup_a n) = 4 * n
[PROOF STEP]
apply(auto simp: mopup_b_def nth_append shift.simps)
[PROOF STATE]
proof (prove)
goal:
No subgoals!
[PROOF STEP]
done


[STATEMENT]
lemma sound_valid2_lemma:
"\<lbrakk>\<forall>v n. Ball A (triple_valid2 G n) \<longrightarrow> P v n; Ball A (triple_valid2 G n)\<rbrakk>
 \<Longrightarrow>P v n"
[PROOF STATE]
proof (prove)
goal (1 subgoal):
 1. \<lbrakk>\<forall>v n. Ball A (triple_valid2 G n) \<longrightarrow> P v n; Ball A (triple_valid2 G n)\<rbrakk> \<Longrightarrow> P v n
[PROOF STEP]
by blast


[STATEMENT]
theorem (in FinGroupRepresentation) reducible :
  "\<exists>Us. (\<forall>U\<in>set Us. IrrFinGroupRepresentation G smult U) \<and> (0 \<notin> set Us)
        \<and> V = (\<Oplus>U\<leftarrow>Us. U)"
[PROOF STATE]
proof (prove)
goal (1 subgoal):
 1. \<exists>Us. (\<forall>U\<in>set Us. IrrFinGroupRepresentation G (\<cdot>) U) \<and> 0 \<notin> set Us \<and> V = (\<Oplus>U\<leftarrow>Us. U)
[PROOF STEP]
using FinGroupRepresentation_axioms FinGroupRepresentation_reducible'
[PROOF STATE]
proof (prove)
using this:
FinGroupRepresentation G (\<cdot>) V
FinGroupRepresentation ?G ?fgsmult ?V \<and> ?n = R_scalar_mult.dim_R UNIV (aezfun_scalar_mult.fsmult ?fgsmult) ?V \<Longrightarrow> \<exists>Us. Ball (set Us) (IrrFinGroupRepresentation ?G ?fgsmult) \<and> 0 \<notin> set Us \<and> ?V = (\<Oplus>U\<leftarrow>Us. U)

goal (1 subgoal):
 1. \<exists>Us. (\<forall>U\<in>set Us. IrrFinGroupRepresentation G (\<cdot>) U) \<and> 0 \<notin> set Us \<and> V = (\<Oplus>U\<leftarrow>Us. U)
[PROOF STEP]
by fast


[STATEMENT]
lemma GRP047_2:
  "(\<forall>X. product(identity::'a,X,X)) &
  (\<forall>X. product(INVERSE(X),X,identity)) &
  (\<forall>X Y. product(X::'a,Y,multiply(X::'a,Y))) &
  (\<forall>X Y Z W. product(X::'a,Y,Z) & product(X::'a,Y,W) --> equal(Z::'a,W)) &
  (\<forall>Y U Z X V W. product(X::'a,Y,U) & product(Y::'a,Z,V) & product(U::'a,Z,W) --> product(X::'a,V,W)) &
  (\<forall>Y X V U Z W. product(X::'a,Y,U) & product(Y::'a,Z,V) & product(X::'a,V,W) --> product(U::'a,Z,W)) &
  (\<forall>X W Z Y. equal(X::'a,Y) & product(W::'a,Z,X) --> product(W::'a,Z,Y)) &
  (equal(a::'a,b)) &
  (~equal(multiply(c::'a,a),multiply(c::'a,b))) --> False"
[PROOF STATE]
proof (prove)
goal (1 subgoal):
 1. (\<forall>X. product (identity, X, X)) \<and> (\<forall>X. product (INVERSE X, X, identity)) \<and> (\<forall>X Y. product (X, Y, multiply (X, Y))) \<and> (\<forall>X Y Z W. product (X, Y, Z) \<and> product (X, Y, W) \<longrightarrow> equal (Z, W)) \<and> (\<forall>Y U Z X V W. product (X, Y, U) \<and> product (Y, Z, V) \<and> product (U, Z, W) \<longrightarrow> product (X, V, W)) \<and> (\<forall>Y X V U Z W. product (X, Y, U) \<and> product (Y, Z, V) \<and> product (X, V, W) \<longrightarrow> product (U, Z, W)) \<and> (\<forall>X W Z Y. equal (X, Y) \<and> product (W, Z, X) \<longrightarrow> product (W, Z, Y)) \<and> equal (a, b) \<and> \<not> equal (multiply (c, a), multiply (c, b)) \<longrightarrow> False
[PROOF STEP]
by meson


[STATEMENT]
lemma set_integral_finite_UN_AE:
  fixes f :: "_ \<Rightarrow> _ :: {banach, second_countable_topology}"
  assumes "finite I"
    and ae: "\<And>i j. i \<in> I \<Longrightarrow> j \<in> I \<Longrightarrow> AE x in M. (x \<in> A i \<and> x \<in> A j) \<longrightarrow> i = j"
    and [measurable]: "\<And>i. i \<in> I \<Longrightarrow> A i \<in> sets M"
    and f: "\<And>i. i \<in> I \<Longrightarrow> set_integrable M (A i) f"
  shows "LINT x:(\<Union>i\<in>I. A i)|M. f x = (\<Sum>i\<in>I. LINT x:A i|M. f x)"
[PROOF STATE]
proof (prove)
goal (1 subgoal):
 1. set_lebesgue_integral M (\<Union> (A ` I)) f = (\<Sum>i\<in>I. set_lebesgue_integral M (A i) f)
[PROOF STEP]
using \<open>finite I\<close> order_refl[of I]
[PROOF STATE]
proof (prove)
using this:
finite I
I \<subseteq> I

goal (1 subgoal):
 1. set_lebesgue_integral M (\<Union> (A ` I)) f = (\<Sum>i\<in>I. set_lebesgue_integral M (A i) f)
[PROOF STEP]
proof (induction I rule: finite_subset_induct')
[PROOF STATE]
proof (state)
goal (2 subgoals):
 1. set_lebesgue_integral M (\<Union> (A ` {})) f = (\<Sum>i\<in>{}. set_lebesgue_integral M (A i) f)
 2. \<And>a F. \<lbrakk>finite F; a \<in> I; F \<subseteq> I; a \<notin> F; set_lebesgue_integral M (\<Union> (A ` F)) f = (\<Sum>i\<in>F. set_lebesgue_integral M (A i) f)\<rbrakk> \<Longrightarrow> set_lebesgue_integral M (\<Union> (A ` insert a F)) f = (\<Sum>i\<in>insert a F. set_lebesgue_integral M (A i) f)
[PROOF STEP]
case (insert i I')
[PROOF STATE]
proof (state)
this:
finite I'
i \<in> I
I' \<subseteq> I
i \<notin> I'
set_lebesgue_integral M (\<Union> (A ` I')) f = (\<Sum>i\<in>I'. set_lebesgue_integral M (A i) f)

goal (2 subgoals):
 1. set_lebesgue_integral M (\<Union> (A ` {})) f = (\<Sum>i\<in>{}. set_lebesgue_integral M (A i) f)
 2. \<And>a F. \<lbrakk>finite F; a \<in> I; F \<subseteq> I; a \<notin> F; set_lebesgue_integral M (\<Union> (A ` F)) f = (\<Sum>i\<in>F. set_lebesgue_integral M (A i) f)\<rbrakk> \<Longrightarrow> set_lebesgue_integral M (\<Union> (A ` insert a F)) f = (\<Sum>i\<in>insert a F. set_lebesgue_integral M (A i) f)
[PROOF STEP]
have "AE x in M. (\<forall>j\<in>I'. x \<in> A i \<longrightarrow> x \<notin> A j)"
[PROOF STATE]
proof (prove)
goal (1 subgoal):
 1. AE x in M. \<forall>j\<in>I'. x \<in> A i \<longrightarrow> x \<notin> A j
[PROOF STEP]
proof (intro AE_ball_countable[THEN iffD2] ballI)
[PROOF STATE]
proof (state)
goal (2 subgoals):
 1. countable I'
 2. \<And>j. j \<in> I' \<Longrightarrow> AE x\<in>A i in M. x \<notin> A j
[PROOF STEP]
fix j
[PROOF STATE]
proof (state)
goal (2 subgoals):
 1. countable I'
 2. \<And>j. j \<in> I' \<Longrightarrow> AE x\<in>A i in M. x \<notin> A j
[PROOF STEP]
assume "j \<in> I'"
[PROOF STATE]
proof (state)
this:
j \<in> I'

goal (2 subgoals):
 1. countable I'
 2. \<And>j. j \<in> I' \<Longrightarrow> AE x\<in>A i in M. x \<notin> A j
[PROOF STEP]
with \<open>I' \<subseteq> I\<close> \<open>i \<notin> I'\<close>
[PROOF STATE]
proof (chain)
picking this:
I' \<subseteq> I
i \<notin> I'
j \<in> I'
[PROOF STEP]
have "i \<noteq> j" "j \<in> I"
[PROOF STATE]
proof (prove)
using this:
I' \<subseteq> I
i \<notin> I'
j \<in> I'

goal (1 subgoal):
 1. i \<noteq> j &&& j \<in> I
[PROOF STEP]
by auto
[PROOF STATE]
proof (state)
this:
i \<noteq> j
j \<in> I

goal (2 subgoals):
 1. countable I'
 2. \<And>j. j \<in> I' \<Longrightarrow> AE x\<in>A i in M. x \<notin> A j
[PROOF STEP]
then
[PROOF STATE]
proof (chain)
picking this:
i \<noteq> j
j \<in> I
[PROOF STEP]
show "AE x in M. x \<in> A i \<longrightarrow> x \<notin> A j"
[PROOF STATE]
proof (prove)
using this:
i \<noteq> j
j \<in> I

goal (1 subgoal):
 1. AE x\<in>A i in M. x \<notin> A j
[PROOF STEP]
using ae[of i j] \<open>i \<in> I\<close>
[PROOF STATE]
proof (prove)
using this:
i \<noteq> j
j \<in> I
\<lbrakk>i \<in> I; j \<in> I\<rbrakk> \<Longrightarrow> AE x in M. x \<in> A i \<and> x \<in> A j \<longrightarrow> i = j
i \<in> I

goal (1 subgoal):
 1. AE x\<in>A i in M. x \<notin> A j
[PROOF STEP]
by auto
[PROOF STATE]
proof (state)
this:
AE x\<in>A i in M. x \<notin> A j

goal (1 subgoal):
 1. countable I'
[PROOF STEP]
qed (use \<open>finite I'\<close> in \<open>rule countable_finite\<close>)
[PROOF STATE]
proof (state)
this:
AE x in M. \<forall>j\<in>I'. x \<in> A i \<longrightarrow> x \<notin> A j

goal (2 subgoals):
 1. set_lebesgue_integral M (\<Union> (A ` {})) f = (\<Sum>i\<in>{}. set_lebesgue_integral M (A i) f)
 2. \<And>a F. \<lbrakk>finite F; a \<in> I; F \<subseteq> I; a \<notin> F; set_lebesgue_integral M (\<Union> (A ` F)) f = (\<Sum>i\<in>F. set_lebesgue_integral M (A i) f)\<rbrakk> \<Longrightarrow> set_lebesgue_integral M (\<Union> (A ` insert a F)) f = (\<Sum>i\<in>insert a F. set_lebesgue_integral M (A i) f)
[PROOF STEP]
then
[PROOF STATE]
proof (chain)
picking this:
AE x in M. \<forall>j\<in>I'. x \<in> A i \<longrightarrow> x \<notin> A j
[PROOF STEP]
have "AE x\<in>A i in M. \<forall>xa\<in>I'. x \<notin> A xa "
[PROOF STATE]
proof (prove)
using this:
AE x in M. \<forall>j\<in>I'. x \<in> A i \<longrightarrow> x \<notin> A j

goal (1 subgoal):
 1. AE x\<in>A i in M. \<forall>xa\<in>I'. x \<notin> A xa
[PROOF STEP]
by auto
[PROOF STATE]
proof (state)
this:
AE x\<in>A i in M. \<forall>xa\<in>I'. x \<notin> A xa

goal (2 subgoals):
 1. set_lebesgue_integral M (\<Union> (A ` {})) f = (\<Sum>i\<in>{}. set_lebesgue_integral M (A i) f)
 2. \<And>a F. \<lbrakk>finite F; a \<in> I; F \<subseteq> I; a \<notin> F; set_lebesgue_integral M (\<Union> (A ` F)) f = (\<Sum>i\<in>F. set_lebesgue_integral M (A i) f)\<rbrakk> \<Longrightarrow> set_lebesgue_integral M (\<Union> (A ` insert a F)) f = (\<Sum>i\<in>insert a F. set_lebesgue_integral M (A i) f)
[PROOF STEP]
with insert.hyps insert.IH[symmetric]
[PROOF STATE]
proof (chain)
picking this:
finite I'
i \<in> I
I' \<subseteq> I
i \<notin> I'
(\<Sum>i\<in>I'. set_lebesgue_integral M (A i) f) = set_lebesgue_integral M (\<Union> (A ` I')) f
AE x\<in>A i in M. \<forall>xa\<in>I'. x \<notin> A xa
[PROOF STEP]
show ?case
[PROOF STATE]
proof (prove)
using this:
finite I'
i \<in> I
I' \<subseteq> I
i \<notin> I'
(\<Sum>i\<in>I'. set_lebesgue_integral M (A i) f) = set_lebesgue_integral M (\<Union> (A ` I')) f
AE x\<in>A i in M. \<forall>xa\<in>I'. x \<notin> A xa

goal (1 subgoal):
 1. set_lebesgue_integral M (\<Union> (A ` insert i I')) f = (\<Sum>i\<in>insert i I'. set_lebesgue_integral M (A i) f)
[PROOF STEP]
by (auto intro!: set_integral_Un_AE sets.finite_UN f set_integrable_UN)
[PROOF STATE]
proof (state)
this:
set_lebesgue_integral M (\<Union> (A ` insert i I')) f = (\<Sum>i\<in>insert i I'. set_lebesgue_integral M (A i) f)

goal (1 subgoal):
 1. set_lebesgue_integral M (\<Union> (A ` {})) f = (\<Sum>i\<in>{}. set_lebesgue_integral M (A i) f)
[PROOF STEP]
qed (simp add: set_lebesgue_integral_def)


[STATEMENT]
lemma compact_on_with_subset_trans: "(\<forall>C\<subseteq>Pow A. (\<forall>c\<in>C. open' c) \<and> S \<subseteq> \<Union>C \<longrightarrow>
  (\<exists>D\<subseteq>C. finite D \<and> S \<subseteq> \<Union>D)) =
  ((\<forall>C\<subseteq>Pow A. (\<forall>c\<in>C. open' c) \<and> S \<subseteq> \<Union>C \<longrightarrow> (\<exists>D\<subseteq>Pow A. D\<subseteq>C \<and> finite D \<and> S \<subseteq> \<Union>D)))"
[PROOF STATE]
proof (prove)
goal (1 subgoal):
 1. (\<forall>C\<subseteq>Pow A. (\<forall>c\<in>C. open' c) \<and> S \<subseteq> \<Union> C \<longrightarrow> (\<exists>D\<subseteq>C. finite D \<and> S \<subseteq> \<Union> D)) = (\<forall>C\<subseteq>Pow A. (\<forall>c\<in>C. open' c) \<and> S \<subseteq> \<Union> C \<longrightarrow> (\<exists>D\<subseteq>Pow A. D \<subseteq> C \<and> finite D \<and> S \<subseteq> \<Union> D))
[PROOF STEP]
by (meson subset_trans)