Grid graphs, Gorenstein polytopes, and domino stackings
Abstract.
We examine domino tilings of rectangular boards, which are in natural bijection with perfect matchings of grid graphs. This leads to the study of their associated perfect matching polytopes, and we present some of their properties, in particular, when these polytopes are Gorenstein. We also introduce the notion of domino stackings and present some results and several open questions. Our techniques use results from graph theory, polyhedral geometry, and enumerative combinatorics.
Key words and phrases:
magic labellings, domino tilings, perfect matching polytopes, rational functions, grid graphs, Gorenstein polytopes, Ehrhart polynomials, recurrence relations, reciprocity theorems2000 Mathematics Subject Classification:
Primary 05A15, 05C70; Secondary 52C07.1. Introduction
Our goal is to study, from a convex geometric point of view, domino tilings of rectangular boards. They are in natural bijection with perfect matchings of grid graphs. Namely, we consider their associated perfect matching polytopes and present some of their properties. In particular, we characterize when these polytopes are Gorenstein. (We will define all these notions shortly). We also introduce the notion of domino stackings and present some results and several open questions.
The grid graph is defined with vertex set such that two vertices and are adjacent if and only if . The torus graph consists of the same vertex and edge set as with the additional edges and . We use the convention that and denote the vertex set and edge set of a graph .
Given a graph , is a perfect matching if every vertex of is incident with exactly one edge of . A generalization of a perfect matching is the notion of a magic labelling of sum , which is a function such that for each vertex , the sum of the labels of the edges incident to equals . Perfect matchings are magic labellings of sum . A natural question is how many magic labellings of sum a given graph has. In this paper, we are interested in the case when , and denote the number of magic labellings of sum by . In particular, we can fix any two parameters, let the other vary to get a sequence, and encode this sequence in a generating function.
The perfect matching polytope associated to a graph is defined to be the convex hull in of the incidence vectors of all perfect matchings of . There is a natural identification between points in and weighted graphs. We denote by and the perfect matching polytopes of and , respectively.
For an integral polytope (i.e., the vertices of have only integer coordinates), let be the function that counts the number of integer points in for . It was proved by Ehrhart [11] that agrees with a polynomial with constant term 1 for all positive integers. See also [4] for a modern treatment of Ehrhart theory. It is easy to see (as we will show) that the magic labellings of sum of correspond bijectively to the integer points of . It is a wellknown result (see [21, Chapter 4.3]) that if is a polynomial, then evaluates to a proper rational function (i.e., the degree of the numerator is strictly less than the degree of the denominator) of as follows.
for a polynomial where and . We are interested in properties of the sequence , which we call the Ehrhart vector of . For instance, Stanley showed (for general integral polytopes) that these numbers are nonnegative integers [20]. We characterize the values for which is Gorenstein, that is, the Ehrhart vector is palindromic () [3, 5]. An equivalent formulation for the Gorenstein property is that there exists an integer such that for all and for . Here denotes the number of interior integer points of . In this case, we say that is Gorenstein of index .
To warm up, we show in Section 2 that the Gorenstein property holds for for some values. We can conclude this immediately from the following more general result.
Proposition 1.
Let be a regular bipartite graph with even. Then the perfect matching polytope of is Gorenstein of index . In particular, we have the functional identity for .
Corollary 2.
Assume and is even.

is a point.

and are Gorenstein of index 2.

is Gorenstein of index 3.

If is even, then is Gorenstein of index 4.
It is worth noting that Tagami [24] has shown that these and and are all of the perfect matching polytopes of torus graphs which are Gorenstein; the latter two are Gorenstein of index 4 and 3, respectively.
For the nontorus grid graphs, we prove the following classification in Section 3, which is our first main result.
Theorem 3.
Assume . The polytope is Gorenstein of index if and only if one of the following holds:

and is even, in which case is a point,

, in which case if , and for ,

and is even, in which case , or

