1991 Mathematics Subject Classification. Primary 13P99, 13D40, 05C69, 05C38.
 
Mordechai Katzman
 Department of Pure Mathematics, University of Sheffield, Hicks Building, Sheffield S3 7RH, United Kingdom, Fax number: 0044-114-222-3769  E-mail address : M.Katzman@sheffield.ac.uk
- 
 
 Abstract.
 This paper presents two enumeration techniques based on Hilbert functions. The paper illustrates these techniques by solving two chessboard problems. 
 
 1  Introduction and preliminaries.
 The purpose of this note is to illustrate two powerful enumeration techniques based on computational Commutative Algebra methods. 
By way of illustration I chose to apply these methods to the following two elementary problems: 
- 
 
(1)
Consider a 
 
 chessboard. What is the maximal number of unattacked squares in the board after placing on it 
 
 queens? More generally, in how many ways can we place 
 
 queens on a chess board to obtain exactly 
 
 unattacked squares? 
 
- 
(2)
Consider an infinite chessboard. How many squares can a knight reach in 
 
 moves? How many squares can be reached in 
 
 moves and no less? 
 
 
Although these problems are phrased in the language of chess, they are specific instances of more general graph-theoretical problems. The enumeration techniques presented here answer these more general problems. 
At the heart of the methods presented in this paper are the notions of graded modules and their Hilbert functions. In essence, we will reduce each of the problems above to a problem about the enumeration of sets of monomials, and this enumeration will be achieved using Hilbert functions. 
While the application of Hilbert functions to the problems presented in this paper is new, the use of Hilbert functions in combinatorics is not. The solution of some simple enumeration problems using Hilbert functions, such as finding the independence number of a graph, has long been part of the folklore of computational commutative algebra experts. An early and striking example of the use Hilbert functions in combinatorics is Richard P.  Stanley's work on magic squares (I refer the reader to [8] for an accessible and thoroughly enjoyable account of this work.) We now review graded modules and Hilbert functions. Throughout this paper, all rings are commutative and with 
 
; 
 
 will always denote a field. 
A 
 
-algebra 
 
 is  
 
-graded if we can write  
 
 a direct sum of abelian groups, and the direct summands satisfy 
 
 for all  
 
. Henceforth we shall also impose the condition 
 
, which implies that each  
 
 is a 
 
-vector space and that, if 
 
 is a finitely generated 
 
-algebra, each  
 
 is a finite dimensional 
 
-vector space. For each  
 
 we shall refer to the elements of  
 
 as being homogeneous of degree 
 
. 
A fundamental example of such a graded 
 
-algebra is the ring of polynomials 
 
. 
We can endow 
 
 with different graded structures. We are all familiar with the 
 
-grading  
 
 in which each  
 
 consists of the homogeneous polynomials of degree 
 
. We can define another grading as follows: let  
 
 and define the degree of a monomial  
 
 to be  
 
. We can now write  
 
 where each  
 
 is the 
 
-vector space spanned by all monomials of degree  
 
. 
Let 
 
 be a  
 
-graded 
 
-algebra. An 
 
-module  
 
 is graded if it has a  
 
-grading compatible with that of 
 
, i.e., if we can write  
 
 a direct sum of abelian groups, and the direct summands satisfy  
 
 for all  
 
. 
If 
 
 is a polynomial ring as in the examples above and 
 
 is a homogeneous ideal, i.e., an ideal generated by homogeneous elements, then  
 
 has a natural structure of a graded 
 
-module. Let 
 
 be a  
 
-graded 
 
-algebra and let  
 
 be a graded 
 
-module. We define the Hilbert function  
 
 of  
 
 to be the function 
 
 defined by  
 
. The Hilbert series 
 
of  
 
 is the generating function of the Hilbert function, i.e.,  
 
 If 
 
 is a polynomial ring as in the examples above with its familiar 
 
-grading, and if we view 
 
 as a graded 
 
-module, then 
 
is just the number of monomials of degree 
 
 in 
 
 variables, i.e.,  
 
, and  
 
. If we were to assign degrees  
 
 to  
 
 we would obtain  
 
 Take 
 
 to be a polynomial ring with its familiar 
 
-grading, let 
 
 be a homogeneous ideal and write  
 
. One can show that 
 
is of polynomial type, i.e., it agrees with a polynomial, the Hilbert polynomial 
 
of 
 
, for all 
 
. The degree of  
 
 is one less than the Krull dimension of 
 
. Also, one can write  
 
 where 
 
