The Bernardi process and torsor structures on spanning trees
Abstract.
Let be a ribbon graph, i.e., a connected finite graph together with a cyclic ordering of the edges around each vertex. By adapting a construction due to Olivier Bernardi, we associate to any pair consisting of a vertex and an edge adjacent to a bijection between spanning trees of and elements of the set of degree divisor classes on , where is the genus of in the sense of BakerNorine. We give a new proof that the map is bijective by explicitly constructing an inverse. Using the natural action of the Picard group on , we show that the Bernardi bijection gives rise to a simply transitive action of on the set of spanning trees which does not depend on the choice of . A plane graph has a natural ribbon structure (coming from the counterclockwise orientation of the plane), and in this case we show that is independent of as well. Thus for plane graphs, the set of spanning trees is naturally a torsor for the Picard group. Conversely, we show that if is independent of then together with its ribbon structure is planar. We also show that the natural action of on spanning trees of a plane graph is compatible with planar duality.
These findings are formally quite similar to results of Holroyd et al. and ChanChurchGrochow, who used rotorrouting to construct an action of on the spanning trees of a ribbon graph , which they show is independent of if and only if is planar. It is therefore natural to ask how the two constructions are related. We prove that for all vertices of when is a planar ribbon graph, i.e. the two torsor structures (Bernardi and rotorrouting) on the set of spanning trees coincide. In particular, it follows that the rotorrouting torsor is compatible with planar duality. We conjecture that for every nonplanar ribbon graph , there exists a vertex with .
1. Introduction
If is a connected graph on vertices, the Picard group of (also called the sandpile group, critical group, or Jacobian group) is a finite abelian group whose cardinality is the determinant of any principal subminor of the Laplacian matrix of . By Kirchhoff’s MatrixTree Theorem, this quantity is equal to the number of spanning trees of . There are several known families of bijections between spanning trees and elements of , which we think of as giving bijective proofs of Kirchhoff’s Theorem – see for example [BS13] and the references therein. However, such bijections depend on various auxiliary choices, and there is no canonical bijection in general between and the set of spanning trees of (see [CCG15, p. 2]).
Jordan Ellenberg asked if it might be the case that, under certain conditions, is naturally a torsor^{1}^{1}1A torsor for a group is a set together with a simply transitive action of on , i.e. an action such that for every there is a unique for which . The existence of such an action implies, in particular, that . for . This question was thoroughly studied in the paper [CCG15], where it was established via the rotorrouting process that given a plane graph^{2}^{2}2In this paper we distinguish between a planar graph, which is a graph that can be embedded in with no crossings, and a plane graph, which is a graph together with such an embedding. there is a canonical simply transitive action of on . More generally, if one fixes a ribbon structure on and then chooses a root vertex , rotorrouting produces a simply transitive action of on which is shown in [CCG15] to be independent of if and only if together with its ribbon structure is planar.
The first author learned of the results of [CCG15] at a 2013 AIM workshop on “Generalizations of Chip Firing”, and at the same workshop he learned about an interesting family of bijections due to Olivier Bernardi [Ber08] between spanning trees, rootconnected outdegree sequences, and recurrent sandpile configurations. Bernardi’s bijections depend on choosing a ribbon structure, a root vertex , and an edge adjacent to . It was natural to ask whether Bernardi’s bijections became torsor structures upon forgetting the edge , and whether the resulting torsor was again independent of in the planar case. The present paper answers these questions affirmatively. Specifically, given a ribbon graph , we show that:
We also give an example which shows that if is nonplanar then and do not in general coincide. In fact, we conjecture that if is nonplanar then there always exists a vertex such that .
We also investigate the relationship between the Bernardi process and planar duality. It is known that if is a planar graph then there is a canonical isomorphism and a canonical bijection . It is thus natural to ask whether the Bernardi torsor is compatible with these isomorphisms. We prove that this is indeed the case:

