On the gonality of Cartesian products of graphs

In this paper we study Cartesian products of graphs and their divisorial gonality, which is a tropical version of the gonality of an algebraic curve. We present an upper bound on the gonality of the Cartesian product of any two graphs, and provide instances where this bound holds with equality, including for the $m\times n$ rook's graph with $\min\{m,n\}\leq 5$. We use our upper bound to prove that Baker's gonality conjecture holds for the Cartesian product of any two graphs with two or more vertices each, and we determine precisely which nontrivial product graphs have gonality equal to Baker's conjectural upper bound.


Introduction
In [7], Baker and Norine introduced a theory of divisors on finite graphs in parallel to divisor theory on algebraic curves. If G = (V, E) is a connected multigraph, one treats G as a discrete analog of an algebraic curve of genus g(G), where g(G) = |E| − |V | + 1. This program was extended to metric graphs in [15] and [21], and has been used to study algebraic curves through combinatorial means.
A divisor on a graph can be thought of as a configuration of poker chips on the vertices of the graph, where a negative number of chips indicates debt. Equivalence of divisors is then defined in terms of chip-firing moves. Each divisor D has a degree, which is the total number of chips; and a rank, which measures how much added debt can be cancelled out by D via chip-firing moves.
The gonality of G is the minimum degree of a rank 1 divisor on G. This is one graphtheoretic analogue of the gonality of an algebraic curve [10]. In general, the gonality of a graph is NP-hard to compute [16]. Nonetheless, we know the gonality of certain nice families of graphs: the gonality of G is 1 if and only if G is a tree [8,Lemma 1.1]; the complete graph K n has gonality n − 1 for n 2 [5,Example 3.3]; and the gonality of the complete k-partite graph K n 1 ,···n k is k i=1 n k − max{n 1 , · · · , n k } [25, Example 3.2]. One of the biggest open problems regarding the gonality of graphs is the following.
Conjecture 1 (The gonality conjecture, [5]). The gonality of a graph G is at most This conjecture has been confirmed for graphs with g(G) 5 in [3], with strong additional evidence coming from [13].
In this paper, we study the gonality of the Cartesian product G H of two graphs G and H. This is the first such systematic treatment for these types of graphs, although many conjectures have been posed on the gonality of particular products [2,24,25]. Our main result is that if G and H have at least two vertices each, then G H satisfies Conjecture 1.
Theorem 2. Let G and H be connected graphs with at least two vertices each. Then gon(G H) g(G H) + 3 2 .
As a key step towards proving Theorem 2, we prove the following upper bound on the gonality of G H.  When a graph product G H has gonality min{gon(G) · |V (H)| , gon(H) · |V (G)|}, we say that it has the expected gonality. Some product graphs have gonality smaller than the expected gonality. Let G be a graph with three vertices v 1 , v 2 and v 3 , with edge multiset {v 1 v 2 , v 1 v 2 , v 2 v 3 }. Since g(G) = 1, we will see that gon(G) = 2 in Lemma 6. The expected gonality of G G is gon(G) · |V (G)| = 2 · 3 = 6. However, Figure 1 illustrates three equivalent effective divisors of degree 5 on G G. Since between the three divisors there is a chip on each vertex, any −1 debt can be eliminated wherever it is placed, so G G has a degree 5 divisor of positive rank, and thus gon(G G) 5. In Propositions ∼ ∼ Figure 1: A positive rank divisor on G G with lower degree than expected 7 and 8 we will see that the gap between gonality and expected gonality can in fact be arbitrarily large, both when considering simple and non-simple graphs. Our paper is organized as follows. In Section 2 we establish background and conventions and prove Proposition 3; we also present our proof that the gap between expected and actual gonality can be arbitrarily large. In Section 3 we provide old and new instances where the equation in Question 4 is satisfied. In Section 4 we prove Theorem 2. In Section 5 we determine when the gonality of a nontrivial product is equal to (g +3)/2 in Theorem 21. It turns out that there are only finitely many such product graphs, 12 simple and 11 non-simple. We close in Section 6 by recovering several of our results in the case of metric graphs.

