# Combinatorial Reciprocity Theorems - Mathematics - San Francisco ...

Electronics - Devices

Oct 8, 2013 (4 years and 9 months ago)

133 views

Matthias Beck &Raman Sanyal
Combinatorial Reciprocity
Theorems
A Snapshot of Enumerative Combinatorics
froma Geometric Viewpoint
t
-
6
t
-
6
-
6
Q
Q
v
w Q+v+w
March 22,2012
copied in whole or in part without the permission of the author.This is a beta version
of a book that will eventually be published.The most current version of this book is
available at the website http://math.sfsu.edu/beck/crt.html.
Contents
Preface............................................................1
0 Six Polynomials................................................3
0.1 Polyhedra.................................................3
0.2 Order Polynomials.........................................5
0.3 Line Arrangements.........................................6
0.4 Lattice Points..............................................7
0.5 Graph Colorings...........................................8
0.6 Graph Flows...............................................10
0.7 Notes.....................................................12
1 The Euler–Poincar´e Relation....................................13
1.1 Polyhedra,Polytopes,and Cones..............................13
1.2 Line Shellings.............................................18
1.3 Proof of the Euler–Poincar´e Relation..........................19
1.4 Notes.....................................................22
2 The M¨obius Function...........................................25
2.1 The Setup.................................................25
2.2 M¨obius Inversion...........................................27
2.3 Euler–Poincar´e Revisited....................................29
2.4 Notes.....................................................31
3 Partition Functions.............................................33
3.1 (Quasi-)Polynomials and Rational Generating Functions..........33
3.2 Restricted Partitions........................................35
3.3 Plane Partitions............................................38
3.4 Notes.....................................................39
4 Ehrhart–Macdonald Reciprocity.................................41
4.1 Proof of Ehrhart–Macdonald Reciprocity for Simplices...........42
4.2 Ehrhart’s Theorem..........................................46
v
vi Contents
4.3 Solid Angles..............................................47
4.4 Notes.....................................................49
5 Triangulations.................................................51
5.1 Regular Triangulations......................................51
5.2 Ehrhart–Macdonald Reciprocity Revisited......................54
5.3 Unimodular Triangulations..................................56
5.4 Notes.....................................................57
6 Order Polynomials.............................................59
6.1 Chaos,Chains,and Bernoulli polynomials......................59
6.2 Order Polytopes............................................61
6.3 Order Polynomial Reciprocity................................63
6.4 Notes.....................................................64
7 P-Partitions...................................................65
7.1 The Decomposition of a P-Partition by its Linear Extensions......67
7.2 P-Partitions Reciprocity.....................................70
7.3 The Geometry Behind P-Partions:Order Polytopes Revisited......71
7.4 Notes.....................................................72
8 Hyperplane Arrangements......................................73
8.1 The Characteristic Polynomial and Zaslavsky’s Theorem.........73
8.2 Inside-Out Polytopes........................................76
8.3 Graphical Arrangements.....................................79
8.4 Notes.....................................................81
9 Graph Colorings...............................................83
9.1 Colorings Turned Inside Out.................................83
9.2 Inside-Out Reciprocity......................................84
9.3 Coloring Reciprocity........................................86
9.4 Notes.....................................................87
10 Graph Flows..................................................89
10.1 The Cycle Space and Total Unimodularity......................90
10.2 Flow Polynomials..........................................91
10.3 Flow Reciprocity...........................................92
10.4 Notes.....................................................94
References.........................................................97
List of Symbols....................................................101
Index.............................................................103
Preface
Combinatorial reciprocity theorems are some of the most charming results in mathe-
matics:a counting function,typically deﬁned for positive integer arguments,mag-
ically takes on a life also for negative arguments.These theorems appear all over
(enumerative) combinatorics,and the goal of this book is to weave a unifying thread
through various combinatorial reciprocity theorems,by looking at themthrough the
lens of geometry.
The prerequisites for this book are minimal:some basic knowledge of linear algebra
and combinatorics should sufﬁce.The various exercises interspersed throughout the
text are designed so that the book could easily be used for an upper-level undergradu-
ate class or seminar.
The ﬁrst (and very preliminary version) of this manuscript was tried on some patient
and error-forgiving students and researchers at the Mathematical Sciences Research
Institute in the Spring 2008.We thank them for their crucial input at the early
stages of this book.Since then,we have had the fortune of receiving many valuable
suggestions and corrections;we would like to thank in particular H´el`ene Barcelo,
Adam Chavin,Susanna Fishel,Curtis Greene,Jeremy Martin,Steven Sam,Paco
Santos,Tom Schmidt,and Russ Woodroofe.Richard Stanley does not only also
belong to this list,but he deserves special thanks:as one can see in the references
throughout this text,he has been the main creative mind behind the material that
forms the core of this book.
We thank the National Science Foundation for their support (DMS-0810105,DGE-
0841164,and DMS-1162638),San Francisco State University for a presidential
award (the resulting sabbatical allowed M.B.to give the above-mentioned lectures
at MSRI),and...M.B.thanks the organizers and students of the Rocky Mountain
Mathematics Consortiumfor inviting himto give a summer school in which he could
try out a fairly mature version of this text.
M.B.thanks Tendai Chitewere for her love,support,and patience while he tries to
turn coffee into theorems,and his family in der Heimat for their love.The idea for
1
2 Preface
this book was conceived on numerous long trips to spend precious time with his
father during the last months of his life.He dedicates this book to his memory.
San Francisco Matthias Beck
Berlin Raman Sanyal
March 2012
Chapter 0
Six Polynomials
To many,mathematics is a collection of theorems.For me,mathematics is a collection of examples;
a theoremis a statement about a collection of examples and the purpuse of proving theorems is to
classify and explain the examples...
John B.Conway
A common theme of enumerative combinatorics are counting functions given by
polynomials that are evaluated at positive integers.This warm-up chapter features
six families of such counting functions.Instead of developing general machineries,
we will focus on one speciﬁc example in each family,to give the reader a feel for
what’s to come in later chapters.We will see that in each instant we get interesting
information out of a counting function when we evaluate it at some number that is
not a positive integer (and so,a priori the counting function does not make sense at
this number).It is these “alternative” evaluations of counting functions that formthe
theme of this book.
0.1 Polyhedra
A polyhedron is the intersection of ﬁnitely many halfspaces in some Euclidean space.
We’ll deal with the details that this deﬁnition entails later,for now let’s look at an
example,the cube pictured in Figure 0.1.This cube C has eight vertices,twelve
edges,and six facets.Again,we’ll deﬁne these terms precisely later;for now we
count on the reader’s intuition of Figure 0.1.Discrete geometers like to encode the
face numbers of C in a polynomial,f
C
(t):=

F
t
dimF
,where we sum over all
(nonempty) faces of C.Thus in our case
f
C
(t) =t
3
+6t
2
+12t +8;
3
4 0 Six Polynomials
ss
s
s
s s
s
s
ss
s s
Fig.0.1 Two sample polyhedra.
where the coefﬁcients correspond to the 3-dimensional face C,the six 2-dimensional
faces (the facets),the twelve 1-dimensional faces (the edges),and the eight 0-
dimensional faces (the vertices).When we evaluate this polynomial at 1,we
get
f
C
(1) =1:(0.1)
Nowlet’s remove a facet of the cube,which gives rise to the (unbounded) polyhedron
Ppictured on the right of Figure 0.1.Its face numbers give the polynomial
f
P
(t) =t
3
+5t
2
+8t +4;
whose evaluation at 1 is
f
P
(1) =0:
This is a meaningful zero,as was the 1 in (0.1).Theorem 1.4 in Chapter 1 will
concern the evaluation of the face-number polynomial at 1,also known as the Euler
characteristic of the polyhedron.
Exercise 0.1.Without looking at Section 1.1,come up with a deﬁnition of the terms
vertex and edge of a polygon (i.e.,a polyhedron in dimension 2).Come up with
deﬁnitions for the terms vertex,edge,and facet for a polyhedron in dimension 3.
Exercise 0.2.Compute the face numbers for
(a) a triangle,a square,and—more generally—a k-gon;
(b) a cube and hypercubes (the analogues of cubes in higher dimensions).
Exercise 0.3.What are the minimum face numbers in dimension 2,3,and in general
dimension?What about if the polyhedron is bounded?
0.2 Order Polynomials 5
0.2 Order Polynomials
A partially ordered set (a poset) is a set P equipped with a relation ,such that this
relation satisﬁes reﬂexivity,antisymmetry,and transitivity;that is,for all a;b;c 2P,
a a
a b and b a =) a =b (0.2)
a b and b c =) a c:
We will frequently use sets of the form[t]:=f1;2;:::;tg for a positive integer t.The
map x:P![t] is order preserving if for any a;b 2P,
a b
(this refers to the relation in P)
=) x
a
x
b
;
(this refers to the usual order relation in Z)
and x is strictly order preserving if a b implies x
a
<x
b
.
1
(We use the notation x
a
for the image of a under x.) We’d like to count both kinds of maps.Let W
P
(t) (resp.
W

P
(t)) denote the number of order-preserving (resp.strictly order-preserving) maps
fromP to [t].
a
b
c
Fig.0.2 Asample poset.
Let’s compute these counting functions for an example,the poset depicted by the
Hasse diagram in Figure 0.2.Here P =fa;b;cg and we have the relations a b and
c b.Thus
W
P
(t) =#

(x
a
;x
b
;x
c
) 2Z
3
:1 x
a
;x
c
x
b
t

=
t

x
b
=1
x
2
b
=
1
6
t (t +1)(2t +1)
and
1
When working with posets,we will freely use notation like ,,and ;they mean what you
think they do.
6 0 Six Polynomials
W

P
(t) =#

(x
a
;x
b
;x
c
) 2Z
3
:1 x
a
;x
c
<x
b
t

=
t

x
b
=2
(x
b
1)
2
=
1
6
(t 1)t (2t 1):
So in our example,both W
P
(t) and W

P
(t) are polynomials in t (the order polynomials
of P) which satisfy the functional relation
W
P
(t) =W

P
(t):(0.3)
This relation is not an accident;we’ll explain the general phenomenon behind (0.3)
in Theorem6.1.
Exercise 0.4.Compute the order polynomials W
P
(t) and W

P
(t) for the poset P =
fa
1
;a
2
;:::;a
n
g with
(a) none of the a
k
related (P is an antichain);
(b) the order relations a
1
a
2
   a
n
(P is a chain).
0.3 Line Arrangements
Fig.0.3 Asample line arrangement.
Suppose we have three lines l
1
;l
2
;l
3
in R
2
meeting in a point p,as illustrated in
Figure 0.3.We’d like to compute a recursively deﬁned function,called the M¨obius
function m of this arrangement H.We’ll give the general deﬁnition later;for our
example it’s enough to know that we’ll assign the M¨obius value 1 to R
2
,the under-
lying space,1 to each line,and 2 to p.The philosophy behind this assignment is
that we’d like to balance the M
¨
obius function as we go up in dimension (e.g.,the
sum of the M¨obius values of l
1
and R
2
is 0,as is the sum of all M¨obius values).
Fromthese values we compute what’s known as the characteristic polynomial of the
arrangement,h
H
(t) =

f
m( f )t
dim f
,where we sumover all possible intersections
f within H.In our case,we thus obtain the characteristic polynomial
0.4 Lattice Points 7
h
H
(t) =t
2
3t +2;
the coefﬁcients of which correspond to the sums of the M¨obius values in dimension
2 (the empty intersection R
2
),dimension 1 (the lines),and dimension 0 (the point p).
When we evaluate the characteristic polynomial at 1,we obtain
h
H
(1) =6;(0.4)
which happens to be the number of regions that our line arrangement cuts the plane
into.This is not a coincidence and will be the subject of Theorem8.10.
Exercise 0.5.What is the minimum number of regions cut out by a line arrangement
with n lines?What is the maximum number of regions?
Exercise 0.6.Which integers between your two answers of Exercise 0.5 can be
realized as the number of regions cut out by a line arrangement with n lines?
0.4 Lattice Points
Our next example starts with the triangle   R
2
with vertices (0;0),(1;0),and
(0;1). has the alternative description
 =

(x;y) 2R
2
:x;y 0;x+y 1

:
We want to count the number of integer points (“lattice points”) as we dilate  by
positive integers,as suggested by Figure 0.4.
Fig.0.4 Asample lattice-point problem.
Let’s denote this counting function by ehr

(t):=#

t\Z
2

,so that
ehr

(t) =#

(m;n) 2Z
2
:m;n 0;m+n t

:
8 0 Six Polynomials
A moment’s thought (or a look at Figure 0.4) reveals that ehr

(t) is given by triangu-
lar numbers:
ehr

(t) =

t +2
2

=
1
2
(t +1)(t +2):
If we evaluate this polynomial at t,we obtain
ehr

(t) =
1
2
(t 1)(t 2) =

t 1
2

;
which happens to be the function enumerating the interior lattice point in t,by
another counting argument for triangular numbers (just draw a picture of the interior
lattice points in t!).So in our example,we obtain the functional relation
ehr

(t) =ehr

(t);(0.5)
where 

denotes the interior of .For example,the evaluations ehr

(1) =
ehr

(2) = 0 point to the fact that neither  nor 2 contain any interior lattice
points.Once more this is far from accidental;we’ll explain the identity (0.5) in
Theorems 4.1 and 5.8.
Exercise 0.7.Compute the lattice-point counting functions ehr
P
(t) and ehr
P

(t)
where Pis
(a) the tetrahedron

(x;y;z) 2R
3
:x;y;z 0;x+y+z 1

(the 3-dimensional ver-
sion of ) and its higher-dimensional analogues;
(b) the unit square [0;1]
2
,the unit cube [0;1]
3
,and their higher-dimensional coun-
terparts.
0.5 Graph Colorings
Now we turn to an example from graph theory.Namely,we’d like to compute the
chromatic polynomial of K
3
,the complete graph on three nodes.That is,each pair
of the three nodes forms an edge of K
3
,depicted in Figure 0.5.The chromatic
polynomial is the counting function that enumerates all proper t-colorings,i.e.,
labellings of the nodes with integers from f1;2;:::;tg (the “colors”),such that
adjacent nodes get different labels.In our case,this just means that all three nodes
get different labels,so if there are t possible colors,there are
c
K
3
(t) =t(t 1)(t 2)
proper t-colorings of K
3
(see Figure 0.5).When we evaluate this chromatic polyno-
mial at 1,we obtain
c
K
3
(1) =6;(0.6)
0.5 Graph Colorings 9
t 1 color choices
t color choices
t 2 color choices
Fig.0.5 Proper t-colorings of K
3
.
which is,up to a sign,the number of acyclic orientations of K
3
,namely,those
orientations that do not contain any coherently oriented cycle.Figure 0.6 shows
Fig.0.6 Two of the acyclic orientations of K
3
.
two of the acyclic orientations;the other four are obtained through rotations.The
evaluation c
K
3
(1) is part of a much more general phenomenon,which will be the
subject of Theorem9.5.
Exercise 0.8.Compute the chromatic polynomial for
(a) the null graph N
n
consisting of n nodes and no edges;
(b) the complete graph K
n
consisting of n nodes with all possible edges between
them;
(c) the line graph L
n
consisting of n nodes with edges that form a line segment;
(d) the cycle graph C
n
consisting of n nodes with edges that form a circle.
In each case,evaluate the chromatic polynomial at 1 and see if you can make a
connection to the number of acyclic orientations of the graph.
Exercise 0.9.Given the chromatic polynomials you have computed so far,what do
(a) degrees?
(d) constant terms?
Try to prove any conjectures you come up with.
10 0 Six Polynomials
0.6 Graph Flows
Our ﬁnal example in this introduction stems once more fromgraph theory.We’d like
to compute the (integral) ﬂow polynomial of 3K
2
,the graph with two nodes and three
parallel edges.We ﬁx an orientation (such as the one in Figure 0.7) and compute
the number of edge labellings,such that the sumof the labels at each node is zero,
where we add or subtract a label according to whether its edge points into or away
fromthe node.If the labels are restricted to be integers in (t;t),then we call such a
Fig.0.7 3K
2
with a ﬁxed orientation.
labelling a t-ﬂow.If,in addition,we require all labels to be nonzero,we talk about
a nowhere-zero t-ﬂow.Let f
G
(t) denote the number of nowhere-zero t-ﬂows on G.
(This number turns out to be independent of the chosen orientation,but we’ll discuss
these details later.)
Fig.0.8 The regions described by (0.7).
In our example,f
3K
2
(k) equals the number of integer solutions (x;y;z) to the system
t <x;y;z <t;x;y;z 6=0;x+y+z =0:
This systemis equivalent to (since z =xy)
t <x;y;x+y <t;x;y 6=0;x 6=y;(0.7)
0.6 Graph Flows 11
which we pictured in Figure 0.8.Remembering Section 0.4,we see six triangles
whose interior lattice-point count we have to compute,and so there are
f
3K
2
(t) =6

t 1
2

=3(t 1)(t 2)
nowhere-zero t-ﬂows for 3K
2
.The constant termof this ﬂow polynomial is
f
3K
2
(0) =6;(0.8)
which happens to coincide with the number of totally cyclic orientations of 3K
2
,i.e.,
those orientations in which each edge lies in a coherently oriented cycle.Figure 0.9
shows two of the six totally cyclic orientations of 3K
2
.Once more,equation (0.8) is
a snapshot of a much bigger picture,which will be explained in Theorem10.11.
Fig.0.9 Two totally cyclic orientations of 3K
2
.
Exercise 0.10.Compute the ﬂow polynomial for
(a) the graph mK
2
consisting of 2 nodes and m edges,for m=4;5;6;
(b) the complete graph K
4
.
In each case,evaluate the ﬂow polynomial at 0 and see if you can make a connection
to the number of totally cyclic orientations of the graph.
The common thread among these examples can be weaved through the equations
(0.1),(0.3),(0.4),(0.5),(0.6),and (0.8).Each of themis an instance of a combinato-
rial reciprocity theorem:a combinatorial function,which is a priori deﬁned on the
positive integers,
(i) can be algebraically extended beyond the positive integers (e.g.,because it is a
polynomial),and
(ii) has (possibly quite different) meaning when evaluated at negative integers.
These combinatorial reciprocity theorems are the center pieces—indeed,the gems—
of this book.Alongside them,we’ll introduce numerous useful and,we hope,attrac-
12 0 Six Polynomials
0.7 Notes
Since this is a warm-up chapter,we will refer to later chapters for historical notes on,
and open problems for,the various polynomials introduced here and their reciprocity
theorems.We only mention one general problem,which ﬁts the “big picture” point-
of-view of this introductory chapter:classify face-number,order,characteristic,
lattice-point,chromatic,and ﬂow polynomials.What we mean is:give conditions on
real numbers a
0
;a
1
;:::;a
d
that allow us to detect whether or not a given polynomial
a
d
t
d
+a
d1
t
d1
+   +a
0
is,say,a face-number polynomial.
Chapter 1
The Euler–Poincar´e Relation
One geometry cannot be more true than another;it can only be more convenient.
Jules Henri Poincar´e
1.1 Polyhedra,Polytopes,and Cones
The story of polyhedra starts with the analogue of lines and planes,which you have
undoubtedly studied in grade school.A hyperplane is a set of the form
n
x 2R
d
:ax =b
o
for some a 2R
d
nf0g and b 2R.This hyperplane bounds the two halfspaces
n
x 2R
d
:ax b
o
and
n
x 2R
d
:ax b
o
:
Halfspaces,in turn,allow us to recall a deﬁnition from Section 0.1:a (convex)
polyhedron is the intersection of ﬁnitely many halfspaces in R
d
.Thus we can
describe a polyhedron as a set
n
x 2R
d
:Ax b
o
;
where A 2 R
md
and b 2 R
m
;in the linear system Ax  b,the inequality is un-
derstood component-wise,and each row of the system describes a halfspace.For
example the cube in Figure 0.1 is the intersection of six halfspaces.
A set S R
d
is convex if for any x;y 2S,the line segment fromx to y also lies in S.
Since halfspaces are convex and the intersection of convex sets is again convex,a
polyhedron is indeed convex.
A(convex) polytope Pis the convex hull of ﬁnitely many points v
1
;v
2
;:::;v
n
2R
d
,
i.e.,the smallest convex set containing v
1
;v
2
;:::;v
n
.We use the notation
13
14 1 The Euler–Poincar ´e Relation
P=convfv
1
;v
2
;:::;v
n
g:
For example,the triangle  in Section 0.4 is the convex hull of the points (0;0),
(1;0),and (0;1) in R
2
.
A (polyhedral) cone is the nonnegative span of ﬁnitely many vectors in R
d
(the
generators of the cone).If these vectors are c
1
;c
2
;:::;c
n
2 R
d
,then the cone
generated by themis
fy
1
c
1
+y
2
c
2
+   +y
n
c
n
:y
1
;y
2
;:::;y
n
0g:
We can write this set in shorter formas fCy:y 0g,where C2R
dn
is the matrix
containing c
1
;c
2
;:::;c
n
in its columns.
1
The Minkowski sumof two sets S;T R
d
is
S+T:=fs +t:s 2S;t 2Tg:
An example is depicted in Figure 1.1.
+ =
Fig.1.1 Minkowski sum.
All of these concepts are interrelated,as the following fundamental (and nontrivial)
result in polyhedral geometry shows.
Minkowski–Weyl Theorem.Polytopes and cones are polyhedra.Conversely,every
polyhedron can be expressed as the Minkowski sum of a polytope and a cone.
Thus a polytope has the alternative description as a bounded intersection of halfspaces,
and a cone has the alternative description as an intersection of halfspaces,each of
which contains the origin on its boundary.For example,the triangle  in Section 0.4
is the intersection of the halfspaces

(x;y) 2R
2
:x 0

;

(x;y) 2R
2
:y 0

;and

(x;y) 2R
2
:x+y 1

;
depicted in Figure 1.2.It would take us too long and lead us too far astray to prove
1
This means that all of our cones contain the origin.It is natural to extend this deﬁnition to afﬁne
cones,sets of the form v+K,where v 2R
d
and K is a cone in our sense.
1.1 Polyhedra,Polytopes,and Cones 15
Fig.1.2 Halfspace description of .
the Minkowski–Weyl Theorem here.Our favorite proof is [75,Lecture 1];at the
heart of this proof is the fact that any set in R
d
of the form fCy:y 0g can be
described as a set of the form

x 2R
d
:Ax 0

and vice versa.
A hyperplane H =

x 2R
d
:ax =b

is a supporting hyperplane of the polyhe-
dron Pif
P\H 6=?and either P
n
x 2R
d
:ax b
o
or P
n
x 2R
d
:ax b
o
;
i.e.,Pis entirely contained in one of the halfspaces bounded by H.Aface of Pis a
set of the formP\H,where H is a supporting hyperplane of P;we always include
Pitself (and sometimes?) in the list of faces of P.The faces of dimension 0,1,
and d 1 of a d-dimensional polyhedron Pare called vertices,edges,and facets,
respectively.By dimension of a set S we mean the dimension of its afﬁne span
span(S):=fx+l (yx):x;y 2S;l 2Rg:
When we talk about a d-polyhedron/polytope we mean a d-dimensional polyhe-
dron/polytope.The afﬁne span of a facet is called a facet hyperplane of P.Here are
some basic facts about faces of a polyhedron,which we invite the reader to explore.
Exercise 1.1.A face of a (bounded) polyhedron is again a (bounded) polyhedron.
Exercise 1.2.Every face of a polyhedron Pis the intersection of some of the facets
of P.
If a polyhedron PR
d
contains a line (e.g.,when Pis the wedge in Figure 1.3),
we’d like to “mod out” by it in certain instances.Let’s be more precise.Suppose A
is an afﬁne space of maximal dimension contained in P(in the case of our wedge,
A is a line).Then A has a translate that is a vector space (namely,the translate
16 1 The Euler–Poincar ´e Relation
that contains the origin);let’s call this translate V.There is a natural projection map
p:R
d
!V
?
,where
V
?
:=
n
x 2R
d
:xy =0 for all y 2V
o
is the orthogonal complement of V.Then p(A) is a point and Q:= p(P) is a
polyhedron that contains no lines,because A has maximal dimension (in the case
of our wedge,Qis a two-dimensional cone pictured on the right of Figure 1.3).By
construction,P=V +Q;so we have proved that one can write any polyhedron as
the Minkowski sumof a vector space and a polyhedron that contains no lines.
= +
Fig.1.3 Awedge Pand its decomposition V +Q.
The vector space V has no proper faces,and so the face structure of Pis entirely
captured by the face structure of Q.In our example,the faces of the 3-dimensional
wedge Pare in one-to-one correspondence with the faces of the 2-dimensional cone
Q,and we can construct this one-to-one map in such a way that corresponding faces
exhibit the same order relations (the order being given through subset relation).There
is nothing special about our example:
Exercise 1.3.Suppose P = V +Q is a polyhedron,where V is a vector space
and Q is a polyhedron that contains no lines.Then there is an order-preserving
one-to-one correspondence between the faces of Pand the faces of Q.
Let’s reintroduce the face-number polynomial fromSection 0.1,
f
P
(t) =

F
t
dimF
;
where we sum over all (nonempty) faces of P.Here is the main theorem of this
chapter.
1.1 Polyhedra,Polytopes,and Cones 17
Theorem1.4 (Euler–Poincar´e).Suppose P=V +Qis a polyhedron,where V
is a vector space and Qis a polyhedron that contains no lines.Then
f
P
(1) =
(
(1)
dimV
if Qis bounded,
0 if Qis unbounded.
If we denote the number of k-dimensional faces of Pby f
k
,then
f
P
(t) =
d

k=0
f
k
t
k
;
and so the evaluation f
P
(1) in Theorem1.4 simply represents the alternating sum
of the face numbers f
k
of P.The number
c(P):= f
P
(1)
is called the Euler characteristic of P.
2
We give three instances of Theorem1.4:
 If Pis a polytope then V =f0g,and thus c(P) = f
P
(1) =1.
 For the polyhedron P of Section 0.1,again V = f0g,and thus Q = P is
unbounded,whence c(P) = f
P
(1) =0.
 If Pis the inﬁnite strip

(x;y) 2R
2
:0 y 1

then V =

(x;y) 2R
2
:y =0

and Q=

(0;y) 2R
2
:0 y 1

,so c(P) = f
P
(1) =1.
Fig.1.4 Three polyhedra with different Euler characteristics.
2
There is also the reduced Euler characteristic of P,which in our notation is f
P
(1) 1.
18 1 The Euler–Poincar ´e Relation
1.2 Line Shellings
One way to prove Theorem1.4 is to order the facets of a polyhedron in such a way
that allows us to use a proof by induction on the dimension.We will now introduce
the line shelling of a polytope,which will provide us with such an ordering.
Given a d-polytope PR
d
,choose a generic vector v 2 R
d
(e.g.,you can pick a
vector at random).If we think of Pas a planet and we place a hot air balloon on one
of the facets of P,we will slowly see more and more facets,one at a time,as the
balloon rises in the direction of v.Here “seeing” means the following:we say that a
facet F is visible fromthe point x =2Pif the line segment between x and any point
y 2F intersects Ponly in y.
Fig.1.5 Constructing a line shelling of a pentagon.
Our balloon ride gives rise (no pun intended) to an ordering F
1
;F
2
;:::;F
m
of the
facets of P.Namely,F
1
is the facet we’re starting our journey on,F
2
is the next
visible facet,etc.,until we’re high enough so that no more visible facets can be
added.At this point we “pass through inﬁnity” and let the balloon approach the
polytope planet fromthe opposite side.The next facet in our list is the ﬁrst one that
will disappear as we’re moving towards the polytope,then the next facet that will
disappear,etc.,until we’re landing back on the polytope.(That is,the second half
of our list of facets is the reversed list of what we would get had we started our ride
at F
m
.)
A shelling of the d-polyhedron P(where we assume d 1) is a linear ordering of
the facets F
1
;F
2
;:::;F
m
of Psuch that the following recursive conditions hold:
(1) F
1
has a shelling.
(2) For any j >1,

F
1
[F
2
[   [F
j1

\F
j
is of dimension d 2 and

F
1
[F
2
[   [F
j1

\F
j
=G
1
[G
2
[   [G
k
;
1.3 Proof of the Euler–Poincar ´e Relation 19
where G
1
[G
2
[   [G
k
[   [G
n
is a shelling of F
j
.
3
The following result implies that our balloon ride gives rise to a shelling of P.
Theorem1.5 (Bruggesser–Mani).Suppose PR
d
is a d-polytope,and x 2R
d
n
Pis a generic point.Then Phas a shelling in which the facets that are visible from
x come ﬁrst.
Proof.We will use a proof by induction on d.For d =1 there is nothing to prove.
In general dimension d,we can construct a balloon trip that will go through x;this
will ensure that the visible facets come ﬁrst in the order that will be induced by our
trip.To see that this ordering is indeed a shelling,consider a facet F
j
before our balloon “passes through inﬁnity.” (It is enough to consider one of these
facets,by symmetry.) Just before F
j
becomes visible on our balloon ride,we can
see the facets F
1
;F
2
;:::;F
j1
and thus also those points on the boundary of F
j
that are on the facets F
1
;F
2
;:::;F
j1
.These visible points on the boundary ¶F
j
forma collection of facets of F
j
that,by induction hypothesis,can be continued to a
shelling of F
j
.ut
A shelling that arises fromthis construction is called a line shelling.
1.3 Proof of the Euler–Poincar´e Relation
We need to introduce one more concept before we can prove Theorem1.4.Apoly-
hedral complex C is a ﬁnite nonempty collection of polyhedra and all of their faces,
such that F
1
\F
2
2 C whenever F
1
;F
2
2 C.If all polyhedra in C are bounded,
we call C a polytopal complex,and if all polyhedra in C are simplices,we call C a
simplicial complex.If all maximal faces (the facets of C) have the same dimension
d,we call C pure of dimension d.Here are four examples,two of which will make
an appearance in our proof of Theorem1.4.
 If Pis a d-polyhedron,let C(P) consist of all of its faces (including P).Then
C(P) is a polyhedral complex of dimension d with the unique facet P.
 Again,let Pbe a d-polyhedron,and let C(¶P) consist of all of its proper faces.
Then C(¶P) is a pure polyhedral complex of dimension d 1 whose facets are
the facets of P.C(¶P) is called the boundary complex of P.
 If P is a d-polytope,let G(P) consist of all of its edges and vertices.Then
G(P) is a pure polyhedral complex of dimension 1 whose facets are the edges of
P.G(P) is called the graph of P.
3
Note that this condition implies that

F
1
[F
2
[   [F
j1

\F
j
is connected for d 3.
20 1 The Euler–Poincar ´e Relation
 If Pis a d-polytope,let F consist of all simplices of a triangulation of Pand all
their faces.(We will deﬁne triangulations in Chapter 4 and study themfurther in
Chapter 5.) Then F is a pure simplicial complex of dimension d whose facets are
the d-dimensional simplices of the triangulation.
The deﬁnition of a shelling of a polyhedron extends verbatimto simplicial complexes;
we will see an example in Chapter 5.
Recall that the Euler characteristic of P,
c(P) = f
P
(1) = f
0
 f
1
+ f
2
   +(1)
d
f
d
;
is the alternating sum of the face numbers of P,and these numbers can also be
computed for a polyhedral complex,where f
k
counts the number of all k-faces of
any of the polyhedra in the complex.The face numbers are additive in the sense that
they satisfy the inclusion–exclusion principle:
Exercise 1.6.If C
1
,C
2
,and C
1
[C
2
are polyhedral complexes then
c (C
1
[C
2
) =c (C
1
) +c (C
2
) c (C
1
\C
2
):
Generalize to the case of n polyhedral complexes C
1
;C
2
;:::;C
n
.
Proof of Theorem 1.4.We ﬁrst prove the Euler–Poincar´e relation for polytopes and
show then how to extend it to general polyhedra.
Let P be a polytope.Our goal is to prove that for the polytopal complex C(P)
consisting of all faces of a polytope P,
c (C(P)) =1:(1.1)
We will use induction on the dimension,but for this to work we need another parallel
statement.Namely,if F
1
;F
2
;:::;F
m
is the facet sequence of a line shelling of P,
then we claimthat for j <m
c (C (F
1
[F
2
[   [F
j
)) =1:(1.2)
We will prove (1.1) and (1.2) simultaneously by induction on the dimension d
of P.There is nothing to prove if d = 0 or 1.Now suppose P is a d-polytope
and F
1
;F
2
;:::;F
m
is the facet sequence of a line shelling of P.By induction
hypothesis (1.1),c (C (F
j
1
F
2
;F
3
;:::;F
m1
,one at a time.When adding F
j
to F
1
[F
2
[   [F
j1
,we
have,by the shelling property,that

F
1
[F
2
[   [F
j1

\F
j
=G
1
[G
2
[   [G
k
;
where G
1
[G
2
[   [G
k
[   [G
n
is a line shelling of F
j
,and k < n.So by the
induction hypothesis (1.2),
1.3 Proof of the Euler–Poincar ´e Relation 21
c

C

F
1
[F
2
[   [F
j1

\F
j

=c (C (G
1
[G
2
[   [G
k
)) =1:
Now we can do another (ﬁnite) induction on j and use Exercise 1.6 to see that
c

C

F
1
[F
2
[   [F
j1
[F
j

=c

C

F
1
[F
2
[   [F
j1

+c (C (F
j
))
c

C

F
1
[F
2
[   [F
j1

\F
j

=1+11 =1
for 1 < j <m,and this establishes (1.2).Now we add the last facet F
m
.Its intersec-
tion with F
1
[F
2
[   [F
m1
is the boundary of F
m
,which satisﬁes
c (C (¶F
m
)) =c (C (F
m
)) (1)
d1
=1(1)
d1
:
Putting it all together gives,once more using Exercise 1.6,
c (C (¶P)) =c (C (F
1
[F
2
[   [F
m1
)) +c (C (F
m
)) c (C (¶F
m
))
=1+1

1(1)
d1

=1(1)
d
;
whence
c (C (P)) =c (C (¶P)) +(1)
d
=1:
This establishes (1.1) and the theoremis proved when Pis a polytope.
Now suppose Pis a d-dimensional unbounded polyhedron,which we decompose
as P=V +Q,where V is a vector space and Qis a polyhedron that contains no
lines.By Exercise 1.3,the faces of P are in one-to-one correspondence with the
faces of Qand,if k =dimV,
c(P) =(1)
k
f
k
+(1)
k+1
f
k+1
+   +(1)
d
f
d
=(1)
k

f
k
 f
k+1
+   +(1)
dk
f
d

=(1)
k
c(Q):
If Qis a polytope,Theorem1.4 follows fromour ﬁrst part.
If Q2R
n
is unbounded,choose a hyperplane H =

x 2R
d
:ax =b

such that
 (la+H)\Qis bounded for all l 2R,
 (la+H)\Qis not empty and does not change its face structure for l 0.
(See Figure 1.6 for an illustration.)
Exercise 1.7.Prove that such a hyperplane H exists.
Let H
+
be the half space bounded by H for which Q\H
+
is bounded,i.e.,Q\H
+
is
a polytope.By our construction,there are two kind of faces of the polytope Q\H
+
:
the faces of Q\H (which we think of as a “new facet”) and all other faces.Each
22 1 The Euler–Poincar ´e Relation
Q
H
a
Fig.1.6 Choosing a hyperplane H in the case that Qis unbounded.
face of the second kind is of the formF\H
+
,where F is a face of Q.In particular,
there is an order-preserving one-to-one correspondence between the faces of Qand
those faces of Q\H
+
that are not faces of Q\H.Thus by the case for polytopes,
c (Q) =c

Q\H
+

c (Q\H) =11 =0;
and this ﬁnishes the last case of Theorem1.4.ut
We will soon see that the Euler–Poincar´e relation is just one of the many gems in the
world of M¨obius functions,but for this we need to introduce some machinery ﬁrst.
1.4 Notes
The 3-dimensional case of Theorem 1.4 was proved by Leonard Euler in 1752
[27,28].The full (i.e.,higher-dimensional) version of Theorem1.4 was discovered
by Ludwig Schl¨aﬂi in 1852 (though published only in 1902 [54]),but Schl¨aﬂi’s
proof implicitly assumed that every polytope is shellable (as did numerous proofs
of Theorem1.4 that followed Schl¨aﬂi’s),a fact that was established only in 1971 by
Heinz Bruggesser and Peter Mani [18].The ﬁrst “airtight” proof of Theorem1.4 (in
1893,using tools fromalgebraic topology) is due to Henri Poincar´e [49] (see also,
e.g.,[35,Theorem2.44]).
As already mentioned in Chapter 0,classifying face numbers is a major research
problem;in dimension 3 this question is answered by Steinitz’s theorem[69] (see
also [75,Lecture 4]).The classiﬁcation question is open in dimension 4.One can
also ask a similar question for certain classes of polyhedra,e.g.,simplicial polytopes,
1.4 Notes 23
i.e.,polytopes all of whose faces are simplices.This gives rise to the famous Dehn–
Sommerville equations which express a symmetry relation among face numbers of
simplicial polytopes (see,e.g.,[33,Chapter 9]).
For (much) more about the wonderful combinatorial world of polyhedra,including
proofs of the Minkowski–Weyl Theorem,we recommend [33,75].
Chapter 2
The M¨obius Function
The mathematical phenomenon always develops out of simple arithmetic,so useful in everyday
life,out of numbers,those weapons of the gods:the gods are there,behind the wall,at play with
numbers.
Le Corbusier
2.1 The Setup
We recall fromSection 0.2 that a partially ordered set (a poset) is a set P equipped
with a relation ,such that this relation satisﬁes (0.2),i.e.,reﬂexivity,antisymmetry,
and transitivity.
Nowconsider C
P
,the set of all functions f:P!C,considered as a C-vector space.
A function a:PP!C gives rise to a function C
P
!C
P
,which by a (useful)
abuse of notation we will also denote by a,deﬁned through

a( f )

(x):=

y2P
a(x;y) f (y):(2.1)
Note that,for f;g 2C
P
and l 2C,
a(l f +g) =la( f ) +a(g);
in other words,a is a linear function from C
P
to itself.In particular (ﬁxing the
natural basis for the vector space C
P
) we can express a through a matrix;in fact,
(2.1) expresses howwe compute the “x-entry” of the vector that results fromapplying
the matrix a to the vector f.
As an example consider the z-function of P,the poset pictured in Figure 2.1,deﬁned
through
z(x;y):=
(
1 if x y;
0 otherwise.
25
26 2 The M ¨obius Function
x
1
x
2
x
3
x
4
x
5
Fig.2.1 Another sample poset.
(Of course,the deﬁnition of the z-function makes sense for any poset.) The accom-
panying linear function z:C
P
!C
P
has the matrix representation
2
6
6
6
6
4
1 1 1 1 1
0 1 0 0 1
0 0 1 0 1
0 0 0 1 1
0 0 0 0 1
3
7
7
7
7
5
:
Our next goal is to ﬁnd the inverse function of z.This inverse if called the M¨obius
function m of P.In its matrix form,the M¨obius function is in this case
2
6
6
6
6
4
1 1 1 1 2
0 1 0 0 1
0 0 1 0 1
0 0 0 1 1
0 0 0 0 1
3
7
7
7
7
5
:
(You should check this.)
Exercise 2.1.Compute z and m for
(a) the poset in Figure 0.2;
(b) an antichain with n elements (in which no elements are related);
(c) a chain with n elements (in which the elements are linearly ordered);
Exercise 2.2.Given a poset P,let m be its associated M¨obius function.Then for
x;y 2P,
(a) m(x;x) =1;
(b) if x 6y then m(x;y) =0.
Hint:z can be represented by an upper-triangular matrix.
The following result gives us an essential,recursive way to compute M¨obius func-
tions.
2.2 M¨obius Inversion 27
Theorem2.3.Given a poset P,let m be its associated M¨obius function.Then for
x z 2P,

xyz
m(x;y) =0 and

xyz
m(y;z) =0;
where both sums are understood to run over y.
Proof.Since m z is the identity function,we obtain for x z
0 =

y2P
m(x;y)z(y;z) =

yz
m(x;y)
Ex:2:2(b)
=

xyz
m(x;y):
z m is also the identity function,and so for x z
0 =

y2P
z(x;y) m(y;z) =

yx
m(y;z)
Ex:2:2(b)
=

xyz
m(y;z);
and this ﬁnishes the proof.ut
Theorem 2.3 gives the following alternative recursive deﬁnition of the M¨obius
function m of a given poset P:
m(x;y) =
8
>
>
<
>
>
:
0 if x 6y;
1 if x =y;

xzy
m(x;z) if x y:
(2.2)
Exercise 2.4.Fix a ﬁnite set S and consider the poset P of all of its subsets,partially
ordered by the subset relation .Compute the M¨obius function of P.
Exercise 2.5.Given two posets P
1
and P
2
,let P
1
P
2
their direct product and
deﬁne a relation on P
1
P
2
through
(x
1
;x
2
) (y
1
;y
2
) () x
1
y
1
and x
2
y
2
:
Prove that the M¨obius function of P
1
P
2
equals the product of the M¨obius functions
of P
1
and P
2
,i.e.,
m
P
1
P
2

(x
1
;x
2
);(y
1
;y
2
)

=m
P
1
(x
1
;y
1
) m
P
2
(x
2
;y
2
):
2.2 M¨obius Inversion
The fact that z and m are inverse functions of each other and Exercise 2.2 give the
following central theorem.
28 2 The M ¨obius Function
Theorem2.6 (M¨obius Inversion).Suppose P is a poset and f;g 2C
P
.Then
f (x) =

yx
g(y) () g(x) =

yx
m(x;y) f (y):
Proof.In terms of linear functions,
f (x) =

yx
g(y) =

y2P
z(x;y)g(y)
means that f = z(g) (matrix multiplication on the left) which,with m = z
1
,is
equivalent to m( f ) =g,i.e.,
g(x) =

y2P
m(x;y) f (y)
Ex:2:2(b)
=

yx
m(x;y) f (y);
and this ﬁnishes our proof.ut
We could have developed all of this section with the reverse inequality,and this gives
rise to the following twin sibling of Theorem2.6.
Exercise 2.7.Suppose P is a poset and f;g:P!C.Then
f (y) =

xy
g(x) () g(y) =

xy
m(x;y) f (x):
Exercise 2.8.Given the sets S
1
;S
2
;:::;S
n
,let P be the poset of all possible inter-
sections of these sets,including the “empty intersection” S
1
[S
2
[   [S
n
,ordered
by the subset relation .Compute the M¨obius function of P,and apply the M¨obius
inversion formula for the function f (S) =jSj (you should think about the appropriate
partner function g) to derive the inclusion–exclusion principle
jS
1
[S
2
[   [S
n
j =

1jn

S
j

1j<kn

S
j
\S
k

+    + (1)
n1
jS
1
\S
2
\  \S
n
j:
Exercise 2.9.Let m be the classical M¨obius function one studies in number theory:
for a positive integer n,deﬁne
m(n):=
8
>
<
>
:
1 if n =1;
(1)
k
if n is square free and has k prime divisors,
0 otherwise.
(a) Show that for every integer m2,

njm
m(n) =0,where we sumover all positive
divisors of m.Conclude that m(n) =m(1;n),where the latter is the (combinato-
2.3 Euler–Poincar´e Revisited 29
rial) M¨obius function on the poset given by the positive integers,partially ordered
by the divisor relation.
(b) Compute the general M
¨
obius function m(m;n) for this poset and conclude the
number-theoretic version of M¨obius inversion:
f (n) =

djn
g(d) () g(n) =

djn
m(
n
d
) f (d):
Exercise 2.10.Two posets P andQ are isomorphic if there is a bijection f:P!Q
that satisﬁes
x y (in P) () f (x)  f (y) (in Q):
Let D
n
be the set of all positive divisors of n,ordered by divisibility.(This is a
sub-poset of that in Exercise 2.9.) Assuming that n has the prime factorization
n = p
a
1
1
p
a
2
2
   p
a
k
k
,prove that D
n
is isomorphic to C
a
1
C
a
2
   C
a
k
,where C
a
is
the poset f0;1;2;:::;ag ordered by the ordinary relation of integers.Use Exercise
2.5 to give an alternative derivation of the M¨obius function of D
n
.
2.3 Euler–Poincar
´
e Revisited
A lattice is a partially ordered set in which every pair of elements (x;y) has a unique
join (a minimal element that is x;y) and a unique meet (a maximal element that is
x;y).
We claim that we have already had a glimpse at a M¨obius function in Chapter 1.
Namely,let Pbe a polytope and P be the lattice of its faces,including?and P,
ordered by set inclusion.Figure 2.2 gives an example,the face lattice of a square
pyramid.
We can compute the M¨obius function on P using the recursive deﬁnition (2.2):for
any nonempty face F,

?GF
m(?;G) =0;(2.3)
where we sumover all faces G of F,including?and F itself.On the other hand,
each face is (by Exercise 1.1) again a polytope,so the Euler–Poincar´e relation
(Theorem1.4) says that
c(F) =

?(GF
(1)
dimG
=1;
where we sum over the nonempty faces G of F.But this implies (if we add the
empty face to our sum,giving it dimension 1) that
30 2 The M ¨obius Function
Fig.2.2 The face lattice of a square pyramid.

?GF
(1)
dimG
=0
(so this sumis over all faces of F,including?and F).This equation looks exactly
like (2.3).In fact,since both equations hold for any face F and
m(?;?) =1 =(1)
dim?+1
;
we recursively compute
m(?;F) =(1)
dimF+1
(2.4)
for all faces F P.The M¨obius function of any other interval in the face lattice of
a polytope is no less elegant:
Exercise 2.11.The M¨obius function of the face lattice of a polytope is
m(G;F) =(1)
dimFdimG
:
Hint:One way of coming up with this general M¨obius function for a face lattice is
to realize that the poset of all faces between G and Pis again the face lattice of a
polytope.Possibly the easiest way for that,outlined in the following two exercises,is
to cone over PR
d
:let cone(P) be the smallest cone that contains Pf1g 
R
d+1
.This means that if P=convfv
1
;v
2
;:::;v
n
g then
cone(P) =R
0
(v
1
;1) +R
0
(v
2
;1) +   +R
0
(v
n
;1):
Exercise 2.12.The face lattice of P(including?) is isomorphic to the face lattice
of cone(P) (excluding?).
Exercise 2.13.If F is a face of cone(P),let V be the linear span of F.The canon-
ical projection p:R
d+1
!R
d+1
=V gives an order-preserving bijection between the
faces of cone(P) that contain F and the faces of p(cone(P)).
2.4 Notes 31
2.4 Notes
Posets and lattices originated in the nineteenth century but become subjects of
their own rights with the work of Garrett Birkhoff [13] and Philip Hall [34].The
systematic study of posets was initiated by Gian-Carlo Rota’s famous paper [52]
which arguable started modern combinatorics.For (much) more on posets,lattices,
and M¨obius function,we recommend [65,Chapter 3],which contains numerous
open problems;we mention one representative:
Let P
n
be the set all partitions (whose deﬁnition is given in (3.2) below) of a
ﬁxed positive integer n.We order the elements of P
n
by reﬁnement,i.e.,given two
partitions (a
1
;a
2
;:::;a
j
) and (b
1
;b
2
;:::;b
k
) of n,we say that
(a
1
;a
2
;:::;a
j
) (b
1
;b
2
;:::;b
k
)
if the parts a
1
;a
2
;:::;a
j
can be partitioned into blocks whose sums are b
1
;b
2
;:::;b
k
.
Find the M
¨
obius function of P
n
.
Chapter 3
Partition Functions
If you think it’s simple,then you have misunderstood the problem.
Bjarne Strustrup
3.1 (Quasi-)Polynomials and Rational Generating Functions
A quasipolynomial q is a function Z!C of the form
q(t) =c
n
(t) t
n
+   +c
1
(t) t +c
0
(t);
where c
0
;c
1
;:::;c
n
are periodic functions in t.The degree of q is n (assuming that c
n
is not the zero function) and the least common period of c
0
;c
1
;:::;c
n
is the period
of q.Alternatively,for a quasipolynomial q,there exist a positive integer k and
polynomials p
0
;p
1
;:::;p
k1
such that
q(t) =
8
>
>
>
>
<
>
>
>
>
:
p
0
(t) if t 0 mod k;
p
1
(t) if t 1 mod k;
.
.
.
p
k1
(t) if t k 1 mod k:
The minimal such k is the period of q,and for this minimal k,the polynomials
p
0
;p
1
;:::;p
k1
are the constituents of q.Of course,when k =1,we only need one
constituent and the coefﬁcient functions c
0
;c
1
;:::;c
n
are constants,and so q is a
polynomial.
Quasipolynomials of degree n and period k can be encoded into rational generating
functions of the form
Q(z):=

t0
q(t)z
t
=
h(z)
(1z
k
)
n+1
;
as the following exercises suggest.
33
34 3 Partition Functions
Exercise 3.1.Compute the constituents and the rational generating function of the
quasipolynomial q(t) =t +(1)
t
.
Exercise 3.2.Suppose p(t) =c
n
t
n
+c
n1
t
n1
+   +c
0
is a polynomial.Then
P(z):=

t0
p(t)z
t
=
h(z)
(1z)
n+1
for some polynomial h of degree at most n.Conversely,if P(z) =
h(z)
(1z)
n+1
,where h is
a polynomial of degree at most n,then P can be expanded into a generating function,
P(z) =

t0
p(t)z
t
,for a polynomial p of degree at most n.
Hint:The following two gadgets should prove useful:ﬁrst,the Eulerian numbers

n
k

deﬁned through
1

j0
j
n
z
j
=

n
k=0

n
k

z
k
(1z)
n+1
;(3.1)
and second,the binomial series
1
(1z)
n+1
=

k0

n+k
n

z
k
:
Exercise 3.3.Suppose q(t) =c
n
(t)t
n
+c
n1
(t)t
n1
+   +c
0
(t) is a quasipolyno-
mial of degree at most n and period dividing k.Then
Q(z):=

t0
q(t)z
t
=
h(z)
(1z
k
)
n+1
for some polynomial h of degree at most k(n+1)1.Conversely,if Q(z) =
h(z)
(1z
k
)
n+1
,
where h is a polynomial of degree at most k(n+1) 1,then Q can be expanded into
a generating function,Q(z) =

t0
q(t)z
t
,for a quasipolynomial q of degree at most
n and period dividing k.
Exercise 3.4.Suppose f and g are quasipolynomials.Then the convolution
c(t):=
t

s=0
f (s)g(t s)
is also a quasipolynomial.(The easiest way to see this is to ﬁnd a formula for
C(z):=

t0
c(t)z
t
in terms of F(z):=

t0
f (t)z
t
and G(z):=

t0
g(t)z
t
.) What
1
An equivalent deﬁnition of the polynomial 
n
k=0

n
k

z
k
is that it is the numerator of the rational
function

z
d
dz

n

1
1z

=z
d
dz
   z
d
dz
|
{z
}
n times

1
1z

:
3.2 Restricted Partitions 35
can you say about the degree and the period of c,given the degrees and periods of f
and g?
Exercise 3.5.Suppose q:Z!C is a quasipolynomial.Let
Q
+
(z):=

t0
q(t)z
t
and Q

(z):=

t<0
q(t)z
t
:
Then Q
+
(z) and Q

(z) can be written as rational functions which add up to zero:
Q
+
(z) +Q

(z) =0.
Hint:Here is one way to proceed:
(a) Repeat Exercise 3.3 to prove that Q

(z) also evaluates to a rational function.
(b) Let q(t) =1.Prove that as rational functions,Q
+
(z) +Q

(z) =0.
(c) Suppose q is a polynomial.Prove that as rational functions,Q
+
(z) +Q

(z) =0.
(d) Suppose q is a quasipolynomial.Prove that as rational functions,Q
+
(z) +
Q

(z) =0.
3.2 Restricted Partitions
An (integer) partition of the integer t is a sequence (a
1
;a
2
;:::;a
k
) of nonincreasing
positive integers such that
t =a
1
+a
2
+   +a
k
:(3.2)
The numbers a
1
;a
2
;:::;a
k
are the parts of this partition.For example,(4;2;1) and
(3;2;1;1) are partitions of 7.
Our goal is to enumerate partitions with certain restrictions,which will allow us
to prove our ﬁrst general combinatorial reciprocity theorems.(The enumeration of
unrestricted partitions is the subject of Exercise 3.10 below,but it will not yield a
reciprocity theorem.)
In our ﬁrst example,we restrict the parts of a partition to come from a ﬁnite set
A:=fa
1
;a
2
;:::;a
n
g Z
>0
,i.e.,we only allow partitions of the form
(a
1
;:::;a
1
;a
2
;:::;a
2
;:::;a
n
;:::;a
n
):
The restricted partition function for A is
p
A
(t):=#

(m
1
;m
2
;:::;m
n
) 2Z
n
0
:m
1
a
1
+m
2
a
2
+   +m
n
a
n
=t

:
Writing out the following product of geometric series
36 3 Partition Functions
1
(1z
a
1
)(1z
a
2
)   (1z
a
n
)
=

m
1
0
z
m
1
a
1
!

m
2
0
z
m
2
a
2
!
  

m
n
0
z
m
n
a
n
!
;
reveals the generating function of p
A
as
P
A
(z):=

t0
p
A
(t)z
t
=
1
(1z
a
1
)(1z
a
2
)   (1z
a
n
)
:(3.3)
In particular,by Exercises 3.3 and 3.4,p
A
(t) is a quasipolynomial in t.
Exercise 3.6.Compute the quasipolynomial p
A
(t) for the case A =f1;2g.
Since p
A
(t) is a quasipolynomial,it makes sense to evaluate it at negative integers.
Theorem3.7 (Ehrhart).If A =fa
1
;a
2
;:::;a
n
g Z
>0
then
p
A
(t) =(1)
n1
p
A
(t a
1
a
2
   a
n
):
Proof.Simple algebra on (3.3) gives
P
A

1
z

=(1)
n
z
a
1
+a
2
++a
n
(1z
a
1
)(1z
a
2
)   (1z
a
n
)
(3.4)
=(1)
n
z
a
1
+a
2
++a
n
P
A
(z);
whence

t0
p
A
(t)z
t
=(1)
n
z
a
1
a
2
a
n
P
A

1
z

=(1)
n
z
a
1
a
2
a
n

t0
p
A
(t)z
t
Ex.3.5
= (1)
n1
z
a
1
a
2
a
n

t>0
p
A
(t)z
t
=(1)
n1

t>0
p
A
(t)z
ta
1
a
2
a
n
=(1)
n1

t0
p
A
(t a
1
a
2
   a
n
)z
t
:
(A priori,the last sumshould start at t =1a
1
a
2
   a
n
,but comparing this
sum with the generating function on the left-hand side shows that p
A
(t) = 0 for
1a
1
a
2
   a
n
t <0.) ut
Theorem3.7 is our ﬁrst combinatorial reciprocity theoremthat we have proved in
some generality.In fact,we can reinterpret something here:the right-hand side of
(3.4) can be written as
3.2 Restricted Partitions 37
(1)
n
z
a
1
1z
a
2
z
a
2
1z
a
2
  
z
a
n
1z
a
n
=(1)
n

m
1
>0
z
m
1
a
1
!

m
2
>0
z
m
2
a
2
!
  

m
n
>0
z
m
n
a
n
!
;
which is (up to a sign) the generating function of
p

A
(t):=#f(m
1
;m
2
;:::;m
n
) 2Z
n
>0
:m
1
a
1
+m
2
a
2
+   +m
n
a
n
=tg;
which counts partitions of t with parts in A with the additional restriction that each
part is used at least once.When we rewrite our proof of Theorem3.7 in light of this
new function,we obtain the reciprocity theorem
p
A
(t) =(1)
n1
p

A
(t):
Theorem3.7 follows immediately fromthis because
p

A
(t) = p
A
(t a
1
a
2
   a
n
);
which can be concluded fromthe deﬁnitions of p
A
and p

A
.
Exercise 3.8 (Popoviciu).Let A=fa;bg where a and b are relatively prime positive
integers.Deﬁne the integers a and b through bb 1 mod a and aa 1 mod b,and
denote by fxg the fractional part of x,deﬁned through
x =bxcfxg;
where bxc is the largest integer x.Then
p
A
(t) =
t
ab

bt
a

n
at
b
o
+1:
Exercise 3.9.The (unrestricted) partition function p(t) counts the number of parti-
tions of t.Show that its generating function is
1+

t>0
p(t)z
t
=

k1
1
1z
k
:
Exercise 3.10 (Euler).Let d(t) denote the number of partitions of t into distinct parts
(i.e.,no part is used more than once),and let o(t) denote the number of partitions of
t into odd parts (i.e.,each part is an odd integer).Compute the generating functions
of d(t) and o(t) and prove that they are equal (and thus d(t) =o(t) for all positive
integers t).
38 3 Partition Functions
3.3 Plane Partitions
Our second partition example is the simplest case of a plane partition;namely,
we will count all ways of writing t = a
1
+a
2
+a
3
+a
4
such that the integers
a
1
;a
2
;a
3
;a
4
0 satisfy the inequalities
a
1
 a
2
p_ p_
a
3
 a
4
:
(3.5)
(For a general plane partition,this array of inequalities can forma rectangle of any
size.) Let pl(t) denote the number of plane partitions of t of the form(3.5).We can
compute its generating function
Pl(z):=

t0
pl(t)z
t
=

z
a
1
+a
2
+a
3
+a
4
;
where the last sumis over all integers a
1
;a
2
;a
3
;a
4
satisfying (3.5),fromﬁrst princi-
ples:
Pl(z) =

a
4
0
z
a
4

a
3
a
4
z
a
3

a
2
a
4
z
a
2

a
1
max(a
2
;a
3
)
z
a
1
=

a
4
0
z
a
4

a
3
a
4
z
a
3

a
2
a
4
z
a
2
z
max(a
2
;a
3
)
1z
=
1
1z

a
4
0
z
a
4

a
3
a
4
z
a
3

z
a
3
a
3
1

a
2
=a
4
z
a
2
+

a
2
a
3
z
2a
2
!
=
1
1z

a
4
0
z
a
4

a
3
a
4
z
a
3

z
a
3
z
a
4
z
a
3
1z
+
z
2a
3
1z
2

=
1
1z

a
4
0

z
4a
4
(1z)(1z
2
)

z
4a
4
(1z)(1z
3
)
+
z
4a
4
(1z
2
)(1z
3
)

=
1+z
2
(1z)(1z
2
)(1z
3
)

a
4
0
z
4a
4
=
1+z
2
(1z)(1z
2
)(1z
3
)(1z
4
)
=
1
(1z)(1z
2
)
2
(1z
3
)
:
Once more by Exercises 3.3 and 3.4,this means in particular that the function pl(t)
counting all plane partitions of t is a quasipolynomial in t.
Exercise 3.11.Compute the quasipolynomial pl(t) explicitly.
Just as in our proof of Theorem3.7,we can observe a simple algebraic relation for
Pl(z),namely,
3.4 Notes 39
Pl

1
z

=z
8
Pl(z):
And just as before,this gives rise to a reciprocity relation for the plane-partition
counting function:
pl(t) =pl(t 8):
Exercise 3.12 (Andrews–Paule–Riese).Showthat the generating function for plane
partition diamonds
a
1
 a
2
p_ p_
a
3
 a
4
 a
5
p_ p_
a
6
 a
7
.
.
.
a
3n2
 a
3n1
p_ p_
a
3n
 a
3n+1
is
(1+z
2
)(1+z
5
)(1+z
8
)   (1+z
3n1
)
(1z)(1z
2
)   (1z
3n+1
)
:
Derive the reciprocity theorem for the associated plane-partition-diamond counting
function.
3.4 Notes
We have barely started to touch on the useful and wonderful world of generating
functions.We heartily recommend [43] and [73] if you’d like to explore more.
The Eulerian numbers deﬁned in (3.1) go back to (surprise!) Leonard Euler and are
more commonly deﬁned through the descent set of a permutation.(We will derive
this alternative description in Corollary 7.18.) For a bit of history how Euler got
interested in these numbers,see [38].
Partition functions forma major and long-running theme in number theory;again we
barely scratched the surface in this chapter.We recommend [2] and the classical [1]
for further study.
Theorem3.7 is due Eug`ene Ehrhart [26].We will see in the next two chapters that it
can be vastly generalized to a reciprocity theoremfor counting functions that involve
not just one but an arbitrary (ﬁnite) number of linear constraints.
40 3 Partition Functions
The formula for the restricted partition function in the case that A contains two
elements (given in Exercise 3.8) is,as far as we know,due to Tiberiu Popoviciu [50],
but it has been resurrected at least twice [56,70].
Restricted partition functions are closely related to a famous problemin combinatorial
number theory:namely,what is the largest integer root of p
A
(t) (the Frobenius
number associated with the set A)?This problem,ﬁrst raised by Georg Frobenius in
the 19th century,is often called the coin-exchange problem—it can be phrased in lay
terms as looking for the largest amount of money that we cannot change given coin
denominations in the set A.Exercise 3.8 suggests that the Frobenius problemis easy
for jAj =2 (and you may use this exercise to ﬁnd a formula for the Frobenius number
in this case),but this is deceiving:the Frobenius problemis much harder for jAj =3
(though there exist formulas of sorts [21]) and certainly wide open for jAj 4.The
Frobenius problemis also interesting froma computational perspective:while the
Frobenius number is known to be polynomial-time computable for ﬁxed jAj [39],
implementable algorithms are harder to come by with (see [12] for the current state
of the art).For much more on the Frobenius problem,we refer to [51].
Plane partitions were introduced by Percy MacMahon about a century ago,who
proved a famous generating-function formula for the general case of an mn plane
partition [45].The formula for 22 plane partition diamonds (Exercise 3.12) is due
to George Andrews,Peter Paule,and Axel Riese [3].
Chapter 4
Ehrhart–Macdonald Reciprocity
Everything should be made as simple as possible,but not simpler.
Albert Einstein
A d-simplex  is the convex hull of d +1 afﬁnely independent points in R
n
(and
in this chapter we will assume n =d).Simplices are the natural generalizations of
line segments,triangles,and tetrahedra to higher dimensions.A lattice simplex is a
simplex whose vertices are in Z
d
.We ﬁrst extend the lattice-point counting deﬁnition
of Section 0.4 to higher dimensions:if  R
d
,let
ehr