(Theorem 6.1) If is planar, the following diagram is commutative:
Combined with (3), this proves that the rotorrouting torsor is also compatible with planar duality (which the first author had conjectured at the 2013 AIM workshop). An independent proof (not going through the Bernardi process) of the compatibility of the rotorrouting torsor with planar duality has recently been given by [CGM15].
A key technical insight which we use repeatedly is an interpretation of Bernardi’s bijections in terms of (integral) break divisors in the sense of [ABKS14]. Break divisors are in canonical bijection with elements of , where is the genus of in the sense of [BN07], and is canonically a torsor for . Among other things, we use break divisors to give a different proof from the one in [Ber08] that Bernardi’s maps are in fact bijections. In particular, we are able to give a new family of bijective proofs of the MatrixTree Theorem.
The Bernardi and rotorrouting processes are defined quite differently, so it seems rather miraculous that the two stories parallel one another so closely, intertwining in the planar case and diverging in general. It is a strangely beautiful tale which still appears to hold some mysteries.
The plan of this paper is as follows. In Section 2 we review the necessary background material, including Picard groups, break divisors, ribbon graphs, rotorrouting, and the Bernardi process. In Section 3 we give our new proof that Bernardi’s maps are bijections, and in Section 4 we define the action and establish (1). In Section 5 we investigate planarity and establish (2), and in Section 6 we study the relationship between planar duality and the Bernardi process and establish (4). Finally, in Section 7, we relate the Bernardi and rotorrouting torsors in the planar case and establish (3).
2. Background
2.1. Graphs, divisors, and linear equivalence
Let be a graph, by which we mean a finite connected multigraph, possibly with loop edges. We denote the vertex set by and the edge set by , and we let be the number of vertices. We denote by an edge together with an orientation, and by the edge with the opposite orientation.
Following [BN07], we define the group of divisors on , denoted , to be the free abelian group on . We write a divisor as , where the are integers and is a formal symbol for the generator of corresponding to . The degree of is defined to be , and the set of divisors of degree is denoted .
Let be the set of functions . We define the group of principal divisors on , denoted , to be , where
is the Laplacian of considered as a divisor on . We say that two divisors and are linearly equivalent, written , if .
For each we let be the set of linear equivalence classes of degree divisors on . In particular, is a group which acts simply and transitively by addition on each . By basic linear algebra, the cardinality of (and hence of every ) is the determinant of any principal subminor of the Laplacian matrix of , where .
We denote by the linear equivalence class of a divisor .
2.2. Break divisors
Let be a graph, and let be the combinatorial genus^{3}^{3}3Note that graph theorists often use the term genus to denote the minimal topological genus of a ribbon structure on in the sense of §2.3 below. However, to highlight the connections with algebraic geometry in the spirit of [BN07] we will use the unmodified term genus to denote the combinatorial genus of . of , defined as . If is a spanning tree of , then there are exactly edges of not belonging to . A divisor of the form , where is an endpoint of , is called a break divisor. (In this situation we say that is compatible with , or that is compatible with .) A break divisor^{4}^{4}4In [ABKS14], these are called integral break divisors. We omit the adjective ‘integral’ because nonintegral break divisors play no role in this paper. is a break divisor for some spanning tree . We denote by the set of break divisors on .
The following important fact is proved in [ABKS14, Theorem 4.25]; it implies, in particular, the surprising fact that the number of break divisors on is equal to the number of spanning trees:
Theorem 2.1.
Every element of is linearly equivalent to a unique break divisor.
The following is a simple but useful result:
Lemma 2.2.
The restriction of a break divisor on to a connected induced subgraph has degree at least the genus of .
Proof.
Let be a break divisor on , and let be a spanning tree compatible with . The restriction of to is a spanning forest of and hence . By definition, if are the edges of not belonging to , we can write where is an endpoint of . Let . Then and thus
∎
Although we will not need it in this paper, Lemma 3.3 and Proposition 4.8 of [ABKS14] imply, conversely, that if is a divisor on of degree and the restriction of to every connected induced subgraph has degree at least , then is a break divisor.
2.3. Ribbon graphs
A ribbon graph is a finite graph together with a cyclic ordering of the edges around each vertex. A ribbon structure on gives an embedding of into a canonical (up to homeomorphism) closed orientable surface . (The surface is obtained by first thickening to a compact orientable surfacewithboundary and then gluing a disk to each boundary component of .) Conversely, every such embedding gives rise to a ribbon structure on . Ribbon structures are therefore sometimes called combinatorial embeddings.^{5}^{5}5Another name for ribbon structures, used widely in the topological graph theory literature, is rotation systems. (A good reference for basic combinatorial properties of ribbon graphs is [Tho95].) We refer to the genus of as the topological genus of , and say that is planar if .
Equivalently, a planar ribbon graph is one which can be embedded in the Euclidean plane without crossings in such a way that the ribbon structure on is induced by the natural counterclockwise orientation^{6}^{6}6There are two ways to orient , and for most of this paper we will implicitly or explicitly work with the counterclockwise orientation. However, for planar duality it is important to consider both orientations. on .
Every closed orientable surface can be cut along a collection of loops to give a polygon , and conversely by identifying certain pairs of sides of one can recover the surface . In fact, as is wellknown (see e.g. [Hen94, p. 126]), one can arrange for the labeling of the edges of as one traverses the perimeter counterclockwise to have the form
(2.3) 
(In this labeling, and get glued together with opposite orientations, and similarly for and .) We define the genus of to be the integer , which is also the genus of .
2.4. Planar duality
It is wellknown that every plane graph has a planar dual whose vertices correspond to faces of and whose edges are dual to edges of . Duality for plane graphs has the following wellknown properties:

