proposition: Lemma image_Union: forall {A B: Type} (X Y: Ensemble A) (f: A -> B), Same_set (image_set (Union _ X Y) f) (Union _ (image_set X f) (image_set Y f)).
proof: Proof. intros. rewrite Same_set_spec; intros y. rewrite !Union_spec, !image_set_spec. pose proof (fun x => Union_spec A x X Y). firstorder. Qed.
imports: Coq.Classes.Morphisms Coq.Classes.Equivalence Coq.Sets.Ensembles Coq.Sets.Constructive_sets CertiGraph.lib.Coqlib CertiGraph.lib.EquivDec_ext