is a polynomial which does not vanish at 
 
and 
 
 is the Krull dimension of 
 
.
 2  Unattacked squares
  We now consider the first question mentioned in the introduction. We naturally identify the squares of the 
 
 chessboard with pairs 
 
where 
 
. 
We fix 
 
, the size of the board. Let 
 
 be any field and define 
 
 to be the polynomial ring in  
 
variables  
 
 We assign degree 
 
to all the 
 
 variables and degree 
 
to all the 
 
 variables. 
Roughly, the 
 
 variables will correspond to squares in our 
 
 chessboard which are occupied by queens while the 
 
 variables will correspond to unattacked squares on the board. 
We define  
 
 to be the ideal of 
 
 generated by the squares of all variables together with  
 
 Notice that  
 
, as any other ideal generated by monomials, is homogeneous with respect to the  
 
-grading of 
 
. 
For any 
 
define 
 
 Proposition 2.1. 
 
 
 is the maximal number of squares on the 
 
 chessboard which can remain unattacked after placing on it 
 
 queens. 
 
- 
 
 
Proof.
Consider any monomial  
 
 in 
 
 whose image in  
 
 is not zero. Since  
 
 contains the squares of all the variables,  
 
 must be square-free and we may write 
 
 where all the variables in this expression are distinct. We next observe that for any 
 
 and 
 
, a queen cannot move from square 
 
to square 
 
, otherwise,  
 
 wouldbe one of the generators of  
 
 and  
 
 would be zero modulo  
 
. We showed that every monomial of degree 
 
whose image in  
 
 is not zero corresponds to a configuration on the chessboard where the squares 
 
are occupied by queens and the squares 
 
are not attacked by any of these queens. 
It is easy to see that the converse is also true and so we have established a bijection between the configurations of 
 
 queens and 
 
 unattacked squares and the set of monomials of degree 
 
which are not zero modulo  
 
. 
Notice that all the graded components  
 
 are spanned as 
 
-vector spaces by monomials of degree 
 
, and that a basis for  
 
 is given by the set of all such monomials whose images in  
 
 are not zero. So now we can see that the condition  
 
can be translated using the bijection established above to the statement that it is possible to place 
 
 queens on the chessboard so that one can find 
 
 unattacked squares but not 
 
unattacked squares. □ 
 
 
 We now address the more general question: in how many ways 
 
can we place 
 
 queens on a chessboard to obtain exactly 
 
 unattacked squares? 
 Proposition 2.2. 
For any 
 
 
 
- 
 
 
Proof.
We proceed to prove this by reverse induction of 
 
. When 
 
the equality 
 
follows easily from the discussion in the proof of the previous proposition. 
Pick now any 
 
. 
 
is the number of ways one can choose the position of 
 
 queens and 
 
 squares unattacked by these queens. For each such choice, one can extend the set of 
 
 unattacked squares to a maximal set of 
 
 unattacked squares by the same 
 
 queens. To obtain 
 
we need to count only those choices for which 
 
 or, equivalently, we need to subtract from 
 
the number of configurations which which extend to a maximal one with 
 
unattacked squares. The induction hypothesis implies that there are exactly 
 
configurationswith 
 
 queens and a maximal set of 
 
 unattacked squares, and each one of these produces  
 
configurations with 
 
 queens and 
 
 unattacked squares which can be extended to a maximal set of 
 
 unattacked squares. Subtracting all these, we get the desired result. □ 
 
 
 Table 1 lists the values of 
 
when 
 
for 
 
and 
 
(blank entries are zero.) For example, the table shows that 
 
and that 
 
, which means that the largest number of unattacked squares one can have when 8 queens are placed on a regular chessboard is 11, and that there are 48 such configurations. This is the answer to a question originally published by W.  W.  Rouse Ball in 1896 [2] (see also chapter 34 in [3] .) This calculation was produced by FreeSquares, a C++ program which can be found in [5] . (There are several widely used computer packages which can compute multi-graded Hilbert series, but unfortunately they are not very efficient.) 
The method introduced in this section generalizes naturally to deal with graph-theoretical problems which we now describe. Let 
 
 be a finite graph. If  
 
 and  
 
 are disjoint sets of vertices of 
 
 we say that  
 
 and  
 
 are independent if there is no edge connecting a vertex in  
 
 with a vertex in  
 
. For a given 
 
 what is the maximal size of a set of vertices which is independent of a set of 
 
 vertices? 
In how many ways can one choose independent  
 
 and  
 
 with given size? 
