## Topological Crystals (Part 4)

28 August, 2016

Okay, let’s look at some examples of topological crystals. These are what got me excited in the first place. We’ll get some highly symmetrical crystals, often in higher-dimensional Euclidean spaces. The ‘triamond’, above, is a 3d example.

### Review

First let me remind you how it works. We start with a connected graph $X.$ This has a space $C_0(X,\mathbb{R})$ of 0-chains, which are formal linear combinations of vertices, and a space $C_1(X,\mathbb{R})$ of 1-chains, which are formal linear combinations of edges.

We choose a vertex in $X.$ Each path $\gamma$ in $X$ starting at this vertex determines a 1-chain $c_\gamma,$ namely the sum of its edges. These 1-chains give some points in $C_1(X,\mathbb{R}).$ These points are the vertices of a graph $\overline{X}$ called the maximal abelian cover of $X.$ The maximal abelian cover has an edge from $c_\gamma$ to $c_{\gamma'}$ whenever the path $\gamma'$ is obtained by adding an extra edge to $\gamma.$ We can think of this edge as a straight line segment from $c_\gamma$ to $c_{\gamma'}.$

So, we get a graph $\overline{X}$ sitting inside $C_1(X,\mathbb{R}).$ But this is a high-dimensional space. To get something nicer we’ll project down to a lower-dimensional space.

There’s boundary operator

$\partial : C_1(X,\mathbb{R}) \to C_0(X,\mathbb{R})$

sending any edge to the difference of its two endpoints. The kernel of this operator is the space of 1-cycles, $Z_1(X,\mathbb{R}).$ There’s an inner product on the space of 1-chains such that edges form an orthonormal basis, so we get an orthogonal projection

$\pi : C_1(X,\mathbb{R}) \to Z_1(X,\mathbb{R})$

We can use this to take the maximal abelian cover $\overline{X}$ and project it down to the space of 1-cycles. The hard part is checking that $\pi$ is one-to-one on $\overline{X}.$ But that’s what I explained last time! It’s true whenever our original graph $X$ has no bridges: that is, edges whose removal would disconnect our graph, like this:

So, when $X$ is a bridgeless graph, we get a copy of the maximal abelian cover embedded in $Z_1(X,\mathbb{R}).$ This is our topological crystal.

Let’s do some examples.

### Graphene

I showed you this one before, but it’s a good place to start. Let $X$ be this graph:

Since this graph has 3 edges, its space of 1-chains is 3-dimensional. Since this graph has 2 holes, its 1-cycles form a plane in that 3d space. If we take paths $\gamma$ in $X$ starting at the red vertex, form the 1-chains $c_\gamma,$ and project them down to this plane, we get this:

Here the 1-chains $c_\gamma$ are the white and red dots. They’re the vertices of the maximal abelian cover $\overline{X},$ while the line segments between them are the edges of $\overline{X}.$ Projecting these vertices and edges onto the plane of 1-cycles, we get our topological crystal:

This is the pattern of graphene, a miraculous 2-dimensional form of carbon. The more familiar 3d crystal called graphite is made of parallel layers of graphene connected with some other bonds.

Puzzle 1. Classify bridgeless connected graphs with 2 holes (or more precisely, a 2-dimensional space of 1-cycles). What are the resulting 2d topological crystals?

### Diamond

Now let’s try this graph:

Since it has 3 holes, it gives a 3d crystal:

This crystal structure is famous! It’s the pattern used by a diamond. Up to translation it has two kinds of atoms, corresponding to the two vertices of the original graph.

### Triamond

Now let’s try this graph:

Since it has 3 holes, it gives another 3d crystal:

This is also famous: it’s sometimes called a ‘triamond’. If you’re a bug crawling around on this crystal, locally you experience the same topology as if you were crawling around on a wire-frame model of a tetrahedron. But you’re actually on the maximal abelian cover!

Up to translation the triamond has 4 kinds of atoms, corresponding to the 4 vertices of the tetrahedron. Each atom has 3 equally distant neighbors lying in a plane at 120° angles from each other. These planes lie in 4 families, each parallel to one face of a regular tetrahedron. This structure was discovered by the crystallographer Laves, and it was dubbed the Laves graph by Coxeter. Later Sunada called it the ‘$\mathrm{K}_4$ lattice’ and studied its energy minimization properties. Theoretically it seems to be a stable form of carbon. Crystals in this pattern have not yet been seen, but this pattern plays a role in the structure of certain butterfly wings.

Puzzle 2. Classify bridgeless connected graphs with 3 holes (or more precisely, a 3d space of 1-cycles). What are the resulting 3d topological crystals?

### Lonsdaleite and hyperquartz

There’s a crystal form of carbon called lonsdaleite that looks like this:

It forms in meteor impacts. It does not arise as 3-dimensional topological crystal.

Puzzle 3. Show that this graph gives a 5-dimensional topological crystal which can be projected down to give lonsdaleite in 3d space:

Puzzle 4. Classify bridgeless connected graphs with 4 holes (or more precisely, a 4d space of 1-cycles). What are the resulting 4d topological crystals? A crystallographer with the wonderful name of Eon calls this one hyperquartz, because it’s a 4-dimensional analogue of quartz:

All these classification problems are quite manageable if you notice there are certain ‘boring’, easily understood ways to get new bridgeless connected graphs with $n$ holes from old ones.

### Platonic crystals

For any connected graph $X,$ there is a covering map

$q : \overline{X} \to X$

The vertices of $\overline{X}$ come in different kinds, or ‘colors’, depending on which vertex of $X$ they map to. It’s interesting to look at the group of ‘covering symmetries’, $\mathrm{Cov}(X),$ consisting of all symmetries of $\overline{X}$ that map vertices of same color to vertices of the same color. Greg Egan and I showed that if $X$ has no bridges, $\mathrm{Cov}(X)$ also acts as symmetries of the topological crystal associated to $X.$ This group fits into a short exact sequence:

$1 \longrightarrow H_1(X,\mathbb{Z}) \longrightarrow \mathrm{Cov}(X) \longrightarrow \mathrm{Aut}(X) \longrightarrow 1$

where $\mathrm{Aut}(X)$ is the group of all symmetries of $X.$ Thus, every symmetry of $X$ is covered by some symmetry of its topological crystal, while $H_1(X,\mathbb{Z})$ acts as translations of the crystal, in a way that preserves the color of every vertex.

For example consider the triamond, which comes from the tetrahedron. The symmetry group of the tetrahedron is this Coxeter group:

$\mathrm{A}_3 = \langle s_1, s_2, s_3 \;| \; (s_1s_2)^3 = (s_2s_3)^3 = s_1^2 = s_2^2 = s_3^2 = 1\rangle$

Thus, the group of covering symmetries of the triamond is an extension of $\mathrm{A}_3$ by $\mathbb{Z}^3.$ Beware the notation here: this is not the alternating group on the 3 letters. In fact it’s the permutation group on 4 letters, namely the vertices of the tetrahedron!

We can also look at other ‘Platonic crystals’. The symmetry group of the cube and octahedron is the Coxeter group

$\mathrm{B}_3 = \langle s_1, s_2, s_3 \;| \; (s_1s_2)^3 = (s_2s_3)^4 = s_1^2 = s_2^2 = s_3^2 = 1\rangle$

Since the cube has 6 faces, the graph formed by its vertices and edges a 5d space of 1-cycles. The corresponding topological crystal is thus 5-dimensional, and its group of covering symmetries is an extension of $\mathrm{B}_3$ by $\mathbb{Z}^5.$ Similarly, the octahedron gives a 7-dimensional topological crystal whose group of covering symmetries, an extension of $\mathrm{B}_3$ by $\mathbb{Z}^7.$

The symmetry group of the dodecahedron and icosahedron is

$\mathrm{H}_3 = \langle s_1, s_2, s_3 \;| \; (s_1s_2)^3 = (s_2s_3)^5= s_1^2 = s_2^2 = s_3^2 = 1\rangle$

and these solids give crystals of dimensions 11 and 19. If you’re a bug crawling around on the the second of these, locally you experience the same topology as if you were crawling around on a wire-frame model of a icosahedron. But you’re actually in 19-dimensional space, crawling around on the maximal abelian cover!

There is also an infinite family of degenerate Platonic solids called ‘hosohedra’ with two vertices, $n$ edges and $n$ faces. These faces cannot be made flat, since each face has just 2 edges, but that is not relevant to our construction: the vertices and edges still give a graph. For example, when $n = 6,$ we have the ‘hexagonal hosohedron’:

The corresponding crystal has dimension $n-1,$ and its group of covering symmetries is an extension of $\mathrm{S}_n \times \mathbb{Z}/2$ by $\mathbb{Z}^{n-1}.$ The case $n = 3$ gives the graphene crystal, while $n = 4$ gives the diamond.

### Exotic crystals

We can also get crystals from more exotic highly symmetrical graphs. For example, take the Petersen graph:

Its symmetry group is the symmetric group $\mathrm{S}_5.$ It has 10 vertices and 15 edges, so its Euler characteristic is $-5,$ which implies that its space of 1-cycles is 6-dimensional. It thus gives a 6-dimensional crystal whose group of covering symmetries is an extension of $\mathrm{S}_5$ by $\mathbb{Z}^6.$

Two more nice examples come from Klein’s quartic curve, a Riemann surface of genus three on which the 336-element group $\mathrm{PGL}(2,\mathbb{F}_7)$ acts as isometries. These isometries preserve a tiling of Klein’s quartic curve by 56 triangles, with 7 meeting at each vertex. This picture is topologically correct, though not geometrically:

From this tiling we obtain a graph $X$ embedded in Klein’s quartic curve. This graph has $56 \times 3 / 2 = 84$ edges and $56 \times 3 / 7 = 24$ vertices, so it has Euler characteristic $-60.$ It thus gives a 61-dimensional topological crystal whose group of covering symmetries is extension of $\mathrm{PGL}(2,\mathbb{F}_7)$ by $\mathbb{Z}^{61}.$

There is also a dual tiling of Klein’s curve by 24 heptagons, 3 meeting at each vertex. This gives a graph with 84 edges and 56 vertices, hence Euler characteristic $-28.$ From this we obtain a 29-dimensional topological crystal whose group of covering symmetries is an extension of $\mathrm{PGL}(2,\mathbb{F}_7)$ by $\mathbb{Z}^{29}.$

### The packing fraction

Now that we’ve got a supply of highly symmetrical crystals in higher dimensions, we can try to study their structure. We’ve only made a bit of progress on this.

One interesting property of a topological crystal is its ‘packing fraction’. I like to call the vertices of a topological crystal atoms, for the obvious reason. The set $A$ of atoms is periodic. It’s usually not a lattice. But it’s contained in the lattice $L$ obtained by projecting the integral 1-chains down to the space of 1-cycles:

$L = \{ \pi(c) : \; c \in C_1(X,\mathbb{Z}) \}$

We can ask what fraction of the points in this lattice are actually atoms. Let’s call this the packing fraction. Since $Z_1(X,\mathbb{Z})$ acts as translations on both $A$ and $L,$ we can define it to be

$\displaystyle{ \frac{|A/Z_1(X,\mathbb{Z})|}{|L/Z_1(X,\mathbb{Z})|} }$

For example, suppose $X$ is the graph that gives graphene:

Then the packing fraction is 2/3, as can be seen here:

For any bridgeless connected graph $X,$ it turns out that the packing fraction equals

$\displaystyle{ \frac{|V|}{|T|} }$

where $V$ is the set of vertices and $T$ is the set of spanning trees. The main tool used to prove this is Bacher, de la Harpe and Nagnibeda’s work on integral cycles and integral cuts, which in turn relies on Kirchhoff’s matrix tree theorem.

Greg Egan used Mathematica to count the spanning trees in the examples discussed above, and this let us work out their packing fractions. They tend to be very low! For example, the maximal abelian cover of the dodecahedron gives an 11-dimensional crystal with packing fraction 1/27,648, while the heptagonal tiling of Klein’s quartic gives a 29-dimensional crystal with packing fraction 1/688,257,368,064,000,000.

So, we have some very delicate, wispy crystals in high-dimensional spaces, built from two simple ideas in topology: the maximal abelian cover of a graph, and the natural inner product on 1-chains. They have intriguing connections to tropical geometry, but they are just beginning to be understood in detail. Have fun with them!

For more, see:

• John Baez, Topological crystals.

Part 1 – the basic idea.

Part 2 – the maximal abelian cover of a graph.

Part 3 – constructing topological crystals.

Part 4 – examples of topological crystals.

## Topological Crystals (Part 3)

6 August, 2016

Last time I explained how to create the ‘maximal abelian cover’ of a connected graph. Now I’ll say more about a systematic procedure for embedding this into a vector space. That will give us a topological crystal, like the one above.

Some remarkably symmetrical patterns arise this way! For example, starting from this graph:

we get this:

Nature uses this pattern for crystals of graphene.

Starting from this graph:

we get this:

Nature uses this for crystals of diamond! Since the construction depends only on the topology of the graph we start with, we call this embedded copy of its maximal abelian cover a topological crystal.

Today I’ll remind you how this construction works. I’ll also outline a proof that it gives an embedding of the maximal abelian cover if and only if the graph has no bridges: that is, edges that disconnect the graph when removed. I’ll skip all the hard steps of the proof, but they can be found here:

• John Baez, Topological crystals.

### The homology of graphs

I’ll start with some standard stuff that’s good to know. Let $X$ be a graph. Remember from last time that we’re working in a setup where every edge $e$ goes from a vertex called its source $s(e)$ to a vertex called its target $t(e)$. We write $e: x \to y$ to indicate that $e$ is going from $x$ to $y$. You can think of the edge as having an arrow on it, and if you turn the arrow around you get the inverse edge, $e^{-1}: y \to x$. Also, $e^{-1} \ne e$.

The group of integral 0-chains on $X$, $C_0(X,\mathbb{Z})$, is the free abelian group on the set of vertices of $X$. The group of integral 1-chains on $X$, $C_1(X,\mathbb{Z})$, is the quotient of the free abelian group on the set of edges of $X$ by relations $e^{-1} = -e$ for every edge $e$. The boundary map is the homomorphism

$\partial : C_1(X,\mathbb{Z}) \to C_0(X,\mathbb{Z})$

such that

$\partial e = t(e) - s(e)$

for each edge $e$, and

$Z_1(X,\mathbb{Z}) = \ker \partial$

is the group of integral 1-cycles on $X$.

Remember, a path in a graph is a sequence of edges, the target of each one being the source of the next. Any path $\gamma = e_1 \cdots e_n$ in $X$ determines an integral 1-chain:

$c_\gamma = e_1 + \cdots + e_n$

For any path $\gamma$ we have

$c_{\gamma^{-1}} = -c_{\gamma},$

and if $\gamma$ and $\delta$ are composable then

$c_{\gamma \delta} = c_\gamma + c_\delta$

Last time I explained what it means for two paths to be ‘homologous’. Here’s the quick way to say it. There’s groupoid called the fundamental groupoid of $X$, where the objects are the vertices of $X$ and the morphisms are freely generated by the edges except for relations saying that the inverse of $e: x \to y$ really is $e^{-1}: y \to x$. We can abelianize the fundamental groupoid by imposing relations saying that $\gamma \delta = \delta \gamma$ whenever this equation makes sense. Each path $\gamma : x \to y$ gives a morphism which I’ll call $[[\gamma]] : x \to y$ in the abelianized fundamental groupoid. We say two paths $\gamma, \gamma' : x \to y$ are homologous if $[[\gamma]] = [[\gamma']]$.

