Here is a recipe for preparing a copy of the Mathieu group M24. The main ingredient
is a genus-3 regular polyhedron X with 56 triangular faces, 84 edges, and 24 vertices. The most
delicate part of this recipe is to hold the polyhedron by the 24 vertices and
immerse the rest of it in 3-dimensional space.
To get a good grip on these points, it is suggested that they be blown up prior to immersion.
These 24 singular vertices must then be reattached with care.
The result of this operation is known as the small cubicuboctahedron.

The Mathieu group is famous for having a quintuply-transitive action on a set of 24 elements
without being a symmetric or alternating group,
and this is exactly what you will make, using this polyhedron X.
You may need pencil and paper (and maybe
a hobby knife and some glue) in
order to make the polyhedron X and its immersion.
As a complement to this hefty mathematical meal, you should also try the recipe
for the extended binary Golay code of length 24, included below.

The Polyhedron X

The polyhedron X has f=56 triangles, e=84 edges, and v=24 vertices, with
7 edges meeting at every vertex. In order to construct X, first
tile the hyperbolic plane with triangles in such a way that 7 triangles meet at every vertex.
Then number the triangles as such:

If you do not understand how the triangles are numbered, consider the following pattern.
Pick and fix a number x from 1 to 7.
Then look for two triangles both numbered x, but which are as close to each other as possible.
You should notice that there are two intermediate triangles between those two numbered x. You can get
from one triangle to the other by following a zig-zag path across exactly 3 edges. Now you have
an assembly of four triangles comprising an irregular hexagon.
This hexagon is not invariant under reflection, but it is invariant under a half-turn.
Next, notice that if you do this for any number x, anywhere on the tiling then every hexagon
has the same orientation as every other. Finally, notice that whenever one can form a hexagon comprised of four
triangles which has this orientation, then the triangles on the two ends are marked with the same number.

Here's another pattern. Consider:
Choose two vertices which are joined by an edge, say v and w. Notice that seven triangles surround
vertex v and likewise seven triangles surround vertex w. Thus, there are 49 pairs (t,u), where t is a triangle with vertex v
and u is a triangle with vertex w. Next, notice that there is a unique pair (t,u) for which the distance between
triangle t and triangle u is maximized. (The measure of distance we use here is the minimum number of edges one must
cross in order to get from one triangle to another.) In fact, one cannot get from triangle t to triangle u without crossing
at least six edges. Next, notice that triangles t and u are marked with the same number.
This pattern also pervades the entire tiling.

The polyhedron X is obtained by taking the quotient of this marked polyhedron by
its automorphisms. (If you don't like this, you can try cutting out 56 of these triangles
and gluing them together appropriately. However, topologically speaking, one may also describe this as a
"quotient".) One will notice that there are
24 distinct types of vertices in this marked plane. They are distinguished by the permutations of the numbers
appearing in a cycle around the vertex. If you have some cardstock in seven distinguishable colors, you can also
make a physical model:

Another model of the (universal cover of the) polyhedron X

Automorphisms of X

The polyhedron X has a remarkably high degree of symmetry, considering how it was constructed.
The group of orientation-preserving transformations which preserve the unmarked
complex of triangles is isomorphic to the group

{ s, t : s7 = t3 = (st)2 = 1 }.

Evidently, conjugates of s fix the vertices, conjugates of t fix the triangles,
and conjugates of st fix the edges. Evidently, also, this group is infinite, for one can
add arbitrarily many triangles to this complex.
The automorphism group of X is a quotient of this infinite group obtained by imposing one more
relation

(s2t2)4 = 1.

At this point, it helps to mark the vertices, preferrably with numbers. (Numbers have uncountably many uses!)
Use a numbering consistent with the
SPLAG numbering of the MOG, just because this book rocks:

The SPLAG Numbering of the Vertices
(Click for a larger image, if you think you need it....)

This group G(X) acts transitively on each of the sets of 24 vertices, of 84 edges, and of 56 faces, but
here we are particularly interested in the action on the vertices. With the numbering as depicted
above, here are two permutations which obey these relations:

