Safe Haskell | Safe-Infered |
---|

- isVertexTransitive :: Ord t => Graph t -> Bool
- isEdgeTransitive :: Ord t => Graph t -> Bool
- (->^) :: Ord b => [b] -> Permutation b -> [b]
- isArcTransitive :: Ord t => Graph t -> Bool
- isArcTransitive' :: Ord a => Graph a -> Bool
- findArcs :: (Eq a1, Eq a, Num a) => Graph a1 -> a1 -> a -> [[a1]]
- isnArcTransitive :: Ord t => Int -> Graph t -> Bool
- is2ArcTransitive :: Ord t => Graph t -> Bool
- is3ArcTransitive :: Ord t => Graph t -> Bool
- isDistanceTransitive :: Ord t => Graph t -> Bool
- refine :: Ord a => [[a]] -> [[a]] -> [[a]]
- refine' :: Ord a => [[a]] -> [[a]] -> [[a]]
- isGraphAut :: Ord t => Graph t -> Permutation t -> Bool
- adjLists :: Ord a => Graph a -> Map a [a]
- graphAuts1 :: Ord a => Graph a -> [Permutation a]
- graphAuts2 :: Ord a => Graph a -> [Permutation a]
- graphAuts3 :: Ord t => Graph t -> [Permutation t]
- isSingleton :: [t] -> Bool
- graphAuts4 :: Ord a => Graph a -> [Permutation a]
- eqgraph :: Graph Integer
- toEquitable :: Ord t => Graph t -> [[t]] -> [[t]]
- toEquitable2 :: Ord a => Map a [a] -> [[a]] -> [[a]] -> ([[a]], [[a]])
- splitNumNbrs :: (Ord b, Ord a) => Map b [a] -> ([a], [a]) -> ([b], [b]) -> Maybe [([b], [b])]
- graphAuts :: Ord a => Graph a -> [Permutation a]
- graphAutsCon :: Ord t => Graph t -> [Permutation t]
- dfsEquitable :: Ord k => (Map k [[k]], Set [k], Map k [k]) -> [(k, k)] -> [[k]] -> [[k]] -> [Permutation k]
- incidenceAuts :: (Ord p, Ord b) => Graph (Either p b) -> [Permutation p]
- incidenceAutsCon :: (Ord a, Ord t) => Graph (Either a t) -> [Permutation a]
- graphIsos :: (Ord t, Ord t1) => Graph t -> Graph t1 -> [[(t, t1)]]
- graphIsosCon :: (Ord t, Ord t1) => Graph t -> Graph t1 -> [[(t, t1)]]
- isGraphIso :: (Ord a, Ord b) => Graph a -> Graph b -> Bool
- isIso :: (Ord t1, Ord t) => Graph t -> Graph t1 -> Bool
- incidenceIsos :: (Ord t2, Ord t, Ord t3, Ord t1) => Graph (Either t2 t) -> Graph (Either t3 t1) -> [[(t2, t3)]]
- incidenceIsosCon :: (Ord t2, Ord t, Ord t3, Ord t1) => Graph (Either t2 t) -> Graph (Either t3 t1) -> [[(t2, t3)]]
- isIncidenceIso :: (Ord p1, Ord b1, Ord p2, Ord b2) => Graph (Either p1 b1) -> Graph (Either p2 b2) -> Bool

# Documentation

isVertexTransitive :: Ord t => Graph t -> BoolSource

A graph is vertex-transitive if its automorphism group acts transitively on the vertices. Thus, given any two distinct vertices, there is an automorphism mapping one to the other.

isEdgeTransitive :: Ord t => Graph t -> BoolSource

A graph is edge-transitive if its automorphism group acts transitively on the edges. Thus, given any two distinct edges, there is an automorphism mapping one to the other.

(->^) :: Ord b => [b] -> Permutation b -> [b]Source

isArcTransitive :: Ord t => Graph t -> BoolSource

A graph is arc-transitive (or flag-transitive) if its automorphism group acts transitively on arcs. (An arc is an ordered pair of adjacent vertices.)

isArcTransitive' :: Ord a => Graph a -> BoolSource

isnArcTransitive :: Ord t => Int -> Graph t -> BoolSource

A graph is n-arc-transitive is its automorphism group is transitive on n-arcs. (An n-arc is an ordered sequence (v0,...,vn) of adjacent vertices, with crossings allowed but not doubling back.)

is2ArcTransitive :: Ord t => Graph t -> BoolSource

is3ArcTransitive :: Ord t => Graph t -> BoolSource

isDistanceTransitive :: Ord t => Graph t -> BoolSource

A graph is distance transitive if given any two ordered pairs of vertices (u,u') and (v,v') with d(u,u') == d(v,v'), there is an automorphism of the graph that takes (u,u') to (v,v')

isGraphAut :: Ord t => Graph t -> Permutation t -> BoolSource

graphAuts1 :: Ord a => Graph a -> [Permutation a]Source

graphAuts2 :: Ord a => Graph a -> [Permutation a]Source

graphAuts3 :: Ord t => Graph t -> [Permutation t]Source

isSingleton :: [t] -> BoolSource

graphAuts4 :: Ord a => Graph a -> [Permutation a]Source

toEquitable :: Ord t => Graph t -> [[t]] -> [[t]]Source

toEquitable2 :: Ord a => Map a [a] -> [[a]] -> [[a]] -> ([[a]], [[a]])Source

graphAuts :: Ord a => Graph a -> [Permutation a]Source

Given a graph g, `graphAuts g`

returns generators for the automorphism group of g.
If g is connected, then the generators will be a strong generating set.

graphAutsCon :: Ord t => Graph t -> [Permutation t]Source

dfsEquitable :: Ord k => (Map k [[k]], Set [k], Map k [k]) -> [(k, k)] -> [[k]] -> [[k]] -> [Permutation k]Source

incidenceAuts :: (Ord p, Ord b) => Graph (Either p b) -> [Permutation p]Source

Given the incidence graph of an incidence structure between points and blocks
(for example, a set system),
`incidenceAuts g`

returns generators for the automorphism group of the incidence structure.
The generators are represented as permutations of the points.
The incidence graph should be represented with the points on the left and the blocks on the right.
If the incidence graph is connected, then the generators will be a strong generating set.

incidenceAutsCon :: (Ord a, Ord t) => Graph (Either a t) -> [Permutation a]Source

incidenceIsos :: (Ord t2, Ord t, Ord t3, Ord t1) => Graph (Either t2 t) -> Graph (Either t3 t1) -> [[(t2, t3)]]Source