# Platonic Solid

The platonic solids are regular bounded bodies, with plane surfaces and straight edges, whose faces are all the same, edges are all the same and corners are all the same. So if you've studied the details of one face, one edge and one vertex, you know all about one. Since the body is bounded, it must have some face that faces out into space away from the body; and all other faces are just the same as this one, so must do the same. The ancient greeks studied these and established that there were: tetrahedron (triangular-based pyramid), cube (with six square faces), octahedron (with eight triangular faces), dodecahedron (12 pentagonal faces) and the icosahedron (20 triangular faces). Forget that for a moment and let's see what we can work out for ourselves.

## Network Analysis

Let's first just consider the network of vertices, edges and faces; since all faces are outward-facing, they must form the outer surface of a lump, with no holes through it. Any network of edges between nodes can be built up by successively adding edges and nodes. Starting with a blank lump and drawing a loop on its surface, connecting one node back to itself, we have one node and one edge splitting the surface into two regions. Keeping our network of edges and nodes connected, we can add a node to an existing edge, splitting it, or we can add an edge out of an existing node; in the latter case, the other end of the edge is either an existing node or a new node. When it ends in a new node, the region it extended into isn't split, so we make no new region but we add an edge and a node. When we split an existing edge, we likewise make no new region but add an edge (by splitting one into two) and a node. The other case has our new edge out of an existing node go to another existing node; since we keep our network connected, these two nodes were already connected, so the new edge completes a loop via its two nodes, thereby splitting the region into which it intruded. So we add an edge and a region; but we reused existing nodes, so didn't add any of them. Thus each step in building up our network adds an edge and either a node or a region. So suppose we have E edges, V vertices (nodes) and R regions (faces); the values of V +R and E +2 are equal in our initial loop and all growth of the network adds one to each, so we have V +R = E +2. Since we can build up any network of nodes and edges over the surface of a blob this way, the nodes and edges of our platonic solid satisfy this equation.

OK, so we have V vertices, E edges and R regions, satisfying V +R = E +2. Now, each edge has two sides and two ends; each corner is the same as all others, so the number of edges of which each vertex is an end is the same, let's call it k (for corner); likewise, each face is the same, so has the same number of edges, call it p (for polygon). The corners of faces happen at vertices and are delimited by edges, so there's as many of them at each vertex as there are edges, i.e. k; and each region has exactly as many corners as edges, since it has one between each pair of adjacent edges. So the number of corners is (from the vertices) k.V and is also (from the faces) p.R; so k.V = p.R. Counting the sides of edges, each has one side in each of two regions; couting via the edges we get 2.E sides; counting via the faces we get p.R, so p.R = 2.E. Counting ends of edges, by the edges we get 2.E again; by the vertices at which they end, k end at each vertex, so we have k.V ends and k.V = 2.E. Thus p.R = 2.E = k.V. In particular, at least one of p and R must be even; as must at least one of k and V. Substituting E = V +R −2 into this new equation, we get p.R = 2.V +2.R −4 = k.V, so

(p −2).R = 2.V −4 and
(k −2).V = 2.R −4;

multiply the first by k −2 to get the second into the form

4.R −8
= 2.V.(k −2)
= 4.(k −2) +(k −2).(p −2).R
= 4.(k −2) +R.(k.p +4 −2.k −2.p)

whose start and end we can rearrange as

4.k
= 4.R −R.(k.p +4 −2.k −2.p)
= R.(4 −k.p −4 +2.k +2.p)
= R.(2.k +2.p −k.p)

By their specifications, k, p and R are whole numbers greater than two. The fact that all three are positive makes the last factor, 2.k +2.p −k.p, also need to be positive, so we get (k −2).(p −2) = k.p +4 −2.k −2.p < 4, which requires at least one of k and p to be 3, so that its −2 factor is 1, while the other is < 6 (to make its factor, hence the product, < 4). So we don't have many possibilities to try; one of k and p is 3, the other is 3, 4 or 5.

### Solutions