s=(1,16,8,23,13,14,5)(2,7,11,19,20,24,12)(3,4,17,9,22,21,15),
and
t=(1,2,23)(3,4,18)(5,21,7)(6,16,8)(9,13,12)(10,19,20)(11,22,24)(14,17,15).

Notice that s rotates the entire picture by an angle of 360°/7
and that t rotates by 360°/3=120° about the center of the triangle with
the vertices numbered {6,8,16} (or the triangle numbered 2 from above).
Abusing notation a wee bit, we let G(X) denote the smallest group containing the
permutations s and t.

As it turns out, the group G(X) generated by {s,t} is isomorphic to both PSL(2,7) and GL(3,2), and these
are isomorphic to each other. (Recall that if K is a field and n a positive integer, then the "general linear" group GL(n,K) is
the group of all invertible n-by-n matrices with entries from K. The "special linear" group SL(n,K)
is then the subgroup of all matrices in GL(n,K) with determinant 1. The "projective special linear"
group PSL(n,K) is then the quotient of SL(n,K) by its center. If the field K has order q, then one
may choose to write q in place of K.)

We now have a transitive action of a group G(X) on a set of 24 elements.
This action is simply transitive, but it is not doubly-transitive.
Highly transitive actions, after all, are scarce!
It is all but obvious that the action is transitive on the vertices.
To see that it is not doubly-transitive, notice that G(X) preserves distance.
Recall that the distance between vertices v and w is the length of the
shortest edge path from v to w. One can quickly check that there
are pairs of vertices which are separated by two edges
and also pairs of vertices which are adjacent. In order to get all of M24,
you will have to add some permutations which wreak havoc on the distance function.

The Small Cubicuboctahedron

To continue with the recipe, you now must immerse the polyhedron X into 3-dimensional Euclidean space.
Moreover, you must immerse it in such a way as to yield the "small cubicuboctahedron".

The Small Cubicuboctahedron

This (uniform) polyhedron has 6 squares and 8 triangles, which should be apparent, and it also has
6 octagons. Since this polyhedron represents an immersion, and not an imbedding,
of the polyhedron X into 3-space, there is also a total of 12 false edges, each where two
octagons intersect.
This polyhedron evidently has f=6+6+8=20 faces, but also notice that it has 48 edges and 24 vertices.
Thus, if one believes that the underlying surface is orientable, we see that the genus is 3.
Thus, it's plausible that the small cubicuboctahedron represents an immersion of the polyhedron X into 3-space.
This becomes patently believable if one considers the following
coloring of our tiling of the hyperbolic plane:

A Uniformization of a Uniform Polyhedron

Notice that this coloring has three colors, pink, goldenrod, and bright green. The colors are intended to correspond
with the coloring of the small cubicuboctahedron. Thus, the triangles are pink, the squares are goldenrod,
and the octagons are bright green. Naturally, there is a lot of distortion. One should convince oneself
that working with the immersion of X and the colored hyperbolic plane are nearly equivalent, the only
difference being that the hyperbolic plane has no self-intersections. Notice in particular that exactly one
triangle, one square, and two octagons meet at every vertex.

Notice that several of the pink triangles
are marked with a plus sign (+) and, likewise, several are marked with a minus sign (-). This is a quiz question.
Describe how half of the pink triangles should be distinguished from the other half, based
on the coloring of the tiling.

The Extension

The permutations s and t, given above, generate the symmetry group G(X) of the polyhedron X.
Also recall that G(X) is isomorphic to PSL(2,7) and to GL(3,2), and that these are isomorphic
to each other. Now you must add
some more permutations in order to get the whole group M24.
Specifically add the permuations which interchange "dissection" points of the squares and octagons.
Notice that each of the goldenrod squares is comprised of 2 triangles and each of
the green octagons is comprised of 6 triangles. Moreover, each square has a diagonal
which dissects the square and each octagon has a diagonal which dissects the octagon.
You add the permutation which interchanges the endpoints of all these diagonals.
According to our numbering of the vertices, this is the permutation