There is a canonical isomorphism .

There is a canonical bijection sending a spanning tree of to the spanning tree whose edges are dual to the edges of not in .

There is a isomorphism of groups depending on the choice of an orientation of the plane.
The isomorphism in (3) is obtained as follows. The choice of allows us to identify directed edges of with directed edges of in a natural way: if is a directed edge of then locally, near the crossing of and , one obtains an orientation on by rotating in the direction opposite from ; this convention is needed in order to make the diagram in Theorem 6.1 commute. (So if, for example, the plane is oriented counterclockwise for , then one gets from to by a clockwise rotation.) This identification affords an isomorphism from the lattice of integral chains on to the lattice of integral chains on . By [BdlHN97, Proposition 8], there is also a canonical isomorphism between the lattice of integer flows for and the lattice of integer cuts for , and viceversa. And by [Big97, Proposition 28.2], there is a canonical isomorphism whose inverse is induced by the boundary map . We thus obtain an isomorphism induced by the composition
If is a planar ribbon graph (with respect to some orientation of the plane), the natural way to define a dual planar ribbon graph is to use the opposite orientation to define the cyclic ordering around each vertex of the dual graph. With this convention, facts (1)(3) above also hold for planar ribbon graphs (with the map in (3) now being canonical).
2.5. Rotorrouting
We give a quick summary of some basic facts about rotorrouting from [HLM08] and [CCG15] which will be needed for our proof of Theorem 7.1.
Let be a ribbon graph, and choose a sink vertex of . The rotorrouting model is a deterministic process on states , where is a rotor configuration (i.e., an assignment of an outgoing edge to each vertex of ) and is a vertex of , which one thinks of as the position of a chip which moves along the graph. Each step of the rotorrouting process consists of replacing with a new state , where is obtained from by rotating the rotor to the next edge in the cyclic order at and is the other endpoint of . We think of the chip as moving from to along the edge in the process.
Given a root vertex , a vertex , and a spanning tree , one defines a new spanning tree as follows. Orienting the edges of towards gives a rotor configuration on . Place a chip at the initial vertex and iterate the rotorrouting process starting with the pair until the chip first reaches (which it always does, see [HLM08, Lemma 3.6]). Call the resulting pair . Denote the pairs at each step of the rotorrouting process by . Define , and for define a subset by . Although it is not in general true that each is a spanning tree^{7}^{7}7In general, will either be a spanning tree or the union of a unicycle and a tree such that contains every vertex of ., it is proved in [HLM08] that is a spanning tree , and we define . (See Figure 1 for an example.) It is proved in [HLM08] that this action extends by linearity to an action of on , which by loc. cit. is trivial on and descends to a simply transitive action of on .
The following result is proved in [CCG15]:
Theorem 2.4.
The action is independent of the root vertex if and only if the ribbon graph is planar.
An important ingredient in the proof of Theorem 2.4 is the relationship between rotorrouting and unicycles. A unicycle is a state such that contains exactly one directed cycle and lies on this cycle.
Suppose has edges and is a unicycle on . By [HLM08, Lemma 4.9]^{8}^{8}8The authors of [HLM08] define rotorrouting slightly differently than we do here: instead of using a configuration with a sink, they use “sinkfree rotor routing”. One can easily translate back and forth between our process and theirs by adding an outgoing edge to the sink; this makes the configuration a unicycle instead of a spanning tree. During any stage of the process, sinkfree rotorrouting takes unicycles to unicycles [HLM08, Lemma 3.3]., if we iterate the rotorrouting process times starting at the state , the chip traverses each edge of exactly once in each direction, each rotor makes exactly one full turn, and the stopping state is . Using this, one sees that the relation on unicycles defined by iff can be obtained from by iterating the rotorrouting process some number of times is an equivalence relation.
Given a unicycle , denote by the configuration obtained from by reversing the edges of and keeping all other rotors the same. One says that the unicycle is reversible if . By [CCG15, Proposition 7], the notion of reversibility is intrinsic to the directed cycle , and does not actually depend on or ; in other words, if and are unicycles with , then is reversible iff is. It therefore makes sense to talk about reversibility of directed cycles in a ribbon graph . The importance of this concept stems from [CCG15, Proposition 9], which asserts that the ribbon graph is planar if and only if every directed cycle of is reversible.
2.6. The Bernardi process
Let be a ribbon graph, and fix a pair (which we refer to as the initial data) consisting of a vertex and an edge adjacent to . In this section, we recall the tour of which Bernardi [Ber08, §3.1] associates to the initial data together with a spanning tree , and describe how to associate a break divisor to this tour.
Let be a spanning tree of . The tour is a traversal of which begins and ends at . Informally, the tour is obtained by walking along edges belonging to and cutting through edges not belonging to , beginning with and proceeding according to the ribbon structure.^{9}^{9}9From a topological point of view, the tour is obtained by traversing the boundary of a small neighborhood of in the oriented surface on which the ribbon graph is embedded. (See Figure 2.)
More formally, the tour is a sequence
where each is a vertex of and is a directed edge of leading to . We set . If , we define to be , and if , we let be the first edge after in the cyclic ordering around . Let be the other endpoint (besides ) of . The for are defined inductively by declaring that is the first edge after belonging to in the cyclic ordering of the edges around . The tour stops when each edge of has been included twice among the with , once with each orientation; necessarily we will have . Note that different choices of initial data give rise to tours which are cyclic shifts of one another.
The break divisor associated to the tour is obtained by dropping a chip at the corresponding vertex each time the tour first cuts through an edge not belonging to . In other words, for each edge not in the spanning tree, let be the two oriented edges whose underlying unoriented edge is , with , and set . We define
The amazing fact implicitly discovered by Bernardi is that the association gives a bijection between spanning trees of and break divisors.^{10}^{10}10Bernardi phrases his result (Theorem 41(5)) in terms of outdegree sequences of orientations, but in view of the results of [ABKS14] the two points of view are equivalent. In the next section, we give a proof which is different from Bernardi’s that is bijective. In addition to making the present paper more selfcontained, our proof of Bernardi’s theorem involves a new recursive procedure which might be of independent interest. However, the reader already familiar with Bernardi’s proof of Theorem 41(5) (which in particular makes use of his Propositions 18 and 34) may safely skip the next section if desired.
3. The Bernardi map is bijective
Let denote the set of spanning trees of a graph , and let denote the set of break divisors of , which is canonically isomorphic to . As in the previous section, we fix a pair consisting of a vertex and an edge adjacent to . In this section we give a new proof of the fact that the map is bijective by explicitly constructing an inverse map .
3.1. Definition of the inverse map
Let be a break divisor and fix a pair consisting of a vertex and an edge adjacent to . To define a map which is inverse to , we will inductively construct a spanning tree with , along with a corresponding Bernardi tour which traverses . Since the tour is obtained by walking along edges belonging to and cutting through edges not belonging to , but in this case we don’t know , our challenge is to use the break divisor to figure out which edges to walk along and which to cut through. The solution is that we will cut through an edge if removing that edge from the graph and subtracting a chip from at the current vertex gives a break divisor on the resulting (connected) graph ; otherwise we walk along and add it to the spanning tree which we’re building.
More formally, is defined to be the output of Algorithm 1 below.
Proposition 3.1.
Let be a graph and a break divisor on . Then is a spanning tree of and .
Proof.
The proof is by induction on . For the inductive step, given a ribbon graph and an edge , we will need to endow the deletion and contraction with the structure of ribbon graphs. For , we just remove from the cyclic ordering around and . In , and collapse to a single vertex , and if the cyclic ordering around is and around is then the cyclic ordering around is .
Starting with a break divisor on and initial data , let be the other endpoint of . If is a break divisor on , set and . Otherwise set and for , .
We claim that in either case, is a break divisor on . This is clear if , so we may assume that . Let be a spanning tree of compatible with . If , then is a spanning tree of compatible with . If , then because is not a break divisor on , sends its chip to rather than . Because of this, if is an edge of incident to , is a spanning tree of compatible with , and is a spanning tree of compatible with . This proves the claim.
We now proceed with the inductive argument. There are two base cases to check, when is a loop and when is an edge, both of which are trivial. By induction on and the claim, is a spanning tree of , which corresponds naturally to a spanning tree of . (If , set , and if set .) One checks easily from the definitions that and . Thus is welldefined and is the identity map on the set of break divisors. ∎
Remark 3.2.
There is an efficient (polynomialtime) algorithm for deciding whether or not a given divisor on a graph is a break divisor; see [Bac14].
Corollary 3.3.
The Bernardi map is surjective.
By Theorem 2.1 (Theorem 4.25 from [ABKS14]), we know that , and thus Corollary 3.3 implies that is an isomorphism and is its inverse. In the proof of the following result, we argue directly that is a left inverse to without using Theorem 2.1.
Proposition 3.4.
If is a spanning tree of then .
Proof.
Let . If then is a break divisor on , and the result follows by induction on as in the proof of Proposition 3.1 (applying the inductive hypothesis to ). If is not a break divisor on , then by the claim in the proof of Proposition 3.1 the divisor defined there is a break divisor on . If , we may then apply induction to and the result again follows.
Therefore it suffices to prove that the potentially troublesome case where and is a break divisor on does not actually occur. Suppose for the sake of contradiction that it does. Let be the connected component of in , and let be the corresponding induced subgraph of . Let be the genus of , let be the spanning tree of given by the restriction of , and let be the restriction of to .
Let be the first edge in the cyclic ordering around , starting with , which belongs to , and let be the Bernardi process on with initial data . Note that the Bernardi process on first walks along , then tours along the vertices in the complement of , then walks along again, and finishes with a tour of the vertices in . In addition, every edge in which connects to its complement is crossed before the tour of the vertices in begins. It follows that .
In particular, is a break divisor on so the degree of is equal to . Therefore the restriction of to has degree . However, since is a connected subgraph of , Lemma 2.2 contradicts the assumption that is a break divisor on . ∎
Corollary 3.5.
The Bernardi map is bijective.
Remark 3.6.
Remark 3.7.
The proof of Corollary 3.5, combined with the results of [ABKS14] and [Bac14], provides another ‘efficient bijective proof’^{11}^{11}11By an efficient bijective proof, we mean (in this context) a bijection between and the set of spanning trees of which is efficiently computable in both directions. of Kirchhoff’s MatrixTree Theorem in the spirit of [BS13], as well as a new algorithm for choosing a uniformly random spanning tree of .^{12}^{12}12The results of [Bac14] can be used to prove that the inverse of the natural map is efficiently computable. See [BS13] for an explanation of how such a bijection can be used to find random spanning trees.
4. The Bernardi torsor
In this section, we show how to associate a simply transitive action of on to a pair consisting of a ribbon graph and a vertex of . This comes down to showing that two Bernardi bijections and associated to the same root vertex differ merely by translation by some element of . For a divisor , we write for the linear equivalence class of in . Recall that acts simply and transitively on by addition, and that the map gives a canonical bijection from to . From this we get a canonical simply transitive action of on sending to the unique break divisor linearly equivalent to .
Theorem 4.1.
Let be a vertex of .