(t):=#

t\Z
d

=#

\
1
t
Z
d

denote the number of integer lattice points in the t
th
dilate of ,where t is a positive
integer.Our goal in this chapter is to prove the following reciprocity theorem,which
we hinted at in (0.5).
Theorem4.1 (Ehrhart).Suppose  is a lattice d-simplex.
(a) For positive integers t,the counting function ehr

(t) is a polynomial in t whose
constant term is 1.
(b) When this polynomial is evaluated at negative integers,we obtain
ehr

(t) =(1)
d
ehr

(t):
We note that there are three statements hidden here:
 There is a polynomial p(x) 2C[x] such that for positive integers t,p(t) =ehr

(t).
 The evaluation of this polynomial at 0 is p(0) =1.
 When p is evaluated at negative integers t,we obtain p(t) =(1)
d
ehr

(t).
Exercise 4.2.Pick four concrete points in Z
3
and compute the Ehrhart polynomial
of their convex hull.
41
42 4 Ehrhart–Macdonald Reciprocity
The counting function ehr

(t) assumes a special formif the lattice simplex
 =convfv
0
;v
1
;:::;v
d
g
is unimodular,that is,the vectors v
1
v
0
;v
2
v
0
;:::;v
d
v
0
form a Z-basis for
Z
d
(equivalently,det (v
1
v
0
;v
2
v
0
;:::;v
d
v
0
) =1).The following result does
not assume Theorem4.1.
Exercise 4.3.Let  be the convex hull of the origin and the d unit vectors in R
d
.
Then ehr