Here’s a nice thing:

Lemma A. Let $X$ be a graph. Two paths $\gamma, \delta : x \to y$ in $X$ are homologous if and only if they give the same 1-chain: $c_\gamma = c_\delta$.

Proof. See the paper. You could say they give ‘homologous’ 1-chains, too, but for graphs that’s the same as being equal.   █

We define vector spaces of 0-chains and 1-chains by

$C_0(X,\mathbb{R}) = C_0(X,\mathbb{Z}) \otimes \mathbb{R}, \qquad C_1(X,\mathbb{R}) = C_1(X,\mathbb{Z}) \otimes \mathbb{R},$

respectively. We extend the boundary map to a linear map

$\partial : C_1(X,\mathbb{R}) \to C_0(X,\mathbb{R})$

We let $Z_1(X,\mathbb{R})$ be the kernel of this linear map, or equivalently,

$Z_1(X,\mathbb{R}) = Z_0(X,\mathbb{Z}) \otimes \mathbb{R} ,$

and we call elements of this vector space 1-cycles. Since $Z_1(X,\mathbb{Z})$ is a free abelian group, it forms a lattice in the space of 1-cycles. Any edge of $X$ can be seen as a 1-chain, and there is a unique inner product on $C_1(X,\mathbb{R})$ such that edges form an orthonormal basis (with each edge $e^{-1}$ counting as the negative of $e$.) There is thus an orthogonal projection

