HaskellForMaths-0.4.7: Combinatorics, group theory, commutative algebra, non-commutative algebra

Math.Combinatorics.Design

Description

A module for constructing and working with combinatorial designs.

Given integers t < k < v and lambda > 0, a t-design or t-(v,k,lambda) design is an incidence structure of points X and blocks B, where X is a set of v points, B is a collection of k-subsets of X, with the property that any t points are contained in exactly lambda blocks. If lambda = 1 and t >= 2, then a t-design is also called a Steiner system S(t,k,v).

Many designs are highly symmetric structures, having large automorphism groups. In particular, the Mathieu groups, which were the first discovered sporadic finite simple groups, turn up as the automorphism groups of the Witt designs.

Synopsis

# Documentation

isSubset :: Eq a => [a] -> [a] -> Bool Source

data Design a Source

Constructors

 D [a] [[a]]

Instances

 Eq a => Eq (Design a) Ord a => Ord (Design a) Show a => Show (Design a)

design :: Ord a => ([a], [[a]]) -> Design a Source

toDesign :: Ord a => ([a], [[a]]) -> Design a Source

points :: Design t -> [t] Source

blocks :: Design t -> [[t]] Source

isDesign :: Ord a => Int -> Design a -> Bool Source

incidenceMatrix :: Eq t => Design t -> [[Int]] Source

The incidence matrix of a design, with rows indexed by blocks and columns by points. (Note that in the literature, the opposite convention is sometimes used instead.)

subsetDesign :: (Ord a, Num a, Enum a) => a -> Int -> Design a Source

ag2 :: (FiniteField k, Ord k) => [k] -> Design [k] Source

The affine plane AG(2,Fq), a 2-(q^2,q,1) design or Steiner system S(2,q,q^2).

pg2 :: (FiniteField k, Ord k) => [k] -> Design [k] Source

The projective plane PG(2,Fq), a square 2-(q^2+q+1,q+1,1) design or Steiner system S(2,q+1,q^2+q+1). For example, `pg2 f2` is the Fano plane, a Steiner triple system S(2,3,7).

flatsDesignPG :: (FinSet a, Ord a, Num a) => Int -> [a] -> Int -> Design [a] Source

pg :: (FinSet a, Ord a, Num a) => Int -> [a] -> Design [a] Source

flatsDesignAG :: (FinSet a, Ord a, Num a) => Int -> [a] -> Int -> Design [a] Source

ag :: (FinSet a, Ord a, Num a) => Int -> [a] -> Design [a] Source

to1n :: (Ord a, Num a1, Enum a1) => Design a -> Design a1 Source

paleyDesign :: (Ord a, Num a) => [a] -> Design a Source

dual :: Ord t => Design t -> Design [t] Source

The dual of a design

derivedDesign :: Ord t => Design t -> t -> Design t Source

pointResidual :: Ord t => Design t -> t -> Design t Source

blockResidual :: Ord t => Design t -> [t] -> Design t Source

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

The incidence graph of a design

designAuts :: Ord t => Design t -> [Permutation t] Source

Find a strong generating set for the automorphism group of a design

Generators for the Mathieu group M24, a finite simple group of order 244823040

A strong generating set for the Mathieu group M24, a finite simple group of order 244823040

A strong generating set for the Mathieu group M23, a finite simple group of order 10200960

A strong generating set for the Mathieu group M22, a finite simple group of order 443520

The Steiner system S(5,8,24), with 759 blocks, whose automorphism group is M24

The Steiner system S(4,7,23), with 253 blocks, whose automorphism group is M23

The Steiner system S(3,6,22), with 77 blocks, whose automorphism group is M22

The Steiner system S(5,6,12), with 132 blocks, whose automorphism group is M12

The Steiner system S(4,5,11), with 66 blocks, whose automorphism group is M11

Generators for the Mathieu group M12, a finite simple group of order 95040

A strong generating set for the Mathieu group M12, a finite simple group of order 95040

A strong generating set for the Mathieu group M11, a finite simple group of order 7920