(t) =

t+d
d

,and this polynomial satisﬁes Theorem 4.1.More generally,
ehr

(t) =

t+d
d

for any unimodular simplex .
4.1 Proof of Ehrhart–Macdonald Reciprocity for Simplices
Proof of Theorem 4.1.Suppose  R
d
is a lattice d-simplex.We use a technique
which we already hinted at in Exercise 2.11:namely,we formthe cone over 
cone() =

v vertex of 
R
0
(v;1)
by lifting the vertices of  into R
d+1
onto the hyperplane x
d+1
=1 and taking the
nonnegative span of this “lifted version” of ;see Figure 4.1 for an illustration.
t
-
6
t
t
-
6
t
(2;1)(1;1)
Fig.4.1 The cone over the one-dimensional simplex [1;2] and its fundamental parallelepiped.
The reason for coning over  is that we can see a copy of the dilate t as the
intersection of cone() with the hyperplane x
d+1
=t;we will say that points on this
hyperplane are at height t.In other words,the Ehrhart series
Ehr

(z):=1+

t>0
ehr

(t)z
t
(4.1)
can be computed through
Ehr

(z) =

t0
#(lattice points in cone() at height t)z
t
:(4.2)
4.1 Proof of Ehrhart–Macdonald Reciprocity for Simplices 43
We use a tiling argument to compute this generating function.Namely,let
Q:=