$\pi : C_1(X,\mathbb{R}) \to Z_1(X,\mathbb{R}) .$

This is the key to building topological crystals!

### The embedding of atoms

We now come to the main construction, first introduced by Kotani and Sunada. To build a topological crystal, we start with a connected graph $X$ with a chosen basepoint $x_0$. We define an atom to be a homology class of paths starting at the basepoint, like

$[[\alpha]] : x_0 \to x$

Last time I showed that these atoms are the vertices of the maximal abelian cover of $X$. Now let’s embed these atoms in a vector space!

Definition. Let $X$ be a connected graph with a chosen basepoint. Let $A$ be its set of atoms. Define the map

$i : A \to Z_1(X,\mathbb{R})$

by

$i([[ \alpha ]]) = \pi(c_\alpha) .$

That $i$ is well-defined follows from Lemma A. The interesting part is this:

Theorem A. The following are equivalent:

(1) The graph $X$ has no bridges.

(2) The map $i : A \to Z_1(X,\mathbb{R})$ is one-to-one.

Proof. The map $i$ is one-to-one if and only if for any atoms $[[ \alpha ]]$ and $[[ \beta ]]$, $i([[ \alpha ]]) = i([[ \beta ]])$ implies $[[ \alpha ]]= [[ \beta ]]$. Note that $\gamma = \beta^{-1} \alpha$ is a path in $X$ with $c_\gamma = c_{\alpha} - c_\beta$, so

$\pi(c_\gamma) = \pi(c_{\alpha} - c_\beta) = i([[ \alpha ]]) - i([[ \beta ]])$

Since $\pi(c_\gamma)$ vanishes if and only if $c_\gamma$ is orthogonal to every 1-cycle, we have

$c_{\gamma} \textrm{ is orthogonal to every 1-cycle} \; \iff \; i([[ \alpha ]]) = i([[ \beta ]])$

On the other hand, Lemma A says

$c_\gamma = 0 \; \iff \; [[ \alpha ]]= [[ \beta ]].$

Thus, to prove (1)$\iff$(2), it suffices to that show that $X$ has no bridges if and only if every 1-chain $c_\gamma$ orthogonal to every 1-cycle has $c_\gamma =0$. This is Lemma D below.   █

The following lemmas are the key to the theorem above — and also a deeper one saying that if $X$ has no bridges, we can extend $i : A \to Z_1(X,\mathbb{R})$ to an embedding of the whole maximal abelian cover of $X$.

For now, we just need to show that any nonzero 1-chain coming from a path in a bridgeless graph has nonzero inner product with some 1-cycle. The following lemmas, inspired by an idea of Ilya Bogdanov, yield an algorithm for actually constructing such a 1-cycle. This 1-cycle also has other desirable properties, which will come in handy later.

To state these, let a simple path be one in which each vertex appears at most once. Let a simple loop be a loop $\gamma : x \to x$ in which each vertex except $x$ appears at most once, while $x$ appears exactly twice, as the starting point and ending point. Let the support of a 1-chain $c$, denoted $\mathrm{supp}(c)$, be the set of edges $e$ such that $\langle c, e\rangle> 0$. This excludes edges with $\langle c, e \rangle= 0$, but also those with $\langle c , e \rangle < 0$, which are inverses of edges in the support. Note that

$c = \sum_{e \in \mathrm{supp}(c)} \langle c, e \rangle .$

Thus, $\mathrm{supp}(c)$ is the smallest set of edges such that $c$ can be written as a positive linear combination of edges in this set.

Okay, here are the lemmas!

Lemma B. Let $X$ be any graph and let $c$ be an integral 1-cycle on $X$. Then for some $n$ we can write

$c = c_{\sigma_1} + \cdots + c_{\sigma_n}$

where $\sigma_i$ are simple loops with $\mathrm{supp}(c_{\sigma_i}) \subseteq \mathrm{supp}(c)$.

Proof. See the paper. The proof is an algorithm that builds a simple loop $\sigma_1$ with$\mathrm{supp}(c_{\sigma_1}) \subseteq \mathrm{supp}(c)$. We subtract this from $c$, and if the result isn’t zero we repeat the algorithm, continuing to subtract off 1-cycles $c_{\sigma_i}$ until there’s nothing left.   █

Lemma C. Let $\gamma: x \to y$ be a path in a graph $X$. Then for some $n \ge 0$ we can write

$c_\gamma = c_\delta + c_{\sigma_1} + \cdots + c_{\sigma_n}$

where $\delta: x \to y$ is a simple path and $\sigma_i$ are simple loops with $\mathrm{supp}(c_\delta), \mathrm{supp}(c_{\sigma_i}) \subseteq \mathrm{supp}(c_\gamma)$.

Proof. This relies on the previous lemma, and the proof is similar — but when we can’t subtract off any more $c_{\sigma_i}$’s we show what’s left is $c_\delta$ for a simple path $\delta: x \to y$.   █

Lemma D. Let $X$ be a graph. Then the following are equivalent:

(1) $X$ has no bridges.

(2) For any path $\gamma$ in $X$, if $c_\gamma$ is orthogonal to every 1-cycle then $c_\gamma = 0$.

Proof. It’s easy to show a bridge $e$ gives a nonzero 1-chain $c_e$ that’s orthogonal to all 1-cycles, so the hard part is showing that for a bridgeless graph, if $c_\gamma$ is orthogonal to every 1-cycle then $c_\gamma = 0$. The idea is to start with a path for which $c_\gamma \ne 0$. We hit this path with Lemma C, which lets us replace $\gamma$ by a simple path $\delta$. The point is that a simple path is a lot easier to deal with than a general path: a general path could wind around crazily, passing over every edge of our graph multiple times.

Then, assuming $X$ has no bridges, we use Ilya Bogdanov’s idea to build a 1-cycle that’s not orthogonal to $c_\delta$. The basic idea is to take the path $\delta : x \to y$ and write it out as $\delta = e_1 \cdots e_n$. Since the last edge $e_n$ is not a bridge, there must be a path from $y$ back to $x$ that does not use the edge $e_n$ or its inverse. Combining this path with $\delta$ we can construct a loop, which gives a cycle having nonzero inner product with $c_\delta$ and thus with $c_\gamma$.

I’m deliberately glossing over some difficulties that can arise, so see the paper for details!   █

### Embedding the whole crystal

Okay: so far, we’ve taken a connected bridgeless graph $X$ and embedded its atoms into the space of 1-cycles via a map

$i : A \to Z_1(X,\mathbb{R}) .$

These atoms are the vertices of the maximal abelian cover $\overline{X}$. Now we’ll extend $i$ to an embedding of the whole graph $\overline{X}$ — or to be precise, its geometric realization $|\overline{X}|$. Remember, for us a graph is an abstract combinatorial gadget; its geometric realization is a topological space where the edges become closed intervals.

The idea is that just as $i$ maps each atom to a point in the vector space $Z_1(X,\mathbb{R})$, $j$ maps each edge of $|\overline{X}|$ to a straight line segment between such points. These line segments serve as the ‘bonds’ of a topological crystal. The only challenge is to show that these bonds do not cross each other.

Theorem B. If $X$ is a connected graph with basepoint, the map $i : A \to Z_1(X,\mathbb{R})$ extends to a continuous map

$j : |\overline{X}| \to Z_1(X,\mathbb{R})$

sending each edge of $|\overline{X}|$ to a straight line segment in $Z_1(X,\mathbb{R})$. If $X$ has no bridges, then $j$ is one-to-one.

Proof. The first part is easy; the second part takes real work! The problem is to show the edges don’t cross. Greg Egan and I couldn’t do it using just Lemma D above. However, there’s a nice argument that goes back and uses Lemma C — read the paper for details.

As usual, history is different than what you read in math papers: David Speyer gave us a nice proof of Lemma D, and that was good enough to prove that atoms are mapped into the space of 1-cycles in a one-to-one way, but we only came up with Lemma C after weeks of struggling to prove the edges don’t cross.   █

### Connections to tropical geometry

