graphite-0.9.6.0: Graphs and networks library

Safe Haskell Safe Haskell2010

Data.Graph.UGraph.DegreeSequence

Synopsis

# Documentation

The Degree Sequence of a simple UGraph is a list of degrees of the vertices in the graph

Use degreeSequence to construct a valid Degree Sequence

Instances

 Source # Methods Source # Methods Source # MethodsshowList :: [DegreeSequence] -> ShowS #

# Construction

Construct a DegreeSequence from a list of degrees. Negative degree values get discarded

getDegreeSequence :: (Hashable v, Eq v) => UGraph v e -> Maybe DegreeSequence Source #

Get the DegreeSequence of a simple UGraph. If the graph is not simple (see isSimple) the result is Nothing

# Queries

Tell if a DegreeSequence is a Graphical Sequence

A Degree Sequence is a Graphical Sequence if a corresponding UGraph for it exists. Uses the Havel-Hakimi algorithm

Tell if a DegreeSequence is a Directed Graphic

A Directed Graphic is a Degree Sequence for which a DGraph exists TODO: Kleitman–Wang | Fulkerson–Chen–Anstee theorem algorithms

Tell if a DegreeSequence holds the Handshaking lemma, that is, if the number of vertices with odd degree is even

# Graph generation

Get the corresponding UGraph of a DegreeSequence. If the DegreeSequence is not graphical (see isGraphicalSequence) the result is Nothing