proposition: Lemma eq_flat_maps : forall A B, forall f g : A -> list B, forall l : list A, (forall x, LIn x l -> f x = g x) -> flat_map f l = flat_map g l.
proof: Proof. induction l; simpl; sp. assert (f a = g a). apply H; left; auto. rewrite H0. assert (flat_map f l = flat_map g l). rewrite IHl; auto. rewrite H1; auto. Qed.
imports: UsefulTypes bin_rels Omega