, in which case .
Thus, in precisely these cases, has a palindromic Ehrhart vector. We can say more (Section 4):
Theorem 4.
If is Gorenstein then has a unimodal Ehrhart vector. If and are both even, then also has a unimodal Ehrhart vector.
(The sequence is unimodal if there exists such that .) Proposition 9 in Section 2 gives the dimension of , so coupled with this result, we have an infinite list of Gorenstein polytopes.
The second theme of this paper concerns domino tilings. A domino tiling of an rectangular board is a configuration of dominos such that the entire board is covered and there are no overlaps. An excellent survey on general tilings can be found in [1]. There is an obvious correspondence between domino tilings and perfect matchings of . A natural question is whether there is an analogue of magic labellings of sum of . One possible answer is given by domino stackings. A domino stacking of height of an rectangular board is a collection of domino tilings piled on top of one another. Every such domino stacking gives a magic labelling of sum of in a natural way. In Section 5 we establish a simple connection between magic labellings and domino stackings by showing that this natural map is surjective via some general results for lattice polytopes:
Proposition 5.
Every magic labelling of sum of can be realized as a domino stacking of height of an rectangular board.
We should remark that this result is a consequence of Hall’s marriage theorem, but that it will also follow from properties of the perfect matching polytopes.
It was shown by Klarner and Pollack [15] that for and fixed (or, by symmetry, fixed ), the generating function is a proper rational function in . In Section 5, we slightly modify this proof to obtain the same result for general .
Theorem 6.
For fixed and , the sequences and are given by a linear homogeneous recurrence relation.
Finally, in Section 6, we give a geometric approach to domino tilings. Our main result in this section is a new, geometric proof of the following:
Theorem 7 (Propp [16]).
If counts the number of ways to tile an rectangular board with dominos, then the sequence is given by a linear recurrence relation, and furthermore, this recurrence relation satisfies the reciprocity relation
if , and
otherwise.
A remark: we interpret negative arguments to a recurrence relation to mean that the formula for the recurrence relation is run backwards. It was shown by Propp that even if one uses nonminimal recurrence relations, these values at negative numbers are well defined.
2. Basic Properties of perfect matching polytopes
Let be a graph. For and , we denote by the set of edges that are incident to exactly one vertex in , and is the sum of the weights of the edges in in the weighted graph associated with . The following theorem gives an inequality description for .
Theorem 8 (Edmonds [9]).
Let be a graph with an even number of vertices. A point lies in the perfect matching polytope of if and only if

for all ,

for all ,

for all of odd size.
A complete characterization of graphs for which condition (3) is redundant is given in [8]. In particular, the condition is redundant for bipartite graphs.
Proof of Proposition 1.
As we just remarked, condition (3) in Theorem 8 is redundant for bipartite graphs. Thus counts the integer points that satisfy

for all ,

for all ,
whereas the interior points in are those points satisfying (1) with strict inequality. In both cases, each equation in (2) involves exactly variables, from which we deduce that if and for . ∎
An important piece of data associated with a polytope is its dimension. Fortunately, for grid graphs there is a simple formula for the dimension of its perfect matching polytope. The situation for torus graphs is complicated only in the sense that there are several cases to consider.
Proposition 9.
Suppose that is even.

.

If is even, then .

If is even, then .

If is odd, then .

If and are both even, then .

