Content uploaded by Svenja Huntemann
Author content
All content in this area was uploaded by Svenja Huntemann on Oct 03, 2019
Content may be subject to copyright.
COUNTING POSITIONS
SVENJA HUNTEMANN 1AND NEIL A. MCKAY 2
Abstract. Domineering is a two player game played on a checkerboard in
which one player places dominoes vertically, while the other places them hor-
izontally. We will give bivariate generating polynomials enumerating Domi-
neering positions given the number of pieces placed by each player. Specifi-
cally, we enumerate all positions, maximal positions, and Right or Left ending
positions. We also discuss how this relates to other counting problems, includ-
ing matchings on grid graphs.
1. Introduction
Combinatorial games are 2-player games with perfect information and no chance
devices, such as Chess or Go. Many combinatorial games have, for a fixed starting
position, a finite number of options and the game is guaranteed to end in a finite
number of moves; in theory we could determine by computer which player would
win if both players play perfectly. In practice game theorists and computer scien-
tists have not determined the outcomes of games under perfect-play because of the
complexity of the required search.
Enumeration of positions has been studied, directly or indirectly, for several com-
binatorial games. The first few papers on counting game positions considered the
problem of enumerating specific types of positions—Go end positions in [7, 6, 16]
and second-player win positions for two games in [8, 9]. In the game Node Kayles,
played on a graph, the two players alternate choosing vertices not adjacent to any
previously chosen ones, thus forming an independent set. Therefore the indepen-
dence polynomial of a graph is equal to the generating polynomial for positions of
Node Kayles on that graph. Similarly, in the play of Arc Kayles the players
form a matching. The enumeration of matchings has been studied for many graphs
(see Section 1.1). In partizan games, where players may have distinct options at
some point during play, the convention is to call the two players Left (who uses
bLue pieces) and Right (who uses Red pieces). In Col, which is played on a graph,
a move for Left is to colour a vertex blue, while a move for Right is to colour a
1School of Mathematics and Statistics, Carleton University, Ottawa, Canada,
svenja.huntemann@carleton.ca
2Department of Mathematics and Statistics, University of New Brunswick, Saint
John, Canada, neil.mckay@unb.ca
2010 Mathematics Subject Classification. Primary 91A46 and Secondary 05C30 and 05C57;
Key words and phrases. Combinatorial game and Domineering and enumeration and match-
ings and grid graph.
The authors thank Mount Allison University in Sackville NB, Canada. This research project
started while both authors were members of the Department of Mathematics and Computer
Science.
The first author’s research was supported in part by the Natural Sciences and Engineering
Research Council of Canada (funding reference number PDF-516619-2018).
1
2 COUNTING DOMINEERING POSITIONS
vertex red, and no two vertices of the same colour may be adjacent. Oh and Lee
[12] call such a position a bipartite independent vertex set and give the generating
polynomial for grid graphs. Brown et al. [4] give the generating polynomial, which
they call the polynomial profile, for several games, including closed forms for Col
and the game Snort (like Col, but two vertices of different colours may not be
adjacent) played on paths.
In this paper we consider the game . This game is played on a
checkerboard. The two players alternately place dominoes; Left places vertically
and Right places horizontally. The game ends when the player whose turn it is
cannot place a piece; this player loses — this is the Normal play convention. We
will count all Domineering positions, as well as Domineering positions with
certain properties, following the method used by Oh and Lee in [11, 12]. In newer
work Oh also considers monomer-dimer tilings in [10], thus implicitly counting
Domineering positions, which overlaps with some of our work as discussed in
Section 2.
Domineering, also called Dominoes or Crosscram in older work, was intro-
duced by G¨oran Andersson and popularized by Martin Gardner in the 1970s. There
has been significant interest in this game since then (see for example [2, 3, 17, 18, 19]
and references therein). Some simplification techniques are known and can be com-
bined with computer search for analysis, but no complete solution is available. It is
known who wins on many rectangular boards up to size 11 ×11 and some nonrect-
angular boards, as well as some values (essentially who has the advantage and by
how much) and temperatures (essentially the urgency of moving). For the reader
further interested in combinatorial game theory techniques, see [14].
As a game of Domineering progresses, it often naturally breaks into smaller
components, see Figure 1. A player on their turn has to decide which component
they want to play in and make their move there. This is called the disjunctive
sum of these components.
=
+ +
+
Figure 1. During play a Domineering position may decompose
into a disjunctive sum of Domineering positions that are not
necessarily rectangular. The board on the left breaks into the
disjunctive sum of the components on the right.
If the two players choose different components in the disjunctive sum it can
happen that the same player makes two consecutive turns in the same component.
For example in Figure 1, if it is Right’s turn, he could choose to play in the third
COUNTING Domineering POSITIONS 3
component, Left may choose the fourth, and Right choose the third again. Due
to this, we are also interested in Domineering positions in which the two players
do not necessarily alternate turns, hence we consider plays where the difference
between the number of Left dominoes and Right dominoes may be larger than 1.
In Section 2 we will find the generating function for the number of positions on
an m×nrectangular board which we denote by
Dm,n(x, y) = Xd(a, b)xayb
where d(a, b) is the number of positions with aLeft dominoes and bRight dominoes.
We then demonstrate in Section 3 how to generalize the technique employed to find
Dm,n(x, y) to calculate the generating function for non-rectangular boards.
We are also particularly interested in enumerating positions at the end of the
game. A Left end is a position in which Left can no longer play a piece, while
Right potentially still has moves; a Right end is defined similarly. A maximal
position is a position which is both a Left end and a Right end — a position
in which no player can place a domino. In Section 4 we will find the generating
function for maximal positions, which we denote by Fm,n(x, y). In Section 5 we
consider the generating function for Right ends; this is essentially the same as the
generating function for Left ends.
Finally, in Section 6 we will discuss some other questions related to the technique
used within and the problem of enumerating Domineering positions.
1.1. Related Problems. The checkerboard corresponds to a grid graph by using
a vertex for each square and connecting them with an edge if the two squares are
horizontally or vertically adjacent. Playing Domineering on the checkerboard is
then equivalent to forming a matching (also called an edge independent set) on the
grid graph, with a distinction made between horizontal and vertical edges.
If we make no distinction between Left and Right dominoes, that is, we enumer-
ate the positions with a fixed number of dominoes, this is equivalent to enumerating
the number of matchings in a grid graph or enumerating the monomer-dimer tilings
of the chessboard (for a summary of connections to physics and chemistry see [13]).
In particular, this means that Dm,n(x, x) is the generating function for matchings
in an m×ngrid graph, and that Dm,n(1,1) gives the total number of such match-
ings. The latter, also known as the Hosoya index of the grid graph, is known (for
example see [1] or the OEIS1sequences A030186 for 2 ×n, A033506 for 3 ×n, and
A028420 for n×n). If a perfect matching exists in the m×ngrid graph, then the
number of perfect matchings is the leading coefficient of Dm,n(x, x) as this is the
number of maximum matchings.
Similarly, Fm,n(x, x) gives the generating function for the maximal matchings in
an m×ngrid graph. The total number of maximal positions Fm,n (1,1) are known
for some values of mand n(OEIS sequences A000931 for 1×n, A286945 for 2 ×n,
A288028 for 3 ×n, and A287595 for n×n).
Domineering belongs to the class of strong placement games, and thus one can
assign to each game a simplicial complex representing the legal positions (see [5]
for details). The coefficients of Dm,n(x, x) are then the entries of the f-vector —
the vector counting the number of faces of a given dimension — of this simplicial
complex, while the coefficients of Fm,n (x, x) give the number of maximal faces,
1Online Encyclopedia of Integer Sequences [15]
4 COUNTING DOMINEERING POSITIONS
called facets, of a fixed dimension. Our work in this paper was originally motivated
by wanting to determine how many facets there are with a given number of vertices
representing Left or Right moves. We solve this problem by finding Fm,n(x, y ) in
Section 4.
2. Counting All Domineering Positions
Given mand n, our goal is to count the number of Domineering positions that
can occur as the result of play in an m×nrectangle. To distinguish this problem
from counting specific types of domineering positions later we refer to these as
general Domineering positions.
We will find a generating function Dm,n(x, y ) such that
Dm,n(x, y) = Xd(a, b)xayb
where d(a, b) is the number of Domineering positions with aLeft (vertical)
dominoes and bRight (horizontal) dominoes.
From the generating function, we will extract information on the play positions,
those that can be reached through alternating play, in Section 2.1.
In their paper, Oh [10] considers an equivalent problem to the particular prob-
lem of counting general positions using a trivariate generating function, where the
third variable counts the number of empty squares. The number of empty squares
is not particularly relevant to Domineering. However, this information can be
deduced from the number of dominoes of either player and the board size. We use
an equivalent method, but as our generating functions are slightly different, our
recursions are different as well. We include the recursion here for completeness,
particularly as we continue using the matrices in Section 3.
To count rectangular Domineering positions we consider the tilings of rectan-
gles using tiles with edge labels, then count the tilings that correspond to positions.
We use the tiles in Figure 2.
T0
0
0
0
0T1
1
0
0
0T2
0
0
1
0T3
0
0
0
1T4
0
1
0
0
Figure 2. The tiles used to count general Domineering positions
For a rectangular tiling to form a Domineering position it has to satisfy the
following conditions:
(1) Adjacency condition: All shared edges of adjacent tiles have the same label.
(2) Boundary condition: All boundary edges of the tiling have label 0.
Together these conditions ensure that the tiling has no half-dominoes.
In turn, any Domineering position can be uniquely represented using such a
tiling. See Figure 3 for an example.
In the tiling of a Domineering position, such as in Figure 3, the number of Left
(vertical) dominoes is equal to the number of T1tiles, and the number of Right
(horizontal) dominoes is equal to the number of T3tiles.
COUNTING Domineering POSITIONS 5
T0
0
0
0
0
T0
0
0
0
0
T0
0
0
0
0
T0
0
0
0
0
T0
0
0
0
0
T0
0
0
0
0
T0
0
0
0
0
T0
0
0
0
0
T0
0
0
0
0
T2
0
0
1
0
T2
0
0
1
0
T2
0
0
1
0T2
0
0
1
0
T1
1
0
0
0
T1
1
0
0
0
T1
1
0
0
0T1
1
0
0
0
T4
0
1
0
0
T4
0
1
0
0
T4
0
1
0
0
T4
0
1
0
0
T3
0
0
0
1
T3
0
0
0
1
T3
0
0
0
1
T3
0
0
0
1
Figure 3. ADomineering position on a 5 ×5 board and its
equivalent tiling.
We use the term mosaic for tilings that satisfy the adjacency condition, but not
necessarily the boundary condition. A 1 ×qmosaic is called a bar mosaic, that
is, a row of qtiles.
We will find generating polynomials by first counting bar mosaics. We then stack
these bars to count rectangular mosaics. It is in this step that we will consider the
adjacency condition for vertically adjacent tiles. Finally, we will restrict to those
tilings that also satisfy the boundary condition.
We will count mosaics instead of just Domineering tilings as a row or column
of a Domineering rectangle is not necessarily a Domineering position itself. For
example in Figure 3 the second row from the bottom forms the bar mosaic shown
in Figure 4—it does not correspond to a Domineering position on its own as
the leftmost two tiles are unpaired half-dominoes but shared edges of horizontally
adjacent tiles do have the same label.
T0
0
0
0
0
T1
1
0
0
0
T2
0
0
1
0T3
0
0
0
1
T4
0
1
0
0
Figure 4. A row of a Domineering tiling is a bar mosaic, which
satisfies the (horizontal) adjacency condition but not necessarily
boundary condition.
The enumeration of bar mosaics will be done using matrices, called bar-state
matrices. We take care to construct these matrices so that we can count rect-
angular mosaics by matrix multiplication. As we only want in the end to count
mosaics that satisfy the boundary condition we can make due with counting only
bar mosaics with label 0 on the right end. The enumeration of the bar mosaics will
be done recursively — we use the enumeration of bar mosaics to enumerate longer
bar mosaics — so our matrices are recursively defined (using blocks). We use two
bar-state matrices; the matrix to count bar mosaics of length qwith right label 0
and left label 0 is denoted by G0,q and the matrix to count bar mosaics of length
6 COUNTING DOMINEERING POSITIONS
qwith right label 0 and left label 1 is denoted by G1,q . We use Ghere for naming
the matrices, standing for ‘general’, to reserve Mfor matrices in the subsequent
sections of the paper, which include a discussion of maximal positions.
Theorem 2.1. The polynomial profile of Domineering on an m×nboard is the
(1,1) entry of Gm
0,n where G0,0=1,G1,0=0, and
G0,q+1 =
G0,q
+G1,q
xG0,q
G0,q 0
G1,q+1 =
yG0,q 0
0 0
Proof. We will first prove that the bar-state matrices give the generating polyno-
mials for bar mosaics.
In a bar-state matrix the rows and columns are indexed by binary strings of
length q. Thus each matrix has size 2q×2q. We order these strings lexicographically.
Thus, the strings of length 3 are ordered as
000,001,010,011,100,101,110,111.
An entry in a bar-state matrix is the generating polynomial of the bar whose top
edge labels are the column index, and whose bottom edge labels are the row index;
the right edge label is 0 and the left edge label corresponds to the matrix (the first
subscript of G). The generating polynomial of the bar is the monomial xaybwhere
ais the number of T1in the bar and bis the number of T3in the bar.
For q= 0, so the length is 0, it is only possible to satisfy the adjacency condition
if both the starting and ending labels are the same. We thus have G0,0=1and
G1,0=0.
Our construction for larger quses blocks and we name them as in Figure 5 to
avoid proliferating subscripts. We need to show that in each matrix the 4 blocks are
as we claim. Our argument is recursive and follows by first considering the leftmost
tile in each bar. The block considered determines the top label and bottom label
of the leftmost tile in bar mosaics enumerated as in Figure 5.
bottom
top 0 1
0
1I II
III IV
Figure 5. The block construction of the state-matrices for general
Domineering positions.
For q= 1 the bars we are counting consist of a single tile which must have right
label 0 (or cannot have right label 1), that is, one of the four tiles 0–3; you may
wish to reference Figure 2. Thus between the bar-state matrices G0,1and G1,1we
have four nonzero blocks — determined by the top and bottom labels of tiles 0–3.
Recall that each block has a corresponding top and bottom label of the leftmost
tile. Thus
G0,1=1x
1 0G1,1=y0
0 0,
COUNTING Domineering POSITIONS 7
and this shows that the recursion is correct for the first step.
The bar-state matrix G0,q+1 enumerates mosaics where the leftmost tile has left
label 0 (and right label 0). We consider possible leftmost tiles which are tiles 0–2
and 4, as these are the only tiles with left label 0. Of these four tiles, those tiles
that meet the conditions for block I are tile 0 and tile 4. As the right label of tile 0
is 0, the possible completions of our bar when the leftmost tile is tile 0 are given by
G0,q. As the right label of tile 4 is 1, the possible completions of our bar are given
by G1,q. So block I is G0,q +G1,q .
The conditions for block II (that the leftmost tile have top label 1 and bottom
label 0) require T1as the leftmost tile in the bar mosaic and the entry is xG0,q
because the right label of tile 1 is 0 and G0,q counts the bar mosaics with left label
0 and right label 0 (recall that for each T1we have an x).
The conditions for block III force T2as the leftmost tile, giving the entry G0,q .
For block IV, we would need a tile with bottom and top label 1 but no tiles have
such labels and so our entry is 0.
In G1,q+1, we have a left label of 1. As our recursion starts by consider possible
left tiles, we need only consider tile 3, as this is the only tile with 1 as a left label.
Thus the only block for which tile 3 has appropriate top and bottom labels is
block I. Since T3is forced and its left label is 0, the possible completions of the bar
are given by G0,q and the entry in block one is yG0,q . All other blocks, having no
possible leftmost tiles, count no mosaics and thus their blocks are 0.
We turn our attention to rectangular m×ntilings and in particular those that
satisfy the left and right boundary conditions, so we will only consider the bar
mosaics of length nwith left label 0 in addition to having the right label 0; these
are counted by G0,n.
First consider 2 ×nmosaics that satisfy the adjacency condition. Such a mosaic
consists of two bar mosaics where the string of bottom labels of one mosaic matches
the string of top labels of the other. Suppose Ais the bar-state matrix for the top
bar and Bis the bar-state matrix for the bottom bar. To count all the 2×nmosaics
that satisfy the adjacency condition we need to consider all 2nstrings of matched
labels along the stacked bar mosaics. That is, we take columns in Aand rows in B.
Since the other labels of the bar mosaics have to match, we take the dot product
of the two vectors to get the polynomial for this mosaic. Thus the matrix for the
2×nmosaic is BA.
To get mosaics that also satisfy the boundary conditions and thus correspond
to Domineering positions we can start with bar mosaics that satisfy the left and
right boundary conditions; in our case A=B=G0,n, so the state matrix for 2 ×n
mosaics where the left and right boundary conditions are also satisfied is G2
0,n.
For larger mosaics this works the same way; we stack more bars and find that
the matrix for a m×nmosaic is Gm
0,n.
Fixing the string of top labels and of bottom labels for the 2 ×nmosaic cor-
responds to specifying an entry in the matrix. Finally, to satisfy the boundary
condition on top and bottom we need to restrict to all top and bottom labels being
0. This means we take the entry in the top left corner, entry (1,1).
Example 2.2. Now we compute the number of general positions on a 4 ×3Domi-
neering board. We need the bar-state matrix for bar mosaics of length 3 satisfying
the left and right boundary conditions, G0,3, which we find recursively:
8 COUNTING DOMINEERING POSITIONS
G0,1=1x
1 0G1,1=y0
0 0
G0,2=
y+ 1 x x x2
1 0 x0
1x0 0
1 0 0 0
G1,2=
y xy 0 0
y0 0 0
0 0 0 0
0 0 0 0
G0,3=
2y+ 1 xy +xxx2xy +x x2x2x3
y+ 1 0 x0x0x20
1x0 0 x x20 0
1 0 0 0 x000
y+ 1 x x x20 0 0 0
1 0 x0 0 0 0 0
1x0 0 0 0 0 0
1 0 0 0 0 0 0 0
Calculating G4
0,3gives the state matrix for 4×3 boards and and taking the (1,1)
entry, gives the generating function for 4 ×3Domineering positions:
D4,3(x, y) = x6+ 9x5+ 6x4y2+ 20x4y+ 30x4+ 46x3y2+ 84x3y+ 45x3
+ 4x2y4+ 24x2y3+ 100x2y2+ 100x2y+ 30x2+ 24xy4
+ 72xy3+ 90xy2+ 48xy + 9x+ 16y4+ 32y3+ 24y2+ 8y+ 1.
For example, that on a 4 ×3Domineering board there are 90 positions with
1 vertical domino and 2 horizontal dominoes is shown by the term 90xy2and that
there is 1 position with 6 vertical dominoes is shown by the term x6.
2.1. Play positions. The polynomials we have found count all legal Domineer-
ing positions. That is, as mentioned previously, we do not assume alternating
play. To enumerate positions which may occur during alternating play, which we
call play positions, we have to restrict to those terms in Dm,n(x, y) where the
difference in the powers of xand yis at most 1.
Example 2.3. Using Example 2.2 we can see that the polynomial for the play
positions on a 4 ×3 board is
46x3y2+ 24x2y3+ 100x2y2+ 100x2y+ 90xy2+ 48xy + 9x+ 8y+ 1.
Setting x=y= 1 in this polynomial we get the total number of play positions,
in this case 426.
The number of play positions on an n×nboard are given in Table 1. We also
include the ratio of all positions that are play positions, truncated to 5 decimals.
Recall that the number of all positions, being equal to the number of matchings in
a grid graph, are given in the OEIS sequence A028420.
The ratio computed in Table 1 gives a sense of the cost of considering all plays
from a position, as is standard in combinatorial game theory, compared to consid-
ering only plays reachable in alternating play which is common in practice.
We expect that the ratio of play positions decreases as the board size increases
because on larger boards there are an increasing number of ways to have a board
with the number of dominoes for the two players differing by more than one. The
ratios apparently do not follow an arithmetic or geometric sequence.
COUNTING Domineering POSITIONS 9
nNumber of play positions Ratio of play positions
1 1 1
2 5 0.71428
3 75 0.57251
4 4,632 0.46264
5 1,076,492 0.38299
6 963,182,263 0.32222
7 3,317,770,165,381 0.27774
8 43,809,083,383,524,391 0.24367
9 2,209,112,327,971,366,587,064 0.21689
10 424,273,291,301,040,427,702,718,109 0.19532
Table 1. The number and ratio of play positions on small square boards.
We expect the ratios of play positions to general positions to approach 0. While
it is interesting to consider how this ratio changes as the board size grows, it is also
potentially interesting to observe how this ratio changes during play.
3. Non-Rectangular Boards
The techniques we use to find the generating polynomials of rectangular boards
can be used to find the generating polynomials of non-rectangular boards as well.
We think of a non-rectangular board as being a rectangular board with missing
squares and treat the missing squares as squares forced to be empty. For example,
the board on the left in Figure 6 we think of as being contained in a 2 ×3 board
with forced empty squares on the top left and top middle.
←→ 0 0
0
Figure 6. The equivalence of a non-rectangular board and a rect-
angular board with forced empty squares.
We will create a (bar-state) matrix Rifor each row, then multiply these matrices
to get the state matrix for the entire mosaic. In the board in Figure 6 the matrix
for row 1 is R1=G0,1. For row 2 we will use G0,3, but restrict those columns which
have 0 in the first and second position for the label. We denote this as R2=G0,3|00 .
For restrictions on bottom labels we will use a subscript. Example 3.2 shows this
procedure but before that we consider rows with missing squares in the middle as
in Example 3.1. If a row contains an missing square in the middle, the Kronecker
product of the bar-state matrices of the shorter strips is the bar-state matrix for
the row. The Kronecker product of two matrices Aand Bis
A⊗B=
a11B· · · a1nB
.
.
.....
.
.
am1B· · · amn B
.
10 COUNTING DOMINEERING POSITIONS
If missing squares in a row break it into three or more parts we use the Kronecker
product multiple times.
The tilings/play in the left part of the broken row are independent of those in
the right part. The state-matrix for the whole row is a block matrix where the
blocks are determined by possible labels of the first part of the row, while the order
of the second part in each block is the same and determined by the possible top
and bottom labels in that part. Thus, taking the Kronecker product of the matrix
for the first strip with the matrix for the second strip is exactly what we need here.
Example 3.1. Consider the strip
0
The matrix for this row is
G0,1⊗G0,2|0=1x
1 0⊗y+ 1 xxx2
1x0 0 =
y+ 1 xxx2xy +x x2x2x3
1x0 0 x x20 0
y+ 1 xxx20 0 0 0
1x0 0 0 0 0 0
.
Finally, we multiply the matrices for each row such that the bottom row matrix
is the left-most one, while the top row matrix is the right-most one, allowing us
to match the top/column label of each row with the bottom/row label of the row
above.
Example 3.2. Consider the board
For row 1 we have
R1=G0,4|0;
for row 2 as in the board above
R2=G0,1⊗G0,2|0;
and for row 3
R3=G0,3|0.
The matrix for the entire mosaic is then G=R3×R2×R1. To apply the
restriction of having only 0s for top and bottom labels we take only the (1,1) entry
of the matrix. Thus we get the generating polynomial
D= 2x3y2+ 8x3y+ 4x3+ 12x2y2+ 22x2y+ 8x2+xy4+ 10xy3+ 26xy2
+ 21xy + 5x+ 2y4+ 9y3+ 12y2+ 6y+ 1.
Using this technique for non-rectangular boards, we are thus able to find the gen-
erating polynomial counting positions that can be reached from a partially played
board. We will do so in Example 3.4, where we will also use the following simplifi-
cation for disjunctive sums.
COUNTING Domineering POSITIONS 11
Proposition 3.3. Suppose Gis the game of Domineering on the board B1and
His Domineering on B2. Then the generating polynomial of G+His the product
of the generating polynomials of Gand H.
Proof. Let the coefficient of xiyjin the generating polynomial of Gbe ai,j , of H
be bi,j , and of G+Hbe ci,j .
Consider a position in G+Hwith uLeft pieces and vRight pieces. Say iLeft
pieces and jRight pieces of these have been played in Gand the rest in H. There
are ai,j bu−i,v−jsuch positions, and thus
cu,v =X
0≤i≤u
0≤j≤v
ai,j bu−i,v−j.
Therefore, the generating polynomial of G+His the product of those of Gand
H.
This proposition again emphasizes that it makes sense to enumerate all positions,
not just play positions, due to disjunctive sums allowing a difference in the number
of pieces larger than 1.
Example 3.4. The position in Figure 7 occurred partway through Game 1 of
the finals of the Domineering tournament at the 1994 workshop “Games of No
Chance” at MSRI (see [18, Fig. 3]). We will determine the polynomial for all play
positions that would have to be analyzed from this point on.
Figure 7. A board position from Game 1 of the 1994 tournament
finals position with disjunctive components highlighted.
We start by finding the generating polynomials for general positions of each of
the three disjunctive sum component as we have done in Example 3.2.
12 COUNTING DOMINEERING POSITIONS
The “bottom” component, bordered in blue, as a mosaic has the matrix
G0,6|00 00 ×G3
0,2
(recall that we multiply the matrixes for each row from the bottom up). Thus the
generating polynomial, the (1,1) entry of this matrix, is
x4y2+ 2x4y+x4+ 10x3y2+ 16x3y+ 6x3+ 3x2y4+ 24x2y3+ 58x2y2
+ 46x2y+ 11x2+ 8xy4+ 42xy3+ 62xy2+ 34xy + 6x+y6+ 9y5
+ 26y4+ 35y3+ 24y2+ 8y+ 1.
The “top” component, bordered in red, has the matrix
(G0,1⊗G0,1)×(G0,1⊗G0,1)×(G0,2|0⊗G0,2|0)×(G0,6|000
00 )
×(G0,2⊗G0,1)×(G0,6|00 00 ⊗G0,1).
The generating polynomial is
x9y3+ 3x9y2+ 3x9y+x9+ 23x8y3+ 62x8y2+ 55x8y+ 16x8+ 4x7y5
+ 43x7y4+ 291x7y3+ 555x7y2+ 401x7y+ 98x7+ 60x6y5+ 539x6y4
+ 1874x6y3+ 2564x6y2+ 1469x6y+ 295x6+ 4x5y7+ 71x5y6+ 650x5y5
+ 2908x5y4+ 6250x5y3+ 6303x5y2+ 2885x5y+ 481x5+ 34x4y7
+ 467x4y6+ 2590x4y5+ 7406x4y4+ 11148x4y3+ 8637x4y2+ 3218x4y
+ 452x4+x3y9+ 20x3y8+ 222x3y7+ 1421x3y6+ 4991x3y5
+ 9909x3y4+ 11109x3y3+ 6812x3y2+ 2098x3y+ 251x3+ 3x2y9+ 55x2y8
+ 437x2y7+ 1909x2y6+ 4790x2y5+ 7083x2y4+ 6172x2y3+ 3063x2y2
+ 789x2y+ 81x2+ 3xy9+ 50xy8+ 330xy7+ 1123xy6+ 2181xy5
+ 2533xy4+ 1774xy3+ 726xy2+ 158xy + 14x+y9+ 15y8+ 85y7+ 237y6
+ 373y5+ 353y4+ 204y3+ 70y2+ 13y+ 1.
Finally, the component on the left, bordered in green, is simply a 6 ×1 board,
thus having matrix G6
0,1and generating function D1,6(x, y) = x3+ 6x2+ 5x+ 1.
Multiplying all three generating polynomials we get the generating polynomial
for the entire position. Restricting to only play positions this is
17x10y11 + 410x10 y10 + 7690x10y9+ 6769x9y10 + 76829x9y9+ 532379x9y8
+ 436560x8y9+ 2217847x8y8+ 7453953x8y7+ 6030494x7y8
+ 16049771x7y7+ 29420257x7y6+ 23698832x6y7+ 36239078x6y6
+ 38789964x6y5+ 31354701x5y6+ 29013063x5y5+ 18784523x5y4
+ 15287335x4y5+ 8768628x4y4+ 3451191x4y3+ 2830886x3y4
+ 1004132x3y3+ 232953x3y2+ 192647x2y3+ 40779x2y2+ 5086x2y
+ 4240xy2+ 487xy + 25x+ 21y+ 1.
In this polynomial we see from the small degree terms the number of possible
paths of the game from this position. The high degree terms give some sense of
state at the end of the game provided play continues in such a way that the game
lasts as long as possible. In this game Left played first; we see that Left (vertical)
COUNTING Domineering POSITIONS 13
has played 6 times whereas Right has played 5 times and thus it is Right’s turn from
this position. Right has 21 possible moves. Right would likely have been happy to
see terms in the polynomial where the degree of yis greater than the degree of x
as these indicate the possibility of Right winning; of note then is the term 17x10y11
with a relatively small coefficient. The actual winner of this game was Left.
Further, by setting x=yin all matrices, we are also able to count the number
of matchings of a subgraph of a grid using this technique.
4. Counting Maximal Domineering Positions
Recall that a maximal Domineering positions is one in which neither player has
any available moves. In this section we count maximal Domineering positions.
We find the generating function
Fm,n(x, y) = Xf(a, b)xayb
where the board has size m×nand f(a, b) is the number of maximal Domineering
positions with aLeft (vertical) dominoes and bRight (horizontal) dominoes. We
use Ffor the generating polynomial of the maximal positions as these correspond
to the facets (maximal faces) of the simplicial complex representing the position.
We will use the same technique as for the general Domineering positions of
counting bar mosaics, multiplying the matrices, and then restricting to tilings,
with only a few small differences. The tiles will be different so that with only using
adjacency and boundary conditions we can force the tiling to be equivalent to a
maximal position, i.e. no two empty spaces may be adjacent, and in turn a position
corresponds to a unique tiling. The possible tiles in this case are given in Figure 8.
T0
0
1
1
0
T1
2
0
0
0T2
2
0
0
1T3
0
0
2
0T4
1
0
2
0T5
0
0
2
1T6
1
0
2
1
T7
0
0
0
2T8
1
0
0
2T9
0
2
0
0T10
1
2
0
0T11
0
2
0
1T12
1
2
0
1
Figure 8. The tiles used to count maximal Domineering positions.
For these tiles to form a maximal Domineering position a tiling has to satisfy
the following conditions:
(1) Adjacency condition: All shared edges of adjacent tiles have the same label.
(2) Boundary condition: The left and top boundary edges of the tiling have
label 0; the right and bottom boundary edges have label 0 or 1.
14 COUNTING DOMINEERING POSITIONS
In turn, any maximal Domineering position can be uniquely represented using
a such a tiling. To decide between the different tiles representing domino halves
one simply has to check for empty squares above and to the left. As an example,
see the position and equivalent tiling in Figure 9.
T0
0
1
1
0
T0
0
1
1
0
T0
0
1
1
0
T0
0
1
1
0
T0
0
1
1
0
T0
0
1
1
0
T0
0
1
1
0
T0
0
1
1
0
T1
2
0
0
0T1
2
0
0
0
T1
2
0
0
0
T2
2
0
0
1
T2
2
0
0
1
T7
0
0
0
2
T7
0
0
0
2
T7
0
0
0
2
T7
0
0
0
2
T7
0
0
0
2
T8
1
0
0
2
T3
0
0
2
0
T3
0
0
2
0
T4
1
0
2
0
T5
0
0
2
1
T6
1
0
2
1T9
0
2
0
0
T9
0
2
0
0
T10
1
2
0
0
T11
0
2
0
1
T11
0
2
0
1
T12
1
2
0
1
Figure 9. A maximal Domineering position on a 5 ×6 board
and its equivalent tiling.
Note that the number of Left (vertical) dominoes is equal to the number of T1
and T2tiles, and the number of Right (horizontal) dominoes is equal to the number
of T7and T8tiles.
In this case we will use Mas the label of the bar-state matrices to represent
that we are counting maximal positions only. Also note that, since the bottom and
right edge in a tiling are allowed to have both 0 and 1 as their labels, the generating
polynomial will be a sum of entries. A detailed explanation is given in the proof of
the following theorem.
Theorem 4.1. The generating function for the maximal position of an m×n
Domineering board is
Fm,n(x, y) = X
u∈{0,1}n M0,n +M0
0,n!m
(1 +
n
X
i=1
ui3i,1)
where M0,0=1,M1,0=0,M2,0=0,M0
0,0=0,M0
1,0=1,M0
2,0=0,
and
M0,(q+1) =
M2,q M2,q xM0,q
M1,q 0 0
M0,q M0,q 0
M0
0,(q+1) =
M0
2,q M0
2,q xM0
0,q
M0
1,q 0 0
M0
0,q M0
0,q 0
M1,(q+1) =
M2,q M2,q xM0,q
0 0 0
M0,q M0,q 0
M0
1,(q+1) =
M0
2,q M0
2,q xM0
0,q
0 0 0
M0
0,q M0
0,q 0
COUNTING Domineering POSITIONS 15
M2,(q+1) =
yM0,q yM0,q 0
0 0 0
0 0 0
M0
2,(q+1) =
yM 0
0,q yM 0
0,q 0
0 0 0
0 0 0
.
Proof. The proof will be along the same lines as the proof of Theorem 2.1, thus
some of the details will be omitted.
The bar-state matrices count bar mosaics of length q. The matrix Mk,q counts
those bars with starting label kand ending label 0, while the matrix M0
k,q counts
those with starting label kand ending label 1.
The labels will be ternary strings, ordered lexicographically. Thus, the strings
of length 2 are ordered as
00,01,02,10,11,12,20,21,22.
The column labels of the matrix again correspond to the top label of the bar mosaic,
while the row label is the bottom label. Each bar is represented by a monomial
xaybwhere ais the number of tiles 1 and 2 in the bar and bthe number of tiles 7
and 8.
Each matrix has 9 blocks, which we label using roman numerals as shown in
Figure 10, where we also show the corresponding top and bottom labels for the
leftmost tile.
bottom
top 0 1 2
0
1
2
I II II I
IV V V I
V II IIX IX
Figure 10. The block construction of the state-matrices for max-
imal Domineering positions.
In M0,q+1, we have a left label of 0. The only tile that meets the conditions
for block I (and M0,q+1) is T9. As the right edge label of T9is 2, the possible
completions of our bar are given by M2,q and so our block I entry is M2,q .
The conditions for block II force T10 as the starting tile and the entry is again
M2,q.
The conditions for block III force T1— giving the entry xM0,q as T1has right
label of 0. For block IV, tile T0is the only possible starting tile, giving entry M1,q.
For blocks V and VI we would need a tile with bottom label 1 and top label 1 or
2, respectively, and no such tiles exist so our entry is 0.
The conditions for block VII are top label of 0 and bottom label of 2; the only
tile that works is T3and hence the entry is M0,q. The conditions for block VIII are
similar but with top label 1 so T4is the only tile that works.
The conditions for block IX are top label of 2 and bottom label of 2 which never
occurs and thus our entry is 0.
16 COUNTING DOMINEERING POSITIONS
In M1,q+1, we have a starting (left) label of 1. This forces: T11 in block I; T12
in block II; T2in block III; T5in block VII; and T6in block VIII. The remaining
blocks have no possible tiles. Thus our entries for the matrix are as above.
In M2,q+1, we have a starting (left) label of 2. Thus the only possible tiles are
T7and T8. In block I the only possible tile is T7, giving yM0,q . In block II the tile
is T8, giving yM0,q . All other blocks have no possible tiles, so are 0.
Note that the arguments for M0
0,q+1,M0
1,q+1, and M0
2,q+1 are similar as the
possible left-most tile is identical and only the ending label changes. Thus we skip
these.
Now, restricting to tilings, we will only consider the bar mosaics of length nwith
left label 0 and right labels 0 or 1, so M0,n +M0
0,n. As in the general positions case,
stacking the bar mosaics corresponds to matrix multiplication. Thus the mosaics
with all left labels 0 and right labels 0 or 1 are enumerated in (M0,n +M0
0,n)m.
Finally, we need to restrict to top labels being all 0 and bottom labels 0 or 1. This
means we need to sum the entries in the first column which are in rows numbered
1 +
n
X
i=1
ui3iwhere the uiare all 0 or 1 (the ternary expansion of the row number
−1 has no 2s), giving our result.
Example 4.2. Using the recursion we find that
M0,2=
y y 0y y 0 0 0 x2
0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 x x 0
0 0 x0 0 0 0 0 0
0 0 0 0 0 0 0 0 0
1 1 0 0 0 0 0 0 0
0 0 x0 0 x0 0 0
0 0 0 0 0 0 0 0 0
1 1 0 1 1 0 0 0 0
.
Taking the third power and summing the relevant entries, we get that
F3,2(x, y)=2x2y+ 2x2+y3.
Remark 4.3. As for the general positions case, we can also use these matrices to
find the generating polynomial for non-rectangular boards. The technique is the
same, thus we do not demonstrate it here.
5. Counting Left and Right Ending Positions
Similar to maximal positions, we are also able to count Left or Right ending
positions by choosing the tiles appropriately so that the adjacency condition alone
forces such an end. We will just be counting the Right ending positions in this
section as it results in bar-state matrices of size 2q×2q, while the Left ending
positions, using a similar argument, would need bar-state matrices of size 3q×3q
(although fewer matrices). Alternatively, the generating polynomial for Left ending
positions on an m×nboard can be found using the generating polynomial of Right
ending positions on an n×mboard by switching xand y. Further, if we would like
to find the number of positions which are Left or Right ending, we add the number
of positions of each type and then subtract the number of maximal positions as this
is the intersection of Left and Right ending.
COUNTING Domineering POSITIONS 17
For Right ending positions, we may have two empty squares vertically adjacent
as Left may potentially still play a domino. But we may not have two empty squares
horizontally adjacent as Right cannot have any moves. To achieve this using the
adjacency condition, the tiles we use are given in Figure 11.
T0
0
1
0
0T1
2
0
0
0T2
2
0
0
1T3
0
0
2
0T4
0
0
2
1
T5
0
0
0
2T6
0
2
0
0T7
0
2
0
1
Figure 11. The tiles used to count Right ending Domineering positions.
The two conditions for a tiling to be a Domineering Right end are:
(1) Adjacency condition: All shared edges of adjacent tiles have the same label.
(2) Boundary condition: The left, top, and bottom edges of the tiling have
labels 0; the right edge has labels 0 or 1.
Figure 12 contains an example of a position and the corresponding tiling.
We use RE for naming the bar-state matrices. The matrix REk,q counts those
bar mosaics of length qwith starting label kand ending label 0, while the matrix
RE0
k,q counts those with starting label kand ending label 1.
Theorem 5.1. The generating polynomial of Domineering Right ending posi-
tions on an m×nboard is the (1,1) entry of (RE0,n +RE0
0,n)mwhere RE0,0=1,
RE1,0=0,RE2,0=0,RE0
0,0=0,RE0
1,0=1,RE0
2,0=0, and
T0
0
1
0
0
T0
0
1
0
0
T0
0
1
0
0
T0
0
1
0
0
T0
0
1
0
0
T0
0
1
0
0
T0
0
1
0
0
T0
0
1
0
0
T0
0
1
0
0
T0
0
1
0
0
T0
0
1
0
0
T2
2
0
0
1
T2
2
0
0
1
T2
2
0
0
1
T2
2
0
0
1
T3
0
0
2
0
T4
0
0
2
1
T4
0
0
2
1
T4
0
0
2
1
T5
0
0
0
2
T5
0
0
0
2
T5
0
0
0
2
T6
0
2
0
0
T6
0
2
0
0
T7
0
2
0
1
Figure 12. A Right ending Domineering position on a 5 ×5
board and its equivalent tiling.
18 COUNTING DOMINEERING POSITIONS
RE0,q+1 =
RE1,q
+RE2,q
xRE0,q
RE0,q 0
RE0
0,q+1 =
RE0
1,q
+RE0
2,q
xRE0
0,q
RE0
0,q 0
RE1,q+1 =
RE2,q xRE0,q
RE0,q 0
RE0
1,q+1 =
RE0
2,q xRE0
0,q
RE0
0,q 0
RE2,q+1 =
yRE0,q 0
0 0
RE0
2,q+1 =
yRE0
0,q 0
0 0
.
We give no proof here as the argument is simply a combination of the arguments
for the general and maximal positions.
In Table 2 we give the total number of Right ending positions on an m×nboard
(the table for Left ends is transpose of this).
m
n1 2 3 4 5
1 1 1 2 2 3
2 2 4 11 25 61
3 3 9 48 172 731
4 5 25 227 1,427 10,388
5 8 64 1,054 11,134 140,555
6 13 169 4,921 88,733 1,932,067
7 21 441 22,944 701,926 26,425,981
8 34 1,156 107,017 5,567,467 362,036,629
m
n6 7 8
1 4 5 7
2 146 351 844
3 2,976 12,039 49,401
4 72,751 510,779 3,604,887
5 1,693,116 20,414,525 248,119,648
6 40,008,789 831,347,033 17,385,222,733
7 941,088,936 33,656,587,715 1,211,649,519,869
8 22,168,654,178 1,365,206,879,940 84,588,476,099,284
Table 2. The number of Right ending Domineering positions
on an m×nboard.
COUNTING Domineering POSITIONS 19
The number of Right ending positions on a 1 ×nboard is recursively given by
a1= 1, a2= 1, a3= 2, an=an−2+an−3(the Padovan sequence shifted, OEIS
sequence A000931). Consider the leftmost square: If it contains a domino, then the
strip to the right of the domino can contain any Right ending position of length
n−2. If it is an empty square, then a domino has to be immediately to the right of
it, and the remaining strip of length n−3 can contain any Right ending position.
In the positions of shape m×1 Right cannot play, thus all positions are Right
ending. The sequence of these numbers is the Fibonacci sequence (OEIS sequence
A000045) as every position is a combination of empty squares and Left dominoes.
It appears that the number of Right ending positions on an m×2 board is given
by the squared Fibonacci numbers (OEIS sequence A007598) and the number of
positions on an m×3 is given by the recursion am= 4am−1+ 4am−2−4am−3−
am−4(OEIS sequence A054894). Other sequences for the number of Right ending
positions do not appear in the OEIS at this point.
6. Further Work
We suggest three broad avenues for continuing the work in this paper. One is
to explore our original motivation and connect the enumeration of Domineering
to questions of the algebraic structure of placement game positions. Secondly, we
expect the methods demonstrated in this paper to be useful for other placement
games played on grid-like boards (such as Cartesian products of cycles and paths).
Lastly, there is the possibility of counting positions to analyze particular game
situations either in theory or practice to develop better play strategies.
References
[1] Ahrens, J.: Paving the chessboard. Journal of Combinatorial Theory, Series A 31(3),
277–288 (1981). DOI https://doi.org/10.1016/0097-3165(81)90061-3. URL http://www.
sciencedirect.com/science/article/pii/0097316581900613
[2] Berlekamp, E.: Blockbusting and domineering. J. Combin. Theory Ser. A 49(1),
67–116 (1988). DOI 10.1016/0097-3165(88)90028-3. URL http://dx.doi.org/10.1016/
0097-3165(88)90028- 3
[3] Berlekamp, E., Conway, J., Guy, R.: Winning ways for your mathematical plays. Vol. 1,
second edn. AK Peters Ltd., Wellesley, MA (2004)
[4] Brown, J., Cox, D., Hoefel, A., McKay, N., Milley, R., Nowakowski, R., Siegel, A.: A note on
polynomial profiles of placement games. In: U. Larsson (ed.) Games of No Chance 5, Mathe-
matical Sciences Research Institute Publications, vol. 70, pp. 249–265. Cambridge University
Press (2019)
[5] Faridi, S., Huntemann, S., Nowakowski, R.: Games and Complexes I: Transformation via
Ideals. In: U. Larsson (ed.) Games of No Chance 5, Mathematical Sciences Research Institute
Publications, vol. 70, pp. 293–304. Cambridge University Press (2019)
[6] Farr, G., Schmidt, J.: On the number of Go positions on lattice graphs. Inform. Process.
Lett. 105(4), 124–130 (2008). DOI 10.1016/j.ipl.2007.08.018. URL http://dx.doi.org/10.
1016/j.ipl.2007.08.018
[7] Farr, G.E.: The Go polynomials of a graph. Theoret. Comput. Sci. 306(1-3), 1–18 (2003).
DOI 10.1016/S0304-3975(02)00831-9. URL http://dx.doi.org/10.1016/S0304-3975(02)
00831-9
[8] Hetyei, G.: Enumeration by kernel positions. Adv. in Appl. Math. 42(4), 445–470 (2009).
DOI 10.1016/j.aam.2008.11.001. URL http://dx.doi.org/10.1016/j.aam.2008.11.001
[9] Nowakowski, R.J., Renault, G., Lamoureux, E., Mellon, S., Miller, T.: The game of TIMBER!
J. of Combin. Math. and Combin. Comput. 85(May), 213–225 (2013)
[10] Oh, S.: State matrix recursion method and monomer-dimer problem. Preprint 2019
20 COUNTING DOMINEERING POSITIONS
[11] Oh, S.: Maximal independent sets on a grid graph. Discrete Mathematics 340(12), 2762–2768
(2017). DOI https://doi.org/10.1016/j.disc.2017.08.015. URL http://www.sciencedirect.
com/science/article/pii/S0012365X1730273X
[12] Oh, S., Lee, S.: Enumerating independent vertex sets in grid graphs. Linear Algebra and
its Applications 510, 192–204 (2016). DOI https://doi.org/10.1016/j.laa.2016.08.025. URL
http://www.sciencedirect.com/science/article/pii/S0024379516303627
[13] Propp, J.: Enumeration of matchings: problems and progress. In: New perspectives in al-
gebraic combinatorics (Berkeley, CA, 1996–97), Math. Sci. Res. Inst. Publ., vol. 38, pp.
255–291. Cambridge Univ. Press, Cambridge (1999)
[14] Siegel, A.N.: Combinatorial game theory, Graduate Studies in Mathematics, vol. 146. Amer-
ican Mathematical Society, Providence, RI (2013)
[15] Sloane, N.e.: Online Encyclopedia of Integer Sequences. Published electronically at
https://oeis.org/. Accessed September 2019
[16] Tromp, J., Farneb¨ack, G.: Combinatorics of go. In: Proceedings of the 5th International
Conference on Computers and Games, CG’06, pp. 84–99. Springer-Verlag, Berlin, Heidelberg
(2007). URL http://dl.acm.org/citation.cfm?id=1777826.1777834
[17] Uiterwijk, J.W.H.M.: 11×11 Domineering is solved: the first player wins. In: Computers and
games, Lecture Notes in Comput. Sci., vol. 10068, pp. 129–136. Springer, Cham (2016). DOI
10.1007/978-3-319-50935- 8 12. URL https://doi.org/10.1007/978-3-319-50935-8_12
[18] West, J.: Championship-level play of domineering. In: Games of no chance (Berkeley, CA,
1994), Math. Sci. Res. Inst. Publ., vol. 29, pp. 85–91. Cambridge Univ. Press, Cambridge
(1996)
[19] Wolfe, D.: Snakes in domineering games. Theoret. Comput. Sci. 119(2), 323–329 (1993). DOI
10.1016/0304-3975(93)90163-N. URL https://doi.org/10.1016/0304-3975(93)90163- N