equal
deleted
inserted
replaced
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 |