Tropical geometry sets up a nice analogy between Riemann surfaces and graphs. The Abel–Jacobi map embeds any Riemann surface $\Sigma$ in its Jacobian, which is the torus $H_1(\Sigma,\mathbb{R})/H_1(\Sigma,\mathbb{Z})$. We can similarly define the Jacobian of a graph $X$ to be $H_1(X,\mathbb{R})/H_1(X,\mathbb{Z})$. Theorem B yields a way to embed a graph, or more precisely its geometric realization $|X|$, into its Jacobian. This is the analogue, for graphs, of the Abel–Jacobi map.

After I put this paper on the arXiv, I got an email from Matt Baker saying that he had already proved Theorem A — or to be precise, something that’s clearly equivalent. It’s Theorem 1.8 here:

• Matthew Baker and Serguei Norine, Riemann–Roch and Abel–Jacobi theory on a finite graph.

This says that the vertices of a bridgeless graph $X$ are embedded in its Jacobian by means of the graph-theoretic analogue of the Abel–Jacobi map.

What I really want to know is whether someone’s written up a proof that this map embeds the whole graph, not just its vertices, into its Jacobian in a one-to-one way. That would imply Theorem B. For more on this, try my conversation with David Speyer.

Anyway, there’s a nice connection between topological crystallography and tropical geometry, and not enough communication between the two communities. Once I figure out what the tropical folks have proved, I will revise my paper to take that into account.

Next time I’ll talk about more examples of topological crystals!

Part 1 – the basic idea.

Part 2 – the maximal abelian cover of a graph.

Part 3 – constructing topological crystals.

Part 4 – examples of topological crystals.

## Topological Crystals (Part 2)

27 July, 2016

We’re building crystals, like diamonds, purely from topology. Last time I said how: you take a graph $X$ and embed its maximal abelian cover into the vector space $H_1(X,\mathbb{R}).$ Now let me say a bit more about the maximal abelian cover. It’s not nearly as famous as the universal cover, but it’s very nice.

First I’ll whiz though the basic idea, and then I’ll give the details.

### The basic idea

By ‘space’ let me mean a connected topological space that’s locally nice. The basic idea is that if $X$ is some space, its universal cover $\widetilde{X}$ is a covering space of $X$ that covers all other covering spaces of $X.$ The maximal abelian cover $\overline{X}$ has a similar universal property—but it’s abelian, and it covers all abelian connected covers. A cover is abelian if its group of deck transformations is abelian.

The cool part is that universal covers are to homotopy theory as maximal abelian covers are to homology theory.

What do I mean by that? For starters, points in $\widetilde{X}$ are just homotopy classes of paths in $X$ starting at some chosen basepoint. And the points in $\overline{X}$ are just ‘homology classes’ of paths starting at the basepoint.

But people don’t talk so much about ‘homology classes’ of paths. So what do I mean by that? Here a bit of category theory comes in handy. Homotopy classes of paths in $X$ are morphisms in the fundamental groupoid of $X.$ Homology classes of paths are morphisms in the abelianized version of the fundamental groupoid!

But wait a minute — what does that mean? Well, we can abelianize any groupoid by imposing the relations

$f g = g f$

whenever it makes sense to do so. It makes sense to do so when you can compose the morphisms $f : x \to y$ and $g : x' \to y'$ in either order, and the resulting morphisms $f g$ and $g f$ have the same source and the same target. And if you work out what that means, you’ll see it means

$x = y = x' = y'$

But now let me say it all much more slowly, for people who want a more relaxed treatment.

### The details

There are lots of slightly different things called ‘graphs’ in mathematics, but in topological crystallography it’s convenient to work with one that you’ve probably never seen before. This kind of graph has two copies of each edge, one pointing in each direction.

So, we’ll say a graph $X = (E,V,s,t,i)$ has a set $V$ of vertices, a set $E$ of edges, maps $s,t : E \to V$ assigning to each edge its source and target, and a map $i : E \to E$ sending each edge to its inverse, obeying

$s(i(e)) = t(e), \quad t(i(e)) = s(e) , \qquad i(i(e)) = e$

and

$i(e) \ne e$

for all $e \in E.$

That inequality at the end will make category theorists gag: definitions should say what’s true, not what’s not true. But category theorists should be able to see what’s really going on here, so I leave that as a puzzle.

For ordinary folks, let me repeat the definition using more words. If $s(e) = v$ and $t(e) = w$ we write $e : v \to w,$ and draw $e$ as an interval with an arrow on it pointing from $v$ to $w.$ We write $i(e)$ as $e^{-1},$ and draw $e^{-1}$ as the same interval as $e,$ but with its arrow reversed. The equations obeyed by $i$ say that taking the inverse of $e : v \to w$ gives an edge $e^{-1} : w \to v$ and that $(e^{-1})^{-1} = e.$ No edge can be its own inverse.

A map of graphs, say $f : X \to X',$ is a pair of functions, one sending vertices to vertices and one sending edges to edges, that preserve the source, target and inverse maps. By abuse of notation we call both of these functions $f.$

I started out talking about topology; now I’m treating graphs very combinatorially, but we can bring the topology back in. From a graph $X$ we can build a topological space $|X|$ called its geometric realization. We do this by taking one point for each vertex and gluing on one copy of $[0,1]$ for each edge $e : v \to w,$ gluing the point $0$ to $v$ and the point $1$ to $w,$ and then identifying the interval for each edge $e$ with the interval for its inverse by means of the map $t \mapsto 1 - t.$

Any map of graphs gives rise to a continuous map between their geometric realizations, and we say a map of graphs is a cover if this continuous map is a covering map. For simplicity we denote the fundamental group of $|X|$ by $\pi_1(X),$ and similarly for other topological invariants of $|X|.$ However, sometimes I’ll need to distinguish between a graph $X$ and its geometric realization $|X|.$

Any connected graph $X$ has a universal cover, meaning a connected cover

$p : \widetilde{X} \to X$

that covers every other connected cover. The geometric realization of $\widetilde{X}$ is connected and simply connected. The fundamental group $\pi_1(X)$ acts as deck transformations of $\widetilde{X},$ meaning invertible maps $g : \widetilde{X} \to \widetilde{X}$ such that $p \circ g = p.$ We can take the quotient of $\widetilde{X}$ by the action of any subgroup $G \subseteq \pi_1(X)$ and get a cover $q : \widetilde{X}/G \to X.$

In particular, if we take $G$ to be the commutator subgroup of $\pi_1(X),$ we call the graph $\widetilde{X}/G$ the maximal abelian cover of the graph $X,$ and denote it by $\overline{X}.$ We obtain a cover

$q : \overline{X} \to X$

whose group of deck transformations is the abelianization of $\pi_1(X).$ This is just the first homology group $H_1(X,\mathbb{Z}).$ In particular, if the space corresponding to $X$ has $n$ holes, this is the free abelian group on
$n$ generators.

I want a concrete description of the maximal abelian cover! I’ll build it starting with the universal cover, but first we need some preliminaries on paths in graphs.

Given vertices $x,y$ in $X,$ define a path from $x$ to $y$ to be a word of edges $\gamma = e_1 \cdots e_\ell$ with $e_i : v_{i-1} \to v_i$ for some vertices $v_0, \dots, v_\ell$ with $v_0 = x$ and $v_\ell = y.$ We allow the word to be empty if and only if $x = y$; this gives the trivial path from $x$ to itself.

Given a path $\gamma$ from $x$ to $y$ we write $\gamma : x \to y,$ and we write the trivial path from $x$ to itself as $1_x : x \to x.$ We define the composite of paths $\gamma : x \to y$ and $\delta : y \to z$ via concatenation of words, obtaining a path we call $\gamma \delta : x \to z.$ We call a path from a vertex $x$ to itself a loop based at $x.$

We say two paths from $x$ to $y$ are homotopic if one can be obtained from the other by repeatedly introducing or deleting subwords of the form $e_i e_{i+1}$ where $e_{i+1} = e_i^{-1}.$ If $[\gamma]$ is a homotopy class of paths from $x$ to $y,$ we write $[\gamma] : x \to y.$ We can compose homotopy classes $[\gamma] : x \to y$ and $[\delta] : y \to z$ by setting $[\gamma] [\delta] = [\gamma \delta].$

If $X$ is a connected graph, we can describe the universal cover $\widetilde{X}$ as follows. Fix a vertex $x_0$ of $X,$ which we call the basepoint. The vertices of $\widetilde{X}$ are defined to be the homotopy classes of paths $[\gamma] : x_0 \to x$ where $x$ is arbitrary. The edges in $\widetilde{X}$ from the vertex $[\gamma] : x_0 \to x$ to the vertex $[\delta] : x_0 \to y$ are defined to be the edges $e \in E$ with $[\gamma e] = [\delta].$ In fact, there is always at most one such edge. There is an obvious map of graphs