Let's start by considering the case p = 3; this is the case of a platonic solid whose faces are triangles. We have 4.k = R.(2.k +6 −3.k) = R.(6 −k), so 6 −k is a positive divisor of 4.k; if k is 5 it's 1, so divides everything and we get 20 = R (the icosahedron); 4 makes it 2, giving 16 = 2.R or R = 8 (the octahedron); 3 makes it 3 which definitely does divide 4.k, giving us 12 = 3.R and R = 4 (the tetrahedron); and k can't be less than 3, so that's our last possibility for p = 3. The other case to consider is k = 3, so three faces meet at each corner. This gives us 12 = R.(6 −p); we've already seen that p = 3 works, so how about p = 4 and p = 5 ? With p = 4, we get 12 = 2.R so R = 6; a solid with six square faces, the cube. With p = 5, we get R = 12 (the dodecahedron).

So a fairly simple analysis using uncomplicated whole number algebra has told us there are at most five possibilities. Now let's work out what V and E are for each of the solutions, using p.R = 2.E = k.V, and make a table of the results:

Namep kR p.REV
Tetrahedron3341264
Cube43624128
Octahedron34824126
Dodecahedron5312603020
Icosahedron3520603012

Pause to check: yes, we do get E +2 = V +R in each case. The lowest common multiple of the E column is 60; that of the R column, or equally of the V column, is 120.

So, now you know why there are at most five platonic solids; with any luck you can imagine the tetrahedron (like a cone or pyramid, but with a triangular base rather than a circle or a square), cube (lots of things come packed in cardboard boxes that are cuboid; just imagine one with all sides of equal length) and octahedron (two square pyriamids with their square faces stuck together). To convince you that the dodecahedron and icosahedron exist, I'd need to do some actual geometry (the reasoning above is all topological), such as showing you one – if you know anyone that plays Dungeons and Dragons, ask them to show you a d12 and a d20.