If is even and is odd, then .
The proof of this statement follows easily from Theorem 10 below. But we first need some definitions. A graph is said to be matching covered if every edge of belongs to a perfect matching of . A brick is a 3connected and bicritical graph (i.e., removing any two vertices results in a connected graph that has a perfect matching). A method for decomposing general graphs into bricks is given in [10], and the number of such bricks obtained is denoted by . We shall not need this machinery; for our purposes it is enough to know that if is bipartite, and that if is a brick. There is no overlap since the definition of a brick prevents it from being bipartite.
Theorem 10 (Edmonds–Lovász–Pulleyblank [10]).
Let be a matching covered graph. If is the perfect matching polytope of , then .
Proof of Proposition 9.
Both and are matching covered if and . The number of edges of is , and the number of vertices is . In the case that either or , consists of a single point, which has dimension 0 and agrees with the formula.
When and are both even, is bipartite, so it is enough to count edges. For , the number of edges is , and when , the number of edges is .
In the other cases when is even and is odd, is not bipartite, but is 3connected and bicritical if . So in this case, , and we just need to count edges, which we’ve done above for . For the case and , there are exactly two perfect matchings of , which gives . ∎
3. Characterization of Grid Graphs with Gorenstein Polytopes
Now we give a lemma that will be used in the proof of Theorem 3.
Lemma 11.
Let be even. Given a magic labelling of sum of , let , , and denote the values of the edge in the top, middle, and bottom rows, respectively. Then for even, and for odd, .
Proof.
We refer to Figure 1.
Here we are assuming that is even and . Following the constraints given by the vertices, we get , which implies
By induction, , so
We play the same game for . Solving some equations gives and
Using this identity, we finally conclude
However, we have already taken care of the base case, as setting variables with negative index to be 0 is equivalent to not having them there at all, and the proof proceeds in the same way. ∎
Now we turn to the proof of Theorem 3. Recall its statement: is Gorenstein if and only if one of the following holds:

and is even,

,

and is even, or

.
Proof of Theorem 3.
In order to show that a polytope is Gorenstein of index , we prove two things. First, we show that is the smallest dilate of to contain an interior integer point, and that this point is unique. Second, we show that if is the unique integer point in , then for any integer point , . If our graph is bipartite, then this is enough to conclude that using the hyperplane description given by Theorem 8. This gives an obvious bijection which implies that .
If and is even, then there is exactly one matching of . Then is a point, so the Ehrhart series is , and the statement follows.
We now consider the case . If , is a 2regular graph and Proposition 1 applies. For , note that the polytope has no interior points if . For , an interior point is given in Figure 2. The vertices of degree 3 force their adjacent edges to have weight 1, so it follows that this is the only such interior point. For , the edges of an interior point of must have weight if they have weight 2 in the figure. If not, then their adjacent edges have weight and they are adjacent to vertices of degree 3, which gives a contradiction. So is Gorenstein in this case.
For the case , we may assume that . The existence of vertices of degree 4 means that has no interior points for . To get an interior point for , consider a vertex of degree 2. If the edges adjacent to have weight 1 and 3, then the edge of weight 3 is adjacent to a vertex of degree 3, which cannot happen. Thus, they must both have weight 2. However, there is a vertex of degree 3 that is adjacent to two vertices of degree 2. Since the edges that they share both have weight 2, there is no valid weight for the third edge adjacent to , so also has no interior points. Using the notation of Lemma 11, we get an interior point of with the following labelling: if is odd and otherwise, if is odd and if is even, if or and otherwise. We illustrate this interior point in Figure 3.
To see this is the only interior point of , we consider an alternative labelling. No edge can have weight 4, so the weights for vertices of degree 2 must be 2 and 3. Note that the 3 and 2 must be assigned as they are in Figure 3. Otherwise, the vertex of degree 3 on the far left will have sum greater than 5. We will show that for , if is odd and that if is even, which implies the uniqueness of the given interior point. By Lemma 11, we know that if is even and otherwise. For the first claim, suppose otherwise. Then , which implies , or . However, is adjacent to a vertex of degree 3 if , so this is a contradiction. For the second claim, if , then , which means , which cannot happen. Thus, we have shown uniqueness of the interior point in . But we have done more. From the inequalities shown, we get for free the functional identity , giving that is Gorenstein.
When , there are no interior points for when , and for , a unique interior point is given by labelling the eight edges incident to vertices of degree 2 with weight 2 and the rest of the edges weight 1. For a general interior point in when , the edges adjacent to the corner edges must have at least weight 2, so is Gorenstein.
For the other of interest, we split them up into two cases. In the first case, and are both even, and in the second case, is even and is odd.
First suppose that and are both even. There are no interior points in for . We give an interior point for as follows. Assign weight 2 to the edges , , , and when is even, and assign 1 to all other edges. We illustrate this for in Figure 4. This example is big enough to be instructive.
To see this is unique, note that the weights of the edges of the corner vertices must be 2, and the weights of the edges incident to a vertex of degree 4 must be 1. This, however, forces the rest of the values on the edges incident to vertices of degree 3. Now consider the following interior point of .