Thus, the Mathieu group M24 is the smallest group containing the permutations
s, t, and i. As it turns out, s and i alone are sufficient to generate M24.

Summarizing all this, the Mathieu group M24 is generated by the two permutations

s = (1,16,8,23,13,14,5)(2,7,11,19,20,24,12)(3,4,17,9,22,21,15)

and

i = (1,24)(2,21)(3,10)(4,22)(5,9)(6,23)(7,8)(11,18)(12,20)(13,14)(15,19)(16,17).

PSL(2,23)

In SPLAG, Conway and Sloane present M24 as an extension
of PSL(2,23). They
presented a couple natural generators and then
added another permutation constructed with some aforeknowledge
of mod-23 quadratic residues. Consider the permutations

j=(1,8)(2,19)(3,13)(4,18)(5,16)(6,12)(7,24)(9,17)(10,14)(11,22)(15,21)(20,23)
and
k=ij=(1,7)(2,15)(3,14)(4,11)(5,17)(6,20)(8,24)(9,16)(10,13)(12,23)(18,22)(19,21).

(Consider how these permutations move the points around in the illustrations.)
These elements j and k also lie in our copy of M24, and, in fact,
these can be used instead to generate the whole group.
As it turns out, the group generated by {t,j} is isomorphic to PSL(2,23) as is
the group generated by {t,k}. However, the group generated by all three {t,j,k}
is the whole Mathieu group.

Octads and Dodecads

The Mathieu group M24 is famous for having an action on the extended binary Golay code
of length 24. The most uninspired way to present the Golay code, perhaps, is to give a basis for it.
After all, it is merely a particular 12-dimensional subspace of F224,
where F2 denotes the two-element field.
Since we are working with the two-element field, vectors (i.e. codewords) in the Golay code
correspond with subsets of a 24-element set. Thus, you saw it coming, codewords correspond
to subsets of the 24 vertices of the polyhedron X.
The action of the Mathieu group on the Golay code is not transitive. It decomposes
into 5 orbits, these being 2 singletons, 2 sets consisting of 759 weight-8 and weight-16 codewords
respectively, and a set consisting of 2576 weight-12 codewords. One of the singletons consists
of the empty word, and the other contains all the numbers from 1 to 24.
The weight-8 codewords are called "octads" and the weight-12 codewords are called "dodecads".
The complement of a weight-16 codeword is an octad.
The purpose here is to show that one may use the polyhedron X for computations
inside the Golay code. One can give a spanning set for the code, but, of course,
this set will be tied to the geometry of the polyhedron X.

Disc Octads. Notice that every vertex has 7 other neighboring vertices. The set formed by any vertex and all 7 of
its neighbors is an octad. Call such an octad a "disc". Evidently there are 24 disc octads, one for
each vertex. One might hope that these would give a spanning set for the 12-dimensional Golay code.
In fact, the dimension of the space spanned by the disc octads is only 9, so if we want to get the Golay
code, we must include at least three more octads in our spanning set.

Tetrahedral Dodecads. Recall the quiz question about why half the pink triangles are marked with plus (+)
and half are marked with minus (-). It's about time to work through this exercise, because you need it
in order to understand the tetrahedral dodecads. Form the set consisting of all the vertices
on the triangles marked with a plus sign (+). This is called "tetrahedral" dodecad because
the symmetry of this arrangement of 4 triangles has tetrahedral symmetry. One can check that
there are precisely 14 such dodecads in the orbit of the group G(X). One might
hope that these would span the 12-dimensional Golay code, but, as it turns out,
their span has dimension 4.

Nevertheless, the Golay code is spanned by the disc octads and the tetrahedral dodecads.
Other geometrically interesting octads and dodecads abound. For example, choose any goldenrod
square and consider the 4 triangles which share a vertex with that square.
As it turns out, this is another dodecad. Under the action of G(X), one may
transport this to a total of 42 different dodecads, and, in fact, these
42 dodecads comprise another spanning set for the Golay code.

The Proofs

One may verify all of this using GAP. (I wish I knew how to prove all this stuff by hand!)