v vertex of 
[0;1)(v;1);
the fundamental parallelepiped of cone().Then we can tile cone() by translates
of Q:
Exercise 4.4.
cone() =
[
m2Z
d+1
0

v vertex of 
m
v
(v;1) + Q
!
;
and this union is disjoint.
The vertices of this tiling are all nonnegative integral combinations of the vectors
(v;1).These vectors are all at height 1,and so their contribution to (4.2) is

t0
#(nonnegative integral combinations of (v;1)’s at height t)z
t
=

1
1z

d+1
:
Each other lattice point in cone() is a translate of such a nonnegative integral
combination of the (v;1)’s by a lattice point in Q.Translated into generating-function
language,this gives
Ehr

(z) =

t0
#(lattice points in cone() at height t)z
t
=

1
1z

d+1

t0
#(lattice points in Qat height t)z
t
:
So it remains to study
h(z):=

t0
#(lattice points in Qat height t)z
t
:
Since Q has no points at height d +1,h(z) is a polynomial of degree at most d.
Furthermore,Q contains the origin,so h(0) =1 and h(1) =#

Q\Z
d

1.This
means we can apply Exercise 3.2 to
Ehr

(z) =
h(z)
(1z)
d+1
to conclude that ehr

(t) is a polynomial.Furthermore,
ehr

(0) =Ehr

(0) =h(0) =1;
which ﬁnishes part (a).
44 4 Ehrhart–Macdonald Reciprocity
Towards part (b),we compute
Ehr

1
z

=

t0
ehr

(t)z
t
=
h

1
z

1
1
z

d+1
=(1)
d+1
z
d+1
h

1
z

(1z)
d+1
and so by Exercise 3.5,

t<0
ehr

(t)z
t
=

t>0
ehr

(t)z
t
=(1)
d
z
d+1
h

1
z

(1z)
d+1
:
Inspired by this,we deﬁne
Ehr

(z):=

t>0
ehr

(t)z
t
;(4.3)
and so proving the reciprocity theoremehr

(t) =(1)
d
ehr

(t) is equivalent to
proving
Ehr

(z) =
z
d+1
h

1
z

(1z)
d+1
:(4.4)
We can compute Ehr

(z) along the same lines as we computed Ehr

(z) in part (a):
Ehr

(z) =

t0
#(lattice points in cone(

) at height t)z
t
:
The fundamental parallelepiped of cone(

) =

