src/HOL/BNF_Comp.thy
changeset 55066 4e5ddf3162ac
parent 55062 6d3fad6f01c9
child 55705 a98a045a6169
equal deleted inserted replaced
55065:6d0af3c10864 55066:4e5ddf3162ac
    13 
    13 
    14 lemma empty_natural: "(\<lambda>_. {}) o f = image g o (\<lambda>_. {})"
    14 lemma empty_natural: "(\<lambda>_. {}) o f = image g o (\<lambda>_. {})"
    15 by (rule ext) simp
    15 by (rule ext) simp
    16 
    16 
    17 lemma Union_natural: "Union o image (image f) = image f o Union"
    17 lemma Union_natural: "Union o image (image f) = image f o Union"
    18 by (rule ext) (auto simp only: o_apply)
    18 by (rule ext) (auto simp only: comp_apply)
    19 
    19 
    20 lemma in_Union_o_assoc: "x \<in> (Union o gset o gmap) A \<Longrightarrow> x \<in> (Union o (gset o gmap)) A"
    20 lemma in_Union_o_assoc: "x \<in> (Union o gset o gmap) A \<Longrightarrow> x \<in> (Union o (gset o gmap)) A"
    21 by (unfold o_assoc)
    21 by (unfold comp_assoc)
    22 
    22 
    23 lemma comp_single_set_bd:
    23 lemma comp_single_set_bd:
    24   assumes fbd_Card_order: "Card_order fbd" and
    24   assumes fbd_Card_order: "Card_order fbd" and
    25     fset_bd: "\<And>x. |fset x| \<le>o fbd" and
    25     fset_bd: "\<And>x. |fset x| \<le>o fbd" and
    26     gset_bd: "\<And>x. |gset x| \<le>o gbd"
    26     gset_bd: "\<And>x. |gset x| \<le>o gbd"
    56 
    56 
    57 lemma UN_image_subset: "\<Union>(f ` g x) \<subseteq> X = (g x \<subseteq> {x. f x \<subseteq> X})"
    57 lemma UN_image_subset: "\<Union>(f ` g x) \<subseteq> X = (g x \<subseteq> {x. f x \<subseteq> X})"
    58 by blast
    58 by blast
    59 
    59 
    60 lemma comp_set_bd_Union_o_collect: "|\<Union>\<Union>((\<lambda>f. f x) ` X)| \<le>o hbd \<Longrightarrow> |(Union \<circ> collect X) x| \<le>o hbd"
    60 lemma comp_set_bd_Union_o_collect: "|\<Union>\<Union>((\<lambda>f. f x) ` X)| \<le>o hbd \<Longrightarrow> |(Union \<circ> collect X) x| \<le>o hbd"
    61 by (unfold o_apply collect_def SUP_def)
    61 by (unfold comp_apply collect_def SUP_def)
    62 
    62 
    63 lemma wpull_cong:
    63 lemma wpull_cong:
    64 "\<lbrakk>A' = A; B1' = B1; B2' = B2; wpull A B1 B2 f1 f2 p1 p2\<rbrakk> \<Longrightarrow> wpull A' B1' B2' f1 f2 p1 p2"
    64 "\<lbrakk>A' = A; B1' = B1; B2' = B2; wpull A B1 B2 f1 f2 p1 p2\<rbrakk> \<Longrightarrow> wpull A' B1' B2' f1 f2 p1 p2"
    65 by simp
    65 by simp
    66 
    66