$p : \widetilde{X} \to X$

sending each vertex $[\gamma] : x_0 \to x$ of $\widetilde{X}$ to the vertex
$x$ of $X.$ This map is a cover.

Now we are ready to construct the maximal abelian cover $\overline{X}.$ For this, we impose a further equivalence relation on paths, which is designed to make composition commutative whenever possible. However, we need to be careful. If $\gamma : x \to y$ and $\delta : x' \to y' ,$ the composites $\gamma \delta$ and $\delta \gamma$ are both well-defined if and only if $x' = y$ and $y' = x.$ In this case, $\gamma \delta$ and $\delta \gamma$ share the same starting point and share the same ending point if and only if $x = x'$ and $y = y'.$ If all four of these equations hold, both $\gamma$ and $\delta$ are loops based at $x.$ So, we shall impose the relation $\gamma \delta = \delta \gamma$ only in this case.

We say two paths are homologous if one can be obtained from another by:

• repeatedly introducing or deleting subwords $e_i e_{i+1}$ where
$e_{i+1} = e_i^{-1},$ and/or

• repeatedly replacing subwords of the form

$e_i \cdots e_j e_{j+1} \cdots e_k$

by those of the form

$e_{j+1} \cdots e_k e_i \cdots e_j$

where $e_i \cdots e_j$ and $e_{j+1} \cdots e_k$ are loops based at the same vertex.

My use of the term ‘homologous’ is a bit nonstandard here!

We denote the homology class of a path $\gamma$ by $[[ \gamma ]].$ Note that if two paths $\gamma : x \to y,$ $\delta : x' \to y'$ are homologous then $x = x'$ and $y = y'.$ Thus, the starting and ending points of a homology class of paths are well-defined, and given any path $\gamma : x \to y$ we write $[[ \gamma ]] : x \to y .$ The composite of homology classes is also well-defined if we set

$[[ \gamma ]] [[ \delta ]] = [[ \gamma \delta ]]$

We construct the maximal abelian cover of a connected graph $X$ just as we constructed its universal cover, but using homology classes rather than homotopy classes of paths. And now I’ll introduce some jargon that should make you start thinking about crystals!

Fix a basepoint $x_0$ for $X.$ The vertices of $\overline{X},$ or atoms, are defined to be the homology classes of paths $[[\gamma]] : x_0 \to x$ where $x$ is arbitrary. Any edge of $\overline{X},$ or bond, goes from some atom $[[ \gamma]] : x_0 \to x$ to the some atom $[[ \delta ]] : x_0 \to y.$ The bonds from $[[ \gamma]]$ to $[[ \delta ]]$ are defined to be the edges $e \in E$ with $[[ \gamma e ]] = [[ \delta ]].$ There is at most one bond between any two atoms. Again we have a covering map

$q : \overline{X} \to X .$

The homotopy classes of loops based at $x_0$ form a group, with composition as the group operation. This is the fundamental group $\pi_1(X)$ of the graph $X.$ This is isomorphic as the fundamental group of the space associated to $X.$ By our construction of the universal cover, $\pi_1(X)$ is also the set of vertices of $\widetilde{X}$ that are mapped to $x_0$ by $p.$ Furthermore, any element $[\gamma] \in \pi_1(X)$ defines a deck transformation of $\widetilde{X}$ that sends each vertex $[\delta] : x_0 \to x$ to the vertex $[\gamma] [\delta] : x_0 \to x.$

Similarly, the homology classes of loops based at $x_0$ form a group with composition as the group operation. Since the additional relation used to define homology classes is precisely that needed to make composition of homology classes of loops commutative, this group is the abelianization of $\pi_1(X).$ It is therefore isomorphic to the first homology group $H_1(X,\mathbb{Z})$ of the geometric realization of $X.$

By our construction of the maximal abelian cover, $H_1(X,\mathbb{Z})$ is also the set of vertices of $\overline{X}$ that are mapped to $x_0$ by $q.$ Furthermore, any element $[[\gamma]] \in H_1(X,\mathbb{Z})$ defines a deck transformation of $\overline{X}$ that sends each vertex $[[\delta]] : x_0 \to x$ to the vertex $[[\gamma]] [[\delta]] : x_0 \to x.$

So, it all works out! The fundamental group $\pi_1(X)$ acts as deck transformations of the universal cover, while the first homology group $H_1(X,\mathbb{Z})$ acts as deck transformations of the maximal abelian cover.

Puzzle for experts: what does this remind you of in Galois theory?

We’ll get back to crystals next time.

Part 1 – the basic idea.

Part 2 – the maximal abelian cover of a graph.

Part 3 – constructing topological crystals.

Part 4 – examples of topological crystals.

## Topological Crystals (Part 1)

22 July, 2016

A while back, we started talking about crystals:

• John Baez, Diamonds and triamonds, Azimuth, 11 April 2016.

In the comments on that post, a bunch of us worked on some puzzles connected to ‘topological crystallography’—a subject that blends graph theory, topology and mathematical crystallography. You can learn more about that subject here:

• Tosio Sunada, Crystals that nature might miss creating, Notices of the AMS 55 (2008), 208–215.

I got so interested that I wrote this paper about it, with massive help from Greg Egan:

• John Baez, Topological crystals.

I’ll explain the basic ideas in a series of posts here.

First, a few personal words.

I feel a bit guilty putting so much work into this paper when I should be developing network theory to the point where it does our planet some good. I seem to need a certain amount of beautiful pure math to stay sane. But this project did at least teach me a lot about the topology of graphs.

For those not in the know, applying homology theory to graphs might sound fancy and interesting. For people who have studied a reasonable amount of topology, it probably sounds easy and boring. The first homology of a graph of genus $g$ is a free abelian group on $g$ generators: it’s a complete invariant of connected graphs up to homotopy equivalence. Case closed!

But there’s actually more to it, because studying graphs up to homotopy equivalence kills most of the fun. When we’re studying networks in real life we need a more refined outlook on graphs. So some aspects of this project might pay off, someday, in ways that have nothing to do with crystallography. But right now I’ll just talk about it as a fun self-contained set of puzzles.

I’ll start by quickly sketching how to construct topological crystals, and illustrate it with the example of graphene, a 2-dimensional form of carbon:

I’ll precisely state our biggest result, which says when this construction gives a crystal where the atoms don’t bump into each other and the bonds between atoms don’t cross each other. Later I may come back and add detail, but for now you can find details in our paper.

### Constructing topological crystals

The ‘maximal abelian cover’ of a graph plays a key role in Sunada’s work on topological crystallography. Just as the universal cover of a connected graph $X$ has the fundamental group $\pi_1(X)$ as its group of deck transformations, the maximal abelian cover, denoted $\overline{X},$ has the abelianization of $\pi_1(X)$ as its group of deck transformations. It thus covers every other connected cover of $X$ whose group of deck transformations is abelian. Since the abelianization of $\pi_1(X)$ is the first homology group $H_1(X,\mathbb{Z}),$ there is a close connection between the maximal abelian cover and homology theory.

In our paper, Greg and I prove that for a large class of graphs, the maximal abelian cover can naturally be embedded in the vector space $H_1(X,\mathbb{R}).$ We call this embedded copy of $\overline{X}$ a ‘topological crystal’. The symmetries of the original graph can be lifted to symmetries of its topological crystal, but the topological crystal also has an $n$-dimensional lattice of translational symmetries. In 2- and 3-dimensional examples, the topological crystal can serve as the blueprint for an actual crystal, with atoms at the vertices and bonds along the edges.

The general construction of topological crystals was developed by Kotani and Sunada, and later by Eon. Sunada uses ‘topological crystal’ for an even more general concept, but we only need a special case.

Here’s how it works. We start with a graph $X.$ This has a space $C_0(X,\mathbb{R})$ of 0-chains, which are formal linear combinations of vertices, and a space $C_1(X,\mathbb{R})$ of 1-chains, which are formal linear combinations of edges. There is a boundary operator

$\partial \colon C_1(X,\mathbb{R}) \to C_0(X,\mathbb{R})$

This is the linear operator sending any edge to the difference of its two endpoints. The kernel of this operator is called the space of 1-cycles, $Z_1(X,\mathbb{R}).$ There is an inner product on the space of 1-chains such that edges form an orthonormal basis. This determines an orthogonal projection

