Module docstring
{"# Subsemigroups: membership criteria
In this file we prove various facts about membership in a subsemigroup.
The intent is to mimic GroupTheory/Submonoid/Membership, but currently this file is mostly a
stub and only provides rudimentary support.
mem_iSup_of_directed,coe_iSup_of_directed,mem_sSup_of_directed_on,coe_sSup_of_directed_on: the supremum of a directed collection of subsemigroup is their union.
TODO
- Define the 
FreeSemigroupgenerated by a set. This might require some rather substantial additions to low-level API. For example, developing the subtype of nonempty lists, then defining a product on nonempty lists, powers where the exponent is a positive natural, et cetera. Another option would be to define theFreeSemigroupas the subsemigroup (pushed to be a semigroup) of theFreeMonoidconsisting of non-identity elements. 
Tags
subsemigroup "}