v vertex of 
R
>0
(v;1) is
e
Q:=

v vertex of 
(0;1](v;1);
and
Ehr

(z) =
e
h(z)
(1z)
d+1
;
where
e
h(z):=

t0
#

lattice points in
e
Qat height t

z
t
:
Fortunately,the parallelepipeds Qand
e
Qare geometrically closely related:
Exercise 4.5.
e
Q=Q+

v vertex of 
(v;1):
(Figure 4.2 shows one instance of this relation.) This translates into the generating-
function relation
e
h(z) =h

1
z

z
d+1
which proves (4.4) and thus part (b).ut
4.1 Proof of Ehrhart–Macdonald Reciprocity for Simplices 45
t
-
6
t
(v
2
;1)(v
1
;1)
-
6
-
6
Q
Q
Q+(v
1
;1) +(v
2
;1)
Fig.4.2 An instance of Exercise 4.5.
This proof can,in fact,be generalized for a rational simplex,that is,a simplex that
is the convex hull of points in Q
d
.
Exercise 4.6.If  is a rational d-simplex,then for positive integers t,the counting
function ehr

(t) is a quasipolynomial in t whose period divides the least common mul-
tiple of the denominators of the vertex coordinates of .When this quasipolynomial
is evaluated at negative integers,we obtain
ehr