$\pi \colon C_1(X,\mathbb{R}) \to Z_1(X,\mathbb{R})$

For a graph, $Z_1(X,\mathbb{R})$ is isomorphic to the first homology group $H_1(X,\mathbb{R}).$ So, to obtain the topological crystal of $X,$ we need only embed its maximal abelian cover $\overline{X}$ in $Z_1(X,\mathbb{R}).$ We do this by embedding $\overline{X}$ in $C_1(X,\mathbb{R})$ and then projecting it down via $\pi.$

To accomplish this, we need to fix a basepoint for $X.$ Each path $\gamma$ in $X$ starting at this basepoint determines a 1-chain $c_\gamma.$ These 1-chains correspond to the vertices of $\overline{X}.$ The graph $\overline{X}$ has an edge from $c_\gamma$ to $c_{\gamma'}$ whenever the path $\gamma'$ is obtained by adding an extra edge to $\gamma.$ This edge is a straight line segment from the point $c_\gamma$ to the point $c_{\gamma'}.$

The hard part is checking that the projection $\pi$ maps this copy of $\overline{X}$ into $Z_1(X,\mathbb{R})$ in a one-to-one manner. In Theorems 6 and 7 of our paper we prove that this happens precisely when the graph $X$ has no ‘bridges’: that is, edges whose removal would disconnect $X.$

Kotani and Sunada noted that this condition is necessary. That’s actually pretty easy to see. The challenge was to show that it’s sufficient! For this, our main technical tool is Lemma 5, which for any path $\gamma$ decomposes the 1-chain $c_\gamma$ into manageable pieces.

We call the resulting copy of $\overline{X}$ embedded in $Z_1(X,\mathbb{R})$ a topological crystal.

Let’s see how it works in an example!

Take $X$ to be this graph:

Since $X$ has 3 edges, the space of 1-chains is 3-dimensional. Since $X$ has 2 holes, the space of 1-cycles is a 2-dimensional plane in this 3-dimensional space. If we consider paths $\gamma$ in $X$ starting at the red vertex, form the 1-chains $c_\gamma,$ and project them down to this plane, we obtain the following picture:

Here the 1-chains $c_\gamma$ are the white and red dots. These are the vertices of $\overline{X},$ while the line segments between them are the edges of $\overline{X}.$ Projecting these vertices and edges onto the plane of 1-cycles, we obtain the topological crystal for $X.$ The blue dots come from projecting the white dots onto the plane of 1-cycles, while the red dots already lie on this plane. The resulting topological crystal provides the pattern for graphene:

That’s all there is to the basic idea! But there’s a lot more to say about it, and a lot of fun examples to look at: diamonds, triamonds, hyperquartz and more.

Part 1 – the basic idea.

Part 2 – the maximal abelian cover of a graph.

Part 3 – constructing topological crystals.

Part 4 – examples of topological crystals.

## Diamonds and Triamonds

11 April, 2016

The structure of a diamond crystal is fascinating. But there’s an equally fascinating form of carbon, called the triamond, that’s theoretically possible but never yet seen in nature. Here it is:

In the triamond, each carbon atom is bonded to three others at 120° angles, with one double bond and two single bonds. Its bonds lie in a plane, so we get a plane for each atom.

But here’s the tricky part: for any two neighboring atoms, these planes are different. In fact, if we draw the bond planes for all the atoms in the triamond, they come in four kinds, parallel to the faces of a regular tetrahedron!

If we discount the difference between single and double bonds, the triamond is highly symmetrical. There’s a symmetry carrying any atom and any of its bonds to any other atom and any of its bonds. However, the triamond has an inherent handedness, or chirality. It comes in two mirror-image forms.

A rather surprising thing about the triamond is that the smallest rings of atoms are 10-sided. Each atom lies in 15 of these 10-sided rings.

Some chemists have argued that the triamond should be ‘metastable’ at room temperature and pressure: that is, it should last for a while but eventually turn to graphite. Diamonds are also considered metastable, though I’ve never seen anyone pull an old diamond ring from their jewelry cabinet and discover to their shock that it’s turned to graphite. The big difference is that diamonds are formed naturally under high pressure—while triamonds, it seems, are not.

Nonetheless, the mathematics behind the triamond does find its way into nature. A while back I told you about a minimal surface called the ‘gyroid’, which is found in many places:

It turns out that the pattern of a gyroid is closely connected to the triamond! So, if you’re looking for a triamond-like pattern in nature, certain butterfly wings are your best bet:

• Matthias Weber, The gyroids: algorithmic geometry III, The Inner Frame, 23 October 2015.

Instead of trying to explain it here, I’ll refer you to the wonderful pictures at Weber’s blog.

### Building the triamond

I want to tell you a way to build the triamond. I saw it here:

• Toshikazu Sunada, Crystals that nature might miss creating, Notices of the American Mathematical Society 55 (2008), 208–215.

This is the paper that got people excited about the triamond, though it was discovered much earlier by the crystallographer Fritz Laves back in 1932, and Coxeter named it the Laves graph.

It’s called $\mathrm{K}_4,$ since it’s the complete graph on four vertices, meaning there’s one edge between each pair of vertices. The vertices correspond to four different kinds of atoms in the triamond: let’s call them red, green, yellow and blue. The edges of this graph have arrows on them, labelled with certain vectors

$e_1, e_2, e_3, f_1, f_2, f_3 \in \mathbb{R}^3$

Let’s not worry yet about what these vectors are. What really matters is this: to move from any atom in the triamond to any of its neighbors, you move along the vector labeling the edge between them… or its negative, if you’re moving against the arrow.

For example, suppose you’re at any red atom. It has 3 nearest neighbors, which are blue, green and yellow. To move to the blue neighbor you add $f_1$ to your position. To move to the green one you subtract $e_2,$ since you’re moving against the arrow on the edge connecting blue and green. Similarly, to go to the yellow neighbor you subtract the vector $f_3$ from your position.

Thus, any path along the bonds of the triamond determines a path in the graph $\mathrm{K}_4.$

Conversely, if you pick an atom of some color in the triamond, any path in $\mathrm{K}_4$ starting from the vertex of that color determines a path in the triamond! However, going around a loop in $\mathrm{K}_4$ may not get you back to the atom you started with in the triamond.

Mathematicians summarize these facts by saying the triamond is a ‘covering space’ of the graph $\mathrm{K}_4.$

Now let’s see if you can figure out those vectors.

Puzzle 1. Find vectors $e_1, e_2, e_3, f_1, f_2, f_3 \in \mathbb{R}^3$ such that:

A) All these vectors have the same length.

B) The three vectors coming out of any vertex lie in a plane at 120° angles to each other:

For example, $f_1, -e_2$ and $-f_3$ lie in a plane at 120° angles to each other. We put in two minus signs because two arrows are pointing into the red vertex.

C) The four planes we get this way, one for each vertex, are parallel to the faces of a regular tetrahedron.

If you want, you can even add another constraint:

D) All the components of the vectors $e_1, e_2, e_3, f_1, f_2, f_3$ are integers.

### Diamonds and hyperdiamonds

That’s the triamond. Compare the diamond:

Here each atom of carbon is connected to four others. This pattern is found not just in carbon but also other elements in the same column of the periodic table: silicon, germanium, and tin. They all like to hook up with four neighbors.

The pattern of atoms in a diamond is called the diamond cubic. It’s elegant but a bit tricky. Look at it carefully!

To build it, we start by putting an atom at each corner of a cube. Then we put an atom in the middle of each face of the cube. If we stopped there, we would have a face-centered cubic. But there are also four more carbons inside the cube—one at the center of each tetrahedron we’ve created.

If you look really carefully, you can see that the full pattern consists of two interpenetrating face-centered cubic lattices, one offset relative to the other along the cube’s main diagonal.

The face-centered cubic is the 3-dimensional version of a pattern that exists in any dimension: the Dn lattice. To build this, take an n-dimensional checkerboard and alternately color the hypercubes red and black. Then, put a point in the center of each black hypercube!

You can also get the Dn lattice by taking all n-tuples of integers that sum to an even integer. Requiring that they sum to something even is a way to pick out the black hypercubes.

The diamond is also an example of a pattern that exists in any dimension! I’ll call this the hyperdiamond, but mathematicians call it Dn+, because it’s the union of two copies of the Dn lattice. To build it, first take all n-tuples of integers that sum to an even integer. Then take all those points shifted by the vector (1/2, …, 1/2).