Let be edges incident to , and let and be the corresponding Bernardi bijections. Then there exists an element such that for all .

The action defined by for any edge incident to , depends only on and not on the choice of .
Proof.
Assuming (1) for the moment, we verify that (2) holds. We need to prove that if and are as in (1), then
To see this, observe that (1) implies for all . Thus
as claimed. (Note that we use in a crucial way the fact that is abelian.)
For (1), it suffices to prove that and are linearly equivalent in for any two spanning trees of . To do this we first derive a useful formula for . By definition, we have
where (considered as a divisor on ). Thus it will suffice to find a formula for when .
Let the cyclic ordering of the edges around , starting with , be
Let and . Removing from partitions the set into disjoint sets and , where (resp. ) is the union of all vertices lying in the same connected component of as some edge in (resp. ). See Figure 3..
The Bernardi tours and are cyclic shifts of each other, the difference being that traverses the components of followed by the components, while the reverse is true for . This shows that (i.e., the Bernardi tours and cut through from the same vertex) when is any one of the following:

A loop edge.

An edge whose endpoints both belong to or both belong to .

An edge with , or an edge with .
On the other hand, the following kind of edges of make a nontrivial contribution to the difference (considered as a divisor on ):

If with and then .

If with then .

If with then .
Summarizing, we obtain the following formula, where the sum is over edges not in :
(4.2) 
See Figure 3 for an example.
We now modify the expression in (4.2) by firing each vertex in . More formally, since the characteristic function satisfies
we have
and in particular
(4.3) 
Since the righthand side of (4.3) does not depend on , part (1) of the theorem follows (with equal to ). ∎
Corollary 4.4.
If is a ribbon graph and is a vertex of , then the action defined above makes the set of spanning trees of into a torsor for .
5. Planarity and the dependence of the Bernardi torsor on the base vertex
Given a ribbon graph , we prove that the action defined in the previous section is independent of the vertex if and only if is planar.
First, we deal with the case where is planar:
Theorem 5.1.
If is a planar ribbon graph, then the action is independent of , and hence defines a canonical action of on .
Proof.
Since is connected by assumption, it suffices to prove that whenever is a neighbor of . Without loss of generality, we may assume that the ribbon structure corresponds to the counterclockwise orientation of the plane.
Let be an edge connecting and , and let be the edge following in the cyclic ordering around . (If then we will have .) By Theorem 4.1, which allows us to pick whichever edges we want in our initial data, it suffices to prove that for each spanning tree we have .
If , then since the Bernardi tours starting with and are cyclic shifts of each other (they coincide other than the fact that the first tour starts with and the second ends with ), we have . We may therefore assume that . In this case, contains a unique simple cycle , called the fundamental cycle associated to and . Since is planar, the edges other than which are not in the spanning tree can be partitioned into two disjoint subsets: the edges lying inside and the edges lying outside .
The Bernardi process associated to the initial data will cut through , then cut through all of the edges in , then cut through all the edges in , touring around in the process. The Bernardi process associated to the initial data will cut through all of the edges in , then cut through , then cut through all the edges in , touring around in the process. (See Figure 4 for an example.)
It follows that not only are the tours for the same up to a cyclic shift, they also cut through edges not in in exactly the same way. In particular, . ∎
Remark 5.2.
We conjecture that if is a planar ribbon graph, the canonical Bernardi bijection between spanning trees of and break divisors of is “geometric” in the sense of [ABKS14, Remark 4.26].^{13}^{13}13Note added: this conjecture has now been proved by Chi Ho Yuen.
Next, we treat the nonplanar case. We begin with a simple lemma:
Lemma 5.3.
Let be an acyclic orientation of a connected finite graph , and let be a nonempty subset of . Orient each edge in according to . Let be the natural boundary map, where is the lattice of integer chains on . If the class of in is zero, then is a union of cuts in .
Proof.
As mentioned in §2.4, the map induces an isomorphism
Thus we can write as a sum with and . As the orientation is acyclic, we must have . Therefore is a sum of directed cuts, and in particular is a union of cuts. ∎
Theorem 5.4.
If is a nonplanar ribbon graph, there are vertices of with .
Proof.
By the discussion in Section 2.3, has a polygonal representation inside a fundamental polygon
which we may assume to have minimal genus among all such representations. We may also assume that the drawing of inside has the minimum possible number of edges passing through the polygon .
Let . Since is nonplanar, we may assume that there are edges and of which intersect boundary edges and of , respectively.
Let be the complement in of all edges which pass through or . Then is connected, since otherwise one could redraw by changing the relative position of the components of and obtain a polygonal representation that contradicts the minimality of and .
Since is connected, there exists a spanning tree of contained in . Let