cifl-math-library-1.1.1.0: Math libraries
Safe HaskellSafe
LanguageHaskell2010

Math.Graph.Algorithms

Synopsis

Documentation

dfsM :: (Monad m, Ord a, GraphMonoid mon Bool) => a -> InGraphM mon a m [a] Source #

Compute depth first search on a graph, starting from a given root vertex.

dfsIntM :: (Monad m, Ord a, GraphMonoid mon Bool) => a -> StateT (Set a) (InGraphM mon a m) [a] Source #

bfsM :: (Monad m, Ord n, GraphMonoid mon Bool) => n -> InGraphM mon n m (Map n n) Source #

Breadth first search: bfsM produces a map from child to parent nodes in a bfs tree.

bfsIntM :: (Monad m, GraphMonoid mon Bool, Ord n) => StateT (Queue n, Map n Integer) (InGraphM mon n m) (Map n n) Source #

spanningTreeM :: (Monad m, GraphMonoid mon Bool, Ord n) => n -> InGraphM mon n m (Tree n) Source #

Spanning tree rooted at a given graph vertex.

spanningForestM :: (Monad m, GraphMonoid mon Bool, Ord n) => [n] -> InGraphM mon n m (Forest n) Source #

Spanning forest rooted at the given list of vertices.

spanningTreeIntM :: (Monad m, GraphMonoid mon Bool, Ord n) => n -> StateT (Set n) (InGraphM mon n m) (Tree n) Source #

spanningForestIntM :: (Monad m, GraphMonoid mon Bool, Ord n) => [n] -> StateT (Set n) (InGraphM mon n m) (Forest n) Source #