In any dimension, the volume of the unit cell of the hyperdiamond is 1, so mathematicians say it’s unimodular. But only in even dimensions is the sum or difference of any two points in the hyperdiamond again a point in the hyperdiamond. Mathematicians call a discrete set of points with this property a lattice.

If even dimensions are better than odd ones, how about dimensions that are multiples of 4? Then the hyperdiamond is better still: it’s an integral lattice, meaning that the dot product of any two vectors in the lattice is again an integer.

And in dimensions that are multiples of 8, the hyperdiamond is even better. It’s even, meaning that the dot product of any vector with itself is even.

In fact, even unimodular lattices are only possible in Euclidean space when the dimension is a multiple of 8. In 8 dimensions, the only even unimodular lattice is the 8-dimensional hyperdiamond, which is usually called the E8 lattice. The E8 lattice is one of my favorite entities, and I’ve written a lot about it in this series:

To me, the glittering beauty of diamonds is just a tiny hint of the overwhelming beauty of E8.

But let’s go back down to 3 dimensions. I’d like to describe the diamond rather explicitly, so we can see how a slight change produces the triamond.

It will be less stressful if we double the size of our diamond. So, let’s start with a face-centered cubic consisting of points whose coordinates are even integers summing to a multiple of 4. That consists of these points:

(0,0,0)   (2,2,0)   (2,0,2)   (0,2,2)

and all points obtained from these by adding multiples of 4 to any of the coordinates. To get the diamond, we take all these together with another face-centered cubic that’s been shifted by (1,1,1). That consists of these points:

(1,1,1)   (3,3,1)   (3,1,3)   (1,3,3)

and all points obtained by adding multiples of 4 to any of the coordinates.

(0,0,0)   (1,2,3)   (2,3,1)   (3,1,2)

and all the points obtain from these by adding multiples of 4 to any of the coordinates. To get the triamond, we take all these together with another copy of these points that’s been shifted by (2,2,2). That other copy consists of these points:

(2,2,2)   (3,0,1)   (0,1,3)   (1,3,0)

and all points obtained by adding multiples of 4 to any of the coordinates.

Unlike the diamond, the triamond has an inherent handedness, or chirality. You’ll note how we used the point (1,2,3) and took cyclic permutations of its coordinates to get more points. If we’d started with (3,2,1) we would have gotten the other, mirror-image version of the triamond.

### Covering spaces

I mentioned that the triamond is a ‘covering space’ of the graph $\mathrm{K}_4.$ More precisely, there’s a graph $T$ whose vertices are the atoms of the triamond, and whose edges are the bonds of the triamond. There’s a map of graphs

$p: T \to \mathrm{K}_4$

This automatically means that every path in $T$ is mapped to a path in $\mathrm{K}_4.$ But what makes $T$ a covering space of $\mathrm{K}_4$ is that any path in $T$ comes from a path in $\mathrm{K}_4,$ which is unique after we choose its starting point.

If you’re a high-powered mathematician you might wonder if $T$ is the universal covering space of $\mathrm{K}_4.$ It’s not, but it’s the universal abelian covering space.

What does this mean? Any path in $\mathrm{K}_4$ gives a sequence of vectors $e_1, e_2, e_3, f_1, f_2, f_3$ and their negatives. If we pick a starting point in the triamond, this sequence describes a unique path in the triamond. When does this path get you back where you started? The answer, I believe, is this: if and only if you can take your sequence, rewrite it using the commutative law, and cancel like terms to get zero. This is related to how adding vectors in $\mathbb{R}^3$ is a commutative operation.

For example, there’s a loop in $\mathrm{K}_4$ that goes “red, blue, green, red”. This gives the sequence of vectors

$f_1, -e_3, e_2$

We can turn this into an expression

$f_1 - e_3 + e_2$

However, we can’t simplify this to zero using just the commutative law and cancelling like terms. So, if we start at some red atom in the triamond and take the unique path that goes “red, blue, green, red”, we do not get back where we started!

Note that in this simplification process, we’re not allowed to use what the vectors “really are”. It’s a purely formal manipulation.

Puzzle 2. Describe a loop of length 10 in the triamond using this method. Check that you can simplify the corresponding expression to zero using the rules I described.

A similar story works for the diamond, but starting with a different graph:

The graph formed by a diamond’s atoms and the edges between them is the universal abelian cover of this little graph! This graph has 2 vertices because there are 2 kinds of atom in the diamond. It has 4 edges because each atom has 4 nearest neighbors.

Puzzle 3. What vectors should we use to label the edges of this graph, so that the vectors coming out of any vertex describe how to move from that kind of atom in the diamond to its 4 nearest neighbors?

There’s also a similar story for graphene, which is hexagonal array of carbon atoms in a plane:

Puzzle 4. What graph with edges labelled by vectors in $\mathbb{R}^2$ should we use to describe graphene?

I don’t know much about how this universal abelian cover trick generalizes to higher dimensions, though it’s easy to handle the case of a cubical lattice in any dimension.

Puzzle 5. I described higher-dimensional analogues of diamonds: are there higher-dimensional triamonds?

### References

The Wikipedia article is good:

• Wikipedia, Laves graph.

They say this graph has many names: the K4 crystal, the (10,3)-a network, the srs net, the diamond twin, and of course the triamond. The name triamond is not very logical: while each carbon has 3 neighbors in the triamond, each carbon has not 2 but 4 neighbors in the diamond. So, perhaps the diamond should be called the ‘quadriamond’. In fact, the word ‘diamond’ has nothing to do with the prefix ‘di-‘ meaning ‘two’. It’s more closely related to the word ‘adamant’. Still, I like the word ‘triamond’.

This paper describes various attempts to find the Laves graph in chemistry:

• Stephen T. Hyde, Michael O’Keeffe, and Davide M. Proserpio, A short history of an elusive yet ubiquitous structure in chemistry, materials, and mathematics, Angew. Chem. Int. Ed. 47 (2008), 7996–8000.

This paper does some calculations arguing that the triamond is a metastable form of carbon:

• Masahiro Itoh et al, New metallic carbon crystal, Phys. Rev. Lett. 102 (2009), 055703.

Abstract. Recently, mathematical analysis clarified that sp2 hybridized carbon should have a three-dimensional crystal structure ($\mathrm{K}_4$) which can be regarded as a twin of the sp3 diamond crystal. In this study, various physical properties of the $\mathrm{K}_4$ carbon crystal, especially for the electronic properties, were evaluated by first principles calculations. Although the $\mathrm{K}_4$ crystal is in a metastable state, a possible pressure induced structural phase transition from graphite to $\mathrm{K}_4$ was suggested. Twisted π states across the Fermi level result in metallic properties in a new carbon crystal.

The picture of the $\mathrm{K}_4$ crystal was placed on Wikicommons by someone named ‘Workbit’, under a Creative Commons Attribution-Share Alike 4.0 International license. The picture of the tetrahedron was made using Robert Webb’s Stella software and placed on Wikicommons. The pictures of graphs come from Sunada’s paper, though I modified the picture of $\mathrm{K}_4.$ The moving image of the diamond cubic was created by H.K.D.H. Bhadeshia and put into the public domain on Wikicommons. The picture of graphene was drawn by Dr. Thomas Szkopek and put into the public domain on Wikicommons.

## Mathematics in Biochemical Kinetics and Engineering

23 March, 2016

Anyone who was interested in the Workshop on Mathematical Trends in Reaction Network Theory last summer in Copenhagen might be interested in this:

Mathematics in (bio)Chemical Kinetics and Engineering (MaCKiE 2017), Budapest, 25–27 May, 2017.

This conference is planned so that it starts right after another one: the 14th Joint European Thermodynamics Conference will be in Budapest from the 21st to the 25th.

Since its first event in 2002, the MaCKiE workshop is organized in every second year. The previous meetings were held in Ghent (Belgium), Chennai (India), Heidelberg (Germany), and Houston (USA). The meeting aims to bring together scientists interested in the application of advanced mathematical methods to describe kinetic phenomena, especially chemists, mathematicians, physicist, biologists, and engineers. The acronym MaCKiE naturally comes from the title of the conference, but is also part of the German name of Mack the Knife in Brecht and Weill’s Threepenny Opera, Mackie Messer, and is phonetically indistinguishable from “makkie” in Dutch, optimistically meaning “a cinch”.

Conference papers will be published in Reaction Kinetics, Mechanisms and Catalysis in early 2018.