(t) =(1)
d
ehr

(t):
Corollary 4.7.As in (4.1) and (4.3),let
Ehr

(z) =

t0
ehr

(t)z
t
and Ehr

(z) =

t>0
ehr

(t)z
t
denote the generating function of the Ehrhart quasipolynomials of the d-dimensional
rational simplex .Then Ehr

(z) and Ehr

(z) are rational functions satisfying
Ehr

1
z

=(1)
d+1
Ehr

(z):
Exercise 4.8 (Stanley).Deﬁne the integer-point transformof a set S R
d
as
1
s
S
(z
1
;z
2
;:::;z
d
):=

(m
1
;m
2
;:::;m
d
)2S\Z
d
z
m
1
1
z
m
2
2
   z
m
d
d
:
A cone is simplicial if its generators are linearly independent.
2
Extend the methods
of this section to prove that if C is a simplicial cone then s
C
(z
1
;z
2
;:::;z
d
) is a
rational function which satisﬁes
1
This function also goes by the names of multivariate generating function of S and—especially in
number theory—full generating function of S.
2
If  is a simplex then cone() is an example of a simplicial cone.
46 4 Ehrhart–Macdonald Reciprocity
s
C

1
z
1
;
1
z
2
;:::;
1
z
d

=(1)
dimC
s
C
(z
1
;z
2
;:::;z
d
):
Exercise 4.9.Let  be a lattice d-simplex and write
Ehr