Let  
 
 be the vertices of 
 
. One obtains the solution to this more general problem by replacing the ring 
 
 with 
 
and the ideal  
 
 above with the ideal generated by the squares of all the variables and  
 
 3  Knight moves in an infinite chessboard.
 We now consider the second set of questions mentioned in the introduction: How many squares can a knight in an infinite chessboard reach in 
 
 moves? How many squares can be reached in 
 
moves and no less moves? We will denote the first number with 
 
and the second with 
 
. 
The implementation of the results in this section relies on Gröbner bases techniques– the reader may want to consult [1] for an introduction to Gröbner bases. However, to appreciate the general ideas behind the approach of this section no knowledge of Gröbner bases is needed. 
We again let 
 
 be any field and let 
 
 be the 
 
-subalgebra of 
 
generated by  
 
 The first step towards the solution of this problem is to realize that 
 
is the cardinality of 
 
 while 
 
is the number of elements in  
 
 but not in any  
 
 for 
 
. 
We can produce a presentation for 
 
 by mapping a polynomial ring 
 
to 
 
 by  
 
 where  
 
 is the 
 
th element of  
 
. We denote this mapping with 
 
. Notice that the restriction of 
 
to the set of degree-
 
 monomials in 
 
 gives a surjection onto the elements of  
 
. 
Let 
 
 be the kernel of the map above. This kernel can be computed effectively using Gröbner bases techniques as follows: let  
 
 be the ideal of 
 
generated by 
 
 
 and fix an elimination order where  
 
 are the largest variables. Then 
 
 is generated by the elements of a Gröbner basis for  
 
 which do not contain the variables  
 
 (cf. chapter 1 of [7] .) Recall also that 
 
 is a binomial ideal. 
Notice that the ring 
 
 is not very interesting: it is in fact identical to 
 
(here is a chess proof: 
 
 because a knight can move one square to the right in three moves. By symmetry also 
 
.) However, 
 
 is far more interesting for reasons explained below. 
Since the restriction of 
 
to the set of degree-
 
 monomials in 
 
 is a surjection onto  
 
, to find 
 
we need to find the size of a maximal set of degree-
 
 monomials in 
 
 which are distinct modulo
 
. Two such monomials  
 
 and  
 
 are distinct modulo 
 
 if and only if  
 
 is not in the largest homogeneous sub-ideal  
 
 of 
 
. It is easy to compute  
 
: the elements of  
 
 are the elements of the homogenization of 
 
 with respect to a new variable, say 
 
, which do not involve 
 
, thus we can compute  
 
 by homogenizing a Gröbner basis for 
 
 using a graded lexicographic order (cf. exercise 1.6.19 in [1] ) and eliminating the variable 
 
. We notice that this Gröbner basis can be chosen to consist of binomials, and so  
 
 is also a binomial ideal. 
So we have reduced the problem of computing 
 
to the problem of finding the size of a maximal set of degree-
 
 monomials in 
 
 which are distinct modulo  
 
. Fix any term ordering in 
 
 and let 
 
be a Gröbner basis for  
 
 consisting of binomials. Now for any two monomials  
 
 of the same degree,  
 
 modulo  
 
 if and only if  
 
 reduces to  
 
 with respect to 
 
. Since each reduction of a monomial with respect to 
 
 produces a new monomial (of same degree), to produce a maximal set of degree-
 
 monomials in 
 
 which are distinct modulo  
 
 we may pick all monomials of degree 
 
 which are non-zero modulo 
 
, i.e.,  
 
where the second equality is a celebrated theorem proved by F.  S.  Macaulay in [6] . 
An easy computation with Macaulay2 ([4] ) shows that  
 
 and that the Hilbert polynomial of  
 
 is  
 
. Since  
 
 we obtain 
 
 We now proceed to compute 
 
. We again fix a monomial ordering in 
 
 which refines the total degree ordering. List all the monomials in 
 
 in ascending order, and let 
 
 be the set of all degree-
 
monomials in 
 
 which are not congruent modulo 
 
 to a monomial appearing earlier in the list. We now show that 
 
. 
If for two distinct degree-
 
 monomials  
 
 we have 
 
then 
 
contradicting the choice of 
 
. Hence the restriction of 
 
to 
 
 is injective. Similarly, if for some degree-
 
 monomial  
 
 there exist a monomial  
 
 of degree 
 
 so that 
 
then 
 
 and since  
 
 we get a contradiction to the choice of 
 
