equal
deleted
inserted
replaced
816 "((=) ===> pcr_fmap (=) (=) ===> pcr_fmap (=) (=)) (\<lambda>f. (\<circ>) (map_option f)) fmmap" |
816 "((=) ===> pcr_fmap (=) (=) ===> pcr_fmap (=) (=)) (\<lambda>f. (\<circ>) (map_option f)) fmmap" |
817 unfolding fmmap_def |
817 unfolding fmmap_def |
818 by (rule rel_funI ext)+ (auto simp: fmap.Abs_fmap_inverse fmap.pcr_cr_eq cr_fmap_def) |
818 by (rule rel_funI ext)+ (auto simp: fmap.Abs_fmap_inverse fmap.pcr_cr_eq cr_fmap_def) |
819 |
819 |
820 lemma fmran'_transfer[transfer_rule]: |
820 lemma fmran'_transfer[transfer_rule]: |
821 "(pcr_fmap (=) (=) ===> (=)) (\<lambda>x. UNION (range x) set_option) fmran'" |
821 "(pcr_fmap (=) (=) ===> (=)) (\<lambda>x. \<Union>(set_option ` (range x))) fmran'" |
822 unfolding fmran'_def fmap.pcr_cr_eq cr_fmap_def by fastforce |
822 unfolding fmran'_def fmap.pcr_cr_eq cr_fmap_def by fastforce |
823 |
823 |
824 lemma fmrel_transfer[transfer_rule]: |
824 lemma fmrel_transfer[transfer_rule]: |
825 "((=) ===> pcr_fmap (=) (=) ===> pcr_fmap (=) (=) ===> (=)) rel_map fmrel" |
825 "((=) ===> pcr_fmap (=) (=) ===> pcr_fmap (=) (=) ===> (=)) rel_map fmrel" |
826 unfolding fmrel_def fmap.pcr_cr_eq cr_fmap_def vimage2p_def by fastforce |
826 unfolding fmrel_def fmap.pcr_cr_eq cr_fmap_def vimage2p_def by fastforce |