Assign weight 2 to edges of the form , , and , for and odd.

Assign weight 3 to edges of the form for even and .

Assign weight 2 to edges of the form for odd and .

Assign weight 2 to edges of the form for even and .

Finally, assign weight 1 to all other edges.
We illustrate this for in Figure 5 (here is the bottom left vertex and is the top right vertex).
In order for to be Gorenstein, we must have . Note that for any point of , we may add the interior point of to get an interior point of . However, all points acquired through this must have weight for the edge , but we have given an interior point of such that this edge has weight 1, which implies , so the functional identity is not satisfied.
In the case that is even and is odd, does not have an interior point for . To see that this is true for , the edges incident to the corner vertices must have weight 2. This forces a labelling as in the case is even, but it will not work because is now odd. In other words, if we label the outside and work toward the middle, there will be no satisfactory values for the middle edges. We now give an interior point for .

Assign weight 3 to all edges of the form where and is even.

Assign weight 2 to edges of the form where and .

Assign weight 2 to edges where and is even.

Assign weight 2 to edges where and is odd.

Finally, assign weight 1 to all other edges.
This labelling is illustrated for in Figure 6 (again, is the bottom left vertex and is the top right).
Since this graph labelling is not symmetric, we can get another interior point by “flipping” the graph (i.e., the weight for edges and are the weights for and , respectively, from the interior point given previously). Thus, does not have a unique interior point so is not Gorenstein. ∎
We give an example of the Ehrhart polynomial and Ehrhart series of the perfect matching polytope of a grid graph. We used polymake [12] for conversion from the hyperplane description given in Theorem 8 to vertex descriptions, and normaliz [6] for the computation of the Ehrhart functions.
Example.
The Ehrhart functions of are
The smallest example of a nonGorenstein polytope arises from , which has Ehrhart series
4. Unimodular Triangulations and Unimodality
We remind the reader that a triangulation of a polytope is a set of simplices whose union is such that the intersection of any two simplices is a face of both. An integral simplex with vertices is unimodular if forms a basis of as a free Abelian group, and a triangulation is unimodular if each simplex is unimodular.
One might ask if has a unimodular triangulation. Fortunately, the answer is yes. Given an ordering of the vertices of a polytope , the reverse lexicographic triangulation is defined as follows. For a single vertex , . In general, consider all facets (codimension 1 faces) of that do not contain . For each such facet , there is an ordering of the vertices of induced by that gives a reverse lexicographic triangulation of . For each simplex in this triangulation, take the convex hull of its union with . The union of all such convex hulls is . A polytope is said to be compressed if the reverse lexicographic triangulation with respect to any ordering of its vertices is unimodular. The following result immediately guarantees the existence of unimodular triangulations.
Theorem 12 (Santos [18], OhsugiHibi [13], Sullivant [23]).
If is a 0/1 polytope (i.e., each coordinate of each vertex is either 0 or 1) defined by the linear equalities and inequalities
where is an integervalued matrix and is an integervalued column vector, then is compressed.
5. Domino Stackings and Magic Labellings
There is a natural manytoone function from domino stackings of height of an rectangular board to the magic labellings of sum of . It is conceivable that some magic labelling cannot be realized as a physical stacking. However, we have shown earlier that has a unimodular triangulation, which implies that it is a normal polytope. (An integral polytope is normal if every integer point in can be written as a sum of integer points in .) In particular, this means that every magic labelling of sum of must be the sum of perfect matchings, so our function is a surjection, and this is what we claimed in Proposition 5.
Recall that for fixed , the generating function evaluates to a proper rational function in , which means that the sequence is given by a linear recurrence relation. Running these recurrence relations backwards, one obtains values for when . It was shown in [16] that these values for are the same even if the recurrence relation used is not minimal. A reciprocity relation was also given, which is the content of Theorem 7.
This is equivalent to a result in [22] which gives properties of the numerator and denominator polynomials in the rational function . We would like an analogous result for magic labellings of sum and domino stackings of height . Recall that Theorem 6 states that for general , if one fixes , then there is a recurrence relation in for the function . The proof that we give is essentially the same as the one found in [15] with only slight modifications.
Proof of Theorem 6.
Given a magic labelling of sum for , consider its canonical planar drawing. We can uniquely encode it with vectors of length in the following way. For , the entry of is the label of the horizontal edge counting from the top of the graph in the column starting from the left and going right. We define and to be zero vectors of length .
We now form a directed graph whose vertex set is . For two vectors , we form the edge if and only if there is some such that there is a magic labelling of sum for encoded by the vectors with and for some . Given this, there is a natural bijection between the magic labellings of sum of and walks of length in from to itself.
Order the vertices of by interpreting each vector as a number in base , and let be the adjacency matrix of . The number of walks of length from to itself is the entry of . By the Cayley–Hamilton theorem, there is a polynomial relation
for and integers . Multiplying both sides by and looking at the entry in each term gives a recurrence relation for involving the coefficients .
In the case of domino stackings of height , we can get a similar result. Instead of vectors in making up the vertices of , we encode each domino stacking as a zeroone matrix and play the same game to get a recurrence relation for the sequence . ∎
As an immediate corollary, we now know that for fixed and , the generating function evaluates to a rational function . The next step is to understand what properties and have.
The sequence is a shift of the Fibonacci numbers, so this gives a nice proof that powers (for a fixed exponent) of Fibonacci numbers can be encoded by a linear homogeneous recurrence relation. This was previously done in [17], which also gives recurrence relations for the coefficients of the recurrence relations.
6. Convex Geometric Considerations of Domino Tiling Reciprocity
In this section, we give a convex geometric proof of why reciprocity exists for the number of domino tilings of the rectangular board for fixed using the following theorem which gives a closed form. We make some remarks on reciprocity of domino stackings of fixed height and width at the end of the proof.
Theorem 14 (Kasteleyn [14]).
The number of domino tilings of the rectangular board is given by
where
We remark here that the above theorem is in a different form from the one found in [14]. The original formulation gives a product from to , and designates when is odd. However, when is odd, for , and for odd and even, it is , so our formulation is equivalent.
First note that for all . The key observation is that
and that the sum on the right is an evaluation of a certain multivariate generating function (6) below. That is, consider the polytope . Let ; we are interested in the fold Cartesian product of with itself. Let be the cone over . To be precise, . We consider the integer point transform of , which is the following formal Laurent series in variables.
where . In the case of a simplicial cone , if are the generators of , define the fundamental parallelepiped
Then the integer point transform is a rational function of the form (see, e.g., [4, Chapter 3])
We can triangulate (using no new vertices), and this triangulation induces a triangulation of into simplicial cones. The generators of each will be of the form where contains exactly one of and for each . Conversely, each such subset will appear as the generator for at least one of the simplicial cones in the triangulation of . By adding the rational functions for these simplicial cones and playing inclusionexclusion on the intersections, the integer point transform of is
where the product runs over all subsets of that contain exactly one of and for each , and is some multivariate polynomial. We make the substitutions , , and . The polytope can be described as the set of nonnegative solutions to the equations and for each . Thus, using Theorem 14,
From this substitution,
where runs over all possible binary strings of length , and denotes the bit of , and and .
To proceed, we use the following theorem due to Stanley which gives a relation between the integer point transform of a rational cone and the integer point transform of its interior.
Theorem 15 (Stanley [19]).
If is a rational cone in whose apex is the origin, then as rational functions,
where denotes the relative interior of .
Equipped with this fact, we have
(1) 
The last equality follows from the identity (of rational functions)
where is given by a linear recurrence relation. Finally, we use the fact that is a Gorenstein cone (i.e., adding some vector to the cone allows us to enumerate the integer points in its interior). This means that
(2) 
Putting both sets of equalities together and matching coefficients gives
To recover the result in [16], note that when or ,