Safe Haskell | None |
---|---|
Language | Haskell2010 |
Synopsis
- type Graph = Vector VertexSet
- type Vertex = Int
- type VertexSet = [Vertex]
- data Component = Component Graph VertexSet
- ltmis :: (Bool, Bool) -> Component -> [VertexSet]
- bkmis :: Graph -> [VertexSet]
- components :: Graph -> [Component]
- genGraphs :: Int -> [Graph]
- genComponents :: Int -> [Component]
- prop_ltmis_eq_bkmis :: Graph -> Bool
- prop_ltmis_maximal_independent_sets :: Component -> Bool
- prop_ltmis_all_maximal_independent_sets :: Component -> Bool
- prop_components :: Graph -> Bool
Documentation
type VertexSet = [Vertex] Source #
Set of vertices, represented as a list for efficiency (yes, indeed).
Algorithms
bkmis :: Graph -> [VertexSet] Source #
The classic Bron-Kerbosch algorithm for determining the maximal
independent sets in a Graph
.
components :: Graph -> [Component] Source #
Generating graphs
genGraphs :: Int -> [Graph] Source #
Enumerate all (simple) graphs of a given size (number of vertices).
genComponents :: Int -> [Component] Source #
Properties
prop_ltmis_maximal_independent_sets :: Component -> Bool Source #
Whether ltmis
generates only maximal independent sets.
prop_ltmis_all_maximal_independent_sets :: Component -> Bool Source #
Whether ltmis
generates all maximal independent sets.
prop_components :: Graph -> Bool Source #
Complete specification of the components
function.