. Hence the restriction of 
 
to 
 
 is a surjection onto  
 
. 
Using the fact that 
 
 has a Gröbner basis generated by binomials we may deduce that 
 
 is the set of all monomials which are not in 
 
 and so  
 
 Another straightforward computation with Macaulay2 shows that  
 
 and that the Hilbert polynomial of 
 
is 
 
. Since  
 
we obtain  
 
The methods of this section also generalize in a natural way. Let  
 
 be a finite set and consider an infinite directed graph 
 
 whose vertex set is  
 
 and for any  
 
,  
 
is a directed edge if and only if  
 
. 
By replacing 
 
 above and its presentation 
 
 with the presentation  
 
which maps  
 
 to  
 
 for all  
 
, we can, by following exactly the same procedures as before, produce closed formulas for the functions 
 
which count how many endpoints all length 
 
 paths starting at a fix vertex have, and closed formulas for the functions 
 
which count how many vertices are at a distance of 
 
 from a fixed vertex. 
 Theorem 3.1. 
For any directed graph 
 
 as above, there exist polynomials 
 
 and 
 
 so that 
 
 and 
 
 for all 
 
. 
 
- 
 
Proof.
This is an immediate consequence of the fact that Hilbert functions are of polynomial type. 
 □ 
 
 
 Appendix: A Macaulay2 implementation.
 All the methods in this paper are easy to implement with existing computer systems. As an example aimed to tempt the reader to experiment with these systems we present a Macaulay2 program for the solution of the enumeration problem in the previous section: 
R=ZZ/101[u,a,b,y˙–1˝..y˙–8˝,MonomialOrder=>Lex]; I=–u*a*b-1˙R,y˙–1˝-a*b^2,y˙–2˝-a^2*b,y˙–3˝*a-b^2,y˙–4˝*a^2-b, y˙–5˝*b^2-a,y˙–6˝*b-a^2,y˙–7˝*a*b^2-1˙R,y˙–8˝*a^2*b-1˙R˝; G=gens gb ideal I; J=selectInSubring(3,G); S1=ZZ/101[y˙–1˝..y˙–8˝,t]; J=substitute(J,S1); H0=homogenize(gens gb J,t); S2=ZZ/101[t,y˙–1˝..y˙–8˝,MonomialOrder=>Lex]; H0=substitute(H0,S2); G=gens gb ideal H0; H=selectInSubring(1,G); S=ZZ/101[y˙–1˝..y˙–8˝]; J=substitute(J,S); H=substitute(H,S); print(hilbertSeries coker J); print(hilbertPolynomial(coker J, Projective=>false)); print(hilbertSeries coker H); print(hilbertPolynomial(coker H, Projective=>false)); 
 This produces the following output: 
 6 5 4 3 2 4$T -4$T -8$T +12$T +17$T +6$T+1 -------------------------------2 (-$T+1) 28$i-20 5 4 2 4$T -8$T +12$T +5$T+1 --------------------3 (-$T+1) 2 7$i +4$i+1 
 References
- 
 
W.  W.  Adams and P.  Loustaunau. An Introduction to Gröbner Bases, Graduate Studies in Mathematics,  3, American Mathematical Society, Providence, RI (1994) 
 
- 
W.  W.  Rouse Ball. Mathematical recreations & essays. Macmillan, London (1940) 
 
- 
M. Gardner, A Gardner's workout. A K Peters, Ltd., Natick, MA, (2001) 
 
- 
D.  Grayson and M.  Stillman: Macaulay 2 – a software system for algebraic geometry and commutative algebra, available at http://www.math.uiuc.edu/Macaulay2. 
 
- 
M.  Katzman. FreeSquares Available from http://www.shef.ac.uk/katzman/ComputerAlgebra/ComputerAlgebra.html 
 
- 
F.  S.  Macaulay, Some properties of enumeration in the theory of modular systems. Proceedings of the London Mathematical Society 26, pp.  531–555. 
 
- 
B.  Sturmfels. Gröbner bases and convex polytopes, University Lecture Series, 8. American Mathematical Society, Providence, RI (1996) 
 
- 
Richard P.  Stanley. Combinatorics and commutative algebra. Second edition. Progress in Mathematics, 41. Birkhuser Boston, Inc., Boston, MA, 1996. 
 
 Department of Pure Mathematics, University of Sheffield, Hicks Building, Sheffield S3 7RH, United Kingdom, Fax number: 0044-114-222-3769  E-mail address : M.Katzman@sheffield.ac.uk