src/HOL/Library/Countable_Set_Type.thy
changeset 69325 4b6ddc5989fc
parent 69324 39ba40eb2150
child 69593 3dda49e08b9d
equal deleted inserted replaced
69324:39ba40eb2150 69325:4b6ddc5989fc
   438    (\<forall>t. cin t b \<longrightarrow> (\<exists>u. cin u a \<and> R u t))"
   438    (\<forall>t. cin t b \<longrightarrow> (\<exists>u. cin u a \<and> R u t))"
   439 by transfer(auto simp add: rel_set_def)
   439 by transfer(auto simp add: rel_set_def)
   440 
   440 
   441 lemma rel_cset_cUNION:
   441 lemma rel_cset_cUNION:
   442   "\<lbrakk> rel_cset Q A B; rel_fun Q (rel_cset R) f g \<rbrakk>
   442   "\<lbrakk> rel_cset Q A B; rel_fun Q (rel_cset R) f g \<rbrakk>
   443   \<Longrightarrow> rel_cset R (cUNION A f) (cUNION B g)"
   443   \<Longrightarrow> rel_cset R (cUnion (cimage f A)) (cUnion (cimage g B))"
   444 unfolding rel_fun_def by transfer(erule rel_set_UNION, simp add: rel_fun_def)
   444 unfolding rel_fun_def by transfer(erule rel_set_UNION, simp add: rel_fun_def)
   445 
   445 
   446 lemma rel_cset_csingle_iff [simp]: "rel_cset R (csingle x) (csingle y) \<longleftrightarrow> R x y"
   446 lemma rel_cset_csingle_iff [simp]: "rel_cset R (csingle x) (csingle y) \<longleftrightarrow> R x y"
   447 by transfer(auto simp add: rel_set_def)
   447 by transfer(auto simp add: rel_set_def)
   448 
   448