They probably also have the tetrahedron as d4, cube as d6 and octahedron as d8. They may also have a d10 – but this isn't a Platonic solid. All but the tetrahedron have their faces in mutually opposite pairs so that, when the die is lying with one face down on a flat horizontal surface, the opposite face is on top and horizontal; so each face can have a number on it and the outcome of rolling the die can be the number written on the top face. That doesn't work for the d4, as the tetrahedron's faces don't match up that way; when one face is flat on the table, a vertex is at the top, with the other three faces around it. So one must either put the numbers on the vertices (writing the number in the top corner of each of the three faces that meet at that vertex, when it's at the top) or associate a number with the bottom face after a roll by writing that number on the bottom edge of each of the other three faces; so each face is associated with a given number that isn't written on it; it has the other three numbers written on it, each beside the edge it shares with the face associated with that number.

### Angle deficit

On a flat surface, where lines meet at a vertex, the angles between the lines round the vertex add up to a whole turn. Let's now look at the angles at the corners of our five solids. For the cube that's turn/4 in each corner times three faces, making 3.turn/4, leaving a deficit of turn/4. We have this same deficit at eight corners, for a total of 2.turn. The tetrahedron's faces are equilateral triangles, with angle turn/6 at each corner; three faces meet there, for a total of turn/2, leaving a deficit of turn/2. That's repeated at four corners, for a total of 2.turn again. The octahedron has four equilateral triangles at each corner, for a total of 2.turn/3 with a deficit of turn/3, and six corners multiply that up to 2.turn. The icosahedron's triangles contribute turn/6 to each corner, with five such angles at each corner, for a total 5.turn/6, leaving a deficit of turn/6 at each of 12 corners for a total of 2.turn. The dodecahedron's pentagonal faces have 3.turn/10 in each corner, three at each corner make 9.turn/10 with a deficit of turn/10 at each of 20 corners for a total of 2.turn.

Each face is a regular polygon with p sides, so the angles in its corners are turn.(1/2 −1/p) and we have k of them, for a total of turn.k.(1/2 −1/p) making the deficit at each corner turn.(1 −k/2 +k/p) = turn.(2.p −k.p +2.k)/p/2. From above, we know 2.k +2.p −k.p is = 4.k/R, so the deficit at each corner is turn.2.k/R/p and the total deficit is 2.turn.k.V/R/p; but k.V = R.p, so this is indeed simply 2.turn for every platonic solid.

In fact, let's consider the general case of a body that's still essentially blob-shaped (so there's no holes through it, as in a ring or car-tire) with flat faces and straight edges, but without requiring faces to all be the same shape, edges the same length or vertices to have the same number of either at it. Each face is still flat, so we can measure angles within the face at each corner in the usual way; we can add up the angles at each vertex from the various faces meeting at it, as before, and subtract from a whole turn to get the angle deficit at each corner; and we can sum these over corners. The end result is just the sum of all the angles in all the corners of all the faces, subtracted from turn times the number of vertices.

An exterior angle of a polygon, at one of its corners, is the angle between the extension of one of the edges through that corner and the other edge that meets the first at that corner. The sum of the external angles of any polygon (even if it's not regular) is one turn – imagine walking along its edges, turning by the exterior angle at each corner to follow the next edge, until you come back to where you started, having completed a whole turn made up of those exterior angles. Each internal angle is just a half turn minus the exterior angle, so the sum of the interior angles of a polygon is half a turn times the number of edges (or vertices) minus two (from the two half turns, i.e. whole turn, of the exterior angle sum). So the sum of all the interior angles of all the R faces of our polyhedron is just half a turn per edge of each face, minus R.turn; which counts each of the E edges of the polyhedron twice (once in each of the faces it connects), so we end up with (E −R).turn as the sum of all the angles in all the corners of the faces of our polyhedron; and we then subtract that from V.turn to get (V +R −E).turn which, as we saw above, is necessarily 2.turn. So the angle deficit, summed over our V vertices, is always 2.turn for a blob-shaped polyhedron. (It'll be different for polyhedra with holes through them, though.)

### Tidy co-ordinates

It's not infrequently nice to have co-ordinates that make an exact figure of each kind. This is easy for the cube: just put its corners at [±1, ±1, ±1]; you have two choices for each ±, chosen independently, to get eight corners. The octahedron is almost as easy: its six vertices are [±1, 0, 0], [0, ±1, 0] and [0, 0, ±1].

The tetrahedron has a nice easy representation in a four-dimensional space, with corners at [1, 0, 0, 0], [0, 1, 0, 0], [0, 0, 1, 0] and [0, 0, 0, 1], where the three-dimensional surface on which the sum of co-ordinates is 1 meets the four co-ordinate axes. These, indeed, are the vertices of the canonical 4-simplex. However, we more commonly want co-ordinates in three dimensions; to do that, we have to give up the symmetry under interchange of our co-ordinates. One realisation of it has vertices at

• [−√6, −√2, −1],
• [√6, −√2, −1],
• [0, 2.√2, −1] and
• [0, 0, 3].

These sum to zero: their centroid is the origin. The inner product of any two of these is −3 and the length of each is 3, so the cosine of the angle between rays from the centroid of a tetrahedron to any two of its corners is −1/3.

Carbon atoms commonly form four bonds with neighbouring atoms in molecules, with this angle between the bonds; which makes this one of the commonest angles in the universe; it's roughly 1.91 radians, 0.304 turns or 109.47°. If you count turn/2 as an angle, it's the most common; otherwise, this tetrahedral angle and turn/3 are surely the next two commonest; and the tetrahedral one could well be more common than turn/3.

Again, the dodecahedron and icosahedron are trickier !

## Duality

Now, notice that swapping the values of k and p switches you to a row with the same E and swaps R with V; in the case of the tetrahedron, this is the same row; otherwise, we interchange the cube and octahedron or the dodecahedron and icosahedron.

So let's look at a cube and an octahedron. The cube has three pairs of square faces; in each pair, one face is opposite the other; there are twelve edges, four bounding each of an opposed pair of faces and the other four connecting up a corner of each to a corner of the other. Each face has four edges, at which it meets the four other faces not opposite to it. Mark the centre-point of each face and, inside the cube, imagine lines connecting each face's centre-point to the four centre-points of the faces with which it shares edges; associate each of these lines with the edge of the cube shared by the two faces whose mid-points it connects; and, indeed, each edge of the cube is where two faces meet, so there is such a line associated with it. For each corner of our cube, look at the three lines associated with the edges of the cube into the given corner: these form a triangle among the centre-points of the three faces that meet at our corner. There's one such triangle for each corner of the cube; make faces of these eight triangles, meeting along the lines we constructed as edges, with the cube's faces' centres as vertices and the figure they form is the octahedron. So inside every cube is an octahedron waiting to be noticed, whose edges correspond to those of the cube while its faces correspond to corners of the cube and its corners correspond to faces of the cube.

Start with the octahedron: take centre-points of its faces, connect each to that of each face with a shared edge; as each face of the octahedron has three sides, each centre-point is connected to three others. Each vertex of the octahedron has four edges out of it, whose associated new lines connect four centre-points in a square. There are six vertices, so we get six square faces for the figure on the octahedron's face-centres; we're back at the cube. The cube and the octahedron are thus described as mutually dual in the sense that this transformation turns each into the other.

When we do the same with the tetrahedron, each face is a triangle and each vertex has three edges meeting at it; so the dual likewise has three edges meeting at each vertex and three edges bounding each face; sure enough, the tetrahedron is self-dual. The dodecahedron and icosahedron are mutually dual, but the details are much trickier thanks to there being more of everything involved.

## Cutting a cube into tetrahedra

While I'm describing such constructions, consider a cube and pick one corner; colour it green and each corner with which it shares an edge red. There are three of these corners, each diagonally opposite each of the other two across one of the squares that met in our original corner; no two red vertices are joined by an edge. Each has one edge back to our green vertex and two more to the corners diagonally opposite that green vertex on one of the faces that meet at it; colour these vertices green. The only remaining vertex of our cube is the one opposite where we started; its three edges go to the three vertices we've just coloured green, so colour it red. Each edge of our cube now connects a red vertex to a green vertex. If you now select either the red vertices or the green vertices, you have four of them; and they lie at the corners of a tetrahedron inscribed inside the cube. It has six edges, one in each face of the cube.

Pick a face F of the cube and a perpendicular edge S. Consider the plane, through the diagonal of F that's an edge of our tetrahedron, whose other direction is that of S. This has two vertices of our tetrahedron in its intersection with F; the other two vertices lie in the face opposite F and are not on our plane, but are equal distances from it on opposite sides of it. Shearing, with our plane invariant, to move one of those vertices through the displacement along S shall bring that vertex into our face F; the remaining vertex shall move through the same distance in the opposite direction, putting it twice as far from F as it was. We now have three of our tetrahedron's vertices in F; shear again, with F as invariant plane, to move the remaining vertex paralle to F's diagonal that isn't an edge of the original tetrahedron. This moves it to the point twice S's displacement away from the vertex we pulled into F, along the edge of F this vertex moved along.

Shrink the sheared tetrahedron perpendicular to F by a factor of two, without changing its scale in directions parallel to F. Neither shear changed its volume and this shrink has halved it. The result is a tetrahedron formed by one corner of our cube and the three corners of the cube linked to it by edges; our original tetrahedron cut off four of these corner-pieces from the cube, whose total volume is thus four halves of that of the original tetrahedron; adding the original tetrahedron gets us three times its volue, equal to the whole cube; so the tetrahedron we initially inscribed within the cube has a third of its volume.

## Mixing faces

So now let's consider solids where every vertex and edge is the same, but we vary the number of edges (or, equivalently, of vertices) around each face; each of E edges has two sides and two ends, each of V vertices has k edges into it and k regions around it but, instead of R faces each with p edges and p vertices, we'll now have a mapping ({naturals}: r :{naturals > 2}) for which r(p) is the number of faces with p edges and p vertices. We have R = sum(r) faces in all; which is finite, so r(p) is zero for all but finitely-many p. By the same reasoning as above, we now get sum(: p.r(p) ←p :) = 2.E = k.V, with E + 2 = V + sum(r); scaling the last by 2.k and rearranging, we get:

2.k.sum(r)
= 4.k +k.(2.E) −2.(k.V)
= 4.k +(k −2).sum(: p.r(p) ←p :)

which we can re-arrange as

• sum(: (2.k +2.p −k.p).r(p) ←p :) = 4.k

Notice that k ≥ 6 cannot have any positive entries in the sum, since every non-zero r(p) is positive with p > 2, so 2.k +2.p −k.p = 4 +2.(k −2) −(k −2).p = 4 −(p −2).(k −2) ≤ 0.

Notice that this ignores r(p) for any p satisfying k.p = 2.(p +k), which happens when k −2 is a proper factor of 2.k; for any k > 6, we have 3.k −2.k > 6, whence 3.(k −2) > 2.k, precluding p ≥ 3; and k −2 < k < 2.k preclude p = 2 and p = 1; 5−2 doesn't divide 2×5 and k is at least 3; so we only need to consider k in {3, 4, 6}; indeed the {p, k} ⊂ {naturals} with k.p = 2.(p +k) are {0} (which we can ignore), {4} and {3, 6}. (Note that {k, p} = {4}, for example, means k = 4 = p; while {k, p} = {3, 6} has either k or p be 3 while the other is 6.) The k = 6, p = 3 case, however, is ruled out above: p = 3 is the first entry in the sum that can be non-zero; but, for k = 6, it's zero regardless of r(3); and all later terms in the sum are negative. Thus, if each vertex joins four edges, we can add as many squares as we like; and if each vertex joins three edges, we can add hexagons freely.

Of course, that's only considering the topological constraints; geometry might not let us realise all such possibilities. However, the case of the dodecahedron, with three pentagons meeting at each vertex, does permit addition of at least some numbers of hexagons: Buckminster-Fuller's geodesic domes, indeed, exploit this. A full sphere would have a dozen pentagonal faces and many hexagons; a dome, of course, may only be half a sphere, or perhaps slightly more. There is a molecule that combines 60 carbon atoms into a ball, C60, with twelve pentagonal faces and twenty hexagonal ones; each vertex is a carbon atom at which two hexagons and one pentagon meet; each pentagon is surrounded by hexagons while the edges of each hexagon alternate between pentagonal and hexagonal neighbours; the edges between hexagons are carbon double-bonds while the hexagon-pentagon edges are single bonds, with the result that each carbon atom's four bonds are taken care of. This is also a shape commonly used to make footballs out of 20 hexagons and 12 pentagons of suitable material. (There's also a C70 molecule with 5 hexagons more.) In general, with h hexagons and 12 pentagons, we have 6.h +60 = 3.V so V = 2.(h +10); the number of vertices is necessarily even and at least 20; while E = 3.(h +10) so the number of edges is a multiple of three and at least 30.

### Balancing the books

So, back to considering what our constraint doesn't ignore. Given that the coefficient of r(p) is, as worked out above, 4 −(p −2).(k −2), let's reparameterise k and p off by two: replace r with ({naturals}: q :{naturals}) for which r(2 +i) = q(i), with q(0) = 0; and write k = 2 +j for some positive natural j; our equation becomes

• sum(: (4 −j.p).q(p) ←p :) = 4.j +8

and we know we can only have solutions for j in {1, 2, 3}, so let's consider these three cases:

For j = 1 (3 edges at each vertex),
sum(: (4 −p).q(p) ←p :) = 12 needs some positive q(p) with p < 4 (and, if it has any with p > 4, it needs even more in the entries with p < 4 to make up for them); if (:q:4) = [0, u, v, w] then we need 3.u +2.v +w ≥ 12. As previously noted, we can add arbitrarily many hexagonal faces, q(4). The case q = [0, 4] is, of course, the tetrahedron; q = [0, 0, 6] is the cube and q = [0, 0, 0, 12] is the dodecahedron. Candidates for q with more than one non-zero entry are [0, 3, 0, 3], [0, 3, 1, 1], [0, 2, 3, 0], [0, 2, 0, 6], [0, 2, 1, 4], [0, 2, 2, 2], [0, 2, 3], [0, 1, 0, 9], [0, 1, 1, 7], [0, 1, 2, 5], [0, 1, 3, 3], [0, 1, 4, 1], [0, 0, 0, 12], [0, 0, 1, 10], [0, 0, 2, 8], [0, 0, 3, 6], [0, 0, 4, 4], [0, 0, 5, 2], with the entries after the initial 0 being counts of triangles, squares and pentagons, respectively. As shown above, we can add hexagons freely. If we have any faces with more than six sides, we'll need more triangles, squares and pentagons to make up for them.
For j = 2 (4 edges at each vertex),
sum(: (2 −p).q(p) ←p :) = 8 the only entry that can make a positive contribution is q(1); we need at least eight triangles; and, indeed, q = [0, 8] is the octahedron. We can add squares freely, as noted before. For every triangle we add, we can add a pentagon; or, for every two triangles, a hexagon; for three triangles a heptagon; and so on.
For j = 3 (5 edges at each vertex),
sum(: (4 −3.p).q(p) ←p :) = 20 and we need q(1) ≥ 20, with q = [0, 20] being the icosahedron. For every two triangles more we add, we can add a square; by adding five triangles, we can make room for a pentagon; by adding eight we can make room for a hexagon; and so on.

As before, of course, this is just the topological constraint; whether any of the cases sketched here is geometrically realisable remains to be seen; but there are no other regular arrangements with the same number of edges at each vertex.  Written by Eddy.