A module defining a type for hypergraphs.

- data Hypergraph a = H [a] [[a]]
- isUniform :: Ord a => Hypergraph a -> Bool
- incidenceGraph :: Ord a => Hypergraph a -> Graph (Either a [a])
- isPartialLinearSpace :: Ord a => Hypergraph a -> Bool
- isProjectivePlane :: Ord a => Hypergraph a -> Bool
- isProjectivePlaneTri :: Ord a => Hypergraph a -> Bool
- isProjectivePlaneQuad :: Ord a => Hypergraph a -> Bool
- isGeneralizedQuadrangle :: Ord a => Hypergraph a -> Bool
- isConfiguration :: Ord a => Hypergraph a -> Bool
- fanoPlane :: Hypergraph Integer
- heawoodGraph :: Graph (Either Integer [Integer])
- desarguesConfiguration :: Hypergraph [Integer]
- desarguesGraph :: Graph (Either [Integer] [[Integer]])
- pappusConfiguration :: Hypergraph Integer
- pappusGraph :: Graph (Either Integer [Integer])
- coxeterGraph :: Graph [Integer]
- tutteCoxeterGraph :: Graph (Either [Integer] [[Integer]])

# Documentation

data Hypergraph a Source

H [a] [[a]] |

Eq a => Eq (Hypergraph a) | |

Ord a => Ord (Hypergraph a) | |

Show a => Show (Hypergraph a) |

isUniform :: Ord a => Hypergraph a -> BoolSource

Is this hypergraph uniform - meaning that all blocks are of the same size

incidenceGraph :: Ord a => Hypergraph a -> Graph (Either a [a])Source

isPartialLinearSpace :: Ord a => Hypergraph a -> BoolSource

isProjectivePlane :: Ord a => Hypergraph a -> BoolSource

Is this hypergraph a projective plane - meaning that any two lines meet in a unique point, and any two points lie on a unique line

isProjectivePlaneTri :: Ord a => Hypergraph a -> BoolSource

Is this hypergraph a projective plane with a triangle. This is a weak non-degeneracy condition, which eliminates all points on the same line, or all lines through the same point.

isProjectivePlaneQuad :: Ord a => Hypergraph a -> BoolSource

Is this hypergraph a projective plane with a quadrangle. This is a stronger non-degeneracy condition.

isGeneralizedQuadrangle :: Ord a => Hypergraph a -> BoolSource

isConfiguration :: Ord a => Hypergraph a -> BoolSource

Is this hypergraph a (projective) configuration.