proposition: Lemma find_None : forall k m, find k m = None <-> (forall x:A, ~MapsTo k x m).
proof: Proof. intros k m. split. intros h x. rewrite find_mapsto_iff. rewrite h. intro. discr. intro h. case_eq (find k m); intros. rewrite <- find_mapsto_iff in H. ded (h a). contr. refl. Qed.
imports: Coq(FMaps FSetInterface) CoLoR(LogicUtil RelUtil BoolUtil ListUtil FSetUtil)