(z) =
h
d
z
d
+h
d1
z
d1
+   +h
0
(1z)
d+1
:
Prove that
(a) h
d
=#

\Z
d

;
(b) h
1
=#

\Z
d

d 1;
(c) h
0
+h
1
+   +h
d
=d!vol():
4.2 Ehrhart’s Theorem
Ehrhart–Macdonald Reciprocity holds for general rational polytopes,not just sim-
plices.However,we will need some more machinery before we can prove the general
case in Theorem5.8.Part (a) of Theorem4.1,on the other hand,can be generalized
at this point to general rational polytopes,once we introduce triangulations.
Recall that a (convex) polytope P = convfv
1
;v
2
;:::;v
n
g is the convex hull of
ﬁnitely many points v
1
;v
2
;:::;v
n
2R
d
.If we may choose v
1
;v
2
;:::;v
n
fromZ
d
,we
call P a lattice polytope.A triangulation of a convex d-polytope P is a ﬁnite
collection T of d-simplices with the following properties:
 P=
[
2T
:
 For any 
1
;
2
2T,
1
\
2
is a face of both 
1
and 
2
.
We will see in Chapter 5 that every convex polytope P can be triangulated with
simplices whose vertices are those of P.Assuming this result for the moment,part
(a) of Theorem4.1 yields a famous result:
Theorem4.10 (Ehrhart).If Pis a lattice polytope,then for positive integers t,the
counting function ehr
P
(t) is a polynomial in t whose constant term is 1.
Proof.Triangulate Pinto simplices 
1
;
2
;:::;
n
whose vertices are those of P.
Applying the inclusion–exclusion principle (Exercise 2.8) to the sets t
1
\Z
d
;t
2
\
Z
d
;:::;t
n
\Z
d
gives
ehr
P
(t) =

1jn
ehr

j
(t) 

1j<kn
ehr

j
\
k
(t) +    + (1)
n1
ehr

1
\
2
\\
n
(t):
(4.5)
4.3 Solid Angles 47
The intersection of any of the above simplices is again a simplex (by assumption),
and so by Theorem 4.1,all the functions on the right-hand side are polynomials.
Thus ehr
P
(t) is also a polynomial.
To compute its constant term ehr
P
(0),we think of P = 
1
[
2
[   [
n
as a
polyhedral complex.We know by Theorem 4.1 that ehr

j
(0) =1,which happens
to be the Euler characteristic of 
j
.Thus the right-hand side of (4.5) specialized at
t =0 gives an inclusion–exclusion alternating sumof the Euler characteristics of the
simplices appearing in the triangulation of P.By Excercise 1.6,the left-hand side
ehr
P
(0) is the Euler characteristic of P,which is 1.ut
Naturally,we can repeat the argument around (4.5) for rational polytopes,i.e.,
polytopes whose vertices are in Q
d
,and this yields:
Corollary 4.11 (Ehrhart).If Pis a rational polytope,then for positive integers t,
the counting function ehr
P
(t) is a quasipolynomial in t.
Theorem4.10 and Corollary 4.11 were proved in 1962 by Eug`ene Ehrhart,in whose
honor we call ehr
P
(t) the Ehrhart (quasi-)polynomial of P.
We can also compute Ehrhart quasipolynomials of polytopal complexes C:If ehr
C
(t)
denotes the number of lattice points in the t-dilate of the union of polytopes in
C,then ehr
C
(t) is a polynomial whose constant term of this quasipolynomial is
ehr
C
(0) =c(C),by repeating the argument given in the last paragraph of our above
proof of Theorem4.10.
Exercise 4.12.Show that if P is a d-dimensional lattice polytope in R
d
,then the
degree of its Ehrhart polynomial ehr
P
(t) is d and the leading coefﬁcient is the
volume of P.What can you say if Pis not full dimensional?
4.3 Solid Angles
Suppose P  R
d
is bounded.The solid angle w
P
(x) of a point x (with respect
to P) is a real number equal to the proportion of a small ball centered at x that is
contained in P.That is,we let B
e
(x) denote the ball of radius e centered at x and
deﬁne
w
P
(x):=
vol (B
e
(x)\P)
vol B
e
(x)
for all sufﬁciently small e.We note that when x =2 P,w
P
(x) =0;when x 2 P

,
w
P
(x) =1;and when x 2¶P,0 <w
P
(x) <1.Computing solid angles is somewhat
nontrivial;for the next exercise you may use Exercise 4.16 below.
Exercise 4.13.Compute the solid angles of all points in the tetrahedron with vertices
(0;0;0),(1;0;0),(0;1;0),and (0;0;1).
48 4 Ehrhart–Macdonald Reciprocity
We deﬁne
A
P
(t):=

m2tP\Z
d
w
tP
(m);
the sumof the solid angles at all integer points in tP;recalling that w
P
(x) =0 if
x =2P,we can also write
A
P
(t) =

m2Z
d
w
tP
(m):
The following theorem can be proved along the exact same lines as our proof of
Theorem4.1.
Exercise 4.14 (Macdonald).Suppose P is a lattice d-simplex.Then A
P
(t) is a
polynomial in t of degree d whose leading coefﬁcient is vol Pand whose constant
term is 0.Furthermore,A
P
is either even or odd:
A
P
(t) =(1)
d
A
P
(t):
Because solid angles behave additively when we glue two polytopes together (and
because we do not have to take into account lower-dimensional intersections),this
result effortlessly
3
extends to general lattice polytopes,i.e.,convex hulls of ﬁnitely
many points in Z
d
:
Corollary 4.15.Suppose P is a lattice d-polytope.Then A
P
(t) is a polynomial
in t of degree d whose leading coefﬁcient is vol P and whose constant term is 0.
Furthermore,A
P
is either even or odd:
A
P
(t) =(1)
d
A
P
(t):
Note that the analogous step from Exercise 4.14 to Corollary 4.15 is not as easy
for Ehrhart polynomials:polynomiality extends (as we have shown in Section 4.2),
but for reciprocity,we need to introduce additional machinery (which we will do
in the next chapter).Assuming the general case of Ehrhart–Macdonald Reciprocity
(Theorem5.8) for the moment,we can derive the following classical result,a higher-
dimensional analogue of the fact that the angles in a triangle add up to 180

.
Exercise 4.16 (Brianchon–Gram relation).Suppose P is a rational d-polytope.
Then

F
(1)
dimF
w
P
(F) =0;
where the sum is taken over all faces F of P,and w
P
(F):=w
P
(x) for any x in
the relative interior of F.
3
As in Section 4.2,here we need the fact that every polytope can be triangulated into simplices,
which is the statement of Corollary 5.2.
4.4 Notes 49
Exercise 4.17.State and prove a generating-function analogue of Corollary 4.15
along the lines of Corollary 4.7.
4.4 Notes
Eug`ene Ehrhart laid the foundation for lattice-point enumeration in rational polyhedra,
starting with the proof of Theorem4.10 (and its rational analogue Corollary 4.11) in
1962 [25] as a teacher at a lyc´ee in Strasbourg,France.(Ehrhart received his doctorate
later,at age 60 on the urging of some colleagues.) The proof we give here follows
Ehrhart’s original lines of thought;an alternative proof from ﬁrst combinatorial
principles can be found in [53].
Richard Stanley developed much of the theory of Ehrhart (quasi-)polynomials,ini-
tially froma commutative-algebra point of view.One of his famous theorems says
that the numerator polynomial of an Ehrhart series has nonnegative integral coef-
ﬁcients [63].The resulting inequalities serve as the starting point when trying to
classify Ehrhart polynomials,though a complete classiﬁcation is known only in
dimension two [7].The current state of the arts regarding inequalities among Ehrhart
coefﬁcients is [67,68].
I.G.Macdonald [44] inaugurated the systematic study of solid-angle sums in rational
polyhedra in 1971 with Corollary 4.15.His paper [44] also contained the ﬁrst proof
of Ehrhart–Macdonald Reciprocity for general rational polytopes (which we give
in the next chapter).Some recent results and open questions on solid angles can be
found in [9,22].
The Brianchon–Gramrelation (Exercise 4.16) is the solid-angle analogue of the Euler
relation (Theorem1.4).The 2-dimensional case is ancient (most certainly known to
Euclid);the 3-dimensional case was discovered by Charles Julien Brianchon in 1837