Returns a topology for a given set.
import Topology
Topology.topology(MapSet.new([:a, :b]))
# => MapSet.new([
# MapSet.new([MapSet.new([]), MapSet.new([:a, :b, :c])]),
# MapSet.new([MapSet.new([]), MapSet.new([:a]), MapSet.new([:a, :b, :c])]),
# MapSet.new([MapSet.new([]), MapSet.new([:b]), MapSet.new([:a, :b, :c])]),
# ...
# ...
# ...
# MapSet.new([
# MapSet.new([]),
# MapSet.new([:a]),
# MapSet.new([:b]),
# MapSet.new([:c]),
# MapSet.new([:a, :b]),
# MapSet.new([:a, :c]),
# MapSet.new([:b, :c]),
# MapSet.new([:a, :b, :c])
# ])
# ])
Sets must be given as a MapSet.
If available in Hex, the package can be installed
by adding topology
to your list of dependencies in mix.exs
:
def deps do
[
{:topology, "~> 0.1.0"}
]
end
Documentation can be generated with ExDoc and published on HexDocs. Once published, the docs can be found at https://hexdocs.pm/topology.