## Glycolysis (Part 2)

18 January, 2016

Glyolysis is a way that organisms can get free energy from glucose without needing oxygen. Animals like you and me can do glycolysis, but we get more free energy from oxidizing glucose. Other organisms are anaerobic: they don’t need oxygen. And some, like yeast, survive mainly by doing glycolysis!

If you put yeast cells in water containing a constant low concentration of glucose, they convert it into alcohol at a constant rate. But if you increase the concentration of glucose something funny happens. The alcohol output starts to oscillate!

It’s not that the yeast is doing something clever and complicated. If you break down the yeast cells, killing them, this effect still happens. People think these oscillations are inherent to the chemical reactions in glycolysis.

I learned this after writing Part 1, thanks to Alan Rendall. I first met Alan when we were both working on quantum gravity. But last summer I met him in Copenhagen, where we both attending the workshop Trends in reaction network theory. It turned out that now he’s deep into the mathematics of biochemistry, especially chemical oscillations! He has a blog, and he’s written some great articles on glycolysis:

• Alan Rendall, Albert Goldbeter and glycolytic oscillations, Hydrobates, 21 January 2012.

• Alan Rendall, The Higgins–Selkov oscillator, Hydrobates, 14 May 2014.

In case you’re wondering, Hydrobates is the name of a kind of sea bird, the storm petrel. Alan is fond of sea birds. Since the ultimate goal of my work is to help our relationship with nature, this post is dedicated to the storm petrel:

### The basics

Last time I gave a summary description of glycolysis:

2 pyruvate + 2 NADH + 2 H+ + 2 ATP + 2 H2O

The idea is that a single molecule of glucose:

gets split into two molecules of pyruvate:

The free energy released from this process is used to take two molecules of adenosine diphosphate or ADP:

and attach to each one phosphate group, typically found as phosphoric acid:

thus producing two molecules of adenosine triphosphate or ATP:

along with 2 molecules of water.

But in the process, something else happens too! 2 molecules of nicotinamide adenine dinucleotide NAD get reduced. That is, they change from the oxidized form called NAD+:

to the reduced form called NADH, along with two protons: that is, 2 H+.

Puzzle 1. Why does NAD+ have a little plus sign on it, despite the two O’s in the picture above?

Left alone in water, ATP spontaneously converts back to ADP and phosphate:

ATP + H2O → ADP + phosphate

This process gives off 30.5 kilojoules of energy per mole. The cell harnesses this to do useful work by coupling this reaction to others. Thus, ATP serves as ‘energy currency’, and making it is the main point of glycolysis.

The cell can also use NADH to do interesting things. It generally has more free energy than NAD+, so it can power things while turning back into NAD+. Just how much more free energy it has depends a lot on conditions in the cell: for example, on the pH.

Puzzle 2. There is often roughly 700 times as much NAD+ as NADH in the cytoplasm of mammals. In these conditions, what is the free energy difference between NAD+ and NADH? I think this is something you’re supposed to be able to figure out.

Nothing in what I’ve said so far gives any clue about why glycolysis might exhibit oscillations. So, we have to dig deeper.

### Some details

Glycolysis actually consists of 10 steps, each mediated by its own enzyme. Click on this picture to see all these steps:

If your eyes tend to glaze over when looking at this, don’t feel bad—so do mine. There’s a lot of information here. But if you look carefully, you’ll see that the 1st and 3rd stages of glycolysis actually convert 2 ATP’s to ADP, while the 7th and 10th convert 4 ADP’s to ATP. So, the early steps require free energy, while the later ones double this investment. As the saying goes, “it takes money to make money”.

This nuance makes it clear that if a cell starts with no ATP, it won’t be able to make ATP by glycolysis. And if has just a small amount of ATP, it won’t be very good at making it this way.

In short, this affects the dynamics in an important way. But I don’t see how it could explain oscillations in how much ATP is manufactured from a constant supply of glucose!

We can look up the free energy changes for each of the 10 reactions in glycolysis. Here they are, named by the enzymes involved:

I got this from here:

• Leslie Frost, Glycolysis.

I think these are her notes on Chapter 14 of Voet, Voet, and Pratt’s Fundamentals of Biochemistry. But again, I don’t think these explain the oscillations. So we have to look elsewhere.

### Oscillations

By some careful detective work—by replacing the input of glucose by an input of each of the intermediate products—biochemists figured out which step causes the oscillations. It’s the 3rd step, where fructose-6-phosphate is converted into fructose-1,6-bisphosphate, powered by the conversion of ATP into ADP. The enzyme responsible for this step is called phosphofructokinase or PFK. And it turns out that PFK works better when there is ADP around!

In short, the reaction network shown above is incomplete: ADP catalyzes its own formation in the 3rd step.

How does this lead to oscillations? The Higgins–Selkov model is a scenario for how it might happen. I’ll explain this model, offering no evidence that it’s correct. And then I’ll take you to a website where you can see this model in action!

Suppose that fructose-6-phosphate is being produced at a constant rate. And suppose there’s some other reaction, which we haven’t mentioned yet, that uses up ADP at a constant rate. Suppose also that it takes two ADP’s to catalyze the 3rd step. So, we have these reactions:

→ fructose-6-phosphate

Here the blanks mean ‘nothing’, or more precisely ‘we don’t care’. The fructose-6-biphosphate is coming in from somewhere, but we don’t care where it’s coming from. The ADP is going away, but we don’t care where. We’re also ignoring the ATP that’s required for the second reaction, and the fructose-1,6-bisphosphate that’s produced by this reaction. All these features are irrelevant to the Higgins–Selkov model.

Now suppose there’s initially a lot of ADP around. Then the fructose-6-phosphate will quickly be used up, creating even more ADP. So we get even more ADP!

But as this goes on, the amount of fructose-6-phosphate sitting around will drop. So, eventually the production of ADP will drop. Thus, since we’re positing a reaction that uses up ADP at a constant rate, the amount of ADP will start to drop.

Eventually there will be very little ADP. Then it will be very hard for fructose-6-phosphate to get used up. So, the amount of fructose-6-phosphate will start to build up!

Of course, whatever ADP is still left will help use up this fructose-6-phosphate and turn it into ADP. This will increase the amount of ADP. So eventually we will have a lot of ADP again.

We’re back where we started. And so, we’ve got a cycle!

Of course, this story doesn’t prove anything. We should really take our chemical reaction network and translate it into some differential equations for the amount of fructose-6-phosphate and the amount of ADP. In the Higgins–Selkov model people sometimes write just ‘S’ for fructose-6-phosphate and ‘P’ for ADP. (In case you’re wondering, S stands for ‘substrate’ and P stands for ‘product’.) So, our chemical reaction network becomes

→ S
S + 2P → 3P
P →

and using the law of mass action we get these equations:

$\displaystyle{ \frac{d S}{dt} = v_0 - k_1 S P^2 }$

$\displaystyle{ \frac{d P}{dt} = k_1 S P^2 - k_2 P }$

where $S$ and $P$ stand for how much S and P we have, respectively, and $v_0, k_1, k_2$ are some constants.

Now we can solve these differential equations and see if we get oscillations. The answer depends on the constants $v_0, k_1, k_2$ and also perhaps the initial conditions.

To see what actually happens, try this website:

• Mike Martin, Glycolytic oscillations: the Higgins–Selkov model.

If you run it with the constants and initial conditions given to you, you’ll get oscillations. You’ll also get this vector field on the $S,P$ plane, showing how the system evolves in time:

This is called a phase portrait, and its a standard tool for studying first-order differential equations where two variables depend on time.

This particular phase portrait shows an unstable fixed point and a limit cycle. That’s jargon for saying that in these conditions, the system will tend to oscillate. But if you adjust the constants, the limit cycle will go away! The appearance or disappearance of a limit cycle like this is called a Hopf bifurcation.

For details, see:

• Alan Rendall, Dynamical systems, Chapter 11: Oscillations.

He shows that the Higgins–Selkov model has a unique stationary solution (i.e. fixed point), which he describes. By linearizing it, he finds that this fixed point is stable when $v_0$ (the inflow of S) is less than a certain value, and unstable when it exceeds that value.

In the unstable case, if the solutions are all bounded as $t \to \infty$ there must be a periodic solution. In the course notes he shows this for a simpler model of glycolysis, the Schnakenberg model. In some separate notes he shows it for the Higgins–Selkov model, at least for certain values of the parameters:

• Alan Rendall, The Higgins–Selkov oscillator.