Which Paths Are Orthogonal to All Cycles?
Posted by John Baez
Greg Egan and I have been thinking about topological crystallography, and I bumped into a question about the homology of a graph embedded in a surface, which I feel someone should have already answered. Do you know about this?
I’ll start with some standard stuff. Suppose we have a directed graph . I’ll write when is an edge going from the vertex to the vertex . We get a vector space of 0-chains , which are formal linear combinations of vertices, and a vector space of 1-chains , which are formal linear combinations of edges. We also get a boundary operator
sending each edge to the difference . A 1-cycle is 1-chain with . There is an inner product on 1-chains for which the edges form an orthonormal basis.
Any path in the graph gives a 1-chain. When is this 1-chain orthogonal to all 1-cycles?
To make this precise, and interesting, I should say a bit more.
To make this interesting, I need to rule out some obvious possibilities. If we have a graph consisting of two triangles connected by an edge, the path consisting of that one edge will be orthogonal to all 1-cycles:
To rule out this sort of situation, suppose the graph is embedded in a compact surface . The complement of the graph will be a union of open sets called faces. Let’s assume each face is an open disk, and let’s assume its closure is a closed disk embedded in . So, each edge is incident to two faces, and these two faces are distinct.
This rules out the graph above, embedded in a sphere in the obvious way, since the edge with the arrow on it is incident to just one face: the 8-sided face outside the picture!
Question: A path in such an embedded graph gives a 1-chain. If this 1-chain is orthogonal to all 1-cycles, must it vanish?
To make this precise: a path is a finite sequence of edges and their formal ‘inverses’ , like this:
The corresponding 1-chain is the linear combination
Question: If the inner product of with every cycle vanishes, must we have ?
I believe someone should have settled this by now, since it sounds easy, and the space of 1-chains orthogonal to all 1-cycles has been studied quite a lot! It’s called the cut space of the graph.
A cut is a partition of the vertices of a graph into two disjoint subsets. Any cut determines a cut-set, the set of edges that have one endpoint in each subset of the partition. If we take the sum of all those edges, we get a 1-chain orthogonal to all cycles. It’s known that the cut space is spanned by 1-chains coming from cuts in this way. For example, in the graph I drew, the edge with the arrow on it spans the cut space.
A proof can be found here:
- Norman Biggs, Algebraic Graph Theory.
However, I suspect there’s a lot more known about this subject!
By the way, we can use our surface to introduce a vector space of 2-chains, , which are formal linear combinations of faces, and picking an orientation on each face gives us a boundary operator
which combined with the other one obeys
My assumption that “each edge is incident to two faces, and these two faces are distinct” implies that for every edge there is a face with
So, in particular, no single edge is orthogonal to all 1-cycles.
Re: Which Paths Are Orthogonal to All Cycles?
I don’t know the correct graph-theoretic term, so I will call two paths substantially distinct if the intersection of their sets of directed edges is not equal to the set for either individual path. The inner product of two substantially distinct paths will be strictly less than the number of edges in either path.
Suppose we can prove that for any two distinct vertices in the graphs of interest to us, there are always at least two substantially distinct paths between those vertices.
Then we can argue as follows: if is any path that is not a loop, and it runs from vertex to vertex , then there must be a second, substantially distinct path from to . We can then form a loop by following and then . This loop can’t be orthogonal to , since we have:
The first term on the RHS is the number of edges in , while the second term must be less than that since and are substantially distinct.
So, for any path that is not a loop, we can construct a loop that is not orthogonal to that path.
Now we just have to prove the assumption … or find a counterexample.