Background and a proof of the upper bound
The main goal of this section is to prove the upper bound on gon(G H) from Proposition 3. Before we do so we establish some definitions and notation.
Throughout this paper, a graph is a connected multigraph, where we allow multiple edges between two vertices, but not edges from a vertex to itself. We write G = (V, E), where V = V (G) is the set of vertices and E = E(G) is the multiset of edges. If every pair of vertices has at most one edge connecting them, we call G simple. For any vertex v ∈ V (G), the valence of v, denoted val(v), is the number of edges incident to v. The genus of G, denoted g(G), is defined to be |E| − |V | + 1. Given two graphs G = (V 1 , E 1 ) and H = (V 2 , E 2 ), their Cartesian product G H is the graph with vertex set V 1 × V 2 , and e edges connecting (v 1 , v 2 ) and (w 1 , w 2 ) if v 1 = w 1 and v 2 is connected to w 2 in H by e edges, or if v 2 = w 2 and v 1 is connected to w 1 in G by e edges. A graph is called a non-trivial product if it is of the form G H, where G and H are graphs with at least two vertices each. The graph G H has |V 1 | · |V 2 | vertices and |E 1 | · |V 2 | + |E 2 | · |V 1 | edges, so g(G H) = |E 1 | · |V 2 | + |E 2 | · |V 1 | − |V 1 | · |V 2 | + 1. An example of a product graph is illustrated in Figure 2. This is the Cartesian product of the star tree T with four vertices and the complete graph on 3 vertices K 3 . There are three natural copies of T , one for each vertex of K 3 ; and there are four natural copies of K 3 , one for each vertex of T .
A divisor on a graph G is a formal Z-linear sum of the vertices of G: the electronic journal of combinatorics 27(4) (2020), #P4.52 The set of all divisors on a graph forms an abelian group, namely the free abelian group generated by the vertices of the graph. The degree of a divisor is the sum of the coefficients: In the language of chip configurations, the degree is the total number of chips present on the graph. We say that a divisor is effective if a v 0 for all v ∈ V , i.e. if no vertex is in debt.
A chip-firing move changes one divisor to another by firing a vertex, causing it to donate chips to each neighboring vertex, one for each edge connecting the two vertices. We say that two divisors are equivalent to one another if they differ by a sequence of chip-firing moves, and write D ∼ D if D and D are equivalent divisors.
Let D be a divisor on a graph G. The rank r(D) of D is the largest integer r 0 such that, for all effective divisors F of degree r, D − F is equivalent to an effective divisor. (If such an r doesn't exist, we set r(D) = −1.) Note that if D has non-negative rank, then it is equivalent to an effective divisor. The theory of divisors on graphs mirrors the theory of divisors on algebraic curves, as illustrated in the following result.
Theorem 5 (The Riemann-Roch Theorem for graphs, [7]). Let D be a divisor on a graph G, and let K be the divisor with val(v) − 2 chips on each vertex v of G. Then The gonality gon(G) of a graph G is the smallest degree of a divisor of positive rank. Note that there always exists an effective divisor D with r(D) = gon(G), since any divisor of non-negative rank is equivalent to an effective divisor. We can also define gonality in terms of a chip-firing game: Player 1 places k chips on the graph (for some k), and then Player 2 places −1 chips on the graph. If Player 1 can perform chip-firing moves to eliminate all debt from the graph, Player 1 wins; otherwise, Player 2 wins. The gonality of the graph is then the minimum k such that Player 1 has a winning strategy. For this reason, we refer to a divisor of positive rank as a winning divisor.
As an application of the Riemann-Roch Theorem for graphs, we determine the gonality of any genus 1 graph. Lemma 6. If g(G) = 1, then gon(G) = 2.
To prove that the gonality of a graph is at most an integer k, it suffices to exhibit a divisor on G of degree k such that no matter where an opponent places a −1, debt may be eliminated from the graph via chip-firing. It is this strategy we will use to prove Proposition 3. (Providing a lower bound on the gonality of a graph is much more difficult, though some methods are available, as described in Section 3.) Proof of Proposition 3. We will show that there is a winning divisor D on G H with deg(D) = gon(G) · |V (H)|, implying that gon(G H) gon(G) · |V (H)|. By symmetry, we will also have gon(G H) gon(H) · |V (G)|. Let be the divisor on G H defined by a (v,w) = b v for all v ∈ V (G) and w ∈ V (H). Note that the degree of D is In other words, deg(D) = gon(G) · |V (H)|. To see that D is a winning divisor, suppose the −1 chip is placed on the vertex (v, w). We may perform chip-firing moves on the copy G {w} as if we were playing on G by doing the following: each time we would fire a vertex v ∈ G, instead fire each vertex of the form (v , u) where u ∈ H. Since F is a winning divisor on G, there is some sequence of chip-firing moves that removes all the debt from G, and so this substitution of chipfiring moves furnishes a sequence of chip-firing moves on G H that removes all the debt from G {w}, and hence from all of G H. Thus, D is a winning divisor, and gon(G H) gon(G) · |V (H)|. By symmetry we conclude that the electronic journal of combinatorics 27(4) (2020), #P4.52 The construction of D from this proof is illustrated in Figure 3 for the product of a tree T with the complete graph K 3 . The top left illustrates a positive rank divisor on T with degree equal to the gonality of T ; we can build a positive rank divisor on T K 3 by placing the same chips on each copy of T , as illustrated on the bottom left. Since the number of copies of T is equal to the number of vertices of K 3 , the divisor on T K 3 has degree gon(T ) · |V (K 3 )| = 1 · 3 = 3. Similarly on the right we have a positive rank divisor on K 3 with degree equal to gon(K 3 ), yielding a positive rank divisor on T K 3 of degree gon(K 3 ) · |V (T )| = 2 · 4 = 6. Both these divisors provide an upper bound on gon(T K 3 ), so gon(T K 3 ) min{3, 6} = 3. (It will follow from Proposition 12 that in fact gon(T K 3 ) = 3.) Some graph products have gonality strictly smaller than the upper bound in Proposition 3. Indeed, the gap between gonality and expected gonality can be arbitrarily large, as shown in the following two results. The first shows this is possible for non-simple graphs; the second shows that it is possible for simple graphs. Proof. Given ∆ 1, let n = ∆ + 1, and construct a graph G as follows. Let G have n + 1 vertices v 1 , · · · , v n , v n+1 , where v i and v i+1 are connected by n edges for 1 i n − 1, and where v n and v n+1 are connected by 1 edge. We claim that gon(G) = n.
Certainly (v 1 ) + · · · + (v n−1 ) + (v n ) is a divisor of positive rank: the only vertex on which −1 chips could be placed to introduce debt is v n+1 , and since (v n ) ∼ (v n+1 ) we have (v 1 ) + · · · + (v n−1 ) + (v n ) − (v n+1 ) ∼ (v 1 ) + · · · + (v n−1 ). On the other hand, there exists no effective positive rank divisor of degree n − 1, since with so few chips no chips could be moved between any two vertices, save for v n and v n+1 ; and with n − 1 chips, at least one of v 1 , · · · , v n−1 and the pair {v n , v n+1 } would not have a chip, and so placing −1 chips there creates debt that cannot be eliminated.
Since gon(G) = n and |V (G)| = n + 1, the expected gonality of G G is n(n + 1). We now present a divisor of degree n 2 + 1, namely Thinking of G G as an (n + 1) × (n + 1) grid, D places one chip on each vertex of the upper left n×n corner, except on v n,n , where it places two chips. We claim that r(D) > 0. To see this, consider firing all vertices v i,j where i, j n. Most of these chip-firing moves cancel, and the net effect is that for all i n, a chip moves from the vertex v i,n to the vertex v i,n+1 , and a chip moves from the vertex v n,i to the vertex v n+1,i . Call this new divisor D . Then consider firing every vertex except for v n+1,n+1 ; this transforms D into D , and moves chips from the vertices v n,n+1 and v n+1,n to v n+1,n+1 . These three divisors are illustrated for the case of n = 4 in Figure 4. Proof. Let F be any simple graph with gonality γ 3, and let m = |V (F )|. Choose n so that m(γ − m) + n(γ − 2) + 1 ∆; this is possible since γ − 2 1. Letting V (F ) = {v 1 , · · · , v m }, construct a new graph G by attaching n more vertices in a path to v m . Label the vertices of G as v 1 , · · · , v m , v m+1 , · · · , v m+n , where each v i with i m is the same as in F and the vertices v m , v m+1 , · · · , v m+n form a path, in that order. Note that gon(G) = γ; indeed, attaching any tree to a graph does not change its gonality.
Consider the product graph G G. Since G has m + n vertices, the expected gonality of G G is (m + n)γ. We now construct a positive rank divisor with lower degree than expected.
Thinking of V (G G) as an (m + n) × (m + n) grid with v 1,1 in the upper left corner and v m+n,m+n in the lower right, D places one chip on each vertex in the upper left m × m square, except that it places two chips on v m,m ; and it also places 2 chips along the diagonal v i,i where i goes from m + 1 to m + n − 1.
Perform a chip-firing move by firing all vertices v i,j with 1 i, j m; call this new divisor D 1 . The net effect of this is to move a chip from each v m,i to v m+1,i , and from each v i,m to v i,m+1 , where 1 i m. This does not introduce new debt, since each v m,i and v i,m has one chip for i < m, and v m,m has two chips. Then perform a chipfiring move by firing all vertices v i,j with 1 i, j m + 1; call this new divisor D 2 . Again, this moves chips one row lower and one column to the right. We may continue performing such chip-firing moves on larger and larger squares until we fire all vertices v i,j with 1 i, j m + n − 1, yielding a divisor D n with chips on all vertices of the bottom row and the leftmost column besides v m+n,m+n . Chip-firing all vertices besides v m+n,m+n moves two chips onto v m+n,m+n , giving a divisor D n+1 .
The divisors D, D 1 , . . . , D n+1 are all effective, all equivalent, and between the n + 2 of them cover each vertex of the graph. It follows that r(D) > 0, so gon(G G) deg(D). Note that the degree of D is m 2 + 1 + 2(n − 1) = m 2 + 2n − 1. Thus, we have as desired.
Example 9. This example illustrates the construction in Proposition 8 where we choose F = K 3 and ∆ = 1. Since gon(F ) = 3, we choose n so that 1 4(3 − 4) + n(3 − 2) + 1 = −4 + n + 1 = n − 3 ; it suffices to choose n = 4. The graph G is then K 4 with 4 vertices glued on in a path. This graph with labelled vertices, along with a rank one divisor of Figure 5: The graph G from Example 9 with a rank 1 divisor, along with G G degree 3, is pictured on the left in Figure 5. The product G G is pictured on the right in Figure 5, and its expected gonality is gon(G) · |V (G)| = 3 · 8 = 24. As per our construction, the gonality of G G is smaller than 24. The divisor D from the previous proof is This divisor is illustrated in the upper left of Figure 6, where a dotted box indicates 1 chip on each enclosed vertex. Note that deg(D) = 23. Chip-firing the upper left 4 × 4 square of vertices, then the 5 × 5, then the 6 × 6, then the 7 × 7, and finally all vertices but v 8,8 transforms D iteratively into the other five divisors in Figure 6. All six divisors are effective, and together cover each vertex. It follows that r(D) > 0, so gon(G G) 23 = 24 − 1, as desired.

Graph products with expected gonality
In most cases where the gonality of a graph product is known, the inequality from Proposition 3 is in fact an equality. Let P n denote the path on n vertices, and let C n denote the cycle on n vertices. Since P n is a tree, gon(P n ) = 1; and by Lemma 6, we have gon(C n ) = 2.
• The grid graph G m,n is the product P m P n of two path graphs. The grid graph has gonality min{m, n} [24], which is equal to min{|V (P m )| gon(P n ), |V (P n )| gon(P m )}.
• The stacked prism graph Y m,n is the product C m P n . By [2] for m = 2n and in general by [17], this graph is known to have gonality min{m, 2n} [2], which is equal to min{|V (C m )| gon(P n ), |V (P n )| gon(C m )}.
• The toroidal grid graph T m,n is the product C m C n of two cycle graphs. By [2] for |m − n| 2 and in general by [17], the graph T m,n has gonality 2 min{m, n} [2], which is equal to min{|V (C m )| gon(C n ), |V (C n )| gon(C m )}.
In this section we provide some additional instances of G H that satisfy the equation in Question 4 by proving that graphs of the form T T and K n T have the expected gonality, where K n is the complete graph on n vertices and T and T are trees. We then prove that the same holds for K m K n where min{m, n} 5, and for graphs of the form G K 2 where g(G) = 1.
The first two arguments involve the treewidth of a graph. We refer the reader to [23] for the definition of treewidth. In [25], it was shown that the treewidth of a graph G, written tw(G), is a lower bound on its gonality: Proposition 10 (Theorem 2.1 in [25]). For any graph G, gon(G) tw(G).
One way to determine the treewidth of a graph is by use of brambles. A collection B = {B i } of connected subgraphs of a graph G is called a bramble if every pair of subgraphs B i and B j in B either intersect in a vertex, or contain two vertices that share an edge. If B i ∩ B j is nonempty for all i and j, then the bramble is called a strict bramble. The order a bramble (or a strict bramble) B, denoted ||B||, is the cardinality of the smallest collection of vertices S ⊂ V (G) such that S ∩ B i is nonempty for all B i ∈ V (G). A famous theorem due to Seymour and Thomas says that the treewidth of a graph is equal to one less than the largest order of any bramble of that graph [23]. By [2, §2], treewidth is lower bounded by the maximum order of a strict bramble, meaning that the order of any strict bramble is a lower bound on gonality; an earlier proof that strict brambles provide a lower bound on gonality appears in [24].
Proposition 11. If T and T are trees with m and n vertices, respectively, then gon(T T ) = min{m, n}.
Proof. By Proposition 3, we have gon(T T ) min{m, n} since the gonality of any tree is 1. For a lower bound, we construct a strict bramble on T T of order min{m, n}, thus giving us a lower bound of min{m, n} on its gonality.
, so every element of B is connected; and any two elements of the bramble intersect, since Since there are m pairwise disjoint graphs of the form {v} T and n pairwise disjoint graphs of the form T {v }, at least one of each such graph fails to intersect S, meaning that their union, which is an element of B, also fails to intersect S. It follows that ||B|| min{m, n}. Thus, We conclude that gon(T T ) = min{m, n}.

Proposition 12.
If T is a tree with at least two vertices, then gon(K n T ) = n.
This is a generalization of [1, Corollary 5.2], which proved gon(K 3 T ) = 3 whenever T is a tree with at least two vertices.
Proof. We know gon(K n T ) min {(n − 1) · |V (T )| , 1 · n} = n by Proposition 3. By Proposition 10, it's enough to show that tw(K n T ) n. Since T has at least two vertices, we know that K n K 2 is a minor (indeed, an induced subgraph) of K n T . The graph K n K 2 in turn has K n+1 as a minor, obtained from collapsing one copy of K n to a single vertex. Since K n+1 has treewidth n and treewidth is minor monotonic, we know that tw(K n T ) n. This completes the proof. Our next results involve the m × n rook's graph, which is the product K m K n . The 3 × 4 rook's graph is pictured in Figure 7. If the equation in Question 4 is satisfied, the graph K m K n will have gonality min{(m − 1)n, m(n − 1)}. Unfortunately, to prove this it will not suffice to use treewidth as a lower bound, since for rook's graphs there appears to be a gap between treewidth and gonality. In the case of the n × n rook's graph, we have tw(K n K n ) = n 2 2 + n 2 − 1 for n 3 [19]; for large n this is about half as large as the expected gonality of n(n − 1). More generally, it follows from work in [12] that for n m 2, we have in particular, those authors proved that the above formula computes a number called the pathwidth of the rook's graph, and pathwidth serves as an upper bound on treewidth. For large m and n, this upper bound on treewidth is about half as large as (m − 1)n, which is the expected gonality of the m × n rook's graph with m n.
One reason why the gonality of the rook's graph is especially interesting comes from algebraic geometry, in particular with respect to graph curves, as defined in [9]. Let C be a complete intersection graph curve of two surfaces in P 3 given by F 1 (x, y, z, w) = F 2 (x, y, z, w) = 0, where F 1 is a general product of m linear forms and F 2 is a general product of n linear forms. Then the dual graph of C is the rook's graph K m K n . More generally, the k-fold product K d 1 · · · K d k is the dual graph of a complete intersection graph curve C in P k+1 of multidegree (d 1 , . . . , d k ). It is shown in [18, §4] that if d 1 · · · d k , then the algebraic gonality of such a curve C is bounded below by the product (d 1 − 1)d 2 · · · d k , which is the expected gonality of K n 1 · · · K n k .
We will make frequent use of the following result, which is a weaker version of Dhar's burning algorithm [14].
Lemma 13. Let D be an effective divisor on a graph G, and let v ∈ V (G) with no chips from D. Let a burning process propagate through G as follows: set v on fire, and let any edge incident to a burning vertex burn. If at any point a vertex has more burning edges incident to it than it has chips from D, let that vertex burn. If the whole graph burns, then the debt in D − (v) cannot be eliminated through chip firing, so r(D) = 0.
In some cases this lemma can be used to provide a lower bound on gonality. We will use it to show the following result, which implies the well-known fact that gon(K n ) n − 1.

Lemma 14.
Let K n be a complete graph on n vertices, and let D be an effective divisor of degree at most n − 2. Let v be any vertex on which D has no chips. Then running the burning process from Lemma 13 burns the whole graph.
Proof. Suppose for the sake of contradiction that the burning process terminates before the whole graph burns, say with u unburned vertices where 1 u n−1. Each unburned vertex has n − u burning edges incident to it, meaning that there must be at least u(n − u) chips on the graph. As a function of u, the expression u(n − u) is concave down, meaning that it achieves its minimum on the interval 1 u n − 1 at a boundary point. (We will frequently make use of such a concavity argument over the next several results.) Plugging in the boundary points u = 1 and u = n − 1 yields 1 · (n − 1) = n − 1 and (n − 1)(n − (n − 1)) = n − 1, so at minimum there are n − 1 chips on the graph. This is a contradiction to deg(D) n − 2, so we conclude that the whole graph burns. This lets us prove the following result, which is a step towards computing the gonality of small rook's graphs. We can describe a vertex of K m K n as (i, j), where 1 i m and 1 j n. The set of all vertices in K m K n with a fixed i will be called a row, and the set of all vertices in K m K n with a fixed j will be called a column. Note that each row is a copy of K n , and each column is a copy of K m .
Lemma 15. Let G = K m K n be a rook's graph where 2 m n, and let D be a divisor on G with n(m − 1) − 1 chips. Then there exists a vertex v ∈ V (G) such that running the burning process from Lemma 13 starting at v results in at least two whole rows and at least whole two columns of G being on fire.
Proof. By the Pigeonhole principle, one of the n columns must have fewer than m − 1 chips. Choose v to be a vertex in this column that has no chips on it, and run the burning process. Then this whole column burns by Lemma 14. Since n(m − 1) − 1 (n − 1)m − 1, one of the m rows must have fewer than n − 1 chips. Since a whole column is burning, some vertex in this row is on fire, which by another application of Lemma 14 means that whole row must be on fire.
Suppose for the sake of contradiction that there are no more rows that burn entirely. An unburned row has u unburned vertices, where 1 u n − 1. Each unburned vertex has at least n − u + 1 burning edges coming into it ((n − u) from the same row, and 1 from the burning row), meaning that the row has at least n − u + 1 chips on each unburned vertex. This means the whole row has u(n − u + 1) chips on it. As a function of u, this is concave down, and so is minimized on the interval 1 u n − 1 at the boundary points. Plugging in u = 1 and u = n−1 yields 1·(n−1+1) = n and (n−1)(n−(n−1)+1) = 2n−2, respectively; since n 2 we have n 2n − 2, so each unburned row has at least n chips on it. There are m − 1 unburned rows, meaning that there must be (m − 1)n chips on the graph, a contradiction since we have only placed n(m − 1) − 1 chips. Thus a second row must burn entirely.
An identical argument shows that if no second column burns entirely, then the graph has at least (n − 1)m chips on it; since (n − 1)m (m − 1)n, this yields the same contradiction, so a second column must burn entirely.
We will also use a result from [4]. A sourceless partial orientation on a graph G = (V, E) is a choice of orientations on some subset of the edges E, such that every vertex has at least one incoming edge. Given a sourceless partial orientation It follows that given a divisor D of nonnegative rank and degree at most g − 1, we can find an equivalent divisor D such that every vertex v has at most deg(v) − 1 chips, and such that no two adjacent vertices v and v have exactly deg(v) − 1 and deg(v ) − 1 chips, respectively. We are now ready to prove our main theorem regarding rook's graphs.
Proof. By Proposition 3 we have gon(K m K n ) min{(m − 1)n, m(n − 1)} = (m − 1)n. Thus we must show gon(K m K n ) (m − 1)n. This is equivalent to showing that no effective divisor of degree n(m − 1) − 1 has positive rank. Choose D to be an arbitrary effective divisor of this degree. If m = 2, choose v according to Lemma 15. Starting the burning process at v burns both rows, and thus the entire graph, so the debt cannot be eliminated in D − (v). It follows that r(D) < 1, and since D was arbitrary we have gon(K 2 K n ) (2 − 1)n = n. (Since K 2 is a tree, this result also follow from Proposition 12.) For m 3, we will use the same proof idea, although we will be slightly more careful with our divisor D. Using the fact that n m 3, we have Thus we have that deg(D) g(K m K n ) − 1, meaning we may apply Lemma 16 to find a sourceless partial orientation O with D ∼ D O . Replace D with this new divisor. Since the degree of every vertex in the graph is n + m − 2, we now have that D places no more than n + m − 3 chips on any vertex, and that no two adjacent vertices both have n + m − 3 chips.
Our strategy for m 3 is as follows: we will show that there exists a vertex v such that, running the burning process from Lemma 13 starting at v, the entire graph burns. By that lemma this will imply that the debt in D −(v) cannot be eliminated, so r(D) < 1. When m = 5 we may need to further modify our divisor via chip-firing before we can find this v, but we will still obtain the desired result.
For m = 3 and m = 4, choose v according to Lemma 15 based on our divisor D. Starting the burning process at v, we know by Lemma 14 that at least two rows and two columns will burn. Let m = 3, so we have 2n − 1 chips on the graph, and no vertex has more than n chips. We know the whole graph burns except possibly for some vertices in a single row. Suppose for the sake of contradiction that there are u > 0 unburned vertices. Then we have u n − 2 since two columns are burning; and we have 2 u since if u = 1 we would need n + 1 chips on the sole unburned vertex. Every unburned vertex must have n − u + 2 chips on it, which means there must be at least u(n − u + 2) chips on this row, where 2 u n − 2; note that these bounds imply that n 4. This number of chips is concave down in u, and so obtains its minimum on the interval 2 u n − 2 at a boundary point. Thus its minimum on this interval is either 2(n − 2 + 2) = 2n or (n − 2)(n − (n − 2) + 2) = 4n − 8, and 4n − 8 2n since n 4. This means we must have more than 2n − 1 chips, a contradiction. Thus the whole graph burns, and r(D) < 1.
Let m = 4. We have the following: there are 3n − 1 chips on the graph; no vertex has more than n + 1 chips; and no two adjacent vertices have n + 1 chips each. The whole graph burns except possibly for vertices in at most two rows. Suppose for the sake of contradiction that the whole graph does not burn. We will split into two cases: where the unburned vertices are all in one row, and where they are spaced out over two rows.
• Case 4.1: Suppose there are u > 0 unburned vertices, all in the same row. Note that we cannot have u = 1, since a sole unburned vertex would need n + 2 chips. We also cannot have u = 2, since the two unburned vertices would each need n+1 chips, but they are adjacent since they are in the same row. Thus 3 u n − 2. It follows that n − 2 3, so n 5. Each unburned vertex is incident to n − u + 3 burning edges, so there must be at least u(n − u + 3) chips on the graph. For 3 u n − 2 this is minimized either when u = 3 or when u = n − 2, which yield 3n and 5n − 10.
For n 5 these are both strictly larger than 3n − 1, a contradiction.
• Case 4.2: Suppose there are unburned vertices in two rows, without loss of generality the first and second rows. Let u 1 and u 2 be the number of unburned vertices in these rows, respectively; we have 1 u i n − 2. Since there are 3n − 1 chips on the graph, one of these two rows has at most 3n−1 2 chips; assume without loss of generality that it is the first row. Each of the u 1 unburned vertices in this row has at least n − u 1 + 2 burning edges incident to it, so this row must have at least u 1 · (n − u 1 + 2) chips. The same argument as in the m = 3 case shows that for 2 u 1 n − 2, the minimum value of this function is either 2n or 4n − 8. Both of these exceed 3n−1 2 since n 4. Thus it must be the case that u 1 = 1, so there is a single unburned vertex v 1 in this row. Since it did not burn, it must have n − 1 + 2 = n + 1 chips on it, the maximum number allowed.
Consider the second row, which has u 2 unburned vertices. Since there are n + 1 chips on v 1 , there are at most 2n − 2 chips on this row. Each unburned vertex has n − u 2 + 3 burning edges incident to it, except possibly for one in the same column as v 1 , which would have n − u 2 + 2 burning edges. This means there are at least (u 2 − 1)(n − u 2 + 3) + (n − u 2 + 2) = −u 2 2 + (n + 3)u 2 − 1 chips on this row. Plugging in u 2 = 2 yields 2n + 1, and plugging in u 2 = n − 2 yields 5n − 11. Both of these are larger than 2n − 2 for n 4, and one of them is the minimum value of −u 2 2 + (n + 3)u 2 − 1 for 2 u n − 2; it follows that u 2 = 1. Call the one unburned vertex in the second row v 2 . It must have n + 1 chips on it, and it must be in the same column as v 1 ; otherwise v 1 and v 2 would each require n + 2 chips. But this means we have two adjacent vertices with n + 1 chips each, which is not allowed in D, giving us a contradiction.
In both cases, we have reached a contradiction, so the entire graph K 4 K n burns. It follows that r(D) < 1.
Finally, let m = 5. We have the following: there are 4n − 1 chips on the graph; no vertex has more than n + 2 chips; and no two adjacent vertices have n + 2 chips each. Before choosing v and running the burning process, we will modify our divisor D slightly so that we may make an additional assumption on it: we would like to be able to assume that no three mutually adjacent vertices have n + 1 chips each. Suppose D does place n + 1 chips on three vertices v 1 , v 2 , and v 3 , all mutually adjacent (so either all three are in the same row, or all three are in the same column). Since there are 4n − 1 chips on the graph, there are n − 4 chips off of the vertices v 1 , v 2 , and v 3 ; in particular, no other vertex has more than n − 4 chips on it. Perform three chip-firing moves by firing v 1 , v 2 , and v 3 . These vertices each end up with 0 chips; the vertices in the same row or column as all three vertices each gain three chips; and the vertices that share a row or column with a single v i each gain 1 chip. This new divisor has no more than n − 4 + 3 = n − 1 chips on each vertex, and so satisfies three conditions: no vertex has more than n + 2 chips; no two adjacent vertices have n + 2 chips each; and no three mutually adjacent vertices have n + 1 chips each. Either our starting divisor D satisfied these three conditions, or it failed in the third one and we may replace it with this new divisor. In any case, we may assume that our divisor D satisfies all three conditions. We may also assume that at least one of the following two conditions holds: either D = D O for some sourceless partial orientation; or D has at most n − 1 chips on each vertex.
As usual, pick v according to Lemma 15. The whole graph burns except possibly for vertices in at most three rows. Suppose for the sake of contradiction not the whole graph burns. We will consider three cases, namely when unburned vertices are spread out over one, two, or three rows.
• Case 5.1: Suppose the unburned vertices are all contained in the same row, and let u be the number of unburned vertices. Each unburned vertex has n − u + 4 burning edges incident to it, meaning that the row has at least u(n − u + 4) chips. First consider 4 u n − 2, so n 6. The function u(n − u + 4) on this interval is minimized at an endpoint, and so has minimum min{6n − 12, 4n}; this is larger than 4n − 1 for n 6, so we know that u 3. If u = 1, then the one unburned vertex must have n + 3 chips, which is not allowed. If u = 2, then the two unburned vertices (which are adjacent) must each have n + 2 chips, which is not allowed. If u = 3, then the three unburned vertices (which are mutually adjacent) must each have n + 1 chips, which is not allowed. Thus we have reached a contradiction.
• Case 5.2: Suppose the unburned vertices are spread out over the first two rows.
Let u 1 and u 2 denote the number of unburned vertices in these rows, and assume without loss of generality that the first row has no more chips than the second row.
The first row has at most 4n−1 2 = 2n − 1 chips. Each unburned vertex in the first row has at least n − u 1 + 3 incident burning edges, so the first row has at least u 1 (n − u 1 + 3) chips. For 2 u 1 n − 2, this has minimum min{2n + 2, 5n − 10}, which is greater than 2n − 1 for n 5. Thus u 1 = 1. The one unburned vertex v 1 must have n − 1 + 3 = n + 2 chips on it (at least n + 2 so as not to burn, and at most n + 2 since this is the maximum allowed).
The second row then has at most 4n − 1 − (n + 2) = 3n − 3 chips. The number of burning edges incident to unburned vertices in this row is at least u 2 (n − u 2 + 4) − 1, meaning the row has at least that many chips. For 3 u 2 n−2, this has minimum min{3n + 2, 6n − 13}, which is larger than 3n − 3 for n 5. Thus we have u 2 = 1 or u 2 = 2. In either case, v 1 shares a column with an unburned vertex in the second row; otherwise v 1 would need n − 1 + 4 = n + 3 chips, which is not allowed.
If u 1 = 1, call the unburned vertex in the second row v 2 . Then v 1 and v 2 need n + 2 chips each so as not to burn, but this is not allowed since they are adjacent to each other. If u 2 = 2, call the unburned vertices in the second row v 2 and v 3 , where v 2 shares a column with v 1 . The vertices v 1 , v 2 , and v 3 must have at least n + 2, n + 1, and n + 2 chips, respectively. Either D is of the form D O for some sourceless partial orientation O; or it is a divisor with at most n − 1 vertices on each vertex. The second clearly does not hold, and so D = D O . We know that O must have every neighbor of v 1 and v 3 oriented towards them; but this means that at most n + 3 − 2 = n + 1 of v 2 's neighbors can be oriented to it, meaning it can have at most n chips, a contradiction.
• Case 5.3: Suppose the unburned vertices are spread out over the first three rows.
Let u 1 , u 2 , and u 3 denote the number of unburned vertices in these rows, and assume without loss of generality that the first row has no more chips than the second row, and the second no more than the third. Nearly identical arguments to those from Case 4.2 show that each row has exactly one unburned vertex, call them v 1 , v 2 , and v 3 . Each has at least (n − 1) + 2 = n + 1 incident burning edges, so each has at least n + 1 chips. If any of v 1 , v 2 , or v 3 is in its own column, it would need to have n + 3 chips not to burn, which is more than is allowed on a single vertex. Thus all three must be in a single column. But we cannot have three mutually adjacent vertices each with n + 1 chips, a contradiction.
In every one of our three cases, we have reached a contradiction. Thus the entire graph K 5 K n burns, and so r(D) < 1. This completes the proof.
In the course of this proof, we have showed that given a divisor D of degree n(m−1)−1 coming from a sourceless partial orientation on K m K n (where m n and m 4), we can choose a vertex v such that running the burning process from Lemma 13 starting at v makes the whole graph burn. However, as hinted at by our careful pre-processing of D when m = 5, this is not true for all rook's graphs. Consider the divisor of degree (5 − 1) · 5 − 1 = 19 pictured on the rook's graph K 5 K 5 on the left in Figure 8 (only the vertices of the graph are illustrated). This divisor does arise from a sourceless partial orientation, namely the partial orientation with the directed edges pictured in the middle and right images in Figure 8; the oriented edges are spread out over two copies of the graph for visibility. However, no matter our choice of vertex v, not the whole graph burns when we start the burning process from v, since the three vertices with 6 chips each remain unburned. Although our proof manages to fill in this gap for K 5 K n , the combinatorics becomes more complicated as we increase m, and so new techniques will need to be developed to push our results for rook's graphs further.
The final result of this section determines the gonality of products of the form G K 2 , where G is a graph of genus 1. We remark that in some instances this result follows from a treewidth argument, such as with C 5 K 2 ; but not in others, such as with C 4 K 2 . Our proof will work in all cases.
First assume that |V (G)| 3. There are three possibilities for G: either G = K 3 ; or G has two vertices, joined by two edges; or G is the previous graph with a third vertex attached by a single edge to one of the other two vertices. If G = K 3 , then gon(K 3 K 2 ) = 3 by Proposition 12. If G has two vertices joined by two edges, then gon(G K 2 ) 2, since G K 2 is not a tree; thus gon(G K 2 ) = 2. Finally, if G is the third possible graph, suppose for the sake of contradiction that gon(G K 2 ) = 2. We illustrate all effective divisors of degree 2 on G K 2 in Figure 9, up to the natural symmetry of switching the two copies of G. For one member D of each equivalence class we label a vertex v such that the debt in D − (v) cannot be eliminated according to Lemma 13, a contradiction to gon(G K 2 ) = 2. Thus gon(G K 2 ) = 3 = |V (G)|. Having dealt with the case of |V (G)| 3, we now assume that |V (G)| 4. We may view G K 2 as the union of two copies of G, with matching vertices connected by edges; we will refer to these two copies of G as G and G , and any vertices v and v corresponding to the same vertex v of G as parallel vertices. Let C denote the unique cycle of G, and let C and C denote the corresponding cycles in G and G , respectively.
Suppose for the sake of contradiction that there exists an effective divisor D on G K 2 of degree 3 with positive rank. Since D has positive rank, we may assume that D places at least one chip on C ∪ C (indeed, on any vertex of C ∪ C we choose). Then, if D has two chips on any 2-valent vertex, fire that vertex; this will not result in another 2-valent vertex having two chips, since the two chips go to different vertices and the third chip is on a vertex of C ∪ C , all of whose vertices have valence greater than 2. After this, suppose that D puts at least one chip on both of two parallel vertices v and v corresponding to a vertex v not on the cycle C of G. Then we may chip-fire those two vertices, together with all vertices not in the same component of (G K 2 ) − {v , v } as the cycles C and C . Applying this process enough times, we will move the two chips to C ∪ C . This process is illustrated in Figure 10. Finally, if at this point any vertex of C ∪ C with valence 3 has exactly 3 chips, we will fire that vertex; this does not interfere with any of our other assumed properties, since any 3-valent vertex on C ∪ C is incident only to other vertices on C and C . Thus we may assume that D places at least one chip on C ∪ C ; that D does not place 2 chips on a vertex of valence 2; that no two parallel vertices away from C ∪ C both have a chip; and that no vertex of C ∪ C of valence 3 has 3 chips. Since deg(D) = 3, one of G and G has at most one chip on it; say it is G . Choose any vertex on C that does not have a chip on it, and run the burning process from Lemma 13 starting from that vertex. Since C has at most one chip on it, the whole cycle C will burn. We now deal with two cases: where C burns solely based on C burning, and when it does not. For the moment, assume that G is a simple graph.
• Assume C burns. Let v and v be parallel vertices not on C ∪ C . They cannot both have a chip, so once both of them receive a burning edge (besides v v ), then one burns and the second will burn unless it has 2 chips on it. Thus fire will spread through the whole graph, unless some vertex off of C and C has 2 chips on it. If such a vertex exists, call it v , and note that v cannot be 2-valent since it has two chips. There is one chip on C ∪ C , say on the vertex w. Since deg(D) = 3, there are no chips off of v and w. Note that (G K 2 ) − {v } is connected, and since w burns, so does all of (G K 2 ) − {v }. Then we know v will burn as well: it has 2 chips, and at least 3 incident burning edges, as illustrated in Figure 11. Thus the whole graph burns.
• Assume C does not immediately burn based on C burning. We claim that then all 3 chips must be on C , and that G is not simply a cycle. If every vertex of C has a chip, then indeed C has all three chips (and we know that C is a triangle, Figure 11: Even with 2 chips on v , the whole graph eventually burns. It is important we've assumed a chip is on C ∪ C : otherwise u could have a chip and the fire could be blocked. meaning G C since G has at least 4 vertices). If on the other hand at least one vertex of C lacks a chip, then that vertex burns due to an edge from C , and the fire will spread both ways around C , starting from that vertex. Any configuration short of having 3 chips on a single vertex result in all of C burning. Thus since C does not burn, we know there must be 3 chips on a vertex v in C . Since D does not place 3 chips on any 3-valent vertex of C ∪ C , we know that v has valence at least 4, so it corresponds to a vertex v in G of valence at least 3; it follows that G C.
Note that (G K 2 ) − C is connected. Since C is on fire, and since there are no chips off of C , all of (G K 2 )−C burns. If each vertex in C has a chip, then some vertex has an additional burning edge coming from a vertex in G − C , so that vertex in C will burn, and from there all C burns. If a single vertex v in C has 3 chips, then at this point the whole graph except for v is burning; as deg(v ) 4, this vertex burns as well.
In both cases, the entire graph burns, which by Lemma 13 contradicts r(D) > 0. Now assume that G is not a simple graph. It follows that C must be a cycle of length 2 connecting two vertices. The argument from the first case carries through when G is not simple. The second case falls through when G is not simple precisely when the three chips are placed as follows: if there is one chip on each vertex u and w of the cycle C , and one chip on a vertex vertex v on G that is not on C , but is instead incident to a vertex of C . Indeed, the whole graph may not burn based on this divisor D. If we have this divisor D on G K 2 , choose a vertex v of G K 2 in the following way: if (G K 2 ) − {v , v } has vertices off of C incident to v , choose v to be such a vertex; if no such vertex exists, then since |V (G)| 4 we may choose v off of C ∪ C on a component of (G K 2 ) − (C ∪ C ) not containing v . The first case leads to v and then all of C burning, and the second case leads to all of C ∪ C and then v burning. These two cases are illustrated in Figure 12. Thus we have reached our desired contradiction for non-simple graphs as well.  Figure 12: Two special cases for choosing v when G is not simple follow if the products in question have the expected gonality from Question 4: that the gonality of the m × n × l grid P m P n P l is mnl/ max{m, n, l} [24]; and that the gonality of the n-dimensional cube Q n = (K 2 ) n is 2 n−1 [25]. Both of these feature graphs of the form G H where one of G and H is a path, suggesting that this would be a particularly interesting setting in which to study Question 4.

The gonality conjecture for products of graphs
Using our upper bound from Proposition 3, we will show in this section that G H satisfies the inequality in Conjecture 1 for any graphs G and H with two or more vertices each. We first state the following useful lemma.
Lemma 19. Let G be a graph of genus g. Then gon(G) g + 1. Moreover, if g 2, then gon(G) g.
Now assume g 2. By [7], the divisor K has degree 2g − 2 and rank g − 1. By [5, Lemma 2.7], given a divisor D of rank r 0, for any vertex v the divisor D − (v) has rank at least r − 1. Since g 2, we can iteratively subtract g − 2 vertices from K to obtain a divisor of degree 2g − 2 − (g − 2) = g that has rank at least g − 1 − (g − 2) = 1. It follows that gon(G) g.
It will also be helpful to have some notation for non-simple graphs with 2 or 3 vertices. Any such graph must have K 2 , P 3 , or K 3 as its underlying simple graph. For n 2, the banana graph B n is the graph with two vertices and n edges between them. For m, n 1 with max{m, n} 2, the double banana graph B m,n is the graph with three vertices, the first two connected by m edges and the second two connected by n edges. For For , m, n 1 with max{ , m, n} 2, the banana loop graph L ,m,n is a graph with three vertices, where the numbers of edges between the three pairs of vertices are , m, and n. Several examples of these graphs are illustrated in Figure 13, along with divisors of rank 1. One can verify that gon(B n ) = 2; that gon(B m,n ) = 2 if min{m, n} = 1 or m = n = 2, and gon(B m,n ) = 3 otherwise; and that gon(L ,m,n ) = 2 if two of , m, and n are equal to 1, and gon(L ,m,n ) = 3 otherwise. We have already seen B 2,1 B 2,1 in Figure 1, which illustrated that gon(B 2,1 B 2,1 ) 5. We are now ready to prove that any nontrivial graph product G H satisfies gon(G H) Proof of Theorem 2. Let G and H be graphs, where G has v 1 vertices and e 1 edges, and H has v 2 vertices and e 2 edges, where v 1 , v 2 2. The product graph G H then has genus e 1 v 2 + e 2 v 1 − v 1 v 2 + 1. Without loss of generality we will assume that e 2 v 1 e 1 v 2 , which implies that e 2 v 1 . Assume for the moment that either v 2 4, or g(H) 2. By Proposition 3 we have gon(G H) v 1 gon(H). By Lemma 19 we have v 1 gon(H) v 1 (g(H) + 1) = v 1 (e 2 − v 2 + 2) = e 2 v 1 − v 1 v 2 + 2v 1 . If v 2 4, then we have On the other hand, if g(H) 2, then by Lemma 19 we have gon(H) g(H). It follows that gon In both of these cases, we have that gon(G H) < g(G H)+3

2
, and in fact that gon(G H) < g(G H) +3 2 , since the gap between gon(G H) and g(G H)+3 2 is at least 2. We may now assume v 2 < 4, and that g(H) 1. We might be tempted to say that by symmetry, v 1 < 4 as well; however, we already used the symmetry of switching G and H when we assumed e 2 v 1 e 1 v 2 , so we have no control on v 1 at the moment. Since v 2 3, we know that H is K 2 , P 3 , K 3 , B n , B m,n , or L ,m,n for some integers , m and n. Note that g(B n ) = n − 1, g(B m,n ) = m + n − 2, and L ,m,n = + m + n − 2. Since we've assumed g(H) 1, the only non-simple possibilities for H are B 2 and B 2,1 . Thus we have H ∈ {K 2 , P 3 , K 3 , B 2 , B 2,1 }. We will handle K 3 and B 2,1 together, and the other three cases separately.

Products with maximum gonality
We now determine which nontrivial graph products satisfy gon(G H) = g(G H)+3

2
. We start with the following lemma, which determines the gonality of several graph products not yet dealt with.
These graphs are the rightmost pair of graphs in the bottom row of Figure 17.
Proof. As usual, Proposition 3 furnishes the desired upper bound on these gonalities. We will argue lower bounds using Lemma 13.
Suppose for the sake of contradiction that there exists an effective divisor D of degree 3 and positive rank on B 2 B 2 . Since B 2 B 2 has four vertices, we can choose v with no chips on it, and run the burning process from Lemma 13. Since two edges connect each vertex to each of its neighbor, a vertex could only be safe from a burning neighbor if it had 2 or more chips. Thus as the fire spreads around the underlying cycle C 4 of the graph, at most one vertex is not burned; but then there are 4 incident burning edges for that vertex, and at most 3 chips on the graph, so the whole graph burns. This contradicts r(D) > 0, so gon(B 2 B 2 ) 4.
Suppose for the sake of contradiction that there exists an effective divisor D of degree 5 and positive rank on B 2,1 K 3 . Label the vertices of B 2,1 as u, v, and w, where val(u) = 2, val(v) = 3, and val(w) = 1; and let C be the cycle connecting u and v. Refer to the three copies of B 2,1 as G 1 , G 2 , and G 3 ; and to their vertices as u i , v i , and w i and cycle as C i in accordance with our labelling on G. We will refer to the three copies of K 3 as u-K 3 , v-K 3 , and w-K 3 , depending on which vertices they are composed of. This notation is illustrated in Figure 14. Figure 14: Our labels on B 2,1 and B 2,1 K 3 First we rule out several possible cases for D, namely if D is of the form (u i ) + (v i ) + (u j ) + (v j ) + (w k ) where i, j, and k are all distinct; and if D is of the form 2(u i ) + 3(v i ). It turns out a divisor of the first form is equivalent to a divisor of the second form by firing all vertices besides u 1 and v 1 , as illustrated in Figure 15. These equivalent divisors do not have positive rank: if D = (u i ) + (v i ) + (u j ) + (v j ) + (w k ), we can run the burning process from w i or w j , and the whole graph burns. Thus we may assume that D does not have either of those forms. Since g(B 2,1 K 3 ) = 10 > 5, we may assume by Lemma 16 that D = D O for some sourceless partial orientation O, implying that D places at most val(x) − 1 chips on every vertex x. If D places a chip on each of w 1 , w 2 , and w 3 , then fire these three vertices to move one chip each to v 1 , v 2 , and v 3 ; and if D places at least two chips on two of w 1 , w 2 , and w 3 (but no chip on the third), fire those two vertices to move chips away. Replacing our D with this new divisor, we still have that it places at least val(x)−1 chips on a vertex x, since there were at most 1 or 2 chips off of w-K 3 , depending on which w-configuration we were handling.
Since there are three copies of C, at least one of them, say C 1 , has at most one chip. Choose a vertex on C 1 without a chip and run the burning process. Certainly all of C 1 burns. Let b be the number of vertices of C 2 ∪ C 3 that burn. We now deal with several cases.
• Suppose b = 0. Then each of the four vertices of C 2 ∪C 3 have at least one chip. Since there are only five chips at least one of v 2 or v 3 must only have one chip, meaning that we cannot have the w-K 3 burn. With at most one chip not on C 2 ∪ C 3 , the only way to prevent the w-K 3 from burning is to place 1 chip on w 1 . But then D is of the form (u i ) + (v i ) + (u j ) + (v j ) + (w k ) where i, j, and k are all distinct, a contradiction.
• Suppose b = 1; say it is u 2 that burns. Counting up burning edges and noting that no other vertex of C 2 ∪ C 3 burns, we know v 2 has three chips, u 3 has two chips, and v 3 has one chip. This exceeds our five chips, a contradiction. The same argument works for any other vertex of C 2 ∪ C 3 .
• Suppose b = 2. If u i and v j burn for i = j, then v i and u j each need 3 chips, which is impossible. If u i and u j burn, then v i and v j each need 3 chips, which is impossible; a similar contradiction occurs if v i and v j burn. If u i and v i burn, then each of u j and v j needs at least 2 chips. In order to prevent v j from burning, it must have a third chip: there is no way to use 1 chip to prevent v j from burning. But then D is of the form 2(u j ) + 3(v j ), a contradiction.
• Suppose b = 3. If u i does not burn, then since all vertices incident to it are burning, it must have 4 chips, a contradiction since it can have at most val(u i ) − 1 = 3 chips.
If v i does not burn, then it must have 4 chips, which is not yet a contradiction since val(v i ) − 1 = 4. However, since C j and C k are burning for j = k, 1 chip is not enough to prevent w-K 3 from burning. This means w i is burning, so v i needs 5 chips, a contradiction.
• Suppose b = 4, so all of C 1 ∪ C 2 ∪ C 3 burns. We know at least one w i has no chips, so that vertex burns; and the other w j and w k now have 2 incoming burning edges each. By our construction of D we know they can't both have 2 chips, so one burns; and then the other burns as well, since it can't have more than 2 chips. Thus the whole graph burns, contradicting r(D) > 0.
We are now ready to state the main theorem of this section. if and only if G H is Before we prove this theorem, we enumerate the possible graphs O of genus 1 with between 3 and 5 vertices. Such an O consists of a single cycle with c 2 vertices, with up to 5−c other vertices connected to this cycle without forming a new cycle; note that c = 2 if and only if G is not simple. There end up being 8 such simple graphs, all illustrated in the top row of Figure 16: the cycles C 3 , C 4 , and C 5 ; the so-called tadpole graphs T 3,1 , T 3,2 , and T 4,1 ; the so-called bull graph B; and the so-called cricket graph K. Note that the cycle graph C 3 is equal to the complete graph K 3 . There are 9 non-simple graphs, pictured on the second row of Figure 16. Figure 16: The graphs of genus 1 with between 3 and 5 vertices, simple and non-simple We illustrate the content of Theorem 21 with Table 1 and with Figure 17, which respectively show all simple and non-simple nontrivial graph products G H satisfying gon(G H) = g(G H)+3

2
. We include references in the table to results from this paper that imply the claimed gonality, although many of these gonalities were previously known. In particular, the gonality of the m × n grid was proved to be min{m, n} in [24]; and the gonality of C m P n was proved to be min{m, 2n} for m = 2n in [2], giving the gonality of the 2 × 3 rook's graph and the 5-prism.  1, so H must be one of the graphs K 2 , P 3 , K 3 , B 2,1 , and B 2 . For some of these cases, we will consider ∆(G H) := g(G H)+3 2 − gon(G H). In any case where ∆(G H) 1, we will have gon(G H) < g(G H)+3
Let H = K 2 . We will deal with three cases sorted by the genus g of G: g = 0, g = 1, and g 2.
• If g = 0, then G is a tree, so gon(G K 2 ) = min{2, v 1 } = 2 by Proposition 11. We . This is equal to 2 if and only if v 1 = 2 or v 1 = 3, so we must have G = K 2 or G = P 3 . This gives us the graphs K 2 K 2 and K 2 P 3 .
• Assume now that G has genus g 2. We will show that in this case ∆(G K 2 ) 1.
• If g(G) = 0, then v 1 − 1 = 0 and v 1 = 1, a contradiction. If g(G) = 1, then v 1 = 2. The only graph of genus 1 with 2 vertices is B 2 ; we do indeed have that by Lemma 20. This graph is the rightmost graph on the bottom row in Figure 17.

Cartesian products of metric graphs
We close our paper with a brief discussion of extending our results to metric graphs. Given a graph G, we can assign lengths to its edges via a length-function : E(G) → R >0 . The pair (G, ) can then be thought of as a topological space Γ, consisting of an interval of length (e) for each e ∈ E, glued together according to the data of G. We remark that different pairs (G, ) and (G , ) can yield the same topological space Γ. For example, if G = K 2 with an edge of length 1 and G = P 3 with two edges, each of length 1/2, then both pairs (G, ) and (G , ) yield the same topological space Γ, namely an interval of length 1. We call the space Γ a metric graph, and (G, ) a model for Γ.
The theory of divisors on combinatorial graphs was extended to metric graphs in [15] and [21], where divisors are still finite formal sums, but now of points that can be placed anywhere on the graph, including in the interior of edges. We briefly recall the details here. Many definitions, such as degree and effectiveness, carry through from the combinatorial case. Equivalence of divisors is now defined in terms of tropical rational function. A tropical rational function f : Γ → R is a continuous piecewise-linear function with integer slopes and only finitely many pieces. The order of f at a point p ∈ Γ, written ord p (f ), is the sum of the outgoing slopes of the graph of f at p. The divisor associated to f is p∈Γ ord p (f ) · (p).
We say two divisors D and E are equivalent if D − E = div(f ) for some tropical rational function f . The rank of a divisor D is the maximum r such that for any effective divisor E of degree r, the divisor D − E is equivalent to an effective divisor (if no such r exists, we define the rank of D to be −1). We define the gonality of a metric graph to be the minimum degree of a rank 1 divisor on that metric graph. It is not immediately obvious whether or not the rank of a divisor is even calculable; after all, there are infinitely many possible points in Γ where E could be supported. Fortunately, Luo's work on rankdetermining sets makes the problem much more tractible [20]. A finite set A ⊂ Γ is said to be rank-determining if for any divisor D ∈ Div(G), we can compute r(D) while only considering E with supp(E) ⊂ A.
To extend our discussion of gonality on Cartesian products of graphs to the world of metric graphs, we have to specify what we mean by the product of two metric graphs. Certainly we will not take the topological product of two metric graphs Γ 1 and Γ 2 : this would be a 2-dimensional manifold with singularities, rather than a metric graph. Instead, we can choose models (G 1 , 1 ) and (G 2 , 2 ) of Γ 1 and Γ 2 , and define the product of the models to be (G 1 G 2 , 1 2 ), where 1 2 (e 1 v 2 ) = 1 (e 1 ) and 1 2 (v 1 e 2 ) = 2 (e 2 ). Unfortunately, the associated metric graph of (G 1 G 2 , 1 2 ) depends on our choice of models of Γ 1 and Γ 2 , since the underlying graph G 1 G 2 can change in ways that are topologically relevant. Thus we will not refer to "the" product Γ 1 Γ 2 of Γ 1 and Γ 2 , merely "a" product Γ 1 Γ 2 . Thus in all cases, the notation Γ 1 Γ 2 implies a choice of models for Γ 1 and Γ 2 . (One could choose to always use the canonical loopless models of Γ 1 and Γ 2 , as in [11]; our results hold in more generality, so we will maintain freedom of model.) We can still interpret Γ 1 Γ 2 as |V (G 2 )| copies of Γ 1 , with edges connecting those copies according to the combinatorics of G 2 ; and vice versa. Thus every point in Γ 1 Γ 2 can be thought as either (a, w) with a ∈ Γ 1 and w ∈ V (G 2 ), or as (v, b) with v ∈ V (G 1 ) and b ∈ Γ 2 , or possibly as both, if it is a point (v, w) where v corresponds to a vertex of G 1 and w corresponds to a vertex of G 2 .
It turns out that the upper bound from Proposition 3 on the gonality of Cartesian products still holds in the metric setting. In the proof of this, we will use the following notation: if D = k i=1 n i · (a i ) ∈ Div(Γ 1 ) and b ∈ V (G 2 ), we set Note that if D 0, then (D, b) 0.
Proof. By symmetry, it is enough to show that gon(Γ 1 Γ 2 ) gon(Γ 1 ) · |V (G 2 )|. Let F be an effective divisor on Γ 1 with r(F ) 1 and deg(F ) = gon(Γ 1 ). Set This divisor has degree gon(Γ 1 )·|V (G 2 )|. We wish to argue it has positive rank. The points of Γ 1 Γ 2 corresponding to V (G 1 G 2 ) form a rank-determining set by [20, Proposition 3.1], so r(D) 1 if and only r(D − (v, w)) 0 for any v ∈ V (G 1 ), w ∈ V (G 2 ). Let (v 0 , w 0 ) ∈ V (G 1 ) × V (G 2 ). Since F has rank 1 on Γ 1 , we know there exists a tropical rational function f on Γ 1 such that F − (v 0 ) + div(f ) 0. Define a tropical rational function d on Γ 1 Γ 2 by d(a, b) = f (a). We have that d is indeed a tropical rational function: its graph essentially looks like the graph of f along each copy of Γ 1 , with slope zero edges connecting (v, w) to (v, w ) whenever ww ∈ E(G 2 ).
We remark that in order for this result to hold, it is very important that the lengths of the metric graphs Γ 1 and Γ 2 are taken into account; the bound no longer holds if we merely take the product of the underlying combinatorial graphs and then assign an arbitrary length function, as illustrated in the following example.
Example 23. Let G 1 = K 2 and let G 2 be the tree on 6 vertices with 4 leaves and 2 trivalent vertices, pictured along with G 1 G 2 in Figure 18. If we assign lengths to the edges to obtain metric graphs Γ 1 and Γ 2 , then by Proposition 22 gon(Γ 1 Γ 2 ) gon(Γ 2 ) · |V (G 1 )| = 1 · 2 = 2; since Γ 1 Γ 2 is not a tree, we in fact have gon(Γ 1 Γ 2 ) = 2. However, not all assignments of lengths to G 1 G 2 yield a graph of gonality at most 2. By [6, Lemma 4.2], a metric graph (G 1 G 2 , ) has gonality 2 only if the edges e and f labelled in the Figure 18 have the same length. Thus by choosing (e) = (f ), we can find a length function on G 1 G 2 such that the metric graph associated to (G 1 G 2 , ) has gonality larger than the bound from Proposition 22. = e f Figure 18: A graph product whose gonality is more than 2 if (e) > (f ) By [25,Corollary 4.2], if Γ is a metric graph with model (G, ), we have tw(G) gon(Γ). This allows us to recover some of our results for combinatorial graphs in the metric setting.
Proof. The lower bound comes from the same treewidth computations from Propositions 11 and 12. For the upper bound, we note that we still have gon(Γ) = 1 if and only if Γ is a metric tree, as an easy corollary of the tropical Riemann-Roch theorem. We also have that gon(Γ) = n − 1 if Γ is any metric K n [22,Example 14]. Combined with Proposition 22, this completes the proof.