   [set]
   (Fuzzy-Set. (map-by-fn (constantly 1) set)))
 
+(defn fuzzy-set-as-hashmap
+  "Returns the hashmap corresponding to the given fuzzy set."
+  [fuzzy-set]
+  (.hashmap ^Fuzzy-Set fuzzy-set))
+
 (defmethod print-method Fuzzy-Set [set out]
   (.write ^java.io.Writer out
           ^String (str "#F" set)))

  [thing]
  (instance? Fuzzy-Set thing))

;;; TODO: set operations

;;;


  ;;
  clojure.lang.Associative
  (containsKey [this o]
    true)
  (entryAt [this o]
    (.entryAt hashmap o))
  (assoc [this k v]
    (.cons this [k v]))
  ;;
  clojure.lang.ILookup
  (valAt [this o]
    (get hashmap o 0))
  (valAt [this o not-found]
    (get hashmap o not-found)))

;;; Constructors

