proposition: Lemma finite_eq_in_iff_mem_to_list : forall E, finite E = (forall x, x \in E <-> mem x (to_list E)).
proof: Proof. intros. applys prop_ext. iff M. { forwards* (N1&N2): eq_to_list_inv E. intros x. specializes N2 x. autos*. } { exists (to_list E). intros x Ex. rewrite~ <- M. } Qed.
imports: Coq.Classes.Morphisms TLC(LibTactics LibLogic LibReflect LibList LibOperation LibMonoid LibInt LibNat LibEpsilon LibRelation LibMin)