| Recreational Mathematics Club | Discussion #1 |
| Introduction to Ehrhart Theory
| |
| Speaker: Dhairya Baxi | Indian Institute of Science |
How many integer-coordinate points fit inside a triangle drawn on grid paper? Inside a square of side length t? Inside an arbitrary convex shape whose vertices lie on a lattice? These questions sit at the crossroads of combinatorics, geometry, and algebra, and they admit surprisingly clean answers.
Definition 1.1. A lattice polytope (or integral polytope) P ⊂ ℝd is a convex polytope whose vertices all lie in ℤd. Its lattice-point count is
where tP = {tx : x ∈ P} is the t-th dilate of P.
Our main goal is to understand why LP (t) turns out to be a polynomial in t. Along the way we will encounter:
Theorem 2.1 (Pick, 1899). Let P ⊂ ℝ2 be a lattice polygon (a 2-dimensional lattice polytope). Denote by
Then
Example 2.2. Consider the lattice polygon with vertices (0,0), (4,0), (1,3). One counts B = 4 boundary lattice points and I = 3 interior lattice points. Pick’s theorem gives
(Verify directly: area = |4 ⋅ 3 − 0| = 6. Hmm — recount: the vertices (0,0),(4,0),(1,3) give
area
det
= 6. Here B = 5, I = 3: 3+5∕2−1 = 4.5≠6. Recount boundary points carefully
as an exercise!)
For a lattice polygon P with area A, boundary count B, and interior count I, the Ehrhart polynomial is
Comparing with Pick’s theorem (A = I + B∕2 − 1) recovers the classical formula as the special case t = 1.
Definition 3.1. For a positive integer r, the Reeve tetrahedron Tr is the lattice tetrahedron with vertices
Proposition 3.2. For every r ≥ 1:
Proof sketch. The four faces of Tr are lattice triangles. One verifies (e.g. by checking the relevant
determinants or using the characterisation of integer points as solutions to integer linear systems)
that each face contains no lattice points beyond its vertices, and that the interior is likewise empty.
The volume formula follows from vol(Tr) = |det[v1−v0, v2−v0, v3−v0]| =
|det
| =
r∕6. □
Moral. The family {Tr}r≥1 shows that in 3-D (and higher), the lattice-point data (I,B) alone does not determine the volume. Any naive 3-D analogue “vol(P) = aI + bB + c” would have to satisfy r∕6 = c for all r, which is impossible. Pick’s theorem has no direct analogue in dimension ≥ 3.
The right framework is the Ehrhart polynomial, which we derive in Sections 4–6. For the Reeve tetrahedra,
so the volume appears as the leading coefficient rather than as a simple linear combination of I and B.
Instead of merely counting lattice points, we list them inside a single algebraic object.
Setting z = 1 (all zi = 1) recovers the lattice-point count: σS(1) = #(S ∩ ℤd).
Example 4.3 (cf. Example 3.4 in the reference). Let
Define the fundamental parallelogram
We tile K by translating Π by all nonnegative integer linear combinations of (1,1) and (−2,3). The integer points in Π are
Therefore:
Definition 4.4. A simplicial d-cone is a cone of the form
where w1,…,wd ∈ ℤd are linearly independent. The fundamental parallelepiped is
Theorem 4.5 (Integer-point transform of a simplicial cone). Let K = {λ1w1 ++λdwd : λk ≥
0} be a simplicial d-cone with wk ∈ ℤd, and let v ∈ ℝd. Then
where Π is the fundamental parallelepiped of K.
Proof idea. Every lattice point m ∈ (v + K) ∩ ℤd can be uniquely written as
with p ∈ (v + Π) ∩ ℤd and k1,…,kd ∈ ℤ≥0. This is the decomposition λj = ⌊λj⌋ + {λj} applied to each coefficient. Expanding the right-hand side of the claimed identity as a product of geometric series yields exactly this decomposition. □
Key geometric idea. We tile the cone v + K with translates of the parallelepiped v + Π. The
denominator (1 −zw1)(1 −zwd)−1 accounts for all nonnegative integer translates; the numerator σv+Π
accounts for the “starting points” inside Π.
Corollary 4.6. For any pointed rational cone K, the integer-point transform σK is a rational function of z.
Suppose we want to list all positive integers via a generating function:
| (1) |
Similarly, we can list all integers up to 5:
| (2) |
Adding the two rational functions gives a miraculous cancellation:
| (3) |
The sum of two rational functions, each representing an infinite series, collapses to a polynomial representing the finite set {1,2,3,4,5}.
Geometrically: (1) is the integer-point transform of the ray [1,∞) (the vertex cone at the left endpoint of the interval [1,5]), and (2) is the integer-point transform of the ray (−∞,5] (the vertex cone at the right endpoint). Their sum encodes the integer points in the interval [1,5]. This is Brion’s theorem in dimension 1.
Let Q be the quadrilateral with vertices (0,0), (2,0), (4,2), (0,2). At each vertex v we form the vertex cone Kv: the cone with apex v generated by the two edge directions leaving v. By Theorem 4.5, each vertex cone has a rational integer-point transform:
| Vertex v | Cone Kv | σKv(x,y) |
| (0,0) | ℝ≥0(1,0) + ℝ≥0(0,1) | |
| (0,2) | (0,2) + ℝ≥0(0,−1) + ℝ≥0(1,0) | |
| (4,2) | (4,2) + ℝ≥0(−1,0) + ℝ≥0(−1,−1) | |
| (2,0) | (2,0) + ℝ≥0(1,1) + ℝ≥0(−1,0) | |
Summing these four rational functions:
| = y2 + xy2 + x2y2 + x3y2 + x4y2 + y + xy + x2y + x3y + 1 + x + x2, |
which is exactly the polynomial listing the 12 integer points of Q. The four infinite rational functions collapse, pole-free, to a finite polynomial.
Definition 5.1. Let P ⊂ ℝd be a polytope and v a vertex of P. The vertex cone (or tangent cone) of P at v is
the smallest cone with apex v that contains P. Its integer-point transform σKv(z) is a rational function by Corollary 4.5.
Why this is remarkable. Each σKv is a rational function with poles at z = 1; the vertex cones are unbounded and their lattice points vastly overlap. Yet summing over all vertices, every pole cancels and every overlap cancels, leaving the polynomial σP — finite because P is bounded. As Beck, Haase, and Sottile write, the formula “provokes a slight feeling of mystery” even after years of study.
Brion’s theorem converts a problem about the bounded polytope P into a sum of problems about cones, for which Theorem 4.5 provides explicit rational-function formulas. It is the key bridge between the geometry of polytopes and the algebraic machinery of generating functions.
Concretely, to compute LP (t) = #(tP ∩ ℤd):
The key observation is that the Ehrhart series can be recovered from the integer-point transform of the cone over P.
Definition 6.2. Given a lattice polytope P ⊂ ℝd with vertices v1,…,vn, lift each vertex to ℝd+1 by setting wj = (vj,1). The cone over P is
The dilate tP is recovered by slicing cone(P) with the hyperplane xd+1 = t.
Proof. The terms with zd+1t in σcone(P) correspond to lattice points in the slice xd+1 = t, which is exactly tP ∩ ℤd. Summing gives EhrP (z). □
Theorem 6.4 (Ehrhart, 1962). If P is an integral convex d-polytope, then LP (t) is a polynomial in t of degree d.
Proof (following the reference). By triangulating P into integral simplices (using no new vertices), it suffices to prove the result for a single integral d-simplex Δ.
Let Δ have vertices v1,…,vd+1 ∈ ℤd, and set wj = (vj,1) ∈ ℤd+1. Then cone(Δ) is a simplicial (d + 1)-cone. By Theorem 4.5,
where Π = {∑ jλjwj : 0 ≤ λj < 1}.
Specialising z1 = = zd = 1 (so zwk → zd+11) and applying Lemma 6.3:
where g(z) = σΠ(1,…,1,z) is a polynomial of degree ≤ d (since every point in Π has last coordinate < d + 1, hence ≤ d). Moreover g(1) = #(Π ∩ ℤd+1) ≥ 1 (the origin lies in Π), so g(1)≠0.
By the following standard lemma, this implies LΔ(t) is a polynomial of degree d. □
Lemma 6.5. If ∑ t≥0f(t)zt = g(z)∕(1 − z)d+1 where g is a polynomial, then f is a polynomial of degree d if and only if deg(g) ≤ d and g(1)≠0.
Here is the logical thread we have followed:
Some avenues for further exploration:
These notes follow closely the exposition in:
Some images taken from Wikipedia