(.require
 [library
  [lux (.except)
   ["$" documentation]
   [data
    ["[0]" text (.only \n)
     ["%" \\format (.only format)]]]]]
 [\\library
  ["[0]" /]])

(def .public documentation
  (.List $.Documentation)
  (list ($.module /._
                  "")

        ($.definition /.empty)
        ($.definition /.size)
        ($.definition /.list)
        ($.definition /.equivalence)
        ($.definition /.hash)
        ($.definition /.empty?)
        ($.definition /.of_list)
        ($.definition /.of_set)
        ($.definition /.union)
        ($.definition /.sum)
        ($.definition /.intersection)
        ($.definition /.difference)

        ($.definition (/.Set it)
          "A set that keeps track of repetition in its entries.")

        ($.definition /.has
          ""
          [(has multiplicity elem set)])

        ($.definition /.lacks
          ""
          [(lacks multiplicity elem set)])

        ($.definition /.multiplicity
          ""
          [(multiplicity set elem)])

        ($.definition /.sub?
          "Is 'subject' a sub-set of 'reference'?"
          [(sub? reference subject)])

        ($.definition /.support
          "A set of the unique (non repeated) members."
          [(support set)])

        ($.definition /.member?
          ""
          [(member? set elem)])

        ($.definition /.super?
          "Is 'subject' a super-set of 'reference'?")
        ))
