0% found this document useful (0 votes)
242 views

Geometric Combinatorics PDF

This document provides an introduction to abstract algebra concepts needed to understand convex polytopes, including groups, rings, and fields. It defines what a group is and gives examples of important groups like the integers Z under addition, the non-zero real numbers R* under multiplication, and the symmetric group Sn of permutations of n letters. The document states that abstract algebra can be used to encode geometry algebraically since algebra does not suffer from limitations of visualizing higher dimensions like geometry does. It will use techniques from linear and abstract algebra to understand the geometry and combinatorics of polytopes.
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
242 views

Geometric Combinatorics PDF

This document provides an introduction to abstract algebra concepts needed to understand convex polytopes, including groups, rings, and fields. It defines what a group is and gives examples of important groups like the integers Z under addition, the non-zero real numbers R* under multiplication, and the symmetric group Sn of permutations of n letters. The document states that abstract algebra can be used to encode geometry algebraically since algebra does not suffer from limitations of visualizing higher dimensions like geometry does. It will use techniques from linear and abstract algebra to understand the geometry and combinatorics of polytopes.
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 149

Lectures in

Geometric Combinatorics

Rekha R. Thomas
Department of Mathematics, University of Washing-
ton, Seattle, WA 98195
E-mail address: [email protected]
1991 Mathematics Subject Classification. Primary 52-01;
Secondary 13-01

The author was supported in part by grants DMS-0100141 and


DMS-0401047 from the National Science Foundation.

Abstract. The fourteen lectures in this book were prepared


for the advanced undergraduate course at the Park City Math-
ematics Institute on Geometric Combinatorics in July 2004.
They begin with the basics of polytope theory with an em-
phasis on geometry via the theory of Schlegel and Gale dia-
grams. The lectures lead up to secondary and state polytopes
arising from point configurations. These polytopes are rela-
tively recent constructs that have connections to several parts
of mathematics such as combinatorics, commutative algebra,
algebraic geometry and symplectic geometry. The treatment
here constructs them from scratch and focuses on their geo-
metric combinatorics. This book is meant to be accessible to
undergraduates with a background in linear algebra.
Contents

Preface vii

Chapter 1. Abstract Algebra: Groups, Rings and Fields 1

Chapter 2. Convex Polytopes: Definitions and Examples 7

Chapter 3. Faces of Polytopes 15

Chapter 4. Schlegel Diagrams 25

Chapter 5. Gale Diagrams 37

Chapter 6. Bizarre Polytopes 47

Chapter 7. Triangulations of Point Configurations 57

Chapter 8. The Secondary Polytope 73

Chapter 9. The Permutahedron 85

Chapter 10. Abstract Algebra: Polynomial Rings 93

Chapter 11. Gröbner bases I 101

Chapter 12. Gröbner bases II 111

Chapter 13. Initial Complexes of Toric Ideals 117

v
vi Contents

Chapter 14. State Polytopes of Toric Ideals 127

Bibliography 139

Index 141
Preface

These lectures were prepared for the advanced undergraduate course


at the Park City Mathematics Institute in Geometric Combinatorics
in July 2004. Many thanks to the organizers of the undergradu-
ate program, Bill Barker and Roger Howe, for inviting me to teach
this course. I also wish to thank Ezra Miller, Vic Reiner and Bernd
Sturmfels who coordinated the graduate research program at PCMI,
for their support. Edwin O’Shea conducted all the tutorials at the
course and wrote several of the exercises seen in these lectures. Ed-
win was a huge help in the preparation of these lectures from the
beginning to the end.
The main goal of these lectures was to develop the theory of
convex polytopes from a geometric view point to lead up to recent
developments centered around secondary and state polytopes arising
from point configurations. The geometric view point naturally relies
on linear optimization over polytopes. Chapters 2 and 3 develop the
basics of polytope theory. In Chapters 4 and 5 we see the tools of
Schlegel and Gale diagrams for visualizing polytopes and understand-
ing their facial structure. Gale diagrams have been used to unearth
several bizarre phenomena in polytopes such as the existence of poly-
topes whose vertices cannot have rational coordinates, and others
whose facets cannot be prescribed. These examples are described in
Chapter 6. In Chapters 7–9 we construct the secondary polytope of

vii
viii Preface

a graded point configuration. The faces of this polytope index the


regular subdivisions of the configuration. Secondary polytopes ap-
peared in the literature in the early nineties and play a crucial role
in combinatorics, discrete optimization and algebraic geometry. The
secondary polytope of a point configuration is naturally refined by
the state polytope of the toric ideal of the configuration. In Chap-
ters 10–14 we establish this relationship. The state polytope of a
toric ideal arises from the theory of Gröbner bases which is developed
in Chapters 10–12. Chapter 13 establishes the connection between
the Gröbner bases of a toric ideal and the regular triangulations of
the point configuration defining the ideal. Finally, in Chapter 14
we construct the state polytope of a toric ideal and relate it to the
corresponding secondary polytope.
These lectures are meant to be self-contained and do not require
any background beyond basic linear algebra. The concepts needed
from abstract algebra are developed in Chapters 1,10,11 and 12.
I wish to thank Tristram Bogart, Ezra Miller, Edwin O’Shea and
Alex Papazoglu for carefully proof reading many parts of the original
manuscript. Ezra made several important remarks and corrections
that have greatly benefited this final version. Many thanks also to
Sergei Gelfand and Ed Dunne at the AMS office for their patience
and help in publishing this book.

Rekha R. Thomas
Seattle, January 2006
Chapter 1

Abstract Algebra:
Groups, Rings and
Fields

This course will aim at understanding convex polytopes, which are fun-
damental geometric objects in combinatorics, using techniques from
algebra and discrete geometry. Polytopes arise everywhere in the
real world and in mathematics. The most famous examples are the
Platonic solids in three dimensional space: cube, tetrahedron, octa-
hedron, icosahedron and dodecahedron, which were known to the an-
cient Greeks. The natural first approach to understanding polytopes
should be through geometry as they are first and foremost geometric
objects. However, any experience with visualizing geometric objects
will tell you soon that geometry is already quite hard in three di-
mensional space, and if one has to study objects in four or higher
dimensional space, then it is essentially hopeless to rely only on our
geometric and drawing skills. This frustration led mathematicians
to the discovery that algebra can be used to encode geometry and,
since algebra does not suffer from the same limitations as geometry
in dealing with “higher dimensions”, it can serve very well as the
language of geometry. A simple example of this translation can be
seen by noting that, while it is hard to visualize vectors in four di-
mensional space, linear algebra allows us to work with their algebraic

1
2 1. Abstract Algebra: Groups, Rings and Fields

incarnations v = (v1 , v2 , v3 , v4 ) ∈ R4 and w = (w1 , w2 , w3 , w4 ) ∈ R4


and to manipulate them to find new quantities such as the sum vector
4
v + w = (v1 + w1 , v2 + pw2 , v3 + w3 , v4 + w4 ) ∈ R or the length of
their difference vector (v1 − w1 ) + · · · + (v4 − w4 )2 . We use R for
2

the set of real numbers.


These lectures will focus on techniques from linear and abstract
algebra to understand the geometry and combinatorics of polytopes.
We begin with some basic abstract algebra. The algebraically sophis-
ticated reader should skip ahead to the next chapter and refer back
to this chapter only as needed. The material in this lecture is taken
largely from the book [DF91].
In linear algebra one learns about vector spaces over fields. Both
of these objects are examples of a more basic object known as a group.

Definition 1.1. A set G along with an operation ∗ on pairs of ele-


ments of G is called a group if the pair (G, ∗) satisfies the following
properties:
(1) ∗ is a binary operation on G: This means that for any two
elements g1 , g2 ∈ G, g1 ∗ g2 ∈ G. In other words, G is closed
under the operation ∗ on its elements.
(2) ∗ is associative: For any three elements g1 , g2 , g3 ∈ G,
(g1 ∗ g2 ) ∗ g3 = g1 ∗ (g2 ∗ g3 ).
(3) G has an identity element with respect to ∗: This means
that there is an element e ∈ G such that for all g ∈ G,
e ∗ g = g ∗ e = g. If ∗ is addition, then e is usually written
as 0. If ∗ is multiplication, then e is usually written as 1.
(4) Every g ∈ G has an inverse: For each g ∈ G there is an
element g −1 ∈ G such that g ∗ g −1 = g −1 ∗ g = e. If ∗ is
addition, then it is usual to write g −1 as −g.

It can be proved that the identity element in G is unique and that


every element in G has a unique inverse. Let Z be the set of integers
and R∗ := R\{0}. The multiplication table of a finite group is a
|G| × |G| array whose rows and columns are indexed by the elements
of G and the entry in the box with row index g and column index g 0
is the product g ∗ g 0 .
1. Abstract Algebra: Groups, Rings and Fields 3

Exercise 1.2. Check that the following are groups. In each case,
write down how the binary operation works, the identity element of
the group, and the inverse of an arbitrary element in the group.

(1) (Zn , +)
(2) (R∗ , ×)
(3) ((R∗ )n , ×)

The above groups are all infinite. We now study two important
families of finite groups that are useful in the study of polytopes.

The symmetric group Sn :


Recall that a permutation of n letters 1, 2, . . . , n is any arrangement
of the n letters, or more formally, a one-to-one onto function from
the set [n] := {1, 2, . . . , n} to itself. Permutations are denoted by the
small Greek letters σ, τ etc, and they can be written in many ways.
For instance, the permutation

σ : {1, 2, 3} → {1, 2, 3} : 1 7→ 2, 2 7→ 1, 3 7→ 3
 
1 2 3
is denoted as either or more compactly, by recording
2 1 3
just the last row as 213. Since permutations are functions, two per-
mutations can be composed in the usual way that functions are com-
posed: f ◦g is the function obtained by first applying g and then apply-
ing f . The symbol ◦ denotes composition. Check that 213 ◦ 321 = 312
which is again a permutation. Let Sn denote the set of all permu-
tations on n letters. Then (Sn , ◦) is a group with n! elements. We
sometimes say that 312 is the product 213 ◦ 321.

Exercise 1.3. (1) Check that (Sn , ◦) is a group for any positive
integer n. What is the identity element of this group, and
what is the inverse of a permutation σ ∈ Sn ?
(2) List the elements of S2 and S3 , and compute their multipli-
cation tables.

Definition 1.4. The group (G, ∗) is abelian if for all g, g 0 ∈ G,


g ∗ g 0 = g 0 ∗ g.
4 1. Abstract Algebra: Groups, Rings and Fields

Check that S3 is not an abelian group. Do you see how to use


this to prove that (Sn , ◦) is not abelian for all n ≥ 3?
We now study a second family of non-abelian groups. The reg-
ular n-gon, which is a polygon with n sides of equal length, is an
example of a polytope in R2 . Regular polygons have all sides of equal
length and the same angle between any two adjacent sides. For in-
stance, an equilateral triangle is a regular 3-gon, a square is a regular
4-gon, a pentagon with equal sides and angles is a regular 5-gon, etc.

The Dihedral group D2n :


The group D2n is the group of symmetries of a regular n-gon. A
symmetry of a regular n-gon is any rigid motion obtained by taking
a copy of the n-gon, moving this copy in any fashion in three dimen-
sional space and placing it back down so that the copy exactly covers
the original n-gon. Mathematically, we can describe a symmetry s by
a permutation in Sn . Fix a cyclic labeling of the corners (vertices)
of the n-gon by the letters 1, 2, . . . , n. If s puts vertex i in the place
where vertex j was originally, then the permutation s sends i to j.
Note that since our labeling was cyclic, s is completely specified by
noting where the vertices 1 and 2 are sent. In particular, this implies
that s cannot be any permutation in Sn .
How many symmetries are there for a regular n-gon? Given a
vertex i, there is a symmetry that sends vertex 1 to i. Then vertex
2 has to go to either vertex i − 1 or vertex i + 1. Note that we have
to add modulo n and hence n + 1 is 1 and 1 − 1 is n. By following
the first symmetry by a reflection of the n-gon about the line joining
the center of the n-gon to vertex i, we see that there are symmetries
that send 2 to either i − 1 or i + 1. Thus there are 2n positions that
the ordered pair of vertices 1 and 2 may be sent to by symmetries.
However, since every symmetry is completely determined by what
happens to 1 and 2 we conclude that there are exactly 2n symmetries
of the regular n-gon. These 2n symmetries are: the n rotations about
the center through 2πin radians for 1 ≤ i ≤ n and the n reflections
through the n lines of symmetry. If n is odd, each symmetry line
passes through a vertex and the mid-point of the opposite side. If
n is even there are n/2 lines of symmetry which pass through two
1. Abstract Algebra: Groups, Rings and Fields 5

opposite vertices and n/2 which perpendicularly bisect two opposite


sides. The dihedral group D2n is the set of all symmetries of a regular
n-gon with the binary operation of composition of symmetries (which
are permutations).
Example 1.5. Let 2 be a square with vertices 1, 2, 3, 4 labeled counter-
clockwise from the bottom left vertex and centered about the origin
in R2 . Then its group of symmetries is the dihedral group

     
1 2 3 4 1 2 3 4
e= , s= ,

 

1 2 3 4 4 3 2 1

 


 

     
 1 2 3 4 1 2 3 4 
r2 =
 
 r= , ,

 

2 3 4 1 3 4 1 2

D8 =    
3 1 2 3 4 1 2 3 4
r = , r◦s= , 

 
 


 4 1 2 3 1 4 3 2 

     
1 2 3 4 1 2 3 4

 

 r2 ◦ s = , r3 ◦ s =

 

2 1 4 3 3 2 1 4

where r denotes counterclockwise rotation by 90 degrees about the


origin and s denotes reflection about the horizontal axis.
Exercise 1.6. Fix a labeling of a regular n-gon (say counterclockwise,
starting at some vertex) and let r denote counterclockwise rotation
through 2πn radians and s denote reflection about the line of symme-
try through the center of the n-gon and vertex 1. Then show the
following.
(1) D2n = {e, r, r 2 , . . . , r n−1 , s, sr, sr 2 , . . . , sr n−1 }.
(2) What are the inverses in the above group?
(Hint:(i) 1, r, r 2 , . . . , r n−1 are all distinct, (ii) r n = e, (iii) s2 = e,
(iv) s 6= r i for any i, (v) sr i 6= sr j for all 0 ≤ i, j ≤ n − 1, i 6= j, (vi)
sr = r −1 s, (vii) sr i = r−i s, for 0 ≤ i ≤ n.)
Exercise 1.7. Let G be the symmetries of a regular cube in R3 .
Show that |G| = 24.
Definition 1.8. A set R with two binary operations + and × is
called a ring if the following conditions are satisfied:
(1) (R, +) is an abelian group,
6 1. Abstract Algebra: Groups, Rings and Fields

(2) × is associative : (a × b) × c = a × (b × c) for all a, b, c ∈ R,


(3) × distributes over +: for all a, b, c ∈ R,
(a + b) × c = (a × c) + (b × c), and a × (b + c) = (a × b) + (a × c).

If in addition, R has an identity element with respect to ×, we


say that R is a ring with identity. If × is commutative in R then
we say that R is a commutative ring. The identity of (R, +) is the
additive identity in R denoted as 0 while the multiplicative identity,
if it exists, is denoted as 1. We will only consider commutative rings
with identity.
Exercise 1.9. (1) Show that (Z, +, ×) is a commutative ring
with identity.
(2) Let Mn denote the set of n × n matrices with entries in
R. Then show that under the usual operations of matrix
addition and multiplication, Mn is a non-commutative ring
with identity. Is (Mn , ×) a group?
Definition 1.10. A field is a set F with two binary operations +
and × such that both (F, +) and (F ∗ := F \{0}, ×) are abelian groups
and the following distributive law holds:
a × (b + c) = (a × b) + (a × c), for all a, b, c ∈ F.

Let C denote the set of complex numbers and Q denote the set
of rational numbers.
Exercise 1.11. Check that (C, +, ×), (R, +, ×), (Q, +, ×) are fields
while (Z, +, ×) and (Mn , +, ×) are not fields.

Where does a vector space fit in the above hierarchy?


Chapter 2

Convex Polytopes:
Definitions and
Examples

In this chapter we define the notion of a convex polytope. There


are several excellent books on polytopes. Much of the material on
polytopes in this book is taken from [Grü03] and [Zie95]. We start
with an example of a family of convex polytopes.

Example 2.1. Cubes: The following is an example of the familiar


3-dimensional cube:
 
 0 ≤ x1 ≤ 1 
C3 := (x1 , x2 , x3 ) ∈ R3 : 0 ≤ x2 ≤ 1 .
0 ≤ x3 ≤ 1
 

The cube C3 has volume one and edges of length one. By trans-
lating this cube around in R3 we see that there are infinitely many
3-dimensional cubes (3-cubes) of volume one and edges of length one
in R3 . If you are interested in studying the properties of these cubes,
you might be willing to believe that it suffices to examine one member
in this infinite family. Thus we pick the above member of the family
and call it the 3-dimensional unit cube.
The unit 3-cube is of course the older sibling of a square in R2 .
Again, picking a representative we have the unit square (or the unit

7
8 2. Convex Polytopes: Definitions and Examples

2-cube):
 
0 ≤ x1 ≤ 1
C2 := (x1 , x2 ) ∈ R2 : .
0 ≤ x2 ≤ 1
Going down in the family we could ask who the 1-cube is. If we simply
mimic the pattern we might conclude that the unit 1-cube is the line
segment:

C1 := (x1 ) ∈ R : 0 ≤ x1 ≤ 1 .
The baby of the family is the 0-cube C0 = {0} = R0 .
How about going up in the family? What might be the unit 4-
cube? Again, simply mimicking the pattern we might define it to
be:
0 ≤ x1 ≤ 1 
 

 
0 ≤ x2 ≤ 1
 
C4 := (x1 , x2 , x3 , x4 ) ∈ R4 : .

 0 ≤ x3 ≤ 1 

0 ≤ x4 ≤ 1
 

Of course this is hard to visualize. In Chapter 4 we will learn about


Schlegel diagrams that can be used to see C4 . Making life even harder,
we could define the unit d-cube (the unit cube of dimension d) to be:
0 ≤ x1 ≤ 1 
 

 
0 ≤ x2 ≤ 1 

 
d
Cd := (x1 , . . . , xd ) ∈ R : .. ,


 . 


0 ≤ xd ≤ 1
 

thus creating an infinite family of unit cubes {Cd : d ∈ N}. The sym-
bol N denotes the set of non-negative integers {0, 1, 2, 3, . . .}. Every
member of this family is a convex polytope.

Definition 2.2. A set C ⊆ Rd is convex if for any two points p and q


in C, the entire line segment joining them {λp+(1−λ)q : 0 ≤ λ ≤ 1},
is contained in C.

Exercise 2.3. (1) Check that each Cd , d ∈ N is convex.


(2) Draw an example of a non-convex set.

Recall from linear algebra that a hyperplane in Rd is a set


H := {x ∈ Rd : a1 x1 + a2 x2 + · · · + ad xd = b}
2. Convex Polytopes: Definitions and Examples 9

where a1 , . . . , ad , b ∈ R. The hyperplane H defines two halfspaces


in Rd :
H + := {x ∈ Rd : a1 x1 + a2 x2 + · · · + ad xd ≥ b}, and
H − := {x ∈ Rd : a1 x1 + a2 x2 + · · · + ad xd ≤ b}.
We can always write H + with a ≤ sign by simply multiplying both
sides of the inequality by −1 to get
H + = {x ∈ Rd : −a1 x1 − a2 x2 − · · · − ad xd ≤ −b}.
Thus all halfspaces can be considered to be of the form H − . The
common intersection of several halfspaces then looks like:
a11 x1 + a12 x2 + · · · + a1d xd ≤ b1 
 

 
a21 x1 + a22 x2 + · · · + a2d xd ≤ b2 

 
d
x∈R : ..


 . 


am1 x1 + am2 x2 + · · · + amd xd ≤ bm
 

which can be written more compactly as {x ∈ Rd : Ax ≤ b} where


b = (b1 , . . . , bm ) ∈ Rm and A is the m × d matrix
a11 a12 · · · a1d
 

A =  ... .. .. ..  =: (a )
ij m×d .

. . . 
am1 am2 ··· amd
Exercise 2.4. Check that the d-cube Cd is the common intersection
of 2d halfspaces in Rd .
Definition 2.5. A polyhedron (or H-polyhedron) in Rd is any
set obtained as the intersection of finitely many halfspaces in Rd .
Mathematically, it has the form P = {x ∈ Rd : Ax ≤ b} where
A ∈ Rm×d and b ∈ Rm .

The prefix H stands for the fact that the above definition of
a polyhedron involves intersecting halfspaces. We say that a set is
bounded if we can enclose it entirely in a ball of some finite radius.
Note that all our unit cubes are bounded.
Definition 2.6. A bounded H-polyhedron is called an H-polytope.
Example 2.7. We can create unbounded polyhedra by throwing
away some of the inequalities from our d-cubes. For instance if we
10 2. Convex Polytopes: Definitions and Examples

take no inequalities then we get P = Rd which is an unbounded poly-


hedron. Any single halfspace in Rd , d ≥ 1 is also an unbounded
polyhedron. For example, {x ∈ R : x ≥ 0} and {x ∈ R : x ≤ 1} are
examples of halfspaces in R. Both are unbounded polyhedra gotten
by relaxing inequalities of C1 .

Lemma 2.8. An H-polyhedron P is a convex set.

Proof. Consider two points p, q ∈ P and any point λp + (1 − λ)q


on the line segment joining them. Then A(λp + (1 − λ)q) = λAp +
(1 − λ)Aq ≤ λb + (1 − λ)b = b where the inequality follows from the
fact that 0 ≤ λ ≤ 1, which makes 0 ≤ 1 − λ ≤ 1. 

There are objects called non-convex polyhedra which we will not


touch in these chapters. We will only consider convex polyhedra and
in fact, mostly only convex polytopes, and will drop the adjective
convex from now on. There is a second equivalent way to define
polytopes which makes their convexity more explicit.

Definition 2.9. A convex combination of any two points p, q ∈


Rd is any point of the form λp + (1 − λ)q where 0 ≤ λ ≤ 1. The set
of all convex combinations of p and q is called the convex hull of p
and q.

Remark 2.10. The convex hull of p and q is the line segment joining
them.

Definition 2.11. A convex combination of p1 , . . . , pt ∈ Rd is any


Pt
point of the form i=1 λi pi where λi ≥ 0, for all i = 1, . . . , t and
Pt
i=1 λi = 1. The set of all convex combinations of p1 , . . . , pt is
called their convex hull. We denote it as conv({p1 , . . . , pt }).

Exercise 2.12. (1) Draw the convex hull of the points 0 and 1 in R.
(2) Draw the convex hull of (0, 0), (1, 0), (0, 1), (1, 1) in R2 .
(3) What is C3 the convex hull of? How about Cd ?

Taking the convex hull of a finite set of points is like “shrink


wrapping” the points. Here are some basic facts about convex hulls:
• conv({p1 , . . . , pt }) is convex,
2. Convex Polytopes: Definitions and Examples 11

• conv({p1 , . . . , pt }) is the smallest convex set containing


p1 , . . . , p t ,
• conv({p1 , . . . , pt }) is the intersection of all convex sets con-
taining p1 , . . . , pt . This follows from the fact that the inter-
section of two convex sets is convex.
Definition 2.13. A V-polytope in Rd is the convex hull of a finite
number of points in Rd . Mathematically, it is a set of the form P =
conv({p1 , . . . , pt }) where p1 , . . . , pt ∈ Rd .

The prefix V stands for the polytope being expressed as the con-
vex hull of a set of points V. It takes some serious work to prove
that the two notions of a polytope in Definitions 2.5 and 2.13 are the
same.
Theorem 2.14. Main Theorem of Polytope Theory [Zie95,
Theorem 1.1] Every V-polytope has a description by inequalities as
an H-polytope and every H-polytope is the convex hull of a minimal
number of finitely many points called its vertices.

The process of converting one description to another is called


Fourier-Motzkin elimination. See [Zie95, §1.2] for instance.
Example 2.15. The cross-polytope in Rd is the V-polytope
Cd∆ := conv({±e1 , ±e2 , . . . , ±ed })
where e1 , . . . , ed are the standard unit vectors in Rd . Note that C1∆ is
a line segment in R, C2∆ is a “diamond” in R2 and C3∆ is an octahedron.
Expressed as an H-polytope,
 

 x1 + x 2 + x 3 ≤ 1  
−x1 + x2 + x3 ≤ 1 

 

 

− ≤
 



 x 1 x 2 + x 3 1 



x + x − x ≤ 1
 
∆ 3 1 2 3
C3 = (x1 , x2 , x3 ) ∈ R : .

 −x1 − x2 + x3 ≤ 1  
−x1 + x2 − x3 ≤ 1 

 


 
 
x − x − x ≤ 1
 
1 2 3

 

 
−x1 − x2 − x3 ≤ 1
 

Exercise 2.16. What is the H-representation of Cd∆ ?


12 2. Convex Polytopes: Definitions and Examples

Example 2.17. Can you devise an algorithm for converting the H-


representation of a polytope to its V-representation and vice versa?
Example 2.18. The simplest polytopes are the simplices. The unit
(d − 1)-simplex is defined as ∆d−1 := conv({e1 , e2 , . . . , ed }) =
{x ∈ Rd : x1 + · · · + xd = 1, xi ≥ 0, i = 1, . . . , d}. This family
includes a line segment, triangle and tetrahedron.
Exercise 2.19. Show that if you drop any inequality in the H-
description of ∆d−1 you get an unbounded polyhedron.

The (d − 1)-simplex ∆d−1 lives entirely in the hyperplane {x ∈


Rd : x1 + · · · + xd = 1} and hence is a (d − 1)-dimensional polytope
even though it lives in Rd . You can verify this at least for d = 1, 2, 3.
The dimension of a polytope is perhaps its most important invariant.
It is what we think it is in low dimensional spaces, but we need a
formal definition so that we can calculate it for polytopes that live
in high dimensional spaces. To do this, we need to understand affine
spaces which are closely related to linear vector spaces.
Definition 2.20. (1) An affine combination of vectors
Pt
p1 , . . . , pt ∈ Rd is a combination of the form i=1 λi pi such
Pt
that i=1 λi = 1.
(2) The affine hull of p1 , . . . , pt is the set of all affine combi-
nations of p1 , . . . , pt . It is denoted as aff({p1 , . . . , pt }).
(3) The affine hull of a set S, denoted as aff(S), is the set of all
affine combinations of finitely many points in S.
Example 2.21. (1) The affine hull of two points p and q in Rd is
the line through them. Note the difference between aff({p, q}) and
conv({p, q}).
(2) The affine hull of the three points (−1, 1), (0, 1), (1, 1) ∈ R2 is
the line x2 = 1 which also equals the affine hull of the polytope
conv({(−1, 1), (0, 1), (1, 1)}).
(3) The affine hull of the cube C3 ⊂ R3 is R3 .
Definition 2.22. An affine space is any set of the form {x ∈ Rd :
Ax = b}.

A non-empty affine space {x ∈ Rd : Ax = b} is a translate of the


vector space {x ∈ Rd : Ax = 0}. Further, every affine hull is an affine
2. Convex Polytopes: Definitions and Examples 13

space. In (2) above, aff({(−1, 1), (0, 1), (1, 1)}) = {(x1 , x2 ) : x2 = 1}
is the translation of the vector space {(x1 , x2 ) : x2 = 0}. In (3)
above, aff(C3 ) is already the linear vector space R3 .

Definition 2.23. (1) The dimension of an affine space is the di-


mension of the linear vector space that it is a translate of.
(2) The dimension of a polytope P is the dimension of its affine hull.

Exercise 2.24. Calculate the dimension of the polytope


conv({(1, 0, 0), (1, 1, 0), (1, 2, 1), (1, 1, 2), (1, 0, 1)})
in R3 . Based on your answer, how many equations do you expect to
see in the H-representation of this polytope?

Let P be a d-dimensional polytope (d-polytope) in Rd containing


the origin in its interior. Let ei ∈ Rd be the ith standard unit vector
in Rd . The three most basic constructions of polytopes with P as
their foundation are the pyramid, prism and bipyramid over P .

Pyramid: This is the convex hull of P and any point outside its affine
hull. To construct one example, embed P in Rd+1 as {(p, 0) : p ∈ P }.
Then pyr(P ) := conv(P, ed+1 ). The much visited convex polytope,
the Egyptian pyramid, is an example of pyr(C2 ). The d-simplex ∆d
equals pyr(∆d−1 ) = pyr(pyr(∆d−2 )) = · · · = pyrd ({0}).
0
The product of the polytopes P ⊂ Rd and P 0 ⊂ Rd is:
0
P × P 0 := {(p, p0 ) ∈ Rd+d : p ∈ P, p0 ∈ P 0 }.
The new set P × P 0 is again a polytope.

Prism: The prism over P , denoted as prism(P ), is the product of P


with a line segment such as the simplex ∆1 . What we usually call
a prism is the prism over a triangle. Just like a d-simplex can be
obtained by taking d successive pyramids over a point, a d-cube can
be constructed by taking d successive prisms over a point.

Bipyramid: This is the convex hull of P and any line segment that
pierces the interior of P at precisely one point. To obtain an example,
assume that the origin in Rd is in the interior of P and embed P
in Rd+1 as for the pyramid. Let I := [−ed+1 , ed+1 ] ⊂ Rd+1 . Then
14 2. Convex Polytopes: Definitions and Examples

conv(P, I) is an example of bipyr(P ). Note that Cd∆ = bipyr(Cd−1



)=
d
· · · = bipyr ({0}).
Exercise 2.25. Let P = conv({v1 , . . . , vt }). Argue that for each
of the above constructions it suffices to consider just v1 , . . . , vt . For
example, argue that pyr(P ) = conv({v1 , . . . , vt , ed+1 }).

Minkowski Sum: Suppose d0 ≤ d and that P 0 is a d0 -dimensional


polytope in Rd . The Minkowski sum of P and P 0 is defined to be
P + P 0 := {p + p0 : p ∈ P, p0 ∈ P 0 }. This is again a polytope in Rd .
Exercise 2.26. Let L = [(0, 0), (1, 1)] ⊂ R2 , C2 the square in R2
as before, and ∆2 defined as conv{(0, 0), (1, 0), (0, 1)}. Confirm that
C2 = [(0, 0), (1, 0)] + [(0, 0), (0, 1)]. Draw C2 + ∆2 . Next draw the
Minkowski sums ∆2 + L and C2 + L. You should get a 5-gon and 6-
gon here. Argue that if n ≥ 3 is odd, then an n-gon can be constructed
as the Minkowski sum of a triangle and a collection of lines. If n ≥ 4
is even, show that an n-gon can be constructed as the Minkowski sum
of a collection of lines.

Minkowski sums of finitely many line segments are called zono-


topes. Note that unlike prisms, pyramids and bipyramids, Minkowski
sums of polytopes depend on the embedding of the summands.
There are many other basic constructions for building new poly-
topes from old. We will see some of them in the forthcoming chapters.
For others we refer the interested reader to [Grü03] and [Zie95].
Chapter 3

Faces of Polytopes

In this chapter we continue with the basics of polytope theory. These


facts can be found in books such as [Grü03] and [Zie95]. A short
summary of polytope basics can be found in [HRGZ97].
Given any vector c ∈ Rd , we obtain a linear function φc : Rd → R
such that x 7→ c · x where c · x is the dot product of c and x. In
optimization, one is often interested in the max (or min) value of this
function over a specified polytope P = {x ∈ Rd : Ax ≤ b} ⊂ Rd ,
leading to the linear program:

(3.1) max {c · x : x ∈ P } = max {c · x : Ax ≤ b, x ∈ Rd }.

If c = 0, then the max value is simply 0. Else, we can solve the


above linear program geometrically as follows. Take the hyperplane
{x ∈ Rd : c · x = β} for some value of β and then move it, in a
perpendicular direction so that the translated version is parallel to
the original, across P in the direction in which β increases. At a
given position of this moving hyperplane (say with right hand side
value β 0 ), all the points x ∈ Rd that lie on the hyperplane have
φc (x) = c · x = β 0 . Thus geometrically, the optimal (in this case,
max) value of c · x over P is achieved by all points in P hit by the
hyperplane immediately before the hyperplane goes past P . These
points are the optima of the above linear program. We would like
to understand this set.

15
16 3. Faces of Polytopes

(0,1) (1,1)
4 3

1 2
(0,0) (1,0)
Figure 1. The unit square C2 .

Example 3.1. Take P = C2 with its corners labeled as in Figure 1.


Note that the linear functional φ(2,1) (x1 , x2 ) = 2x1 + x2 is maximized
at the corner (1, 1) of the square and nowhere else. See Figure 2 (a).
How much can we swing c on either side of (2, 1) keeping its base
fixed and still have c1 x1 + c2 x2 be optimized at (1, 1)? Note that
we can go right as far as (1, 0) and left as far as (0, 1) and still have
(1, 1) be the optimum of the linear program (3.1). The functional
φ(1,0) (x) = x1 is in fact maximized by the whole right side of C2 or
in other words by the edge labeled 23. When we swing c slightly past
(1, 0) to the right, we see that the unique optimum now is the corner
(1, 0) labeled 2. Going all the way around with c, we see that the
optima of (3.1) move around the boundary of C2 jumping from one
vertex to a neighboring one at certain critical values of c that depend
on the shape of C2 . In fact all of R2 breaks up as in Figure 2 (d)
depending on the optima of (3.1) over C2 .

For c ∈ Rd , let mc (P ) ∈ R be the max value of the linear func-


tional φc (x) over P . The number mc (P ) is called the optimal value
of the linear program (3.1).

Definition 3.2. For c ∈ Rd \{0}, the hyperplane Hc (P ) := {x ∈


Rd : c · x = mc (P )} is called a supporting hyperplane of P , and
for each m ≥ mc (P ), the inequality c · x ≤ m is said to be valid for
P since all x ∈ P satisfy this inequality.

Example 3.3. The lines H(2,1) (C2 ) = {(x1 , x2 ) : 2x1 + x2 = 3} and


H(1,0) (C2 ) = {(x1 , x2 ) : x1 = 1} are supporting hyperplanes of C2 .
3. Faces of Polytopes 17

(2,1)
4 3 4 3
(a) (b) (1,0)
1 2 1 2

4 3
(c) (1,0) (d)
1 2

Figure 2. Maximizing linear functionals over C2 .

See Figures 2 (a) and (b). The inequality x1 ≤ 2 is valid for C2 but
does not provide a supporting hyperplane for C2 .
Definition 3.4. The intersection of a polytope P ⊂ Rd with a sup-
porting hyperplane of P is called a face of P . More precisely, the face
of P in direction c 6= 0 is the intersection facec (P ) := Hc (P ) ∩ P .
These are the non-trivial faces of P .
When c = 0, H0 (P ) = {x ∈ Rd : 0x1 + · · · + 0xd = 0} = Rd and
face0 (P ) = P ∩ H0 (P ) = P . Note that H0 (P ) is not a hyperplane
in Rd . The empty set is always considered to be a face of P as well.
The faces P and ∅ are the trivial faces of P .

Writing P in its H-representation P = {x ∈ Rd : Ax ≤ b}, we


see that
facec (P ) = {x ∈ Rd : Ax ≤ b, c · x = mc (P )}
= {x ∈ Rd : Ax ≤ b, c · x ≤ mc (P ), −c · x ≤ −mc (P )}
is again a polytope.
18 3. Faces of Polytopes

Definition 3.5. (1) The dimension of a face of P is the di-


mension of the face as a polytope. The k-dimensional faces
of P are called its k-faces. The 0-faces are called vertices,
the 1-faces are called edges and the (dim(P ) − 1)-faces are
called facets. The empty face of P is defined to have di-
mension −1.
(2) The number of k-faces of P is denoted as fk (P ) and is known
as the k-th face number (k-th f -number) of P .
(3) The face vector (f -vector) of P is the vector
f (P ) := (f0 (P ), f1 (P ), . . . , fdim(P ) (P )).
Example 3.6. The vertices of C2 are (0, 0), (1, 0), (1, 1) and (0, 1).
The polytope conv({(0, 0), (1, 0)}) is an edge of C2 . This edge is also
a facet of C2 . The unique 2-face of C2 is C2 itself. The face vector of
C2 is f (C2 ) = (4, 4, 1).

Note that the points in facec (P ) are precisely the optimal solu-
tions to the linear program (3.1). Hence we call facec (P ) the optimal
face of P in direction c.
Recall that the H-representation of facec (P ) showed that it is a
polytope. By the main theorem of polytopes, we then know that it
also has a V-representation. In fact, facec (P ) is the convex hull of the
vertices of P contained in it. Check this for C2 . This means that if we
label the vertices of P by 1, 2, . . . then each face of P can be labeled
by the set of indices of the vertices of P whose convex hull is this face.
For example, in Figure 1, the face(1,0) (C2 ) can be labeled by the set
{2, 3} or more compactly as 23. Since every face of a polytope P is
the convex hull of a subset of the vertices of P , P has only finitely
many faces in each dimension and hence fk (P ) is a finite number for
each 0 ≤ k ≤ dim(P ). Let us denote by F(P ) the set of all faces of P .
We can now partially order F(P ) by the usual containment relation,
⊆, on sets, creating a partially ordered set (poset) (F(P ), ⊆).
Definition 3.7. The partially ordered set (F(P ), ⊆) is called the
face lattice of P .

Note that ∅ is the unique minimal element of (F(P ), ⊆) while P


is the unique maximal element. Lattices are posets with the property
3. Faces of Polytopes 19

{1, 2, 3, 4}

{1, 2} {2, 3} {3, 4} {1, 4}

{1} {2} {3} {4}

Figure 3. Face lattice of C2 .

that every pair of elements has a unique greatest lower bound and a
unique lowest upper bound in the partial order. In particular, lattices
have a unique minimal element and a unique maximal element. The
face poset of a polytope is always a lattice. In Chapter 4 (see Figure 4)
we will see posets that are not lattices.

Example 3.8. The face lattice of C2 is shown in Figure 3. Such


pictures of partially ordered sets are called Hasse diagrams.

By the combinatorics of a polytope one usually means the infor-


mation about the polytope that is carried by its face lattice without
concerning oneself with the actual geometric embedding of the poly-
tope. For instance note that C2 has the same face lattice as any square
in R2 or for that matter any square in Rd . In fact, it has the same
face lattice as any (planar) quadrilateral in Rd . Thus combinatorially
all quadrilaterals are equivalent to C2 although they may vary wildly
in actual embedding into some Rd . The face lattice is an abstrac-
tion of the polytope and by its nature forgets a lot of information
about the polytope it came from. However, it does retain essential
“combinatorial” information such as how many vertices the polytope
had, which vertices define which face and which faces are contained
in which other faces. This is called the face incidence information.
20 3. Faces of Polytopes

Definition 3.9. Two polytopes P and Q are combinatorially iso-


morphic or combinatorially equivalent if F(P ) and F(Q) are
isomorphic as partially ordered sets.

We haven’t defined what it means to be isomorphic as partially


ordered sets. We can just take that to mean that both F(P ) and
F(Q) have the same Hasse diagram up to relabeling of the vertices.
Exercise 3.10. Draw the face lattices of the 3-cube C3 and the oc-
tahedron C3∆ . Do you see a relationship between the two?
Exercise 3.11. Let t ∈ N. Recall that the power set of [t] =
{1, 2, . . . , t}, denoted as 2[t] , is the set of all subsets of [t]. This power
set is partially ordered by ⊆.
(1) Is there a polytope whose face lattice is (2[t] , ⊆)?
(2) Does every partially ordered subset of (2[t] , ⊆) appear as the face
lattice of a polytope? If not, do you see conditions that are necessary
for a subset of 2[t] to be the face lattice of a polytope?
Definition 3.12. A d-dimensional polytope P is simple if every
vertex of P is incident to d edges of P or equivalently, if every vertex
of P lies on precisely d facets of P .
Definition 3.13. A d-dimensional polytope P is simplicial if for
0 ≤ k ≤ dim(P ) − 1, each k-face of P is combinatorially isomorphic
to a k-simplex.

Note that a simplicial polytope does not have to be a simplex since


the condition on k-faces is only required to hold for k ≤ dim(P ) − 1.
Example 3.14. The cubes Cd are simple polytopes while the cross-
polytopes Cd∆ are simplicial polytopes.
Exercise 3.15. Can you tell from the face lattice of a polytope
whether the polytope is simple or simplicial?
Exercise 3.16. (1) Show that a polygon (a 2-polytope) is both simple
and simplicial.
(2) Construct a polytope that is neither simple nor simplicial.
Definition 3.17. If P ⊂ Rd is a d-polytope with the origin in its
interior, then the polar of P is the d-polytope
P ∆ := {y ∈ Rd : y · x ≤ 1 for all x ∈ P }.
3. Faces of Polytopes 21

Check that cubes are polar to cross polytopes. If you use the
definition of Cd∆ that was given in the last chapter, what exactly is
the H-representation of the cube that is polar to Cd∆ ?
There are many nice relationships between a polytope P and its
polar P ∆ . We list some of them below.
(1) If P = conv({v1 , . . . , vt }) ⊂ Rd , then P ∆ = {x ∈ Rd :
vi · x ≤ 1, for all i = 1, . . . , t}.
(2) (P ∆ )∆ = P .
(3) The polars of simple polytopes are simplicial and the polars
of simplicial polytopes are simple.
(4) The face lattices F(P ) and F(P ∆ ) are anti-isomorphic. This
means that there is a bijection between the k-faces of P
and the (d − k − 1)-faces of P ∆ , where we assume that
dim(P ) = dim(P ∆ ) = d, that also “inverts” the inclusions.
Informally, the Hasse diagram of (F(P ), ⊆) can be gotten by
rotating the Hasse diagram of (F(P ∆ ), ⊆) by 180 degrees.
In the rest of this chapter, we focus on a special class of polytopes
called cyclic polytopes. The cyclic polytope Cd (n) is a simplicial d-
polytope with n vertices. The most well known property of the cyclic
polytope is that it provides an upper bound on face numbers of sim-
plicial polytopes with the same dimension and number of vertices.
Theorem 3.18. (The Upper Bound Theorem)
Let P be any d-dimensional simplicial polytope with n vertices. Then
fi (P ) ≤ fi (Cd (n)) for every 0 ≤ i ≤ d − 1.

The construction of Cd (n) is possible using techniques from linear


algebra and its most satisfying combinatorial property is a simple
description of its facets. We follow the treatment in [Zie95].

The moment curve in Rd is defined by the function φ : R → Rd , t 7→


(t, t2 , . . . , td ). If we fix d, n and t1 < t2 < . . . < tn ∈ R we can define
the d-dimensional cyclic polytope with n vertices as
Cd (n) := conv({φ(t1 ), φ(t2 ), . . . , φ(tn )}).
We say the cyclic polytope since any such choice of ti ’s will yield the
same face lattice. We will show that:
22 3. Faces of Polytopes

(1) Cd (n) is a simplicial polytope.


(2) The facets of Cd (n) satisfy Gale’s evenness condition: S =
{i1 , i2 , . . . , id } ⊂ [n] indexes a facet of Cd (n) if and only if
for all i, j ∈ / S and i < j,
2 divides |{k : k ∈ S, i < k < j}|.
(3) Every I ⊂ [n] with |I| ≤ b d2 c indexes a face of Cd (n). More
commonly, Cd (n) is said to be b d2 c-neighborly.
Definition 3.19. A polytope P is k-neighborly if any set of k or
less vertices of P is the vertex set of a face of P .
Example 3.20. Using PORTA [CL] we can compute the facets of the
cyclic polytope C4 (7) in dimension four with seven vertices. The
input file consists of the seven vertices listed under CONV SECTION, as
shown below.
DIM = 4

CONV_SECTION
1 1 1 1
2 4 8 16
3 9 27 81
4 16 64 256
5 25 125 625
6 36 216 1296
7 49 343 2401
END
The output file has two parts. The facet inequalities of C4 (7) are
listed at the top under INEQUALITIES SECTION. After that, we get
the strong validity table of C4 (7) which is a table whose columns
index the seven vertices and whose rows index the facets of C4 (7).
The stars in a row indicate which vertices of C4 (7) lie on the facet
indexing that row.
DIM = 4

VALID
7 49 343 2401
3. Faces of Polytopes 23

INEQUALITIES_SECTION
( 1) -317x1+125x2-19x3+x4 <= -210
( 2) -223x1+ 99x2-17x3+x4 <= -140
( 3) -145x1+ 75x2-15x3+x4 <= -84
( 4) - 83x1+ 53x2-13x3+x4 <= -42
( 5) + 50x1- 35x2+10x3-x4 <= 24
( 6) + 78x1- 49x2+12x3-x4 <= 40
( 7) +112x1- 65x2+14x3-x4 <= 60
( 8) +152x1- 83x2+16x3-x4 <= 84
( 9) +154x1- 71x2+14x3-x4 <= 120
( 10) +216x1- 91x2+16x3-x4 <= 180
( 11) +288x1-113x2+18x3-x4 <= 252
( 12) +342x1-119x2+18x3-x4 <= 360
( 13) +450x1-145x2+20x3-x4 <= 504
( 14) +638x1-179x2+22x3-x4 <= 840
END

strong validity table :


\ P | |
\ O | |
I \ I | |
N \ N | 1 6 | #
E \ T | |
Q \ S | |
S \ | |
\ | |
------------------------
1 | *...* ** : 4
2 | *..** .* : 4
3 | *.**. .* : 4
4 | ***.. .* : 4
5 | ****. .. : 4
6 | **.** .. : 4
7 | **..* *. : 4
8 | **... ** : 4
9 | .**** .. : 4
24 3. Faces of Polytopes

10 | .**.* *. : 4
11 | .**.. ** : 4
12 | ..*** *. : 4
13 | ..**. ** : 4
14 | ...** ** : 4
..............
# | 88888 88
There are 14 facets in all, the first of which contains the vertices
1, 5, 6, 7. Verify that properties (1), (2) and (3) are satisfied.
Exercise 3.21. Let r0 , r1 , · · · , rd ∈ R.
a. Prove Vandermonde’s identity:
 
1 1 ··· 1 Y
det = (rj − ri ).
φ(r0 ) φ(r1 ) · · · φ(rd )
0≤i<j≤d

b. Deduce that no d+1 points on the moment curve are affinely


dependent.
c. Conclude that Cd (n) must be a simplicial polytope.
Exercise 3.22. Let S = {i1 , i2 , . . . , id } ⊂ [n].
a. Write down the equation HS (x) = m that defines the hy-
perplane spanned by φ(ti1 ), φ(ti2 ), . . . , φ(tid ).
b. Suppose S indexes a facet of Cd (n). What relationship can
you find between the hyperplane HS (x) = m and {φ(tj ) :
j∈/ S}?
c. If S indexes a facet, draw a picture of how HS (x) = m
intersects the moment curve φ(t). Begin by drawing this for
d = 2.
Exercise 3.23. Deduce that Cd (n) is b d2 c-neighborly. Hint: Pick
any I ⊂ [n] with |I| = b d2 c. Using Gale’s evenness condition can you
find a facet that contains I?
Chapter 4

Schlegel Diagrams

We usually draw a polytope on paper by drawing its vertices and


edges. For instance, the square C2 was drawn this way in the last
chapter. This is called the 1-skeleton of the polytope (all faces of
dimension at most one). For the combinatorics of the polytope it is
enough to think of this 1-skeleton as an abstract graph G = (V, E)
where V is the vertex set of the graph G and E is the edge set of G.
Even though a graph may have many different drawings, its combi-
natorics is fixed and thus it carries important information.

Definition 4.1. The graph of a polytope P is the abstract graph


G(P ) = (V (P ), E(P )), where V (P ) = {v1 , . . . , vt } is a set of labels
for the vertices of P : vi is a label for the vertex vi of P . The elements
of E(P ) are the sets {vi , vj } where conv({vi , vj }) is an edge of P .

Example 4.2. Figure 1 shows two different drawings of the graph of


a 3-cube.
5 6 4 3

4 3 5 6

8 7
8 7

1 2 1 2

Figure 1. Two drawings of the graph of a 3-cube.

25
26 4. Schlegel Diagrams

Definition 4.3. A graph G = (V, E) is said to be planar if it can


be drawn in the plane in such a way that no two edges meet except
possibly at their end points.

Clearly, the graph of every two-dimensional polytope is planar.


Figure 1 shows that the graph of a 3-cube is planar. How about
other three-dimensional polytopes? The following famous theorem
from about 100 years ago answers this question.
Theorem 4.4. Steinitz Theorem. G is the graph of a three-
dimensional polytope if and only if it is simple, planar and 3-connected.
Definition 4.5. (1) A graph G is simple if it has no loops
and no multiple edges. A loop is an edge of the form {v, v},
where v is the label of a vertex of the graph.
(2) A simple graph G is k-connected if it remains connected
after the removal of any k−1 or fewer vertices. (All the edges
incident to these vertices are also removed). Equivalently,
a graph G is k-connected if there are k edge disjoint paths
between any two vertices of G.
Exercise 4.6. Draw a planar embedding of the graph of an octahe-
dron. How about an icosahedron or a dodecahedron?

We next state three well known facts and conjectures about graphs
of polytopes that the reader might find interesting.
Theorem 4.7. (Balinski) If P is a d-dimensional polytope then G(P )
is d-connected.

The following is a weaker result.


Exercise 4.8. Let P be a d-dimensional polytope. Argue that every
vertex in G(P ) has degree at least d. Give an example to show that
this is not strong enough to show d-connectedness of G(P ).
Theorem 4.9. (Blind and Mani) If P and Q are simple polytopes
with their graphs G(P ) and G(Q) being (combinatorially) isomorphic
then P and Q are combinatorially isomorphic as polytopes.
Conjecture 4.10. Hirsch conjecture. Let P be a d-dimensional
polytope with n facets. If u and v are any two vertices in G(P ) then
4. Schlegel Diagrams 27

there exists a path in G(P ) going from u to v that contains at most


n − d edges.

Exercise 4.11. Verify the Hirsch conjecture for the 3-cube, 4-cube
and any other polytope that takes your fancy.

The Steinitz theorem is a very satisfactory understanding of the


graphs of three-dimensional polytopes. In fact, for every planar 3-
connected simple graph G there is only one 3-polytope P (up to com-
binatorial isomorphism) with G(P ) = G. Moreover, this P can be
embedded in R3 with integer coordinates. This may seem somewhat
trivial right now but in Chapter 6 we will see that it is not always pos-
sible to find integer coordinates for the vertices of a polytope whose
combinatorics (face lattice) has been specified.
Can we extend our graph technique to visualize four-dimensional
polytopes? To do this, let’s rethink how we drew the planar graph
of the 3-cube in Figure 1. What we did can be expressed roughly as
follows. Imagine you are an ant looking into a hollow 3-cube through
a tiny pinhole in the center of one square facet of the cube. This facet
is your 3600 horizon and we draw it first. In the figure, this is the
facet labeled 1234. As you look into the cube, you see the opposite
square facet to 1234 as a small square in the distance. Drawing what
we see, we put this small facet 5678 in the center of the square 1234.
Now you see the edges that connect the front facet to the back facet as
the four segments 45,36,18 and 27. These edges are actually parallel
but due to their large lengths relative to you, you see them as parts
of four lines that will eventually meet at a point at infinity. The
resulting figure is a drawing of the graph of the polytope through a
facet of the polytope. Yet another way of thinking about this is that
you can imagine that the 3-cube is made of rubber. Puncture one
facet in the middle and then stretching this hole wide open, flatten
the cube onto your paper. The edges of this flattened polytope will
provide the graph drawing.
Can we do this for 4-polytopes as well? We want to first draw
one facet (which is now a three-dimensional polytope) and then draw
the rest of the polytope inside this facet. Let’s try it on the following
4-simplex.
28 4. Schlegel Diagrams

Example 4.12. Consider the 4-simplex

P = conv({(0, 0, 0, 0), (1, 0, 0, 0), (0, 1, 0, 0), (0, 0, 1, 0), (0, 0, 0, 1)}).

Its H-representation is

x1 ≥ 0
 

 



 x2 ≥ 0 


P = (x1 , x2 , x3 , x4 ) ∈ R4 : x3 ≥ 0 .
x4 ≥ 0

 


 

 
x1 + x 2 + x 3 + x 4 ≤ 1
The five inequalities given above all define facets of P . By plugging
in the vertices of P into the five inequalities we can see which vertices
lie on which facets. This gives the following facet-vertex incidence
table for P . This computation was done using PORTA although we
could have also done it by hand.
strong validity table :
\ P | |
\ O | |
I \ I | |
N \ N | 1 | #
E \ T | |
Q \ S | |
S \ | |
\ | |
---------------------
1 | *.*** : 4
2 | **.** : 4
3 | ***.* : 4
4 | ****. : 4
5 | .**** : 4
...........
# | 44444
We see immediately that each facet is a 3-simplex (since it is the
convex hull of four points all of which are vertices). This implies
that any two vertices form an edge of P since every pair of vertices
appear as vertices of some facet which is a simplex, and also every
4. Schlegel Diagrams 29

three vertices of P form a triangular 2-face of P as well. Can you see


all this in the above table?
Let’s start by first drawing the facet 2345 (in solid lines) and
then the rest of the polytope inside this facet (with dashed lines). The
vertex 1 is placed inside the tetrahedron 2345 and then we draw all the
tetrahedral facets of the simplex involving 1 with dashed lines. This
gives Figure 2. Check that there are four three-dimensional simplices
inside the outer tetrahedron which are the perspective drawings of
the four facets of the 4-simplex that we can see through the facet
2345.
5

2 4

Figure 2. A 4-simplex.

Exercise 4.13. (1) Can the graph of a 4-polytope be planar?


(2) Can you draw the 4-cube like we drew the 4-simplex?

Diagrams such as the above are known as Schlegel diagrams and


are extremely useful for visualizing 4-polytopes. We define them for-
mally now. See [Zie95, Lecture 5] for many pictures and much of the
material below.
Definition 4.14. A polyhedral complex C is a finite collection of
polyhedra in Rd such that
(1) the empty polyhedron is in C,
30 4. Schlegel Diagrams

(2) if P ∈ C then all faces of P are also in C,


(3) if P and Q are in C then P ∩ Q is a face of both P and Q.
Example 4.15. In Figure 3, the first is a polyhedral complex and
the second is not. Why?

Figure 3. A polyhedral complex : example and non-example.

The dimension of a polyhedral complex C is the maximum dimen-


S
sion of a polyhedron in C. The support of C is the set |C| = {P :
P ∈ C}. Just like we drew face lattices of polytopes, a polyhedral
complex C has a face poset which is the set of all the polyhedra in
C ordered by ⊆. The face poset of the polyhedral complex on the left
in Figure 3 is shown in Figure 4. Note that this poset is not a lattice.

Figure 4. Face poset of the polyhedral complex in Figure 3.

Exercise 4.16. Can you assign face labels to the poset in Figure 4 to
verify that it is the face poset of the polyhedral complex in Figure 3?
4. Schlegel Diagrams 31

We are interested in polyhedral complexes since a polytope P


gives rise to some natural polyhedral complexes which play an im-
portant role in the study of polytopes.

Definition 4.17. Let P be a polytope.


(1) The complex C(P ) of the polytope P is the polyhedral
complex of all faces of P . The face poset of C(P ) is the face
lattice of P .
(2) The boundary complex ∂(C(P )) is the polyhedral com-
plex of all the proper faces of P along with the empty face.
(3) A polytopal subdivision of P is a polyhedral complex C
with support P in which all the polyhedra are polytopes. If
all the maximal polytopes in the subdivision are simplices,
the subdivision is called a triangulation of P .

For instance Figure 5 shows two polytopal subdivisions of a pen-


tagon. The second subdivision is a triangulation. Notice that new
vertices might be introduced when we subdivide a polytope.

Figure 5. Polytopal subdivisions of a pentagon.

Suppose F is a facet of the full dimensional polytope P = {x ∈


Rd : Ax ≤ b} and aff(F ) := {x ∈ Rd : a · x = b} is the affine hull
of F . Note that aff(F ) is a hyperplane in Rd . Assume that for each
facet G of P , P is contained in the halfspace aff(G)− . We say that a
point y is beyond the facet F if y ∈ aff(F )+ , y 6∈ P but y is in the
interior of the halfspace aff(G)− for all other facets G of P .

Definition 4.18. [Zie95, Definition 5.5] Let P be a d-polytope in


Rd and let F be a facet of P defined by the inequality a · x ≤ b.
Then aff(F ) = {x ∈ Rd : a · x = b} is the hyperplane spanned by F .
Choose a point yF beyond F . For x ∈ P define the function p(x) as
32 4. Schlegel Diagrams

follows (see Figure 6):


b − ayF
p(x) := yF + (x − yF ).
ax − ayF
The Schlegel diagram of P based at the facet F , denoted as C(P, F ),
is the image under p of all proper faces of P other than F .

x P

aff(F ) p(x)

yF

Figure 6. Definition of p(x).

Proposition 4.19. [Zie95, Proposition 5.6] The Schlegel diagram of


P based at the facet F is a polytopal subdivision of F that is combi-
natorially equivalent to the complex C(∂(P )\{F }) of all proper faces
of P other than F .

Proof. For a face G of P different from F , the set


CG := {yF + λ(x − yF ) : x ∈ G, λ ≥ 0}
is a cone with vertex yF . See Figure 7. If G is a proper face of P , then
it is contained in the hyperplane aff(G) = {x ∈ Rd : a0 · x = b0 } that
does not contain yF . Thus the face lattice of G is isomorphic to the
face lattice of CG . The intersection of CG with aff(F ) also has face
lattice isomorphic to CG and hence to G. However this intersection
is p(G). Thus the face lattice of G is isomorphic to the face lattice of
p(G). 

Example 4.20. Figure 1 (b) is a Schlegel diagram of a 3-cube while


Figure 2 is the Schlegel diagram of a 4-simplex.

If the Schlegel diagram of a polytope P based at the facet F is


given as a polytopal complex D, then the face lattice of P is the face
4. Schlegel Diagrams 33
G

aff(F )

yF

Figure 7. Definition of CG .

poset of D along with the faces F and P added in. How does F sit in
this poset? For a face G in D, G ⊆ F if and only if G is a face of F .
The Schlegel diagram thus completely encodes the combinatorics of
an d-dimensional polytope into a (d − 1)-dimensional complex. This
is especially useful for d ≤ 4.

Exercise 4.21. What polytope has the Schlegel diagram shown in


Figure 8? Draw the face lattice of this polytope. Does this polytope
have a different Schlegel diagram if you look through a different facet?

Figure 8. Figure for Exercise 4.21.

Now comes an unexpected subtlety. The polytopal complex shown


in Figure 9 is not the Schlegel diagram of any 3-polytope! If you look
at the diagram closely, you might convince yourself that as a graph, it
34 4. Schlegel Diagrams

Figure 9. A non-Schlegel diagram.

is the graph of an octahedron. It even looks like the Schlegel diagram


of the octahedron seen through a triangular facet.
However this figure lacks an important property of Schlegel dia-
grams that we now describe.
Definition 4.22. [Zie95, Definition 5.3] A subdivision C of a poly-
tope Q ⊆ Rd is regular if it arises from a polytope P ⊆ Rd+1 in the
following way:
(1) The polytope Q is the image π(P ) = Q of the polytope P
via the projection
 
d+1 d x
π : R →R , 7→ x,
xd+1
which deletes the last coordinate.
(2) The complex C is the projection under π of all the lower
faces of P . We call F a lower face of P if for every x ∈ F
and a λ > 0, x − λed+1 6∈ P . Informally, they are the faces
that you can see from Q if you “look up” at P from Q. See
Figure 10.
Proposition 4.23. [Zie95, Prop. 5.9] If D is a Schlegel diagram
then D is a regular subdivision of |D|, the support of D.
Exercise 4.24. Can you see why the polytopal complex shown in
Figure 9 is not a regular subdivision? You have to argue that the
picture you see cannot be the projection of the lower faces of any
3-polytope.
4. Schlegel Diagrams 35

Figure 10. Lower faces of P (which are thickened) induce a


subdivision of Q.

Exercise 4.25. Is every regular subdivision of a polytope, the Schlegel


diagram of some polytope?

Thus we see that we have to be a bit careful when dealing with


Schlegel diagrams. Not everything that looks like a Schlegel diagram
is indeed a Schlegel diagram.
Exercise 4.26. Draw the Schlegel diagrams of the cyclic polytopes
C4 (6) and C4 (7).
Chapter 5

Gale Diagrams

In the last chapter we saw techniques for visualizing four-dimensional


polytopes via their Schlegel diagrams. In this chapter, we will see
that we can actually visualize even higher dimensional polytopes as
long as they do not have too many vertices. We do this via a tool
called the Gale diagram of the polytope.
Consider n points v1 , . . . , vn in Rd−1 whose affine hull has di-
mension d − 1, and the matrix
 
1 1 ··· 1
A := ∈ Rd×n .
v1 v2 · · · v n

A basic fact of affine linear algebra is that the vectors v1 , . . . , vn are


affinely independent (see below) if and only if the vectors

(1, v1 ), . . . , (1, vn )

are linearly independent. If the dimension of aff(v1 , . . . , vn ) is d − 1,


then there are d affinely independent vectors in this collection, which
in turn implies that the rank of A is d. Hence the dimension of the
kernel of A is n − d. Recall that the kernel of A is the linear subspace

kerR (A) := {x ∈ Rn : Ax = 0}.


Pn
Note that x ∈ kerR (A) if and only if (1) i=1 vi xi = 0 and (2)
Pn
i=1 x i = 0.

37
38 5. Gale Diagrams

Definition 5.1. (1) Any vector x with properties (1) and (2)
is called an affine dependence relation on v1 , . . . , vn .
(2) If x satisfies only (1) then it would be a linear dependence
relation on v1 , . . . , vn .
(3) If x = 0 is the only solution to (1) and (2), then v1 , . . . , vn
are said to be affinely independent.

Let B1 , . . . , Bn−d ∈ Rn be a basis for the vector space kerR (A).


If we organize these vectors as the columns of an n × (n − d) matrix

B := B1 B2 · · · Bn−d ,
we see that AB = 0.
Definition 5.2. Let B = {b1 , . . . , bn } ⊂ Rn−d be the n ordered
rows of B. Then B is called a Gale transform of {v1 , . . . , vn }. The
associated Gale diagram of {v1 , . . . , vn } is the vector configuration
B drawn in Rn−d .

Later, we’ll see a more general definition of Gale diagrams. Since


the columns of B can be any basis of kerR (A), Gale transforms are not
unique. However all choices of B differ by multiplication by a non-
singular matrix and we will be happy to choose one basis of kerR (A)
and call the resulting B, the Gale transform of {v1 , . . . , vn }.
Example 5.3. Let {vi } be the vertices of the triangular prism shown
in Figure 1. Then
1 1 1 1 1 1
 
 0 1 0 0 1 0 
A=  0 0 1 0 0 1 .

0 0 0 1 1 1
Computing a basis for the kernel of A, we get
 
t 0 1 −1 0 −1 1
B =
1 0 −1 −1 0 1
where B t is the transpose of B. The Gale transform B is the vector
configuration consisting of the columns of B t (or the rows of B). In
our example, B = {b1 = (0, 1), b2 = (1, 0), b3 = (−1, −1), b4 =
(0, −1), b5 = (−1, 0), b6 = (1, 1)}. The Gale diagram is shown in
Figure 2.
5. Gale Diagrams 39

(0, 1, 1)
6
(0, 0, 1)
4
(1, 0, 1)
5

(0, 1, 0)
3
(0, 0, 0)
1

2 (1, 0, 0)

Figure 1. Triangular prism.

b1
b6

b5 b2

b3
b4

Figure 2. Gale diagram of the vertices of the triangular prism


in Figure 1.

The labeling is very important in the construction of a Gale trans-


form. We label column i of B t as bi .
The main goal of this chapter will be to understand how to read
off the face lattice of the (d − 1)-polytope P = conv({v1 , . . . , vn })
from the Gale diagram of {v1 , . . . , vn }. If {vj : j ∈ J} are all the
vertices on a face of P for some J ⊆ [n], it is convenient to simply
label this face by J. Here is a very important characterization of
faces.
Lemma 5.4. Let P = conv({v1 , . . . , vn }). Then J ⊆ [n] is a face of
P if and only if
conv({vj : j ∈ [n]\J}) ∩ aff({vj : j ∈ J}) = ∅.
40 5. Gale Diagrams

Let us illustrate this condition on an example first. In Figure 3


(a), note that 15 is a face of the pentagon and that conv({v2 , v3 , v4 })
does not intersect the affine hull of the face 15. On the other hand,
14 is not a face of the pentagon and indeed conv({v2 , v3 , v5 }) does
intersect the affine hull of the non-face 14. See Figure 3 (b).

1
1

2 2

5 5

3 4 3
4
(a) (b)

Figure 3. Condition in Lemma 5.4.

Proof. We may assume that P is a full dimensional polytope. If J


is a face of P then by definition of a face, both J and aff(J) lie on a
supporting hyperplane H of P . Choose a supporting hyperplane H
that contains J but does not contain any higher dimensional face of P .
One way to do this would be to let the normal vector of H be the sum
of the normal vectors of the affine spans of the facets containing J. We
may assume without loss of generality that P lies in the half space H − .
Since no vj , j 6∈ J lies on the face conv({vj : j ∈ J}) of P , conv({vj :
j ∈ [n]\J}) lies in the interior of H − which proves one direction of the
5. Gale Diagrams 41

lemma. Conversely, if conv({vj : j ∈ [n]\J})∩aff({vj : j ∈ J}) = ∅,


then P lies in one halfspace defined by the hyperplane H obtained by
extending aff({vj : j ∈ J}) which is thus a supporting hyperplane of
P . This shows that J is a face of P . 

You might wonder why the lemma was not stated in the seemingly
stronger form: J ⊆ [n] is a face of P if and only if conv({vj : j ∈
[n]\J}) ∩ conv({vj : j ∈ J}) = ∅. The above form of the lemma is
what is needed to prove the main theorem below.
Definition 5.5. Call [n]\J a co-face of P if J is a face of P .

Note that a co-face is not the same as a non-face. In the triangular


prism in Figure 1, 123 is both a face and a co-face. (The labeling of
the vertices of the prism was fixed by how we ordered them to create
the matrix A.)
In order to understand our main theorem, we need to define for-
mally what we mean by the interior and relative interior of a poly-
tope. The interior of a polytope in Rd is the set of all points in
the polytope such that we can fit a d-dimensional ball centered at
this point, of infinitesimal (as small as you wish but positive) radius,
entirely inside the polytope. A polytope has an interior if and only if
it is full dimensional. For instance the interior of C2 is the set
int(C2 ) = {(x1 , x2 ) ∈ R2 : 0 < x1 < 1, 0 < x2 < 1}.
The line segment conv({(1, 0), (0, 1)}) ⊂ R2 does not have an interior
since there is no point on this segment such that a 2-dimensional ball
centered at this point will be contained in the line segment. However,
this line segment does have an interior if we think of it as a polytope
in its affine hull, where it is a full dimensional polytope. This is
known as the relative interior of the line segment. In our example,
relint(conv({(1, 0), (0, 1)})) = {(x1 , x2 ) ∈ R2 : x1 + x2 = 1,
x1 > 0, x2 > 0}.
We now come to the main theorem of this chapter. The proof of
this theorem is taken from [Grü03, pp. 88].
Theorem 5.6. Let P = conv({v1 , . . . , vn }), vi ∈ Rd−1 , and B be the
Gale transform of {v1 , . . . , vn }. Then J is a face of P if and only if
either J = [n] or 0 ∈ relint(conv({bk : k 6∈ J})).
42 5. Gale Diagrams

Proof. Note that J = [n] if and only if J is the whole polytope P


which is an improper face of P . So we have to show that J ( [n]
is a face of P if and only if 0 ∈ relint(conv({bk : k 6∈ J})). Let
dim(P ) = d − 1.
If J ( [n] is not a face of P then by Lemma 5.4,
aff({vk : k ∈ J}) ∩ conv({vk : k 6∈ J}) 6= ∅.
P P
Let z be in this intersection. Then z = k∈J pk vk = k6∈J qk vk
with X X
pk = 1, qk = 1, and qk ≥ 0 for all k 6∈ J
k∈J k6∈J
or equivalently,
X X X
rk vk = 0, rk = 0 and rk = 1, rk ≥ 0 for all k 6∈ J
k∈[n] k∈[n] k6∈J

by taking rk = qk when k 6∈ J and rk = −pk when k ∈ J.


The first two conditions imply that r = (r1 , . . . , rn ) lies in kerR (A)
where  
1 1 ··· 1
A := .
v1 v2 · · · v n
Let B be the matrix from which the Gale transform B was taken.
Since the columns of B form a basis for kerR (A), there exists t ∈ Rn−d
such that
r = Bt, or equivalently, rk = bk · t for all k = 1, . . . , n.
Since rk ≥ 0 for all k 6∈ J, we get that rk = bk · t ≥ 0 for all k 6∈ J
which means that all the bk ’s with k 6∈ J lie in the halfspace defined
by t · x ≥ 0 in Rn−d . Also since
P
k6∈J rk = 1, it cannot be that
rk = bk · t = 0 for all k 6∈ J, or in other words, not all the bk ’s with
k 6∈ J lie in the hyperplane defined by t · x = 0. Thus 0 is not in the
relative interior of conv({bk : k 6∈ J}). Reversing all the arguments
you get the other direction of the theorem. 
Example 5.7. Let’s use Theorem 5.6 to read off the face lattice
of the triangular prism from the Gale diagram in Figure 1. First,
note that for each i = 1, . . . , 6, 0 ∈ relint(conv(bk : k 6= i)). This
implies that all the singletons 1, 2, 3, 4, 5, 6 are faces of P , as indeed
they are. Now let’s find the edges of P . These will be all pairs
5. Gale Diagrams 43

ij such that 0 ∈ relint(conv({bk : k 6= i, j})). For instance 14 is


an edge of P since 0 ∈ relint(conv({b2 , b3 , b5 , b6 })). However, 16
is not an edge of P since 0 6∈ relint(conv({b2 , b3 , b4 , b5 })). Can
you find all the other edges? The face 123 is witnessed by the fact
that 0 ∈ relint(conv({b4 , b5 , b6 })), but 245 is not a face since 0 6∈
relint(conv({b1 , b3 , b6 })).
Exercise 5.8. Compute the face lattice of the cyclic polytope in R4
with 7 vertices. The Gale transform consists of the columns of the
matrix  
−1 5 −10 10 −5 1 0
.
−5 24 −45 40 −15 0 1
(Hint: For a simplicial polytope, it suffices to know the facets to
write down the whole face lattice.)

Theorem 5.6 can be used to read off the face lattice of any poly-
tope. But it is most useful when the Gale diagram is in a low dimen-
sional space such as R or R2 . Three-dimensional Gale diagrams are
already quite challenging. However, there is a nice trick to reduce
the dimension of the Gale diagram by one. These Gale diagrams are
known as affine Gale diagrams. See [Zie95] for a formal definition.
We give the idea below.
We can think of a Gale diagram in Rn−d as n vectors that poke out
through a (n−d−1)-sphere. If we look at this sphere from outside, we
only see one hemisphere which we will call the northern hemisphere.
We can mark all the vectors that poke out through this hemisphere
with a dot and label them as before. The rest of the vectors poke out
through the southern hemisphere and we will mark their antipodal
vectors on the northern hemisphere with an open circle and change
labels to the old labels with bars on top. You should always choose
the equator so that no vector pokes out through the equator. This
can always be done since there are only finitely many vectors in the
Gale diagram. Let’s first try this on the Gale diagram from Figure 1.
We first put a circle (1-sphere) around the Gale diagram with the
dotted line chosen to be the equator. See Figure 4. Let’s declare the
right hemisphere to be the northern hemisphere. The Gale vectors
1, 6, 2 intersect this hemisphere. We mark those points with black
dots. The antipodals of the other vectors also intersect the northern
44 5. Gale Diagrams

b1
b6
1 4̄

6 3̄
b5 b2
2 5̄

equator
b3
b4

affine Gale diagram

Figure 4. The affine Gale diagram of the triangular prism.

hemisphere at the same points. We mark those intersections with


open circles and label them 4̄, 3̄, 5̄. On the right we see the affine
Gale diagram, which lives in R. Can we read off the face lattice from
this affine Gale diagram? To do this we need to say what condition on
a collection of black and white dots is equivalent to the origin being
in the relative interior of the Gale vectors with the same indices. For
instance to check whether 1346 is a face of P , we remove the dots
with labels 1, 3̄, 4̄ and 6. This leaves the black dot 2 and the white
dot 5̄ which are at the same position. This means that b2 and b5 are
opposite to each other and 0 is in the relative interior of their convex
hull. Thus 1346 is a face.

Exercise 5.9. What conditions on a collection of black and white


dots in the affine Gale diagram guarantees that the origin is in the
relative interior of the corresponding Gale vectors?

Exercise 5.10. Compute the face lattice of the cyclic polytope in R3


with 7 vertices.
In this case,

1 1 1 1 1 1 1
 
 1 2 3 4 5 6 7 
A=
 1
.
4 9 16 25 36 49 
1 8 27 64 125 216 343
5. Gale Diagrams 45

Using a computer package that does linear algebra, we compute a


basis for kerR (A) to get
 
1 −4 6 −4 1 0 0
Bt = 
 
 4 −15 20 −10 0 1 0  .

10 −36 45 −20 0 0 1
Let’s try to draw the affine Gale diagram for this example. We
can start by positioning the last three vectors at the corners of an
equilateral triangle that will be in the center of the hemisphere we
can see. In our case then, we are looking at the sphere along the
vector (1, 1, 1) toward the origin. Can you finish and write down
the face lattice? (Hint: Read the rest of this page for a methodical
procedure.)

As the above exercise shows, it’s hard to draw affine Gale dia-
grams precisely, with the description we have of it so far. We need a
more methodical procedure for drawing them, which we now describe.
Let B ⊂ Rn−d be the Gale transform. Choose a vector y ∈ Rn−d
such that y ·b 6= 0 for any b ∈ B. We now compute b0 := b·y b
for each
b ∈ B. Then the points b0 lie on the hyperplane H := {x ∈ Rn−d :
y · x = 1}. If bi · y > 0 then label b0 with i and mark it with a black
dot. If b · y < 0 then label b0 with ī and mark it with a white dot.
Since H is isomorphic to Rn−d−1 , we simply have to find an explicit
isomorphism that will help us draw our new points on H ⊂ Rn−d in
Rn−d−1 . Projection of the points onto the first n − d − 1 coordinates
turns out to be such an isomorphism in the examples you will see in
these chapters.
Exercise 5.11. Compute the face lattice of the four-dimensional
cross-polytope C ∆ (4) by drawing its affine Gale diagram.
Exercise 5.12. Now replace the vertex e1 ∈ R4 in C ∆ (4) with α · e1 .
For different values of α ∈ R how will this new convex polytope
change? How is this change reflected in the affine Gale diagram?
Chapter 6

Bizarre Polytopes

In this chapter we will see that Gale diagrams are powerful tools for
studying polytopes beyond their ability to encode the faces of a poly-
tope. Let us first investigate some properties of Gale diagrams. The
most fundamental question you can ask is if any vector configura-
tion can be the Gale diagram of some polytope. The material in this
chapter is taken from [Zie95, Chapter 6].
As in Chapter 5, let V := {v1 , . . . , vn } ⊂ Rd−1 and
 
1 ··· 1
A= ∈ Rd×n .
v1 ··· vn

Assume that rank(A) = d, and choose a matrix B ∈ Rn×(n−d) whose


columns form a basis of kerR (A). Recall that the Gale transform
B = {b1 , . . . , bn } ⊂ Rn−d consists of the rows of B.

Definition 6.1. (1) A vector configuration {w1 , . . . , wp } ⊂ Rq


is said to be acyclic if there exists a vector α ∈ Rq such that
α · wi > 0 for all i = 1, . . . , p. Geometrically this means that
all the vectors wi lie in the interior of a halfspace defined
by a hyperplane in Rq containing the origin.
(2) A vector configuration {w1 , . . . , wp } ⊂ Rq is said to be to-
tally cyclic if there exists a vector β > 0 in Rp such that
β1 w1 + . . . + βp wp = 0. Geometrically this means that the

47
48 6. Bizarre Polytopes

wi are arranged all the way around the origin and are not
entirely on one side of any hyperplane through the origin.
Lemma 6.2. The columns of A form an acyclic configuration in Rd
since they all lie in the open halfspace {x ∈ Rd : x1 > 0}, while
the Gale transform B is a totally cyclic configuration in Rn−d since
b1 + . . . + bn = 0. (Note that the first row of A, which is a row of
ones, dots to zero with the rows of B.)

Suppose we start with a totally cyclic vector configuration B =


{b1 , . . . , bn } ⊂ Rn−d and a vector β > 0 such that
P
βi bi = 0. By
rescaling the elements of B, we may assume that β = (1, 1, . . . , 1). If
B ∈ Rn×(n−d) is the matrix whose rows are the elements of B then we
can also assume that rank(B) = n − d. This means that kerR (B t ) =
{x ∈ Rn : B t x = 0} is a linear subspace of rank n − (n − d) = d. Let
A ∈ Rd×n be a matrix whose rows form a basis for kerR (B t ). The
columns of A form the vector configuration A = {a1 , . . . , an } ⊂ Rd .
Then A is said to be a Gale dual of B and B a Gale dual of A.
By our assumption that β = (1, . . . , 1), we may assumethat  the first
1
row of A is a row of all ones, or in other words, ai = for all
vi
i = 1, . . . , n. Now the question is, what conditions on B will ensure
that {v1 , . . . , vn } is the vertex set of a (d − 1)-polytope? To state our
answer formally, we introduce the notion of circuits and co-circuits of
vector configurations.
Definition 6.3. (1) The sign of a vector u ∈ Rn is the vector
sign(u) ∈ {+, 0, −}n defined as:

 + if ui > 0
sign(u)i := − if ui < 0
0 if ui = 0

(2) The support of a vector u ∈ Rn is the set


supp(u) := {i : ui 6= 0} ⊆ [n].

Note that the supports of a collection of vectors can be partially


ordered by set inclusion.
Definition 6.4. Let W = {w1 , . . . , wp } ⊂ Rq be a vector configura-
tion.
6. Bizarre Polytopes 49

(1) A circuit of W is any non-zero vector u ∈ Rp of minimal


support such that w1 u1 +. . .+wp up = 0. The vector sign(u)
is called a signed circuit of W.
(2) A co-circuit of W is any non-zero vector of minimal support
of the form (v·w1 , . . . , v·wn ) where v ∈ Rq . The sign vector
of a co-circuit is called a signed co-circuit.

Example 6.5. Consider the vector configuration shown in Figure 1


that is the Gale transform of the triangular prism from Chapter 5.
If we take v = (1, 0) in Definition 6.4 (2), then we get the co-circuit
(0, 1, −1, 0, −1, 1) and the signed co-circuit (0, +, −, 0, −, +). On the
other hand, the vector (1, 0, 0, 1, 0, 0) is a circuit of the configuration,
and hence (+, 0, 0, +, 0, 0) is a signed circuit of the configuration.

b1
b6

b5 b2

b3
b4

Figure 1. Gale diagram of the vertices of the triangular prism


from Chapter 5.

The signed circuits (or equivalently signed co-circuits) of a vector


configuration completely determine the combinatorics of the configu-
ration. In fact there is a very rich theory of circuits and co-circuits
that we will not get into here. It is also a fact that if A and B are
Gale duals then the circuits of A are exactly the co-circuits of B and
vice-versa. For instance, in our triangular prism example, A can be
taken to be the columns of the matrix:
1 1 1 1 1 1
 
 0 1 0 0 1 0 
A=  0 0 1 0 0 1 .

0 0 0 1 1 1
50 6. Bizarre Polytopes

The co-circuit (0, 1, −1, 0, −1, 1) of B does indeed form a circuit of A:


Check first that this vector lies in the kernel of A. To see that it’s a
circuit, i.e., a dependency on the columns of A of minimal support,
you have to check that all subsets of columns 2, 3, 5, 6 are in fact
linearly independent.
Circuits and co-circuits come in symmetric pairs: the negative of
a circuit is again a circuit and similarly for co-circuits. It suffices to
record one member of each pair.
Theorem 6.6. [Zie95, Theorem 6.19] Let B = {b1 , . . . , bn } ⊂ Rn−d
P
be a totally cyclic vector configuration with bi = 0 and the matrix
B having rank n − d as before. Then B is a Gale transform of a
(d − 1)-polytope with n vertices if and only if every co-circuit of B has
at least two positive coordinates.

Proof. Recall the matrix A constructed from B as before. We have


to show that {v1 , . . . , vn } is the vertex set of the (d − 1)-polytope
P = conv({v1 , . . . , vn }) if and only if every co-circuit of B has at
least two positive coordinates. Since B is totally cyclic, every co-
circuit of B has at least one positive entry and one negative entry.
Some co-circuit of B has exactly one positive entry — say in position
j — if and only if 0 6∈ relint(conv(bi : i 6= j)) which, by Theorem 5.6,
is if and only if vj is not a vertex of P . This proves the theorem. 
Remark 6.7. If every vi is a vertex of conv({v1 , . . . , vn }), then we
say that the vi are in convex position. Theorem 6.6 is providing
conditions on a vector configuration B with the stated assumptions
that precisely guarantee when B is the Gale dual of a configuration
A whose columns are all in convex position.

We can also characterize affine Gale diagrams by reinterpreting


Theorem 6.6.
Corollary 6.8. [Zie95, Corollary 6.20] A point configuration C =
{c1 , . . . , cn } ⊂ Rn−d−1 , each of them declared to be either black or
white, that affinely spans Rn−d−1 , is the affine Gale diagram of a
(d − 1)-polytope with n vertices if and only if the following condition
is satisfied: for every oriented hyperplane H in Rn−d−1 spanned by
some points of C, the number of black dots on the positive side of H
6. Bizarre Polytopes 51

plus the number of white dots on the negative side of H is at least


two.

Exercise 6.9. Check that Corollary 6.8 is a straight translation of


Theorem 6.6 to affine Gale diagrams.

Exercise 6.10. Check that the condition of Corollary 6.8 is true for
the affine Gale diagram of the triangular prism from Chapter 5.

We are now ready to get to the fun. We could try to use Gale
diagrams to classify (d − 1)-polytopes with n vertices. Any (d − 1)-
polytope with d vertices is a simplex. The Gale diagram in this case
is in zero-dimensional space R0 and all the bi = 0 ∈ R0 . If P is
a (d − 1)-polytope with d + 1 vertices, then its Gale diagram is a
totally cyclic vector configuration in R and its affine Gale diagram
is a cloud of black and white points in R0 . It is known that there
are b(d − 1)2 /4c combinatorial types of (d − 1)-polytopes with d + 1
vertices. Of these, b(d − 1)/2c are simplicial polytopes and the others
are multiple pyramids over simplicial polytopes of this type. This is
a non-obvious but classical result. Further results are known. See
[Grü03, Chapter 6] for details. Our goal in the rest of the chapter
will be to show that Gale diagrams exhibit the existence of some really
bizarre polytopes.

Theorem 6.11. [Grü03, pp 94] There exists a non-rational 8-polytope


with 12 vertices.

Proof. Using Corollary 6.8, check that the point configuration shown
in Figure 2 is the affine Gale diagram of an 8-polytope P with 12 ver-
tices. It turns out that this point configuration cannot be realized by
rational coordinates without violating the prescribed combinatorics.
By “prescribed combinatorics” we mean that the same points should
be collinear, or on a plane etc, as in Figure 2. First note that fixing
the combinatorics implies that there will always be a pentagon in the
middle of the configuration. It’s harder to see that this pentagon has
to be regular (do you see it?). Further, a regular pentagon cannot be
embedded in√the plane with rational coordinates as its coordinates
will involve 5 which is not rational.
52 6. Bizarre Polytopes

Let Q be any polytope that is combinatorially equivalent to P .


Then the affine Gale diagram of Q also has the same combinatorics,
i.e., same collinearities, circuits, coincidences etc. Thus Q cannot be
realized with rational coordinates either. In particular, neither P nor
any polytope combinatorially equivalent to it can be realized with
rational coordinates.

1 5 6 9̄ 2

¯
12
7 8
¯
10 ¯
11

3 4

Figure 2. Affine Gale diagram for Theorem 6.11.

The above example is due to Perles. No non-rational polytope


with less than 12 vertices is known. However, Richter-Gebert has con-
structed 4-polytopes (with about 30 vertices) which are non-rational.
This stands in contrast to the fact that all polytopes of dimension
at most three can be realized with rational coordinates. Also, all
(d − 1)-polytopes with at most d + 2 vertices can be realized with
rational coordinates. Can you see how to construct infinitely many
polytopes of dimension d ≥ 8 and at least d + 4 vertices that do not
have rational realizations beginning with the above example?
6. Bizarre Polytopes 53

We now turn to a different feature of polytopes that can be un-


covered via their Gale diagrams. It is known that for all polytopes of
dimension d ≤ 3 or with at most d + 3 vertices, one can prescribe the
the shape of a facet. This means that if a particular facet is known
to be an octahedron say, then we can start with any embedding of an
octahedron as this facet and then complete the construction of the
polytope according to the combinatorics prescribed. This contrasts
the following theorem whose proof is from [Zie95, Theorem 6.22].

Theorem 6.12. [Stu88] There is a 4-polytope P with 7 facets for


which the shape of a facet cannot be prescribed.

Proof. Let P ∆ be the bi-pyramid over a square pyramid. Let the A


matrix for this be:
1 1 1 1 1 1 1
 
 1 0 −1 0 0 0 0 
 
A=  0 1 0 −1 0 0 0 .

 0 0 0 0 1 1 0 
0 0 0 0 0 1 −1
To see that the convex hull of the columns of A is a bi-pyramid over
a square pyramid, first note that the convex hull of the first four
columns of A is a square, and the convex hull of the first five columns
of A is a square pyramid. Next note that the average of the last
two columns of A is (1, 0, 0, 1/2, 0) which is the midpoint of the line
segment perpendicular to the base of the pyramid, dropped from the
apex of the pyramid. The columns of
!
1 0 1 0 2 −2 −2
0 1 0 1 2 −2 −2

form the Gale transform B of P . The Gale diagram is shown in
Figure 3.
Now we examine an operation on polytopes that we haven’t seen
so far. The vertex figure of a polytope Q at a vertex v is the
intersection of Q with a hyperplane H that “chops off” vertex v very
near vertex v — i.e., v lies on one side of H and all other vertices of
Q lie on the other side of H. The resulting polytope is denoted as
Q/v.
54 6. Bizarre Polytopes

2,4
2,4


1,3 5

1,3

6,7

Figure 3. Gale and affine Gale diagram for Theorem 6.12.

Let’s consider the vertex figure of our bi-pyramid P ∆ at the vertex


5. The Gale diagram of P ∆ /5 is obtained from the Gale diagram of
P ∆ by deleting the point 5 from the diagram. (This is Exercise 6.13.)
The resulting Gale diagram is that of a regular octahedron, for in-
stance the one with
1 1 1 1 1 1
 
 1 −1 0 0 0 0 
A0 =  .
 0 0 1 −1 0 0 
0 0 0 0 1 −1
Check that for P ∆ , 56̄ and 57̄ are co-facets. However, this requires
that the points 6̄ and 7̄ coincide in the affine Gale diagram of P ∆ /5
or equivalently that the Gale vectors 6 and 7 are in the in the linear
span of the Gale vector 5 in the opposite direction from 5. Therefore,
if we start with a non-regular octahedron such as the following one
with:
1 1 1 1 1 1
 
 1 −1 0 0 0 0 
A0 =  
 1/6 0 1 −1 0 0 
0 0 0 0 1 −1
which has the affine Gale diagram shown in Figure 4, then it is not
6. Bizarre Polytopes 55

2,4


1,3

Figure 4. Affine Gale diagram of a non-regular octahedron.

the vertex figure of a 4-polytope that is combinatorially isomorphic


to P ∆ .
Recall that the face lattices of P and P ∆ are anti-isomorphic
which means that the vertex 5 of P ∆ corresponds to a facet of P .
This facet has the same combinatorics as the vertex figure P ∆ /5.
Thus by showing that a vertex figure of P ∆ cannot be prescribed, we
have shown that a facet of P cannot be prescribed. 
Exercise 6.13. Argue that the Gale diagram of the vertex figure
P ∆ /5 is obtained from the Gale diagram of P ∆ by deleting the point
5 from the diagram. This result is true in general.
Chapter 7

Triangulations of Point
Configurations

In this chapter we will consider subdivisions and triangulations of


graded point configurations. See the forthcoming book [DRS] for a
comprehensive account of triangulations in the sense we will study
them.
Let V = {v1 , . . . , vn } ⊂ Zd−1 be a point configuration whose
convex hull is a (d − 1)-dimensional polytope P ⊂ Rd−1 . We do not
insist that the points be distinct or that they all be vertices of P . We
embed V in Rd by placing all its points on the hyperplane x1 = 1 in
Rd and consider the point configuration
   
1 1
A= ,..., .
v1 vn

The configuration A is said to be graded since it lives on the hyper-


plane x1 = 1. If A is graded then the vector (1, 1, . . . , 1) lives in the
row space of A. Let A be the corresponding d × n matrix. We have
that rank(A) = d. Note that conv(A) is a (d − 1)-polytope living in
Rd . We will study subdivisions of A.
Once we fix A, we can simply refer to its ith element ai by its
index i ∈ [n]. We identify σ ⊆ [n] with Aσ := {ai : i ∈ σ}. A subset
Aσ of a point configuration A is called a face of A if the elements of
Aσ are precisely those that lie on a face of the polytope conv(A). We

57
58 7. Triangulations of Point Configurations

refer to this face as σ. The dimension dim(σ) is the dimension of the


polytope conv(Aσ ). We say that σ is a k-simplex if dim(σ) = k and
|σ| = k + 1. This is all a bit tricky as we will see in the examples in
Figure 1.

Definition 7.1. A subdivision, ∆ = {σ1 , . . . , σt }, of the point con-


figuration A is a collection of subsets σi ⊆ [n], i = 1, . . . , t such that

(1) dim(σi ) = d − 1 for all i = 1, . . . , t,


S
(2) σi ∈∆ conv(Aσi ) = conv(A),
(3) for i 6= j, conv(Aσi ) ∩ conv(Aσj ) = conv(Aτ ) where τ =
σi ∩ σj is a common face of both σi and σj .

• If further, all the σi are (d − 1)-simplices, then ∆ is a tri-


angulation of A.
• The sets {σi : i = 1, . . . , t} are called the facets ((d − 1)-
faces) of ∆, and the indices that appear in the facets of ∆
are called the vertices (0-faces) of ∆. Faces of σi are called
faces of ∆.
• A triangulation in which every i ∈ [n] is a vertex is called a
fine triangulation of A.
• A subdivision ∆ = {σ1 , . . . , σt } refines a subdivision ∆0 =
{τ1 , . . . , τs } if for every τi ∈ ∆0 there exist σi1 , . . . , σik ∈ ∆
such that {σi1 , . . . , σik } is a subdivision of τi .

Example 7.2. Consider the 8-point configuration A shown in Fig-


ure 1. Figure 1 (a) is not a subdivision of A as the union of the facets
(which are shaded in this picture) is not all of P . In the rest of the
figures, facets will not be shaded. Figure 1 (b) is not a subdivision
of A because the facets {1, 2, 3} and {1, 2, 4} do not intersect in a
common face. How about Figure 1 (c)? The bottom triangle could
mean that either {5, 6, 7, 8} is a facet or that {6, 7, 8} is a facet. If
{5, 6, 7, 8} is a facet, then it has the face {5, 6, 8} but not {5, 8} which
means that {1, 5, 8} and {5, 6, 7, 8} do not intersect in a common face.
If {6, 7, 8} is a facet then again {1, 5, 8} and {6, 7, 8} do not intersect
in a common face either. Thus Figure 1 (c) is not a subdivision. This
example also shows that it isn’t always clear from the picture what
7. Triangulations of Point Configurations 59

the facets are. Subdivisions are accurately specified by listing their


facets as subsets of [n].

2 2 2

1 3 1 3 1 3

4 4
4
5
8 5 6 8 5 6 8 6

7 7 7
(a) (b) (c)

2 2 2 2

1 1 3 1 3 1 3
3
4 4
4 4
5 5 5
8 5 6 8 6 8 6 8 6

7 7 7 7
(d) (e) (f) (g)

Figure 1. Subdivisions and non-subdivisions.

In Figure 1 (d), let us assume that the facets are


{1, 2, 3}, {1, 3, 4, 6} and {1, 4, 6, 7, 8}.
This is indeed a subdivision of A. Some non-faces of this subdivision
are {5} and {1, 4}. Figure 1 (f) is a refinement of Figure 1 (d) and
is a triangulation. However, Figure 1 (e) is not a refinement of Fig-
ure 1 (d). In fact it is not a subdivision as the facets {1, 3, 4, 6} and
{1, 4, 8} do not intersect in a common face. How about Figure 1 (g)?
Hopefully, you can see that it’s a triangulation, but is it a refinement
of the triangulation in Figure 1 (f)? The answer is no since it has
simplices that use the vertex 5 which is not present in any face of
Figure 1 (f).

Please pause and consider the differences between subdivisions of


point configurations as defined above and subdivisions of polytopes
that we saw in Chapter 4. For subdivisions of point configurations,
all vertices have to come from the configuration. Also, the convex
60 7. Triangulations of Point Configurations

hull of a face may not specify the face as in Figure 1 (d) in which the
convex hull of {1, 3, 4, 6} equals the convex hull of {1, 3, 6}.
Among all subdivisions, there are some special ones called regular
subdivisions, a concept we saw before for subdivisions of polytopes.
Let’s redefine it more generally for point configurations now.
Definition 7.3. Let ω = (ω1 , . . . , ωn ) ∈ Rn be a weight vector and A
be a graded point configuration in Rd as before. Consider the “lifted”
point configuration
   
a1 an
Aω = ,..., ⊂ Rd+1
ω1 ωn
and its convex hull P ω ⊂ Rd+1 . The “lower faces” of P ω form a poly-
hedral complex. Projecting this “lower hull” back onto A induces a
subdivision of A, denoted as ∆ω and known as the regular subdi-
vision of A with respect to ω. Subdivisions of A that arise via this
construction are precisely the regular subdivisions of A. For a generic
ω, ∆ω is a triangulation of A. (In fact we define ω to be generic (with
respect to A) whenever ∆ω is a triangulation of A.)

Recall that F is a lower face of P ω if for each x ∈ F and λ > 0,


x − λed+1 6∈ P ω . Figure 2 shows all the regular triangulations of a
graded point configuration in R2 whose convex hull is a line segment.
direction of lifting

1 2 3 4

{{1, 4}} {{1, 2}, {2, 4}} {{1, 2}, {2, 3}, {3, 4}} {{1, 3}, {3, 4}}

Figure 2. Regular triangulations.

Informally speaking, a subdivision ∆ of A is regular if we can


fold it along the creases of the subdivision to be the lower hull of a
polytope in one higher dimensional space. For instance the subdi-
vision in Figure 1 (d) is regular as it can be induced by the weight
vector ω = (0, 5, 1, 0, 100, 0, 0, 0). We can test this using PORTA by
7. Triangulations of Point Configurations 61

computing P ω and computing its lower facets. We will see several


alternate tests for regularity in the rest of this chapter. Can you see
why the triangulation in Figure 3 is non-regular by trying to induce
it using a weight vector ω?

Figure 3. A non-regular triangulation.

The above definition of ∆ω can be stated mathematically as fol-


lows.
Definition 7.4. A subset σ ⊆ [n] is a face of the regular subdivision
∆ω of A if and only if there exists a vector y ∈ Rd such that
aj · y = ω j for all j ∈ σ
aj · y < ω j for all j 6∈ σ.

What is the above test doing geometrically? It says that σ is a


face if and only if the vector (y, −1) · (aj , ωj )t = 0 for all j ∈ σ and
(y, −1) · (aj , ωj )t < 0 for all j 6∈ σ. This means that (y, −1) is normal
to the affine hull of the “lifted” σ and all other lifted points lie above
this affine hull.
While Definition 7.4 is useful for testing whether ∆ = ∆ω , given
ω, perhaps we might first ask for a more general test of regularity.
Given a subdivision ∆ of A, is it regular? In other words, does
∆ = ∆ω for some ω? To proceed we need to be able to work with
cones which are special cases of polyhedra.
Definition 7.5. A cone K ⊆ Rd is any subset of Rd such that
(1) for x, y ∈ K, x + y ∈ K, and
62 7. Triangulations of Point Configurations

(2) for x ∈ K and λ ≥ 0, λx ∈ K.

The most common example of a cone is the ice-cream cone in R3 ,


an example of which is the set
K = {(x, y, z) ∈ R3 : x2 + y 2 ≤ z 2 , z ≥ 0}.
We will be interested in polyhedral cones which are cones with finitely
many flat sides.

Definition 7.6. A polyhedral cone K ⊆ Rd is a polyhedron of the


form
K = {x ∈ Rd : M x ≥ 0}
where M is a real matrix, or equivalently (by the main theorem of
cones) any set of the form
K = {N y : y ≥ 0}
where N is a real matrix.

The second expression says that K is the set of all non-negative


combinations of columns of N . The columns N of N are called the
generators of the cone K. This can be expressed by writing K as
K = cone(N ). A column n of N generates an extreme ray of K
if cone(N ) ) cone(N \n). The inequalities in M x ≥ 0 are called the
constraints of K. By the main theorem of cones which is analogous
to the main theorem for polytopes, every finitely constrained cone is
a finitely generated cone and vice-versa. A cone complex is a poly-
hedral complex in which all the polyhedra are cones. Cone complexes
are more typically called polyhedral fans. If the support of the fan
is the entire space it lives in, we call it a complete fan.

Definition 7.7. Let P ⊂ Rd be a polyhedron and F be a face of P .


Then the outer normal cone of P at F is the cone
NP (F ) = {c ∈ Rd : F = facec (P )}.
The collection of outer normal cones of P is called the outer normal
fan of P . It is denoted as N (P ). Similarly the inner normal cone
of P at F is the cone
NP (F ) = {c ∈ Rd : F = face−c (P )}
7. Triangulations of Point Configurations 63

and the inner normal fan of P is the fan formed by the collection
of inner normal cones of P . We use the same notation for both as we
will not need both simultaneously anywhere in this book.

(a)

(b)

Figure 4. A complete and incomplete fan.

Figure 4 gives two examples of outer normal fans of polyhedra.


The top fan is complete while the bottom fan is not complete.
Notice that the outer normal cone of P at a face F is the negative
of the inner normal cone of P at F . Also, if a face F is contained in
a face G of P then NP (F ) contains NP (G). The map that sends a
face F of P to its normal cone NP (F ) is an anti-isomorphism. For
instance, if P is a full dimensional polyhedron in Rd then the normal
cone at a k-face of P is a (d − k)-face of N (P ).
Exercise 7.8. Prove that both the inner and outer normal fans of
a polyhedron are cone complexes. (You will need to show that the
64 7. Triangulations of Point Configurations

intersection of two cones in a fan is a common face of each and that


every face of every cone in a fan is again a cone in the fan.)

Definition 7.9. A polyhedral fan is polytopal if it is the outer/inner


normal fan of a polyhedron.

A very surprising fact is that not all polyhedral fans are outer
normal fans of polyhedra! To see such an example, take the fan whose
cones are the cones over the simplices in the non-regular triangulation
in Figure 3. Argue that this fan is not polytopal.
Recall that in Chapter 5 we defined the Gale transform of a con-
figuration V by first grading it to form the matrix A and then taking
the kernel of A. If V is already graded (we are given A) we don’t
need to grade it again to compute the Gale transform. In this case,
we say that B is a Gale transform of A (= V).
We now return to the question of how we can check whether a
given subdivision ∆ of a point configuration A is regular. For a set
σ ⊆ [n], let σ̄ := [n]\σ.

Theorem 7.10. [Lee91] Let ∆ = {σ1 , . . . , σt } be a subdivision of A


and B be a Gale transform of A. Then ∆ is regular if and only if
t
\
relint(cone(Bσ̄i )) 6= ∅.
i=1

The proof of this theorem will be the main job remaining. Before
we do that, let’s understand the result geometrically. First, note that
the test involves figuring out whether the relative interiors of the cones
{cone(Bσ̄i )} have a common intersection. Since each σi ∈ ∆ has at
least d elements, Bσ̄i has at most n − d elements and cone(Bσ̄i ) ⊂
Rn−d . Let’s first apply this theorem to check the regularity of the
triangulations in Figure 2.

Example 7.11. Suppose the configuration A shown in Figure 2 is


the grading of {0, 1, 2, 3}. Then
   
1 1 1 1 1 −2 1 0
A= , and B t = .
0 1 2 3 2 −3 0 1
The Gale diagram is shown in Figure 5 (a).
7. Triangulations of Point Configurations 65
1 1

4 4

3 3

(a) (b)

2 2

Figure 5. Gale diagram of the configuration in Figure 2.

(1) ∆1 = {{1, 4}} is regular since relint(cone({b2 , b3 })) is non-


empty.
(2) ∆2 = {{1, 2}, {2, 4}} is regular since relint(cone({b3 , b4 }))∩
relint(cone({b1 , b3 })) is relint(cone({b1 , b3 })) which is not
empty.
(3) ∆3 = {{1, 2}, {2, 3}, {3, 4}} is regular since
relint(cone({b3 , b4 })) ∩ relint(cone({b1 , b4 })) ∩
relint(cone({b1 , b2 })) is relint(cone({b1 , b4 })) which is not
empty.
(4) ∆4 = {{1, 3}, {3, 4}} is regular since relint(cone({b2 , b4 }))∩
relint(cone({b1 , b2 })) is relint(cone({b2 , b4 })) which is not
empty.
In Figure 5 (b) we have placed the four regular triangulations in
Tt
the corresponding i=1 relint(cone(Bσ̄i )).
Example 7.12. Consider the graded point configuration A consisting
of the columns of the following matrix:
 
4 0 0 2 1 1
 0 4 0 1 2 1 ,
0 0 4 1 1 2
and the subdivisions of A shown in Figure 6.
66 7. Triangulations of Point Configurations
(0,0,4)

(1,1,2)

(2,1,1) (1,2,1)

(4,0,0) (0,4,0)

(a) (b) (c)

Figure 6.

The Gale transform of A consists of the columns of the following


matrix:
−3
 
1 0 0 1 1
 0 1 0 1 −3 1 
0 0 1 1 1 −3
and the affine Gale diagram is shown in Figure 7. (We used the
construction described at the end of Chapter 5 with y = (1, 1, 1).)


(−1, 3)

2 (0, 1)

(0, 0) (1, 0)
3 1

(3, −1)

(−1, −1) 4̄

Figure 7. Affine Gale diagram of the configuration in Exam-


ple 7.12.
7. Triangulations of Point Configurations 67

The subdivision in Figure 6 (c) is ∆3 = {σ1 = {4, 5, 6}, σ2 =


{1, 2, 4, 5}, σ3 = {2, 3, 5, 6}, σ4 = {1, 3, 4, 6}}. Figure 8 shows the
cones {cone(Bσ̄i )}. Note that their relative interiors intersect at the
point z which shows that ∆3 is regular.

3 1


Figure 8. Intersection of {cone(Bσ̄i ) : σi ∈ ∆3 }.

Exercise 7.13. Check that Figure 6 (b) is a regular triangulation


while Figure 6 (a) is non-regular.

If B is a Gale transform of a point configuration A, then the scaled


vector configuration B̃ := {µ1 b1 , . . . , µn bn } where µi > 0 is called a
scaled Gale transform of A. Scaled Gale transforms carry the same
combinatorial information as Gale transforms — for any σ ( [n],
0 ∈ relint(conv(Bσ̄ )) if and only if 0 ∈ relint(conv(B̃σ̄ )). Let’s prove
P
one direction: 0 ∈ relint(conv(Bσ̄ )) if and only if 0 = i∈σ̄ λi bi
where 0 < λi < 1, i∈σ̄ λi = 1. Suppose i∈σ̄ µλii = t. Then clearly
P P
P λi λi
t > 0 since λi , µi > 0. Then 0 = i∈σ̄ tµ i
(µi bi ) where 0 < tµ i
<1
P λi
and i∈σ̄ tµi = 1 which shows that 0 ∈ relint(conv(B̃σ̄ )). Can you
prove the other direction? The upshot is that we can read off the faces
68 7. Triangulations of Point Configurations

of P = conv(A) from B̃. In many books, all scaled Gale transforms


are called Gale diagrams.
Now we begin to prove Theorem 7.10 via a series of lemmas. We
have to show that ∆ = {σ1 , . . . , σt } is a regular subdivision of A if
and only if
\t
relint(cone(Bσ̄i )) 6= ∅.
i=1
Tt
The strategy will be to show that elements in i=1 relint(cone(Bσ̄i ))
are precisely the seeds for lifting vectors ω ∈ Rn such that ∆ = ∆ω .
This proof is an elaboration of the one in [Lee91].

Lemma 7.14. Let ω = (ω1 , . . . , ωn ) ∈ Rn such that 0 < ωi < 1 and


consider the polytopes:
   
a1 an
P ω = conv ,..., , and
ω ω
 1  n  
1−ω a1 an
P = conv ,..., .
(1 − ω1 ) (1 − ωn )
Then the facets in the lower hull of P ω are precisely the facets in the
upper hull of P 1−ω .

Exercise 7.15. Prove the above lemma. Figure 9 shows a small


example that might make the lemma believable. The configuration
A is on the xd+1 = 0 plane. The polytope P ω has unshaded vertices
while P 1−ω has shaded vertices.

xd+1 = 1
 

 



 

 

xd+1 = 0

Figure 9. Figure for Lemma 7.14.


7. Triangulations of Point Configurations 69

Lemma 7.16. Let B ⊂ Rn−d be a Gale transform of the graded point


configuration A = {a1 , . . . , an } ⊂ Rd . Let z be a vector in the interior
Pn
of the convex hull of B and 0 < ω1 , . . . , ωn < 1, i=1 ωi = 1 such
Pn
that z = i=1 ωi bi . Then B 0 := B ∪ {−z} is a scaled Gale transform
of the vector configuration
      
1 a1 1 an 0
A0 = ,..., , .
ω1 (1 − ω1 ) ωn (1 − ωn ) −1

Proof. To prove this we have to show that B 0 is obtained by posi-


tively scaling some Gale transform of A0 . Using the definition of z
and Gale transforms, check that the matrix product
ω1 b 1
 
        ..
a1 an 0

1 1
· · · ωn
 . 
ω1 (1 − ω1 ) (1 − ωn ) −1

 ωn b n 

−z
gives the zero matrix. This proves that the columns of second matrix
lie in the kernel of A0 . Since B consists of n − d linearly independent
vectors, the rank of the second matrix is n − d which is the dimension
of the kernel of A0 . This proves that the rows of the second matrix
form a Gale transform of A0 . Clearly B 0 is a positive scaling of this
Gale transform. 

Proof of Theorem 7.10. To finish the proof, we work out two equiv-
alent descriptions of the facets of conv(A0 ) that do not contain the
point (0, −1). Consider the projective transformation
   
x 1 x
f : Rd+1 → Rd+1 such that 7→ .
xd+1 1 + xd+1 xd+1
Under this map,
   
1 ai ai
7→
ωi (1 − ωi ) (1 − ωi )
and (0, −1)t gets sent to the plane at infinity. This implies that
conv(A0 ) gets sent to P 1−ω + [0, −∞] and the facets of conv(A0 ) that
do not contain (0, −1) are precisely the bounded facets of P 1−ω +
[0, −∞] which in turn are the facets in the upper hull of P 1−ω .
70 7. Triangulations of Point Configurations

On the other hand, we can use B 0 to work out the facets of


conv(A0 ) that do not contain the point (0, −1). Recall that σ is
such a facet if it is maximal with the property that

0 ∈ relint(conv(Bσ̄ ∪ {−z})).

Now notice that we can rephrase this last sentence as “σ is such a


facet if it is maximal with the property that z ∈ relint(cone(Bσ̄ ))”.
Thus we have proved that the facets in the upper hull of P 1−ω
(lower hull of P ω ) are precisely the maximal sets σ ⊆ [n] with
t
\
relint(cone(Bσ̄i )) 6= ∅.
i=1

Remark 7.17. The proof of Theorem 7.10 also shows us how to


produce weight vectors ω that induce a regular triangulation ∆. By
the theorem,
\
relint(cone(Bσ̄ )) 6= ∅.
σ∈∆

Pick a non-zero z in this intersection small enough such that z ∈


relint(conv(B)). Then there exists ω = (ω1 , . . . , ωn ) ∈ Rn such that
Pn Pn
z = i=1 ωi bi , 0 < ωi < 1, i=1 ωi = 1, and ∆ = ∆ω .
Note that once we have ω, any positive multiple of it will also
induce the same subdivision. Thus we could have picked any z ∈
T
σ∈∆ relint(cone(Bσ̄ )) and solved for z = ωB to get ω such that
∆ = ∆ω .

Exercise 7.18. Find weight vectors to induce the four regular tri-
angulations in Figure 5. How about the subdivision ∆3 in Figure 6
(c)?

Exercise 7.19. Calculate all the regular subdivisions of the 4-point


configuration from Figure 2 and draw them in the picture of the
Gale diagram in Figure 5 (a). Note that in Figure 5 (b) we have
found all the regular triangulations. They correspond to the four full
dimensional cones that you see in the natural fan induced by the Gale
diagram.
7. Triangulations of Point Configurations 71

Definition 7.20. If a subdivision ∆0 refines a subdivision ∆ of a


point configuration A, then write ∆0  ∆. The operation  partially
orders the set S of all subdivisions of A. This poset) (S, ) is called
the refinement poset of the subdivisions of A.
Exercise 7.21. Describe the refinement poset of the 4-point config-
uration in Figure 2.
Exercise 7.22. Let A be the point configuration with 6 points in
R3 given in Example 7.12. Carefully describe its refinement poset.
Indicate which subdivisions ∆ are regular by giving a weight vector
ω that induces each regular subdivision.
Chapter 8

The Secondary Polytope

Theorem 7.10 from the last chapter tests for the regularity of a sub-
division ∆ of a graded point configuration A ⊂ Zd with the stated
assumptions. This theorem suggests an algorithm for constructing all
regular triangulations of A. Take the Gale diagram B ⊂ Rn−d of A
and a vector z ∈ Rn−d . Then the subdivision

∆ = {σ ⊆ [n] : z ∈ relint(cone(Bσ̄ ))}

is a regular subdivision of A. Conversely, if ∆ is regular then


t
\
relint(cone(Bσ̄i )) 6= ∅
i=1

and we can choose a z in this intersection.


Pn
In the last chapter, we also saw that if z = i=1 ωi bi then in
fact, ∆ = ∆ω . Is this ω unique? Recall that the elements of B are the
rows of a n×(n−d) matrix B whose columns form a basis for kerR (A).
Pn
Then z = i=1 ωi bi = ωB. Let y ∈ row space(A). Then yB = 0.
This implies that z = ωB + yB = (ω + y)B. Thus we can add any
vector in row space(A) to a solution ω to the linear system z = ωB
to get ω 0 such that ∆ω = ∆ω0 . In particular, since A is assumed to
be graded, (1, 1, . . . , 1) ∈ row space(A), and there is always a positive
weight vector ω such that z = ωB. Any ω such that z = ωB is said
to be “lifted” from z.

73
74 8. The Secondary Polytope

Definition 8.1. (1) The secondary cell of a regular subdivi-


sion ∆ of A is the open cone

t
\
{ω : there exists z = ωB, z ∈ relint(cone(Bσ̄i ))} ⊆ Rn .
i=1

(2) The closure of the secondary cell in Rn is the secondary


cone of ∆, denoted as C∆ .
Tt
(3) The open cone i=1 relint(cone(Bσ̄i )) ⊂ Rn−d is the pointed
secondary cell of ∆, and
Tt
(4) the closure of i=1 relint(cone(Bσ̄i )) is called the pointed
0
secondary cone of ∆, which we denote as C∆ .

Note that the pointed secondary cell and cone lie in Rn−d and
hence do not consist of height/weight vectors that induce triangula-
tions. To get weight vectors ω we have to solve the system z = ωB
for z in these pointed cones. In other words, we can think of B as
defining a linear transformation from Rn → Rn−d where ω 7→ ωB.
The full dimensional cones are the preimages under this map of the
corresponding pointed cones. The pointed cones allow us to mod out
the lineality space, row space(A), from the set of height functions and
hence are more convenient to study. The lineality space of a cone
is the largest subspace in the cone.
The discussion before Definition 8.1 proves that every vector in
the secondary cell of ∆ is a weight vector that induces ∆ as a reg-
ular subdivision. Conversely, if ω ∈ Rn such that ∆ = ∆ω , then
we can write ω as ω = ω 0 + ω 00 where ω 0 ∈ kerR (A) and ω 00 ∈
row space(A). The proof of Theorem 7.10 shows that z = ωB = ω 0 B
Tt
lies in i=1 relint(cone(Bσ̄i )). This proves the following theorem.

Theorem 8.2. The secondary cell of a regular subdivision ∆ is pre-


cisely the set of all weight vectors ω ∈ Rn such that ∆ = ∆ω .
8. The Secondary Polytope 75

Example 8.3. Consider the vector configuration A consisting of the


vertices of the pentagon shown in Figure 1. Here
−2 −2
 
 
1 1 1 1 1  3 2 
   
A= 0 1 2 1 0  and B =  −2 −1  .
   
 1 0 
0 0 1 2 1
0 1

5 3

1 2

Figure 1. The regular subdivisions of a pentagon.

Figure 1 shows all the regular subdivisions of A placed against


their pointed secondary cones. The origin is the pointed secondary
cone of the coarsest subdivision ∆0 = {{1, 2, 3, 4, 5}} shown at the top
of the figure. Its secondary cone is the subspace row space(A) in R5 .
The five regular triangulations of A have full dimensional secondary
76 8. The Secondary Polytope

cones. For instance, the triangulation


∆ = {{1, 2, 3}, {3, 4, 5}, {1, 3, 5}}
has the pointed secondary cone, cone({b2 , b4 }), which gives a five-
dimensional secondary cone. The remaining five regular subdivi-
sions have one-dimensional pointed secondary cones which give four-
dimensional secondary cones in R5 .

Example 8.3 might make you suspect that there is much more
structure to the regular subdivisions of a point configuration than
what we have so far. For instance,
(1) the secondary cones of the regular subdivisions seem to form
a polyhedral fan with the full dimensional cones in the fan
indexed by regular triangulations.
(2) The face lattice of this fan seems to correspond to the poset
of regular subdivisions of A ordered by refinement. See Fig-
ure 2.

Figure 2. The refinement poset of the subdivisions of the


pentagon.

(3) There seems to be a relationship between a regular subdi-


vision and its neighbors in this refinement poset. In partic-
ular, the two triangulations neighboring a subdivision seem
to be the two possible regular triangulations that refine this
subdivision.
(4) Lastly, in this example at least, it seems that the fan of
secondary cones is polytopal. There is a pentagon whose
normal fan is this fan.
8. The Secondary Polytope 77

All these observations are in fact theorems! We focus on (1) and


(4) and see examples and construction methods.
Consider the Gale transform B as a vector configuration in Rn−d .
We call τ = {τ1 , . . . , τn−d } ⊂ [n] a basis if cone(Bτ ) is a basis of
Rn−d .

Definition 8.4. [BFS90] The pointed secondary fan of A, de-


noted as F 0 (A), is the cone complex obtained as the multi-intersection
of all the cones {cone(Bτ )} as τ ranges over all bases of B.

The multi-intersection of a collection of cones is the new cone


complex consisting of all intersections of the original cones involved.
Do not confuse it with the common intersection of all the cones in-
volved which may be just the origin.
Each cell (open cone) in the complex is of the form
\
relint(cone(Bσ̄ ))
σ∈∆

where ∆ consists of all the sets σ ⊆ [n] that are maximal with the
property that the cell lies in relint(cone(Bσ̄ )). Then ∆ is the regular
subdivision indexed by this cell. In particular, the full dimensional
cells in F 0 (A) index the regular triangulations of A since if a cell
is full dimensional, then the maximal σ’s such that the cell lies in
relint(cone(Bσ̄ )) all have d elements.

Example 8.5. Let us verify all this in Example 8.3. Looking at


Figure 1 we see that the multi-intersection of cone(Bτ ) as τ ranges
over all bases of B is precisely the fan obtained by simply drawing the
two-dimensional Gale transform in the plane. Therefore, the pointed
secondary fan F 0 (A) is the two-dimensional fan shown in Figure 1.
Check that the maximal σ’s such that the interior of cone(b5 ) lies in
the relative interior of cone(Bσ̄ ) are {1, 2, 3, 4} and {1, 4, 5} which are
the facets of the subdivision labeling this pointed secondary cell.

Example 8.6. The secondary fan becomes more complicated when


n − d > 2. Let us try to construct the pointed secondary fan of the
78 8. The Secondary Polytope

configuration A consisting of the columns of


 
4 0 0 2 1 1
 0 4 0 1 2 1 
0 0 4 1 1 2
whose Gale transform B consists of the columns of
0 0 −3 1
 
1 1
 0 1 0 1 −3 1  .
0 0 1 1 1 −3
We saw the Gale diagram in the previous chapter. To construct the
pointed secondary fan, we have to find all bases of B and then inter-
sect the cones they span. How do we do this? Let Bτ be the square
(n − d) × (n − d) submatrix of B whose columns are the elements of
Bτ . Then τ is a basis if and only if Bτ is non-singular. In Figure 3
we have drawn the fan in the northern hemisphere which is the hemi-
sphere in which we had previously drawn the affine Gale diagram.
You see 15 full dimensional cones in this picture. In the southern
hemisphere there is one more which is the cone spanned by B{4,5,6} .
Thus there are 16 full dimensional cells in this pointed secondary fan
which implies that this configuration has 16 regular triangulations.
Let’s construct the regular triangulation that goes with the cell
marked with an x. This cell lies in the relative interior of cone(Bσ̄ )
for the following σ̄’s:
{1, 3, 4}, {2, 3, 6}, {2, 3, 5}, {1, 2, 3}, {3, 4, 6}, {2, 4, 5}, {1, 4, 5}
which implies that it corresponds to the regular triangulation
∆ = {{2, 5, 6}, {1, 4, 5}, {1, 4, 6}, {4, 5, 6}, {1, 2, 5}, {1, 3, 6}, {2, 3, 6}}
shown in Figure 4.

Exercise 8.7. Find all the regular triangulations of the above con-
figuration and draw them in their pointed secondary cones.

Remark 8.8. The software package TOPCOM [Ram] can be used


to find all regular triangulations of a point configuration.

Theorem 8.9. The face poset of the secondary fan of A and the
refinement poset of A have isomorphic Hasse diagrams.
8. The Secondary Polytope 79

3 1

6̄ 4̄

Figure 3. The pointed secondary fan in the northern hemi-


sphere.

4 5

1 2

Figure 4. The regular triangulation for the cell marked x.

We will not elaborate on the above theorem except to say that


we hope it’s somewhat believable based on the examples.

Exercise 8.10. Isolate the part of the pointed secondary fan in Fig-
ure 3 contained in the cone spanned by B{1,2,3} . Draw the part of the
80 8. The Secondary Polytope

refinement poset of A indexed by the cells (of all dimensions) that


appear in this piece of the pointed secondary fan.

We conclude this chapter by showing that the secondary fan of A


is polytopal. In fact, it is enough to show that the pointed secondary
fan is polytopal as we can then embed this polytope in kerR (A) ⊂ Rn
and get its normal fan in Rn to be the pointed secondary fan plus
the row space of A. Recall that we have assumed that A is a graded
point configuration in Zd .

Definition 8.11. Let σ be a simplex in a triangulation of A. The


the normalized volume of the simplex σ, denoted as vol(σ), is
the absolute value of the determinant of Aσ divided by the greatest
common divisor (g.c.d.) of the maximal minors of A.

Example 8.12. In the A of Example 8.6, the g.c.d. of the maximal


minors of A is four. Thus the normalized volume of the simplex
{4, 5, 6} is one while the normalized volume of the simplex {1, 2, 5} is
four.

Definition 8.13. The GKZ vector of a triangulation ∆ of A is the


vector
Xn X 
φ∆ := {vol(τ ) : τ ∈ ∆ and i ∈ τ } · ei ∈ Rn .
i=1

GKZ stands for Gelfand, Kapranov and Zelevinsky who discov-


ered and initiated much of this work [GKZ94].

Definition 8.14. A secondary polytope of A is any polytope


whose inner normal fan equals the secondary fan F(A).

Theorem 8.15. [GKZ94] The polytope


Σ(A) := conv({φ∆ : ∆ a triangulation of A})
is a secondary polytope of A. The vertices of Σ(A) are the GKZ
vectors of the regular triangulations of A.

Proof. [BFS90, §2] In order to show that Σ(A) is a secondary poly-


tope of A, we have to show that N (Σ(A)), the inner normal fan of
Σ(A), equals F(A), the secondary fan of A. We will prove that for
8. The Secondary Polytope 81

each regular triangulation ∆ of A, the secondary cone C∆ is con-


tained in NΣ(A) (φ∆ ). Recall that NΣ(A) (φ∆ ) is the inner normal
cone of Σ(A) at the vertex φ∆ . This will prove the theorem since
both N (Σ(A)) and F(A) are complete polyhedral fans in Rn .
Given a triangulation ∆ of A and a vector ω ∈ Rn , we obtain
a unique function gω,∆ with domain P = conv(A) as follows: set
gω,∆ (ai ) = ωi for the vertices ai of ∆ and require that gω,∆ is an
affine function on each simplex of ∆. This is an example of a piece-
wise linear function on ∆. When ∆ = ∆ω , the graph of gω,∆ is the
lower hull of P ω = conv(Aω ) where Aω is the lifting of A by ω.
Let ∆ be a regular triangulation of A, and let ω ∈ C∆ . For any
point aj ∈ A, the point (aj , ωj ) lies on or above the graph of gω,∆ .
So if we take a different triangulation ∆0 and consider gω,∆0 then its
graph is contained on or above the graph of gω,∆ . In other words,
gω,∆ (x) ≤ gω,∆0 (x) for all x ∈ P . This implies that
Z Z
gω,∆ (x)dx ≤ gω,∆0 (x)dx
x∈P x∈P
0
for all triangulations ∆ of A. Now observe that

Z X Z
gω,∆ (x)dx = gω,∆ (x)dx
x∈P τ ∈∆, facet x∈τ
X
= vol(τ ) · ( barycentric value of gω,∆ on τ )
τ ∈∆, facet
X 1X
= vol(τ ) · gω,∆ (ai )
d i∈τ
τ ∈∆, facet
n
1X X
= ωi vol(τ )
d i=1
τ ∈∆ : i∈τ
1
= (ω · φ∆ ).
d
Since the same formula holds for ∆0 , we get that (ω · φ∆ ) ≤ (ω ·
φ∆0 ) for all triangulations ∆0 of A. But this implies that φ∆ lies in
face−ω (Σ(A)) or equivalently, ω is contained in the inner normal cone
NΣ(A) (φ∆ ). 
82 8. The Secondary Polytope

Remark 8.16. The above proof also shows that the collection of
full dimensional secondary cones form a polyhedral fan — the inner
normal fan of Σ(A).

Example 8.17. Let us construct the secondary polytope of the con-


figuration in Example 8.3.

regular triangulation GKZ vector


∆1 = {{1, 2, 3}, {1, 3, 4}, {1, 4, 5}} (5, 1, 4, 4, 1)
∆2 = {{1, 2, 4}, {2, 3, 4}, {1, 4, 5}} (3, 4, 2, 5, 1)
∆3 = {1, 2, 5}, {2, 3, 4}, {2, 4, 5}} (1, 5, 2, 4, 3)
∆4 = {{1, 2, 5}, {2, 3, 5}, {3, 4, 5}} (1, 3, 4, 2, 5)
∆5 = {{1, 2, 3}, {1, 3, 5}, {3, 4, 5}} (3, 1, 5, 2, 4)
This can be read off from the determinants of the simplices of
this configuration that are computed below:

simplex τ vol(τ )
{1, 2, 3} 1
{1, 2, 4} 2
{1, 2, 5} 1
{1, 3, 4} 3
{1, 3, 5} 2
{1, 4, 5} 1
{2, 3, 4} 2
{2, 3, 5} 2
{2, 4, 5} 2
{3, 4, 5} 2
Computing the convex hull of the five GKZ vectors in PORTA
we get the following description of the secondary polytope which is
two-dimensional.
INEQUALITIES_SECTION
( 1) + x2+ x3- x4-x5 == 0
( 2) +13x1+11x2-4x3-15x4 == 0
( 3) + x3+ 2x4+x5 == 13

( 1) -3x4-2x5 <= -14


8. The Secondary Polytope 83

( 2) - x4 <= -2
( 3) - x5 <= -1
( 4) + x4+ x5 <= 7
( 5) +2x4+ x5 <= 11

END

strong validity table :


\ P | |
\ O | |
I \ I | |
N \ N | 1 | #
E \ T | |
----------------------
1 | *...* : 2
2 | ...** : 2
3 | **... : 2
4 | ..**. : 2
5 | .**.. : 2
...........
# | 22222
This shows that the secondary polytope is a pentagon as we ex-
pect and that the fan shown in Figure 1 is its inner normal fan. Verify
this.
Exercise 8.18. (1) Compute the GKZ coordinates of the six
regular triangulations in Exercise 8.10 and the GKZ vec-
tor of the non-regular triangulation in this family that we
have been seeing. Where does the vector of the non-regular
triangulation lie in the secondary polytope?
(2) Further, deduce that the vertices of Σ(A) corresponding to
these regular triangulations lie on a common facet of the
secondary polytope. (It seems that we must find the nor-
malized volumes of many triangulations, but really we only
have to find it for two of them!)
Chapter 9

The Permutahedron

In this chapter we investigate the secondary polytope of a prism over


a simplex. This material is taken entirely from [DRS, §5.2].
Recall that ∆n = conv({e1 , . . . , en+1 }) is the unit n-simplex and
I = ∆1 is a line segment. We wish to study the prism over an n-
simplex, any example of which is combinatorially equivalent to the
product ∆n × I. Thus we will use ∆n × I to denote a prism over an
n-simplex. The prism ∆n × I is an (n + 1)-dimensional polytope with
2(n + 1) vertices. It has two simplicial facets which are both copies
of ∆n which we call the top and bottom facets of ∆n × I. In addition
it has n + 1 vertical facets of the form ∆n−1 × I.
For convenience we will denote the vertices of the bottom simpli-
cial facet by p1 , . . . , pn+1 and the vertices of the top simplicial facet by
q1 , . . . , qn+1 such that pi is directly under qi . Note that any four ver-
tices of the form pi , qi , pj , qj form a quadrilateral 2-face of the prism.
This is key to proving the following fact about maximal simplices in
a triangulation of ∆n × I.

Lemma 9.1. A set of n + 2 vertices of ∆n × I form the vertices of


an (n + 1)-simplex if and only if two of them form a pair pi , qi and
the remaining n of them are taken one from each of the remaining n
pairs {pj , qj }, i 6= j.

Exercise 9.2. Prove Lemma 9.1.

85
86 9. The Permutahedron

Lemma 9.1 says that if σ is a maximal simplex in a triangulation


of ∆n × I, then σ has n vertical facets contained in the vertical facets
of ∆n × I that are not incident to any other maximal simplex of the
triangulation. There are two other facets — one opposite the vertex
pi and the other opposite the vertex qi . We call these the top and
bottom facets of σ respectively. This implies that every triangulation
of ∆n × I has a linearly ordered sequence of simplices, starting with
a simplex incident to the top facet of the prism and ending with
a simplex incident to the bottom facet of the prism such that the
bottom facet of one simplex is incident to the top facet of the next
simplex. For an example, see Figure 1.
q3 q3

q1 q1

q2 q2

p3 p3

p1 p1

p2 p2

Figure 1. A triangulation of ∆n × I.

Theorem 9.3. There is a bijection between the triangulations of


∆n × I and the permutations of [n + 1] which are the elements of
the symmetric group Sn+1 .
(1) Let π = i1 · · · in+1 be a permutation of [n + 1]. Then the
following n + 1 simplices form a triangulation of ∆n × I:

Tπ := {pi1 , . . . , pik , qik , . . . , qin+1 } : k = 1, . . . , n + 1 .
(2) All triangulations of ∆n × I have this form. In particular,
they are all equivalent to each other.
(3) Two regular triangulations of ∆n × I are adjacent vertices
of the secondary polytope of ∆n × I if and only if the cor-
responding permutations differ by the exchange of a pair of
consecutive elements.
9. The Permutahedron 87

In particular, ∆n × I has exactly (n + 1)! triangulations and each


triangulation has exactly n + 1 simplices.

We will not prove (3) as we haven’t developed the notion of ad-


jacency of triangulations. Two regular triangulations are adjacent if
they index adjacent vertices of the secondary polytope. However, this
is a special case of a more general notion of adjacency between pairs
of triangulations that extends to even the non-regular triangulations
and creates a graph in which the triangulations are the vertices and
the edges are defined by this notion of adjacency that we are referring
to. The edge graph of the secondary polytope is a (n − d)-connected
subgraph of this graph of all triangulations.

Proof. [DRS] Let’s prove (2). The proof of (1) is similar. Let T be
a triangulation of ∆n × I and σ1 its unique maximal simplex incident
to the top facet of the prism. Let pi1 ∈ σ1 be the vertex opposite
to the top facet of σ1 . The only facet of σ1 that is interior to the
prism is the bottom facet — opposite to the vertex qi1 . This facet is
the top facet of the next maximal simplex σ2 in T which is obtained
by deleting qi1 from σ1 and inserting a second vertex pi2 . Again
the bottom facet of σ2 (the one opposite qi2 ) is the top facet of the
next maximal simplex σ3 containing a third bottom vertex pi3 and so
on. The vertex set of the k-th simplex we get in this process will be
{pi1 , . . . , pik , qik , . . . , qin+1 }. 

Example 9.4. (1) n = 1: In this case ∆1 × I is a square (iden-


tified with C2 ). It has precisely two triangulations shown
in Figure 2 which are in bijection with the permutations of
{1, 2}. The triangulations are:
(a) T12 := {{p1 , q1 , q2 }, {p1 , p2 , q2 }}
(b) T21 := {{p2 , q2 , q1 }, {p2 , p1 , q1 }}
(2) n = 2: In this case ∆2 × I is a triangular prism. It has
3! = 6 triangulations which are shown according to their
adjacencies in Figure 2. The secondary polytope is two-
dimensional. All six triangulations are regular and thus
the secondary polytope is a hexagon. You can check The-
orem 9.3 (3) on this example. The permutation indexing a
triangulation is written on top of the triangulation. Notice
88 9. The Permutahedron

that these permutations are adjacent — i.e., they are related


by the exchange of two consecutive letters in each.
123 132

12
q1 q2

3 3
1 1
2 2
213 312
p1 p2

3 3
q1 q2 1 1
2 2
231 321

p1 p2
21 3 3
1 1
2 2

Figure 2. Triangulations of ∆1 × I and ∆2 × I.

Exercise 9.5. In the triangulation Tπ show that the diagonal in the


square with vertices pi , qi , pj , qj will go from pi to qj if and only if i
comes before j in the permutation π. Check this on the triangulations
in Figure 2. Can you prove this in general? This gives an easy way
to draw Tπ given π.

Looking carefully at the two secondary polytopes we implicitly


have in Figure 2, we see that its vertices are labeled by all the elements
of a symmetric group and that two vertices are adjacent when the
permutations are adjacent in the sense we have described. Since the
symmetric group is a classical object and adjacent permutations have
great significance in the study of symmetric groups, then following
polytope should come as no surprise.

Definition 9.6. [Zie95, Chapter 0] Let π = i1 · · · in ∈ Sn and vπ :=


(i1 , . . . , in ) ∈ Rn . The permutahedron Πn is the convex hull of the
vectors {vπ : π ∈ Sn }.
9. The Permutahedron 89

The permutahedron Πn is an (n − 1)-dimensional polytope in


Rn . (Note that all the vectors vπ lie on the hyperplane
P
xi =
n(n+1)
2 .) Each vπ is a vertex of Πn and two vertices vπ and vπ0 are
adjacent if and only if the permutations π and π 0 are adjacent (i.e.,
differ by the exchange of two consecutive elements). The faces of
a permutahedron are products of lower dimensional permutahedra.
Verify this in Figure 3 which shows a Schlegel diagram of Π4 .
4132
4123

1432
1423 1342
1243
1324 3142
1234
3124
2143 3412
2134 4312
3214
2314
2413 3421
3241
2431 2341
4213

4321

4231

Figure 3. The permutahedron Π4 .

We will now prove that the secondary polytope of ∆n ×I is affinely


isomorphic to the permutahedron Πn+1 . The secondary polytope will
have dimension 2(n+1)−(n+1)−1 = n and will have (n+1)! vertices
which agrees with the dimension and number of vertices of Πn+1 .
Definition 9.7. A triangulation of A is said to be unimodular if
all its simplices are unimodular (i.e., have unit normalized volume).
Exercise 9.8. Check that all triangulations of the two prisms in
Figure 2 are unimodular.
Lemma 9.9. All full dimensional simplices of ∆n × I have the same
volume. In particular, all triangulations of ∆n × I are unimodular.
90 9. The Permutahedron

Proof. We prove this by induction on n. You can check from Figure 2


that the statement is true for n = 1. Let F be a vertical facet of
∆n × I. Then F is affinely isomorphic to ∆n−1 × I and by induction,
all maximal simplices contained in F have the same volume. The
pair of vertices pi , qi opposite to F are at the same distance from the
affine span of F . Hence any two (n + 1)-simplices having a facet in F
must have its unique other vertex be either pi or qi and hence have
the same volume. However, every pair of (n + 1)-simplices of ∆n × I
have facets in a common vertical facet of ∆n × I which proves the
lemma. 
Theorem 9.10. The secondary polytope of ∆n ×I is affinely isomor-
phic to Πn+1 .

Proof. Let Tπ be a triangulation of ∆n × I where π = i1 · · · in+1 ∈


Sn+1 . Let φTπ be the GKZ vector of Tπ and φTπ (pij ) be its coordinate
corresponding to pij . Recall that

Tπ = {pi1 , . . . , pik , qik , . . . , qin+1 } : k = 1, . . . , n + 1 .
This implies that if qij is in k simplices then pij is in n + 1 − k + 1 =
n + 2 − k simplices. Thus, by Lemma 9.9,
φTπ (pij ) = n + 2 − φTπ (qij ) for all j = 1, . . . , n + 1.
Thus if we know the pij -coordinates of the GKZ vector of Tπ , we can
reconstruct the qij -coordinates. This also means that we can project
all the GKZ vectors to the (n + 1)-vectors corresponding to their
q-coordinates and get a polytope that is affinely isomorphic to the
secondary polytope of ∆n × I. We already saw that the vertex qik
lies in exactly k simplices of Tπ which means that the projected GKZ
vector of Tπ is precisely vπ−1 where π −1 is the permutation inverse
to π in the symmetric group Sn+1 . Putting all this together we have
that the secondary polytope of ∆n × I is affinely isomorphic to the
permutahedron Πn+1 . 
Corollary 9.11. All triangulations of ∆n × I are regular.

To end this chapter, we briefly investigate the secondary polytope


of an n-gon which is commonly known as an associahedron. This
material is also taken from [DRS], but most of it will be developed
through exercises.
9. The Permutahedron 91

Exercise 9.12. Prove that all triangulations of the n-gon are regular.
Hint: Note that all triangulations of the 4-gon and 5-gon have at least
two faces with vertices {i, i + 1, i + 2}. Show that this is true for any
n-gon.

Exercise 9.13. Show that the number of triangulations of the n-gon


1 2n−4

is n−1 n−2 .

1 2n

Hints: The sequence ( n+1 n ) is known as the Catalan sequence
and its terms, the Catalan numbers. For Exercise 9.13 let Tn denote
the set of all triangulations of the n-gon and tn := |Tn |. Let c1 be the
surjective map c1 : Tn+1 −→ Tn that contracts the edge {1, n + 1} in
each triangulation of the (n + 1)-gon. Proceed as follows:
(1) Given some fixed triangulation ∆ ∈ Tn how many triangu-
lations in Tn+1 will be mapped to ∆ under c1 ? Experiment
with n = 4.
(2) Let deg(1, ∆) be the number of edges in ∆ that contain the
vertex 1. Argue that
X
tn+1 = deg(1, ∆).
∆∈Tn

(3) There was nothing special about contracting along the edge
{1, n + 1}. Argue that
n X
X
ntn+1 = deg(i, ∆).
i=1 ∆∈Tn

(4) Argue that for any ∆ ∈ Tn ,


n
X
deg(i, ∆) = 2(2n − 3).
i=1

(5) Now give a (multiplicative) recurrence for tn+1 . Rinse and


repeat.
The Catalan numbers count many other well studied and impor-
tant combinatorial objects, and we will explore two of these and see
how they relate to triangulations of the n-gon. For this we take the
5-gon as our working example.
92 9. The Permutahedron

Definition 9.14. A binary tree is a tree where every node has at


most two descendants, one labeled L (left) and the other R (right).

Let ∆ be a triangulation of the (n+2)-gon with facets {σi }. Place


a vertex ui in the interior of every σi and form the dual graph dual(∆)
with vertices ui and edges {ui , uj } whenever σi ∩ σj intersect at an
edge of ∆. Then dual(∆) is a binary tree with n nodes and n − 1
vertices. Do the following exercises for the 5-gon and then convince
yourself that these results are true in general.
Exercise 9.15. Show that there is a bijection between the set Tn+2
and the set of binary trees on n vertices.

A parenthesization of n + 1 objects is any bracketing of the n + 1


objects that specifies an order in which to carry out multiplication.
For example (a(bc)) is a parenthesization of the three objects a, b, c
that says to first compute bc and then multiply by a.
Given a binary tree with n nodes consider the following rule for
parenthesizing n + 1 objects: For the root place one pair of brackets
around the n + 1 objects and recursively perform the following: if
the right/left child of a given parent has k − 1 ≥ 0 descendants then
enclose the k + 1 rightmost/leftmost factors within the ones enclosed
in the parent parentheses.
Exercise 9.16. Show that there is a bijection between the set of
binary trees on n vertices and the set of parenthesizations of n + 1
objects.
Exercise 9.17. From Figure 1 of Chapter 8, confirm that two vertices
of the secondary polytope of the 5-gon form an edge of the secondary
polytope if their corresponding parentheses differ only by one use of
the associative law a(bc) = (ab)c. (This is true in general: the edges
of the secondary polytope of an n-gon are defined by those vertices
that differ by only one use of the associative law. This explains the
name associahedron for the secondary polytopes of n-gons.)
Chapter 10

Abstract Algebra:
Polynomial Rings

In this chapter we will study polynomial rings and ideals which will
eventually get us to more polytopes. See [CLO92] for more details on
this material. Recall that N denotes the set of non-negative integers.

Definition 10.1. (1) A monomial in the n variables x1 , . . . , xn


is a product of the form xa1 1 xa2 2 · · · xann where a1 , a2 , . . . , an ∈
N. In short form, we write the monomial xa1 1 xa2 2 · · · xann as
xa where x = (x1 , . . . , xn ) and a = (a1 , . . . , an ) ∈ Nn .
(2) A polynomial in the n variables x1 , . . . , xn over a ring R
is a finite linear combination of monomials xa with coeffi-
cients in R. It has the general form f (x1 , . . . , xn ) = f (x) =
ca xa where ca ∈ R. If the set of variables is clear then
P

we typically denote f (x) as just f .


(3) The simplest polynomials are of the form ca xa . They are
called terms.
ca xa is the finite set
P
(4) The support of a polynomial f =
n
supp(f ) := {a ∈ N : ca 6= 0}.

Let R[x1 , . . . , xn ] = R[x] denote the set of all polynomials in


x1 , . . . , xn over R. We can define a natural addition and multipli-
P f a
cation in R[x] as follows. Given two polynomials f = ca x and

93
94 10. Abstract Algebra: Polynomial Rings

cgb xb in R[x], let


P
g=
X
f + g := (cfm + cgm )xm .
m∈supp(f )∪supp(g)

In the above sum, if m ∈ supp(f )\supp(g), then set cgm = 0 and


similarly, if m ∈ supp(g)\supp(f ), then set cfm = 0. The product of
two monomials xa and xb is the new monomial xa+b . Extending this
to polynomials we define the product of the polynomials f and g as
X
f · g := cfa cgb xa+b .
{(a,b) : a∈supp(f ),b∈supp(g)}
√ 5
Exercise 10.2. Let f = x31 x62 − 21 x53 + 16 and g = 2x2 + 13 be
polynomials in R[x1 , x2 , x3 ]. Find f + g and g 2 .
Definition 10.3. The set R[x] of all polynomials in x1 , . . . , xn over
R, along with the operations of addition and multiplication defined
above, is called the polynomial ring in x1 , . . . , xn over R. The ring
R is called the coefficient ring of R[x].
Exercise 10.4. Check that R[x] is a ring under the operations of
addition and multiplication on polynomials defined above.

Every polynomial in R[x] has a natural geometric object asso-


ciated to it called its zero-set or variety. This is the collection
of all points {(r1 , . . . , rn ) ∈ Rn : f (r1 , . . . , rn ) = 0} denoted as
VR (f ). An element of VR (f ) is called a zero or root of f . For
example, if x2 − 1 ∈ Z[x], then VZ (x2 − 1) = {1, −1}. In fact,
VZ (x2 − 1) = VR (x2 − 1) = VC (x2 − 1). However, for the polyno-
mial x2 + 1, VZ (x2 + 1) = VR (x2 + 1) = ∅ while VC (x2 + 1) = {i, −i}.
Thus the variety of a polynomial in R[x] depends on the coefficient
ring R.
If f is a non-zero constant — i.e., a non-zero element of R —
then VR (f ) = ∅. This is true no matter what R is. What conditions
on R do we need to ensure that all polynomials in R[x] other than
the constant polynomials have non-empty varieties? To investigate
an example, let us start with R = Z and consider the univariate√
polynomial ring Z[x]. Then we see that VZ (x2 − 2) = ∅ since 2 ∈ R
but not in Z. So we enlarge our coefficient ring from Z to R. However,
VR (x2 + 1) = ∅ while VC (x2 + 1) = {i, −i}. This shows that we need
10. Abstract Algebra: Polynomial Rings 95

to enlarge R to C. In fact C is good enough. The fundamental


theorem of algebra states that every non-constant polynomial in
C[x] of degree d has exactly d zeros counting multiplicities.
Definition 10.5. A field F is algebraically closed if every poly-
nomial in the univariate polynomial ring F [x] has a root in F .

It requires work to show that algebraically closed fields exist and


that every field is contained in an algebraically closed field called its
algebraic closure. For instance, the algebraic closure of R and Q
is C. From now on we will mostly be interested in polynomial rings
over algebraically closed fields. In fact, we mostly consider the poly-
nomial ring C[x1 , . . . , xn ] although occasionally we will also consider
polynomial rings over Z, Q and R.
Exercise 10.6. Check that VR (x2 + y 2 − 1) is the unit circle in R2
centered at the origin. What do you expect VC (x2 + y 2 − 1) to look
like? What is VZ (x2 + y 2 − 1)?

An algebraic set in Rn is any subset of Rn that consists of the


zeros of a system of polynomials — not necessarily finite. Clearly,
VR (f ) is an algebraic set for all f ∈ R[x]. A variety cut out by a single
non-zero polynomial is called a hypersurface. We now examine
varieties cut out by more than one polynomial. It is most efficient
to do this via polynomial ideals. From now on we always consider
polynomial rings over algebraically closed fields k.
Definition 10.7. A subset I ⊆ k[x] is an ideal if (1) (I, +) is an
abelian subgroup of k[x], and (2) for all h ∈ k[x] and g ∈ I, hg ∈ I.

Note that by property (2), I = k[x] if any non-zero element c of


k is in I. This is because if c ∈ I, then c−1 c = 1 ∈ I by property (2)
where we take c−1 ∈ k ⊂ k[x] and c ∈ I. This in turn implies that
for any f ∈ k[x], f · 1 = f ∈ I again by property (2).
Definition 10.8. Given a set of polynomials P ⊂ k[x], the ideal
generated by P is the set
X
hP i := { hp p : hp ∈ k[x], p ∈ P }.
We say that P is a basis of the ideal hP i.
96 10. Abstract Algebra: Polynomial Rings

In the 1890’s Hilbert proved that every polynomial ideal in k[x]


has a finite basis. This theorem is known as Hilbert’s Basis Theorem
and is a cornerstone of commutative algebra and algebraic geometry.
We will see a proof of this theorem in Chapter 12. Let’s take a look
at some examples of ideals.

Example 10.9. (1) A principal ideal is generated by a single


polynomial f ∈ k[x]. By definition, hf i = {hf : h ∈ k[x]}.
All elements of hf i are divisible by the generator f .
(2) Every matrix A with entries in k defines an ideal as follows.
If a = (a1 , . . . , an ) is a row of A then define fa := a1 x1 +
a2 x2 + · · · + an xn ∈ k[x1 , . . . , xn ]. The ideal generated by
the linear polynomials fa as a runs over the rows of A is
called the linear ideal of the matrix A. Note that this
ideal contains non-linear polynomials such as fa2 .
(3) If all the generators of an ideal are monomials, we have a
monomial ideal. Note that there are many non-monomials
c a xa
P
in a monomial ideal. However, if a polynomial f =
a
is in a monomial ideal, then every x is also in the monomial
ideal. This implies that xa is divisible by a (monomial) gen-
erator of the ideal. This observation allows one to “draw”
monomial ideals as follows. Identify a monomial xa in the
monomial ideal M with its exponent vector a ∈ Nn . Draw
M as the collection {a : xa ∈ M }. This collection of lattice
points in Nn is in bijection with the monomials in M .

Exercise 10.10. (1) Draw the monomial ideal hx3 , x2 y 2 , xy 4 i.


(2) If M = hxm1 , · · · , xmt i, then check that the picture of M is
precisely
t
[
(mi + Nn ).
i=1

(3) Let M = hx : α ∈ Ii. Then show that xβ ∈ M if and only


α

if xβ is divisible by xα for some α ∈ I.


(4) Two monomial ideals are the same if and only if they contain
the same monomials.
10. Abstract Algebra: Polynomial Rings 97

Exercise 10.11. Prove Hilbert’s basis theorem for monomial ideals.


(You need to show that if an ideal is generated by a collection of
monomials (possibly infinite), then the ideal is in fact generated by a
finite subset of the above basis.)
Hints: (from [CLO92]): Let M = hxα : α ∈ Ii ⊂ k[x] be a
monomial ideal where I is some, possibly infinite, index set. We
want to show that there exists α(1), . . . , α(s) ∈ I such that M =
hxα(1) , . . . , xα(s) i.
(1) Approach this problem by induction on the number of vari-
ables in k[x1 , . . . , xn ].
(2) Write each monomial in k[x1 , . . . , xn ] as xα xm n where α ∈
Nn−1 . Let J be the ideal in k[x1 , . . . , xn−1 ] defined by hxα :
xα x m
n ∈ M i. With (1) in mind, what can you say about J?

(3) So J can be generated by finitely many elements say

{xα(1) , . . . , xα(t) }

with xα(i) xm
n ∈ M for each 1 ≤ i ≤ t. Let
i

m := max{m1 , . . . , mt }

and for every k, 0 ≤ k ≤ m − 1 consider the ideal Jk ⊂


k[x1 , . . . , xn−1 ] generated by monomials xβ such that xβ xkn ∈
M . Each Jk has a finite generating set {xαk (1) , . . . , xαk (tk ) }.
(4) Now define S = {xα(1) xm n ,...,x
α(t) m
xn } and
αk (1) k αk (tk ) k
Sk = {x xn , . . . , x xn } for every 0 ≤ k ≤ m − 1.
Show that S ∪ S0 ∪ · · · Sm−1 is a generating set for M .

Definition 10.12. The variety of a collection of polynomials P ⊆


k[x] is the set

Vk (P ) := {(r1 , . . . , rn ) ∈ kn : p(r1 , . . . , rn ) = 0 for all p ∈ P }.

Exercise 10.13. (1) Show that

Vk ({f1 , . . . , ft }) = Vk (hf1 , . . . , ft i).

Then, by Hilbert’s basis theorem, the variety of any poly-


nomial ideal is also the zero-set of a finite number of poly-
nomials.
98 10. Abstract Algebra: Polynomial Rings

(2) Compute VR (x2 + y 2 − 1, x − 1/2). Using (1), find a different


set of polynomials that cut out the same variety.
(3) Compute VR (hx3 , x2 y 2 , xy 4 i) and compare it to VR (hxi) where
hxi ⊂ R[x, y].
(4) What is the general form of the variety (over R) of a mono-
mial ideal M = hxm1 , · · · , xmt i? Does it matter what the
field k is?

Definition
√ 10.14. The radical of an ideal I ⊆ k[x] is the ideal
I := {f ∈ k[x] : f r ∈ I for some power r ∈ N}.

Check that I is an ideal √ and that it contains I. We say that
I is a radical ideal if I = I. For a monomial xm ∈ k[x] define
its support to be supp(xm ) := {i : mi > 0}. Be careful not to be
confused by the use of “support” in two different ways. The support of
a polynomial is a collection of vectors. In this sense, the support of a
monomial should be the set containing its exponent vector. However,
what one usually means by the support of a monomial xm is the set
of indices {i : mi > 0} which coincides with, supp(m), the support
of the vector m.
p
Exercise 10.15. (1) Show that hx3 , x2 y 2 , xy 4 i = hxi.
(2) In general, if M = hxm1 , · · · , xmt i is a monomial ideal then
show that
√ Y
M =h xj , i = 1 . . . , ti.
j∈supp(xmi )

(3) Further, show that both M and √ M have the same variety
over any field k. Similarly, I and I have the same variety
over any field k.

This brings us to a second famous theorem of Hilbert from the


1890’s.

Theorem 10.16. Hilbert’s Nullstellensatz:


Weak form: Let k be an algebraically closed field and I ⊂ k[x] be
an ideal. Then Vk (I) = ∅ if and only if I = k[x].
Strong form: Let k be an algebraically closed field. If I ⊂ k[x] is an
10. Abstract Algebra: Polynomial Rings 99

ideal, then the set of√all polynomials that vanish on Vk (I) are precisely
the polynomials in I.

The weak Nullstellensatz says that a system of polynomials in


k[x] has at least one solution if and only if the ideal generated by
the polynomials is not all of k[x]. The strong Nullstellensatz shows
that many different ideals in k[x] can cut out the same variety in
kn . A simple example to keep in mind are the ideals hxl i in k[x] for
all l = 1, 2, . . . which cut out the same variety {0} ⊂ k. However,
there is a one-to-one correspondence between radical ideals in k[x]
and varieties in kn . This creates an algebra-geometry dictionary that
allows us to pass from geometric objects such as varieties to algebraic
objects such as ideals which are easier to manipulate. See Chapter 4
in [CLO92] for more details.
Chapter 11

Gröbner bases I

This chapter and the next aim to give a brief introduction to the basics
of Gröbner basis theory. By now, there are many excellent books
on Gröbner bases and their applications such as [AL94], [CLO92],
[CLO98], [GP02] and [KR00]. Our account here will be brief.
From now on, let S := k[x1 , . . . , xn ] = k[x] be the polynomial
ring in n variables over an algebraically closed field k. Let I be an
ideal of S. By Hilbert’s basis theorem I has a finite generating set.
Gröbner bases of I are special finite generating sets of I. We first
motivate these bases and then define and construct them.
Given an ideal I ⊂ S and a polynomial f ∈ S, a fundamental
problem is to decide whether f belongs to I. This is known as the
ideal membership problem. We will see shortly that Gröbner bases can
be used to solve this problem. We begin by examining algorithms for
ideal membership in two familiar families of ideals.

(i) Univariate Ideals: (See [CLO92, Chapter 1.5].) Consider the


univariate polynomial ring k[x]. If deg(f ) denotes the degree of a
polynomial f ∈ S, then f has the form

f = kp xp + kp−1 xp−1 + · · · + k0

where p = deg(f ), kp 6= 0, and all ki ∈ k. We say that f is monic


if its leading coefficient kp equals one. Given two polynomials f

101
102 11. Gröbner bases I

and g in S with deg(f ) ≥ deg(g), we can divide f by g to get unique


polynomials h and r ∈ k[x] such that f = hg + r where r is the
remainder and deg(r) < deg(g). This is the usual long division of f
by g that you may remember from high school.

Exercise 11.1. (1) Divide x4 + 2x + 3 by 5x2 + 2.


(2) Write a pseudo-code for the division algorithm in k[x].

Theorem 11.2. Every ideal of k[x] is principal. A non-zero ideal I


in k[x] is generated by any non-zero polynomial in it of lowest degree.

Exercise 11.3. Let us outline a proof of Theorem 11.2. Let f be a


non-zero polynomial in I of lowest degree. Then clearly hf i ⊆ I. So
the work is to show that if g ∈ I then g ∈ hf i, or equivalently, that
f divides g. Since deg(g) ≥ deg(f ) we can divide g by f to get the
unique polynomials q and r such that g = qf +r with deg(r) < deg(f ).
If r = 0 then g ∈ hf i. If r 6= 0, can you derive a contradiction, and
thus conclude that r = 0 as we want?

Definition 11.4. The g.c.d of two polynomials f and g in k[x] is a


polynomial h such that (1) h divides both f and g, and (2) if p is a
polynomial that divides f and g then p divides h.

Given two polynomials f and g in k[x], we can compute their


g.c.d. by the Euclidean algorithm which works as follows. See
[CLO92, Chapter 1.5] for a proof of its correctness. We use rem(h, s)
to denote the remainder of h on division by s.

Input: f, g
Initialize: h := f, s := g
While s 6= 0 do
r := rem(h, s), h := s, s := r
Output: h = g.c.d.(f, g)

Theorem 11.5. [CLO92, Proposition 6, §1.5]


(1) If f, g ∈ k[x], then g.c.d.(f, g) exists and is unique up to
multiplication by a non-zero constant.
(2) The ideal hf, gi is generated by g.c.d.(f, g).

Exercise 11.6. Prove part (2) of Theorem 11.5.


11. Gröbner bases I 103

G.c.d.s can be computed for more than two polynomials in k[x].

Definition 11.7. The g.c.d. of polynomials f1 , . . . , fs ∈ k[x] is a


polynomial h such that (1) h divides f1 , . . . , fs , and (2) if p is a
polynomial that divides f1 , . . . , fs then p divides h.

Theorem 11.8. [CLO92, Proposition 8, §1.5]


(1) The g.c.d. of f1 , . . . , fs exists and is unique up to multipli-
cation by a non-zero constant.
(2) The ideal hf1 , . . . , fs i is generated by g.c.d.(f1 , . . . , fs ).
(3) If s ≥ 3 then g.c.d.(f1 , . . . , fs ) = g.c.d.(f1 , g.c.d.(f2 , . . . , fs )).

Exercise 11.9. Show that the variety of the ideal hx2 +1, x3 −2x+1i
in C[x] is empty.

We now have algorithms for solving the following three funda-


mental problems for a univariate polynomial ideal I ⊆ k[x].
• Finding a basis for I: If I = hf1 , . . . , ft i ⊂ k[x], then I is
generated by g = g.c.d.(f1 , . . . , ft ) which can be computed
by the Euclidean Algorithm.
• Ideal membership: If f ∈ k[x] then, f ∈ I = hgi if and
only if the remainder obtained by dividing f by g is zero.
Thus ideal membership can be determined by the division
algorithm.
• Solving {f1 = f2 = · · · = ft = 0}, fi ∈ k[x]: The variety
Vk (f1 , . . . , ft ) = Vk (g) where g = g.c.d.(f1 , . . . , ft ). The
roots of g can be found via radicals when its degree is small
and by numerical methods otherwise.

(ii) Linear ideals: [Stu96, Chapter 1] Let A ∈ Zd×n be a matrix of


rank d. Recall that the linear ideal of A is:
* n +
X
I= aij xj : i = 1, . . . , d ⊂ R[x].
j=1

The variety VR (I) is the (n − d)-dimensional vector space


kerR (A) = {p ∈ Rn : Ap = 0}.
104 11. Gröbner bases I

A non-zero linear form f in I is a circuit of I if f has minimal


support (with respect to inclusion) among all polynomials in I. The
coefficient vector of a circuit of I is therefore, a vector in the row span
of A of minimal support. Let B be any (n − d) × n integer matrix
whose rows form a basis of kerR (A). Then the vectors in the row span
of A are precisely the linear dependencies on the columns of B. The
coefficient vectors of the circuits of I are therefore, the dependencies
on the columns of B of minimal support.
For J ⊆ [n] with |J| = d, let det(AJ ) be the determinant of AJ ,
the submatrix of A with column indices J. The following algorithm
computes the circuits of I.
Algorithm 11.10. [Stu02, Chapter 8.3] For any (n − d + 1)-subset
τ = {τ1 , . . . , τn−d+1 } ⊆ [n], form the vector
n−d+1
X
Cτ := (−1)i · det(Bτ \{τi } ) · eτi
i=1
where ej is the jth unit vector of Rn . If Cτ is non-zero, then compute
the primitive vector obtained by dividing through with the g.c.d. of
its components. The resulting vector is a circuit and all circuits are
obtained this way.
 
1 2 3 4 5
Example 11.11. Let A = . Then
6 7 8 9 10
I = hx1 + 2x2 + 3x3 + 4x4 + 5x5 , 6x1 + 7x2 + 8x3 + 9x4 + 10x5 i.
The rows of
3 −4 0 0 1
 

B =  2 −3 0 1 0 
1 −2 1 0 0
form a basis for kerR (A). Let us compute one of the circuits of A.
For τ = {1, 2, 3, 4},
−4 0 0
   
3 0 0
Cτ = −det  −3 0 1  e1 + det  2 0 1  e2
−2 1 0 1 1 0
3 −4 0 3 −4 0
   

−det  2 −3 1  e3 + det  2 −3 0  e4
1 −2 0 1 −2 1
11. Gröbner bases I 105

which equals (−4, −3, −2, −1, 0). Hence 4x1 + 3x2 + 2x3 + x4 is a
circuit of I.

Exercise 11.12. Compute all circuits of the linear ideal of the matrix
A in the above example. What is a natural upper bound for the
number of circuits of the linear ideal of a d × n matrix A?

Proposition 11.13. Let C = (cij ) ∈ Rd×n be the Gauss-Jordan form


Pn
(reduced row-echelon form) of A and gi = j=1 cij xj be the linear
forms corresponding to the rows of C. Let I be the linear ideal of A.
Then:
(1) {g1 , . . . , gd } is a minimal generating set for I, and
(2) the linear forms g1 , . . . , gd are circuits of I.

Proof. (1) Since every row of C is a linear combination of rows


of A and vice-versa, every gi is a linear combination of the
fi ’s and every fi a linear combination of the gi ’s. Thus
I = hf1 , . . . , fd i = hg1 , . . . , gd i. Since C is in reduced row-
echelon form, we may assume that C = [I | E] where I is
Pn
the d × d identity matrix. Therefore, gi = xi + j=d+1 eij xj
for each i = 1, . . . , d. This implies that no gi is a linear
combination of {gj , j 6= i} and thus {g1 , . . . , gd } is a minimal
generating set for I.
(2) Again assume without loss of generality that gi = xi +
Pn
j=d+1 eij xj for each i = 1, . . . , d. Suppose g1 is not a
circuit. Then there exists a linear polynomial g ∈ I such
that supp(g) ( supp(g1 ). However, g = t1 g1 + . . . + td gd for
scalars t1 , . . . , td ∈ R. Since supp(g) ⊂ supp(g1 ), t2 = t3 =
· · · = td = 0. This implies that g = t1 g, t1 6= 0 and hence
supp(g) = supp(g1 ), a contradiction. The same argument
can be repeated for g2 , . . . , gd .


Proposition 11.14. Assume the notation as in Proposition 11.13


and its proof.
(1) A polynomial f ∈ S lies in I if and only if successively
replacing every occurrence of xi , i = 1, . . . , d, in f , with
Pn
− j=d+1 eij xj results in the zero polynomial.
106 11. Gröbner bases I

(2) To solve the linear system Ax = 0, we back solve the “tri-


angularized” system g1 = g2 = · · · = gd = 0.

Proof. (1) Let f 0 be obtained from f by successively replacing


Pn
every xi , i = 1, . . . , d, in f , with − j=d+1 eij xj . Then
Pd
f 0 ∈ R[xd+1 , . . . , xn ]. This implies that f = i=1 hi gi + f 0
where hi ∈ R[x]. If f 0 = 0 then clearly f ∈ I. Conversely, if
Pd
f ∈ I, then f 0 = f − i=1 hi gi ∈ I ∩ R[xd+1 , . . . , xn ] = {0}.
The last equality follows from the fact that no polynomial
combination of g1 , . . . , gd can lie in R[xd+1 , . . . , xn ] because
of the special structure of the gi ’s.
(2) This is the familiar method from linear algebra of solving
linear systems by Gaussian elimination.


Proposition 11.14 (1) suggests a division algorithm for linear poly-


nomials in many variables that succeeds in determining ideal mem-
bership for linear ideals. Note that when we perform Gauss-Jordan
elimination on A to obtain C = [I | E], we are implicitly ordering the
variables in S such that x1 > x2 > · · · > xn . The division algorithm
suggested in Proposition 11.14 (1) replaces every occurrence of the
“leading term” xi in gi with xi − gi , which is the sum of the “trailing
terms” in gi .
Thus the questions we started with have well known algorithms
and answers when I is either a univariate principal ideal or a multi-
variate linear ideal. We now seek a common generalization of these
methods to multivariate polynomials of arbitrary degrees and their
ideals. This will lead us to Gröbner bases of polynomial ideals.
In order to mimic the procedures we saw thus far, we first need to
impose an ordering on the monomials in S = k[x] so that the terms in
a polynomial are always ordered. This is important if the generalized
division algorithm is to replace the leading term of a divisor by the
sum of its trailing terms. A total order on a set T is an ordering
of the elements of T in which any two elements are comparable. For
example, the usual “≤” ordering of the integers is a total order on Z.
A partial order on T is an ordering where not all pairs of elements
11. Gröbner bases I 107

may be comparable. For example, the vectors (2, 3, 0) and (1, 4, 0)


are incomparable if we order Z3 by the usual “≤” order which makes
(a1 , a2 , a3 ) ≤ (b1 , b2 , b3 ) if and only if a1 ≤ b1 , a2 ≤ b2 and a3 ≤ b3 .

Definition 11.15. A term order  on S is a total order on the


monomials of S such that
(1) xa  xb implies that xa xc  xb xc for all c ∈ Nn , and
(2) xa  x0 = 1 for all a ∈ Nn .

Example 11.16. The most common examples of term orders are the
lexicographic and the reverse lexicographic orders on S with respect
to a fixed ordering of the variables. Suppose x1  x2  · · ·  xn .
In the lexicographic order, xa  xb if and only if the left-most
non-zero term in a − b is positive. For example, if x  y  z, then
x3  x2 y  y 100  y 99 z 10000  y 99 .

In the (graded) reverse lexicographic order, xa  xb if and


only if either deg(xa ) > deg(xb ), or deg(xa ) = deg(xb ) and the right-
most non-zero term in a − b is negative. The degree of a monomial
is its usual total degree. Again if x  y  z, then
x3  x2 y  xy 2  y 3  x2 z  xyz  y 2 z  xz 2  yz 2  z 3 .

The reverse lexicographic order defined here is degree-compatible


which means that it first compares two monomials by degree and
then breaks ties using the rule described. Note that there are n! lex
(lexicographic) and revlex (graded reverse lexicographic) orders in S.

Exercise 11.17. Consider the following term orders on k[x, y]:


(i) lex ordering with x  y, and
(ii) graded reverse lex ordering with x  y.
Recall that we can identify the monomials in k[x, y] by the elements
of N2 . Draw two copies of N2 and see how its elements get ordered
by (i) and (ii).

Exercise 11.18. Show that the revlex order is not a term order if
we do not require it to be degree compatible — i.e., if we define it
as xa  xb if and only if the right-most non-zero term in a − b is
negative.
108 11. Gröbner bases I

Exercise 11.19. How many distinct term orders does k[x] have?

There are many other examples of term orders. In fact, every


vector in Rn≥0 can be used to define a term order as follows. Given
ω ∈ Rn≥0 , pick a fixed term order  on S such as a revlex order, and
define the total order ω as follows:
xa ω xb if either ω · a > ω · b or ω · a = ω · b and xa  xb .

All term orders can be mimicked by weight vectors when the


polynomials we are dealing with have bounded degrees. For instance,
the lex order on k[x, y] with x  y can be mimicked by the weight
vector ω = (100, 1) as long as the degrees of all monomials we will see
are less than 100. In general, we can use the weight vector (100, 100),
where  can be made as small as we want depending on the largest
degree of a monomial that we will encounter. In S we could mimic
the lex order with x1  · · ·  xn using
ω = (100, 100, 1002 , . . . , 100n−1 ).
Exercise 11.20. What weight vector can be used to mimic a revlex
order?

We now fix a term order  on S which immediately orders the


terms in a polynomial. The unique term in a polynomial f that
contains the highest monomial with respect to  is called the leading
term or initial term of f . We denote this term by LT (f ) and write
f = LT (f )+f 0 . Using this, we can attempt to write down a division
algorithm for multivariate polynomials. The following algorithm is
copied verbatim from [CLO92, §2.3, Theorem 3].
11. Gröbner bases I 109

Algorithm 11.21. Division algorithm for multivariate poly-


nomials [CLO92, Theorem 3]
INPUT: A dividend f ∈ S and an ordered set of divisors
F = [f1 , . . . , fs ] where each fi lies in S.
Ps
OUTPUT: Polynomials a1 , . . . , as , r ∈ S such that f = i=1 ai fi + r
where either r = 0 or no term in r is divisible by LT (f1 ), . . . , LT (fs ).
INITIALIZE: a1 := 0, . . . , as := 0, r := 0; p := f
WHILE p 6= 0 DO
i := 1
divisionoccurred := false
WHILE i ≤ s AND divisionoccurred = false DO
IF LT (fi ) divides LT (p) THEN
ai := ai + LT (p)/LT (fi )
p := p − (LT (p)/LT (fi ))fi
divisionoccurred := true
ELSE
i := i + 1
IF divisionoccurred = false THEN
r := r + LT (p)
p := p − LT (p)

Exercise 11.22. ([CLO92, Chapter 2.3, Examples 2 & 4])


Fix the lex order on k[x, y] such that x  y.
(1) Divide f = x2 y + xy 2 + y 2 by the ordered list of polynomials
[f1 = xy − 1, f2 = y 2 − 1] and record the remainder.
(2) Now repeat the division with the list of divisors reordered as
[f2 = y 2 − 1, f1 = xy − 1]. Record the remainder.
Note that the remainders are different. This example shows that
the above division algorithm for multivariate polynomials has several
drawbacks one of which is that it does not produce unique remainders.
This makes it impossible to check ideal membership of f in hf1 , f2 i
by dividing f with the generators f1 , f2 .

The above example shows that arbitrary generating sets of ideals


and a naive extension of the usual division algorithm cannot be used
for ideal membership. We will see that this difficulty disappears when
the basis of the ideal is a Gröbner basis.
Chapter 12

Gröbner bases II

ma xa ,
P
Given a term order  on S = k[x] and a polynomial f =
recall that the leading term or initial term of f is the term ma xa in f
0
such that xa  xa for all a0 ∈ supp(f ) different from a. It is denoted
as LT (f ). The leading monomial or initial monomial of f is
the monomial xa in LT (f ). It is denoted as in (f ).

Example 12.1. Let f = 3x1 x23 + 2x23 − x1 x22 ∈ C[x1 , x2 , x3 ] and 
be the reverse lexicographic order with x1  x2  x3 . Then in (f ) =
x1 x22 is the initial monomial of f and −x1 x22 is the initial term of f .

The initial ideal of an ideal I ⊂ S with respect to  is the


monomial ideal:

in (I) := hin (f ) : f ∈ Ii ⊆ S.

The monomials of S that do not lie in a monomial ideal M are


called the standard monomials of M . Recall that M can be de-
picted by its stair-case diagram in Nn which is the collection of all
exponent vectors of monomials in M . Clearly, this set of “dots” is
closed under the addition of Nn to any of the dots. Equivalently, its
complement in Nn is a down-set or order ideal in Nn . This means
that if xu 6∈ M then xv 6∈ M for all v ≤ u, where ≤ is the usual
component-wise partial order on Nn .

111
112 12. Gröbner bases II

Example 12.2. Let I = hx2 − y, x3 − xi ⊂ k[x, y] and  be the


lexicographic order with x  y. The polynomial x(x2 −y)−(x3 −x) =
−xy + x ∈ I which shows that in (I) ⊃ hx2 , x3 , xyi = hx2 , xyi. We
will see later how to compute all of in (I).

By the Hilbert basis theorem for monomial ideals (Exercise 10.11


in Chapter 10), all monomial ideals of S have a minimal finite gen-
erating set consisting of monomials. It can also be seen quite easily
that this minimal generating set is unique. Suppose {xm1 , . . . , xms }
is the unique minimal finite generating set of in (I). Then by defini-
tion, there exists g1 , . . . , gs ∈ I such that in (gi ) = xmi , i = 1, . . . , s.
We also have that in (I) = hin (g1 ), . . . , in (gs )i. We call G (I) :=
{g1 , . . . , gs } a Gröbner basis of I with respect to .

Definition 12.3. (1) A finite set of polynomials {g1 , . . . , gs } ⊂


I is a Gröbner basis of I with respect to  if in (I) =
hin (g1 ), . . . , in (gs )i. We assume that each in (gi ) is a
monomial (with coefficient one).
(2) Further, if {in (g1 ), . . . , in (gs )} is the unique minimal gen-
erating set of in (I), we say that G (I) is a minimal Gröbner
basis of I with respect to .
(3) A minimal Gröbner basis is reduced if no non-initial term
of any gi is divisible by any of in (g1 ), . . . , in (gs ).

Example 12.4. Let I = hx2 − y, x3 − xi. Then with respect to the


lex order with x  y, the reduced Gröbner basis of I is
{y 2 − y, xy − x, x2 − y}.
We will see later how to compute this. In particular, this implies that
in (I) = hx2 , xy, y 2 i. The set {y 2 − y, xy − x + y 2 − y, x2 − y} is a
minimal Gröbner basis of I with respect to the above lex order while
{y 2 − y, xy − x + y 2 − y, x2 − y, x3 − x} is a non-minimal Gröbner
basis of I with respect to the same order.

As you can see in the above example, Gröbner bases of ideals are
not unique. However, the reduced Gröbner basis of I with respect to a
fixed term order  is unique provided we assume that the polynomials
in the reduced Gröbner basis are monic.
12. Gröbner bases II 113

Lemma 12.5. A Gröbner basis G (I) of I is a basis of I.

Proof. By definition, hG (I)i ⊆ I. So we need to show that if f ∈ I


then f ∈ hG (I)i. Suppose not. Then we can assume without loss
of generality that f is monic and that among all polynomials of I
that are not in hG (I)i, f has the smallest in (f ) with respect to .
(Such an f is called a minimal criminal). However, f ∈ I implies
that in (f ) ∈ in (I) which implies that there exists some g ∈ G (I)
such that in (g) divides in (f ). Suppose in (g)·xm = in (f ). Then
h = f − xm · g is a polynomial in I with smaller initial term than
in (f ). By our assumption, h ∈ hG (I)i which implies that f ∈
hG (I)i which is a contradiction. Thus I ⊆ hG (I)i. 
Theorem 12.6. Hilbert’s Basis Theorem. Every ideal I in S has
a finite generating set.

Proof. By Lemma 12.5, a reduced Gröbner basis of I with respect to


any term order  is a basis of I. This reduced Gröbner basis is finite
as it contains as many polynomials as the unique finite generating set
of the monomial ideal in (I). In a previous exercise, we proved that
all monomial ideals have a unique finite generating set. 
Lemma 12.7. If G (I) is a Gröbner basis of I with respect to the
term order , then the remainder of any polynomial after division by
G (I) is unique.

Proof. Suppose G (I) = {g1 , . . . , gs } and we divide a polynomial


f ∈ S by G (I) with the elements of G (I) ordered in two different
ways and obtain two remainders r1 , r2 ∈ S. Then we have the two
expressions: X X
f= ai g i + r 1 = a0i gi + r2
which implies that r1 − r2 ∈ I and that no term of r1 − r2 is divisible
in (gi ) for any gi ∈ G (I). However this implies that r1 − r2 = 0
since otherwise, the non-zero term in (r1 − r2 ) ∈ in (I) and some
in (gi ) would divide it. 
Corollary 12.8. Gröbner bases solve the ideal membership problem:
A polynomial f is in I if and only if its remainder after division by
a Gröbner basis G (I) is zero.
114 12. Gröbner bases II

Proof. If f ∈ S and its remainder after division by G (I) is zero,


P
then f = gi ∈G (I) hi gi which lies in I, and hence, f ∈ I.
Conversely, suppose f ∈ I. Then since G (I) is a basis of
P
I, there exists hi ∈ S such that f = gi ∈G (I) hi gi . Then 0 =
P
f − gi ∈G (I) hi gi which implies that 0 is one, and thus the unique,
remainder of f on division by G (I). 

In [Buc65], Buchberger developed an algorithm to compute a


reduced Gröbner basis of an ideal I = hf1 , . . . , ft i with respect to any
prescribed term order  on S. The algorithm needs as a subroutine
the calculation of the S-pair of two polynomials f and g, denoted as
S-pair(f, g). Let xγ be the least common multiple of LT (f ) and
LT (g). Then

xγ xγ
S-pair(f, g) = ·f − · g.
LT (f ) LT (g)

We also let remG (h) denote the remainder obtained by dividing the
polynomial h by an ordered list of polynomials G.
Buchberger’s algorithm hinges on the important fact that a set
of polynomials G form a Gröbner basis with respect to  if and only
if for each pair f, f 0 ∈ G, remG (S-pair(f, f 0 )) = 0. The proof can be
found in any of the books mentioned at the start of Chapter 11. We
reproduce the algorithm from [CLO92, §2.7, Theorem 2].

Algorithm 12.9. Buchberger’s algorithm


INPUT: F = {f1 , . . . , ft } a basis of the ideal I ⊂ S and a term order
 on S.
OUTPUT: The reduced Gröbner basis G (I) of I with respect to .
G := F
REPEAT
G0 := G
For each pair {p, q}, p 6= q in G0 do
S := remG0 (S-pair(p, q))
If S 6= 0 then G := G ∪ {S}
UNTIL G = G0 .
(G is a Gröbner basis of I with respect to  at this point.)
12. Gröbner bases II 115

Producing a minimal Gröbner basis.


Make every element of G monic by dividing through by its leading
coefficient. Let U := {in (g) : g ∈ G}. For each minimal element
of U with respect to divisibility, pick one polynomial from G whose
initial monomial is this minimal element. Call this set G again.

Producing the reduced Gröbner basis.


Let G be a minimal Gröbner basis of I with respect to .
Set G0 := G and G (I) := ∅
For each g ∈ G do
g 0 = remG0 \{g} (g); G (I) = G (I) ∪ {g 0 }; G0 = G0 \{g} ∪ {g 0 }.

Example 12.10. For the ideal I = hf1 := x2 − y, f2 := x3 − xi with


the lex order x  y, we begin by setting G = {f1 , f2 }. The first step
of the Buchberger algorithm computes S-pair(f1 , f2 ) = f2 − x(f1 ) =
xy − x. Note that remG (xy − x) = xy − x. Thus we define f3 :=
xy − x and update G to G = {f1 , f2 , f3 }. Continue the Buchberger
algorithm until all S-pairs reduce to zero at which stage we will have
G = {f1 , f2 , f3 }. The reduced Gröbner basis of I with respect to 
is thus {x2 − y, xy − x}.

Definition 12.11. A finite set U ⊂ I is a universal Gröbner basis


of I if it is a Gröbner basis of I with respect to every term order.

Proposition 12.12. Linear ideals revisited (cf. Chapter 11).


(1) The set of linear forms g1 , . . . , gd computed from the Gauss-
Jordan form C of the matrix A is the reduced Gröbner basis
of the linear ideal I of A with respect to any term order such
that x1  · · ·  xn .
(2) The set of all circuits of I is a minimal universal Gröbner
basis of I. ([Stu96, Proposition 1.6]).

Proof. (1) We follow the notation in Proposition 11.13. Note


Pn
that the terms of each gi = xi + j=d+1 eij xj are already
ordered in decreasing order with respect to the above term
order and that G = {g1 , . . . , gd } is reduced in the sense
that no term of any gi other than xi lies in the initial ideal
in (I) = hx1 , . . . , xd i. To show that G is a Gröbner basis
116 12. Gröbner bases II

it suffices to show that the remainder obtained by dividing


S-pair(gi , gj ) with respect to G is zero for all i 6= j ∈ [d].
This follows from the following general fact: If f = in (f ) +
f 0 and g = in (g) + g 0 are two monic polynomials such that
in (f ) and in (g) are relatively prime, then
S-pair(f, g) = in (g) · f − in (f ) · g
which reduces to zero modulo {f, g}. This is an important
criterion for avoiding S-pairs that will eventually reduce to
zero, known as Buchberger’s first criterion.
(2) (proof from [Stu96]) The argument in (1) shows that every
reduced Gröbner basis of I arises from a Gauss-Jordan form.
Proposition 11.13 (2) proved that all the elements of these
Gröbner bases are circuits of I. Thus the circuits of I form
a universal Gröbner basis of I.
To prove minimality, we need to argue that each circuit
l appears in some reduced Gröbner basis of I. Let  be a
term order such that {xi : i 6∈ supp(l)}  {xi : i ∈ supp(l)}
and G := G (I). Such term orders are known as elim-
ination orders. Suppose l does not appear in G. Then
there exists l0 ∈ G such that in (l) = in (l0 ). By the
elimination property of , supp(l 0 ) ⊆ supp(l) and hence
supp(l − l0 ) ( supp(l). However this contradicts that l is a
circuit of I as l − l0 is a non-zero linear form with strictly
smaller support.

Exercise 12.13. Fixing a term order, use Buchberger’s algorithm to
confirm that x3 − y 2 ∈ hx − y, x2 − yi.
Exercise 12.14. Let M = hxm1 , xm2 , . . . , xms i and fix a term order
. What is a Gröbner basis for M with respect to ? What would
you expect its reduced Gröbner basis to be? Should your choice of
term order matter?
Chapter 13

Initial Complexes of
Toric Ideals

In this chapter we will set the stage for another polytope, called the
state polytope of a point configuration. The state polytope is finer
than the secondary polytope in a precise sense. For this we first pass
to a polynomial ideal called the toric ideal of the configuration and
then to its Gröbner bases.
Let A ⊂ Zd be a graded vector configuration and A the d × n
matrix whose columns are the elements of A. We will assume as usual
that rank(A) = d and that (1, 1, . . . , 1) lies in the row space of A. Let

kerZ (A) = {u ∈ Zn : Au = 0}.

Notice that kerZ (A) is an abelian subgroup of Zn . We can write a


vector u ∈ Zn uniquely as u = u+ − u− where u+ , u− ∈ Nn and

+ uj if uj ≥ 0
(u )j =
0 otherwise

−uj if uj ≤ 0
(u− )j =
0 otherwise.

Example 13.1. If u = (−5, 16, 0, 0, −17, 2) then u+ = (0, 16, 0, 0, 0, 2)


and u− = (5, 0, 0, 0, 17, 0).

117
118 13. Initial Complexes of Toric Ideals

Definition 13.2. The toric ideal of A is the polynomial ideal


+ −
IA := hxu − xu : u ∈ kerZ (A)i ⊂ k[x1 , . . . , xn ] =: S.

Definition 13.2 defines IA via an infinite generating set consist-


ing of binomials. Binomials are polynomials with two terms, just
as monomials are polynomials with one term. However, by Hilbert’s
basis theorem, we know that there is a finite subset of the above in-
finite generating set that also generates IA . There are algorithms for
finding such a finite generating set, although it becomes a highly non-
trivial calculation as the size of A increases. See [Stu96, Chapters
4 and 12.A] if you are interested in these algorithms. The following
Macaulay 2 session (from [SST02]) implements one of these algo-
rithms and computes the toric ideal of the configuration A consisting
of the columns of
 
4 0 0 2 1 1
 0 4 0 1 2 1 .
0 0 4 1 1 2
We will use it as a black box to generate toric ideals.

Example 13.3. [thomas@penguin thomas]$ M2


Macaulay 2, version 0.9.2
i1 : load "LLL.m2"

i2 : toBinomial = (b,R) -> (


top := 1_R; bottom := 1_R;
scan(#b, i -> if b_i > 0 then top = top * R_i^(b_i)
else if b_i < 0 then bottom = bottom * R_i^(-b_i));
top - bottom);

i3 : toricIdeal = (A) -> (


n := #(A_0);
R = QQ[vars(0..n-1),MonomialSize=>16];
B := transpose matrix LLL syz matrix A;
J := ideal apply(entries B, b -> toBinomial(b,R));
scan(gens ring J, f -> (J = saturate(J,f);));
J
);
13. Initial Complexes of Toric Ideals 119

i4 : A = {{4,0,0,2,1,1},{0,4,0,1,2,1},{0,0,4,1,1,2}};

i5 : I = toricIdeal A
3 3 3
o5 = ideal (e - b*d*f, c*d*e - f , d - a*e*f, ...

o5 : Ideal of R
i6 : toString oo
o6 = ideal(e^3-b*d*f,c*d*e-f^3,d^3-a*e*f,a*b*c-d*e*f,
d^2*e^2-a*b*f^2,a*c*e^2-d^2*f^2,b*c*d^2-e^2*f^2)

The output on line o6 is the finite generating set of IA .

A grading of S by an abelian group G is a map called degree


defined as deg : S → G such that xi 7→ gi for each i = 1, . . . , n. This
map is extended to a monomial xa ∈ S as deg(xa ) =
P
ai gi . A poly-
nomial f ∈ S is homogeneous under this grading if all monomials
in f have the same degree. An ideal I ⊂ S is homogeneous if every
polynomial in I is a sum of homogeneous polynomials or equivalently,
if I is generated by homogeneous polynomials under the given grad-
ing. The most common grading on S is by Z where deg(xi ) = 1. This
is called the total degree grading and unless stated otherwise, we
will mean this grading when we talk about homogeneous ideals.
Every homogeneous polynomial ideal has a state polytope which
is a polytope whose vertices are in bijection with the distinct reduced
Gröbner bases (equivalently, initial ideals) of the ideal. In the next
chapter we will examine the state polytopes of toric ideals and see
how they are related to secondary polytopes. For such a relationship
to exist we need a relationship between the initial ideals of the toric
ideal of A and the regular triangulations of A. We establish this
connection in the rest of this chapter.

Definition 13.4. A simplicial complex Γ on [n] is a collection of


subsets of [n] such that if F ∈ Γ and G ⊂ F then G ∈ Γ as well. In
particular, the empty set is in Γ.

(1) The elements of Γ are called the faces of Γ.


120 13. Initial Complexes of Toric Ideals

(2) The dimension of a face F ∈ Γ is |F | − 1. The dimension of


Γ is the maximum dimension of a face in Γ.
(3) The maximal dimensional faces of Γ are called facets.
(4) Γ is pure if all its facets have the same dimension.
(5) The face poset of Γ is the set of faces of Γ partially ordered
by inclusion.
(6) A non-face of Γ is any set H ⊆ [n] such that H is not a
face of Γ. A minimal non-face of Γ is a non-face H of Γ
such that all its proper subsets are faces of Γ.
Example 13.5. A triangulation of A gives a simplicial complex on
[n]. For instance our favorite non-regular triangulation in Figure 1
gives the pure simplicial complex on [6] = {1, 2, 3, 4, 5, 6} whose face
lattice can also be seen in Figure 1.
3

4 5

1 2

125 145 134 256 236 346 456

12 13 14 15 23 25 26 34 36 45 46 56

1 2 3 4 5 6

Figure 1. Our favorite non-regular triangulation as a simpli-


cial complex.

The set {1, 2, 6} is a non-minimal non-face of this simplicial com-


plex while {1, 2, 3} is a minimal non-face.
13. Initial Complexes of Toric Ideals 121

Note that a subdivision of A that is not a triangulation does


not yield a simplicial complex, as only some subsets of a face of the
subdivision may be faces of the subdivision. We will identify a trian-
gulation with its associated simplicial complex. Note also that it is
enough to specify the facets of a simplicial complex as the remaining
faces are simply all subsets of the facets. Thus from now on we specify
simplicial complexes by only listing their facets.
Given an ideal I ⊂ S and a term order , we can compute the ini-
tial ideal inp
 (I) which is a monomial ideal in S. We saw earlier that
the radical in (I) is also a monomial ideal in S and is generated by
squarefree monomials obtained by erasing the powers on the mono-
mial generators of in (I). There is a bijection between squarefree
monomial ideals in S and simplicial complexes on [n].

Definition 13.6. The Stanley-Reisner ideal of a simplicial com-


plex Γ on [n] is the squarefree monomial ideal
IΓ := hxi1 xi2 · · · xik : {i1 , i2 , . . . , ik } is a minimal non-face of Γi.
Conversely, a squarefree monomial ideal I is the Stanley-Reisner ideal
of the unique simplicial complex Γ(I) whose set of minimal non-faces
is
{{i1 , i2 , . . . , ik } ⊆ [n] : xi1 xi2 · · · xik is a minimal generator of I}.
Example 13.7. The minimal non-faces of the non-regular triangu-
lation in Figure 1 are 16, 35, 24, 123 which implies that its Stanley-
Reisner ideal is haf, ce, bd, abci where we take S = k[a, b, c, d, e, f ].

Exercise 13.8. (1) Prove that if {i1 , . . . , ik } is any non-face of Γ


then xi1 xi2 · · · xik ∈ IΓ .
(2) Finding all minimal non-faces of a simplicial complex is not so
easy. It’s easier to compute IΓ via the following formula:
\
IΓ = hxi : i 6∈ σi.
σ facet of Γ

Check this formula for the Stanley-Reisner ideal constructed in Ex-


ample 13.7 and then prove it in general.

If we have a non-squarefree monomial ideal I√⊂ S, then the sim-


plicial complex we want to associate with it is Γ( I). However, since
122 13. Initial Complexes of Toric Ideals

many ideals can have the same radical, the map from monomial ideals
to simplicial complexes is not a bijection. We will study simplicial
complexes that come from initial ideals of a polynomial ideal.
Definition 13.9. The initial complex Γ (I) of a polynomial ideal
I ⊆
p S with respect to the term order  is the simplicial complex
Γ( in (I)).
Example 13.10. Consider the vector configuration
       
1 1 1 1
A= , , ,
0 1 2 3
from Example 7.11. Its toric ideal is
IA = hac − b2 , bd − c2 , ad − bci ⊂ k[a, b, c, d].
This ideal has eight distinct monomial initial ideals that are listed
below along with weight vectors ω ∈ R4 that induce them, their
radicals, and initial complexes. On the extreme right we also list the
regular triangulations ∆ω of the configuration.
p
ω inω (I) inω (I) Γω (I) ∆ω
(0, 1, 1, 0) hc2 , bc, b2 i hb, ci {14} {14}
00 00 00
(0, 5, 1, 0) hb2 , bc, c3 , bdi
00 00 00
(0, 1, 5, 0) hb3 , ac, bc, c2 i
2 2
(0, 3, 0, 1) hb , bc, bd, ad i hb, adi {13, 34} {13, 34}
00 00 00
(0, 1, 0, 3) hb2 , ad, bdi
(1, 0, 0, 1) hac, ad, bdi hac, ad, bdi {12, 23, 34} {12, 23, 34}
2 2
(1, 0, 3, 0) hac, bc, c , a di hc, adi {12, 24} {12, 24}
00 00 00
(3, 0, 1, 0) hac, c2 , adi

From this example, you might suspect that the initial complex
Γω (IA ) is precisely the regular triangulation ∆ω . This is the main
result of this section which we prove in Theorem 13.12.
Lemma 13.11. Let ∆ω be a regular triangulation of A, σ = {i1 , . . . , ik }
a face of ∆ω and τ = {j1 , . . . , jl } a non-face of ∆ω such that the rel-
ative interiors of their convex hulls intersect. Pick positive rational
numbers λ1 , . . . , λk and µ1 , . . . , µl such that
λ 1 ai 1 + . . . + λ k ai k = µ 1 aj1 + . . . + µ l ajl
P P Pn Pn
and λi = µi = 1. Then i=1 ωi λi < i=1 ωi µi .
13. Initial Complexes of Toric Ideals 123

Proof. Recall that the facets of ∆w are precisely the lower facets of
the lifted polytope P ω . Therefore, σ lifts to a lower face of P ω where
for each j ∈ σ, aj has been lifted to height ωj . This implies that
the convex combination λ1 ai1 + . . . + λk aik has been lifted to height
P
i∈σ λi ωi since the lifted points indexed by σ span an affine plane.
On the other hand, the convex hull of the points indexed by τ do not
P P
form a lower face of ∆ω and hence, i∈τ ωi µi > i∈σ ωi λi . 

Theorem 13.12. [Stu91, Theorem 3.1] Let IA be the toric ideal of


A and ω be a term order on S. Then the initial complex
p Γω (IA ) is
the regular triangulation ∆ω of A or equivalently, inω (IA ) is the
Stanley-Reisner ideal I∆ω of the regular triangulation ∆ω of A.

Proof. We reproduce the proof in [Stu91]. Suppose ∆ω is a regular


triangulation of A. We p will first argue that the Stanley-Reisner ideal
I∆ω is contained in inω (IA ). Let τ = {j1 , . . . , jl } be a non-face
of ∆ω or equivalently, xj1 xj2 · · · xjl ∈ I∆ω . Then there exists a face
σ = {i1 , . . . , ik } of ∆ω such that
relint(conv(ai1 , . . . , aik )) ∩ relint(conv(aj1 , . . . , ajl )) 6= ∅.
Pick positive rational numbers λ01 , . . . , λ0k and µ01 , . . . , µ0l with
P 0
λi =
P 0
µi = 1 such that
λ01 ai1 + . . . + λ0k aik = µ01 aj1 + . . . + µ0l ajl .
Clearing denominators, we get vectors λ, µ ∈ Nn such that
Aλ = λi1 ai1 + . . . + λik aik = µj1 aj1 + . . . + µjl ajl = Aµ.
Then the vector ±(λ − µ) ∈ kerZ (A) which means that ±(xλ − xµ )
lies in the toric ideal IA . Since σ is a face of ∆ω while τ is a non-
face, by Lemma 13.11, we have that ω · λ < ω · µ which implies that
inω (xλ − xµ )p= xµ . This means that xµ ∈ inω (IpA ) and subsequently,
xj1 · · · xjl ∈ inω (IA ). This proves that I∆ω ⊆ inω (IA ).
p
Conversely, suppose inω (IA ) is not contained in I∆ω . This im-
plies that there is a monomial xµ in inω (IA ) whose support is a
face of ∆ω . It is not too hard to prove that the ideal IA is gen-
+ −
erated as a k-vector space by binomials of the form xu − xu where
u ∈ kerZ (A) which then means that there is a binomial xµ − xλ ∈ IA
with inω (xµ − xλ ) = xµ such that supp(xµ ) is a face of ∆ω . We have
124 13. Initial Complexes of Toric Ideals

ω · µ > ω · λ. Also, Aλ = Aµ which means that supp(xλ ) has to


be a non-face of ∆ω since otherwise we have two faces intersecting
in their relative interiors. This contradicts Lemma 13.11, and hence,
p
inω (IA ) ⊆ I∆ω . 
Corollary 13.13. A monomial xm is standard for the initial ideal
inω (IA ) if and only if supp(xm ) does not contain a non-face of ∆ω .

The toric ideal of the six point configuration underlying our fa-
vorite non-regular triangulation has 112 initial ideals which is a bit
too large for us to analyze by hand. Instead, let’s look at all the
initial ideals of the pentagonal configuration from Example 8.3.
Exercise 13.14. Consider the the pentagonal configuration A whose
elements are the columns of:
 
1 1 1 1 1
 0 1 2 1 0 .
0 0 1 2 1

The toric ideal IA = hbd − ce, a2 d − be2 , a2 c − b2 ei ⊂ k[a, b, c, d, e].


Listed below are the eight distinct monomial initial ideals of IA :
(1) hbd, a2 d, a2 ci
(2) hce, a2 d, a2 ci
(3) hce, be2 , a2 ci
(4) hce, be2 , b2 e, a2 c2 i
(5) hbd, b2 e, a2 di
(6) hbe2 , bd, b2 e, a2 d2 i
(7) hce3 , be2 , bd, b2 ei
(8) hce, be2 , b2 e, b3 di
This calculation was done using the software package CATS [Jena].
Group these initial ideals by their radicals and compute the corre-
sponding initial complexes. Check that they coincide with the five
regular triangulations of this configuration that we saw earlier. Can
you find weight vectors that induce each of the initial ideals?

Theorem 13.12 says that regular triangulations support initial


ideals in the sense that their Stanley-Reisner ideals are radicals of
13. Initial Complexes of Toric Ideals 125

initial ideals of IA . Equivalently, the set of regular triangulations of


A is precisely the set of simplicial complexes coming from radicals
of initial ideals of IA . Thus a non-regular triangulation cannot sup-
port an initial ideal of IA . Let’s prove this for our favorite regular
triangulation.
Theorem 13.15. There is no weight vector ω such that the initial
complex of IA with respect to ω is our favorite non-regular triangula-
tion.

Proof. Look at the three quadrilaterals {1, 2, 4, 5}, {1, 3, 4, 6} and


{2, 3, 5, 6} in the non-regular triangulation. These quadrilaterals sup-
port the dependence relations
(−1, 1, 0, 4, −4, 0), (1, 0, −1, −4, 0, 4) and (0, −1, 1, 0, 4, −4)
on the columns of
 
4 0 0 2 1 1
A= 0 4 0 1 2 1 .
0 0 4 1 1 2
These elements in kerZ (A) give the following three binomials in the
toric ideal IA :
bd4 − ae4 , af 4 − cd4 , ce4 − bf 4 .
In each case, the positive monomial is the leading term with respect to
any ω that induces this triangulation. This is because the support of
the positive term is a non-face of the triangulation while the support
of the other monomial is a face of the triangulation. This implies the
following three inequalities:
ω2 + 4ω4 > ω1 + 4ω5
ω1 + 4ω6 > ω3 + 4ω4
ω3 + 4ω5 > ω2 + 4ω6
However, if you add the three inequalities we get 0 > 0 which implies
that no such ω exists. 
Chapter 14

State Polytopes of Toric


Ideals

In this chapter we will define and construct the state polytope of a


toric ideal IA and then relate it to the secondary polytope of A via
the relationship between initial ideals of IA and regular triangulations
of A developed in Chapter 13. We follow the same approach as with
secondary polytopes — we will first define a polyhedral fan called the
Gröbner fan of IA which will then be shown to be polytopal. This
polytope will be called the state polytope of IA . State polytopes and
Gröbner fans exist for all homogeneous ideals [BM98, MR88] and
[Stu96, Chapter 2]. For non-homogeneous ideals, one can define the
Gröbner fan, but these fans may not be polytopal. An example of
such an ideal can be found in [Jenb].
Before we discuss the general situation, let us take a homogeneous
principal ideal and work out its state polytope. The vertices of this
polytope must index the distinct reduced Gröbner bases of the ideal.
If I = hf i where f is homogeneous, then all reduced Gröbner bases
of I consist of the single element f with different terms marked as
leading monomial. Which monomials in the support of f can become
leading terms? For a given weight vector ω, these are precisely the
monomials xα in the support of f for which α · ω is maximized. Thus
the exponents of the possible initial monomials of f are in bijection

127
128 14. State Polytopes of Toric Ideals

with the vertices of the Newton polytope of f which is the convex


hull of all the exponent vectors of monomials in f . The state polytope
of I = hf i is the Newton polytope of f .

Example 14.1. Let I = hf = 3x3 + 12 x2 y + 2xy 2 + y 3 i. Then the
Newton polytope of f is the line segment
conv({(3, 0), (2, 1), (1, 2), (0, 3)}),
and the two vertices of this line segment correspond to the√two distinct
reduced Gröbner bases of I which are G1 = {x3 + 61 x2 y+ 32 xy 2 + 31 y 3 }

and G2 = {3x3 + 21 x2 y + 2xy 2 + y 3 }. The underlined term is the
leading term in each case.

We will only be concerned with toric ideals. We assume the same


set up as always: A is a graded point configuration in Zd whose
columns form the d × n integer matrix A of rank d. We assume that
the vector (1, 1, . . . , 1) lies in the row space of A. Then the toric ideal
of A is the homogeneous binomial ideal
+ −
IA = hxu − xu : u ∈ kerZ (A)i.
Check that IA is homogeneous.
Exercise 14.2. Argue that every reduced Gröbner basis Gω of the
toric ideal IA consists of a finite set of binomials of the form xα − xβ
such that α − β ∈ kerZ (A).
(Hint: We showed earlier that IA has a finite generating set of this
form. If we use this as the input to Buchberger’s algorithm, what
sorts of polynomials will we generate during, and at the end of the
algorithm?)
Example 14.3. The eight reduced Gröbner bases of IA for
       
1 1 1 1
A= , , ,
0 1 2 3
are listed below. We saw these eight initial ideals in Example 13.10.
(1) {b2 − ac, bc − ad, c2 − bd}
(2) {b2 − ac, bc − ad, bd − c2 , c3 − ad2 }
(3) {ac − b2 , b3 − a2 d, bc − ad, c2 − bd}
(4) {ad2 − c3 , b2 − ac, bc − ad, bd − c2 }
14. State Polytopes of Toric Ideals 129

(5) {ad − bc, b2 − ac, bd − c2 }


(6) {ac − b2 , ad − bc, bd − c2 }
(7) {a2 d − b3 , ac − b2 , bc − ad, c2 − bd}
(8) {ac − b2 , ad − bc, c2 − bd}
Definition 14.4. Let Gω = {xαi − xβi : i = 1, . . . , t} be a reduced
Gröbner basis of IA . The Gröbner cone of Gω is the polyhedral
cone
Kω = {v ∈ Rn : αi · v ≥ βi · v for all i = 1, . . . , t}.

The Gröbner cone Kω is full dimensional (n-dimensional) since


the weight vector ω satisfies the t inequalities with a strict inequality.
Further, the entire row space of A lies in Kω since (αi − βi ) ∈ kerZ (A)
which implies that every vector in the row space of A will satisfy the
t inequalities with equality. Is there a larger vector space in Kω ? If
there is, then for every v in this vector space, −v is also in the vector
space and we must have αi · v ≥ βi · v and αi · −v ≥ βi · −v which
together imply that (αi − βi ) · v = 0. Now it turns out that the
span of {αi − βi : i = 1, . . . , t} is exactly kerR (A) which implies that
the row space of A is the biggest vector space in Kω . Thus we can
write Kω as the sum of the row space of A and the part that lies in
the kernel of A. The latter is the interesting part — it is a pointed
polyhedral cone of dimension n − d, which we will call the pointed
Gröbner cone of Gω , denoted as Kω0 . We will now figure out how
to draw Kω0 in kerR (A) which is a vector space isomorphic to Rn−d .
From Kω0 we can reconstruct Kω by adding on the row space of A.
Let B be the Gale transform of A. Since (1, 1, . . . , 1) is already
in the row space of A, the Gale transform B ⊂ Rn−d . Let B t be the
matrix whose columns give B. Since A is an integer matrix, we can
choose B t ∈ Z(n−d)×n such that its rows generate kerZ (A) which in
particular means that they also generate kerR (A). Further, the row
space of B t is isomorphic to the column space of B t which implies that
the span of B is isomorphic to kerR (A) which in turn is isomorphic
to Rn−d . Thus we can draw Kω0 in Rn−d , the space spanned by the
Gale transform B. Given α − β ∈ kerR (A), solve yB t = α − β to find
its representative y ∈ Rn−d . Let’s use this method to draw the eight
Gröbner cones of Example 14.3 in R2 .
130 14. State Polytopes of Toric Ideals

Example 14.5. For this example, we choose


 
1 −2 1 0
Bt = .
2 −3 0 1

Let Gω = {b2 − ac, bc − ad, c2 − bd}. Its Gröbner cone is


Kω = {v ∈ R4 : 2v2 ≥ v1 + v3 , v2 + v3 ≥ v1 + v4 , 2v3 ≥ v2 + v4 }.
We find the pre-images of the vectors (−1, 2, −1, 0), (−1, 1, 1, −1)
and (0, −1, 2, −1) under the map from R2 → R4 where y 7→ yB t .
Under this map, (−1, 2, −1, 0) 7→ (−1, 0), (−1, 1, 1, −1) 7→ (1, −1)
and (0, −1, 2, −1) 7→ (2, −1). This implies that
Kω0 = {(y1 , y2 ) ∈ R2 : −y1 ≥ 0, y1 − y2 ≥ 0, 2y1 − y2 ≥ 0}.
This cone is the shaded cone shown in Figure 1.

bd
c2
2
b ac

ad
bc




 
 
 
 
 
 
 



 
 
 
 
 
 
 
 
 
 
 
 
 




 

 

 

 

 

 

 

 
 
 
 
 
 
 
 
 
 
 
 
 



 
 
 
 
 
 
 
 
 
 
 
 
 


 
 
 
 
 
 
 
 
 
 
 
 
 



 
 
 
 
 
 
 
 
 
 
 
 
 



 
 
 
 
 
 
 
 
 
 
 
 
 


 
 
 
 
 
 
 
 
 
 
 
 
 



 

 

 

 

 

 

 


 
 
 
 
 
 
 
 
 
 
 
 
 



 
 
 
 
 
 
 
 
 
 
 
 
 



 
 
 
 
 
 
 
 
 
 
 
 
 


 
 
 
 
 
 
 
 
 
 
 
 
 


 
     
Figure 1. Pointed Gröbner cone.

We label the hyperplanes that bound the halfspaces with the


monomials of the original binomial that gave rise to this hyperplane
14. State Polytopes of Toric Ideals 131

so that the monomial pointing into a half space is more expensive for
a weight vector lifted from that region than the other monomial.
Using this technique let us draw all eight Gröbner cones. The
resulting picture is shown in Figure 3. To make our life easier, we
first note that there are only five different binomials in the eight
reduced Gröbner bases, up to sign. Thus we draw the hyperplanes
corresponding to them first and mark the halfspaces with monomials
as before. Then it’s easy to pick off the Gröbner cones. Figure 2
shows the five hyperplanes with labeled halfspaces.

bd

c2

b2 ac

ad

bc

a2 d

b3

ad2
c3

Figure 2. Hyperplanes given by binomials in the Gröbner


bases.

Notice that the Gröbner cones fit together to form a polyhedral


fan in the above example (see Figure 3). We will prove that this
is always the case. In the mean time, let’s denote by GF(A) the
collection of all Gröbner cones of IA . We will call it the Gröbner
fan of IA although we haven’t yet proved that it is a fan.

Lemma 14.6. Let ω be a term order for IA and Gω the reduced


Gröbner basis of IA with respect to ω. Then Gω0 = Gω if and only if
ω 0 lies in the interior of the Gröbner cone Kω .
132 14. State Polytopes of Toric Ideals

bd

c2
2
b ac

ad
6 bc
8

7
5 a2 d

b3

3
4
1

2
2
ad
c3

Figure 3. Pointed Gröbner fan.

Proof. Suppose Gω = {xαi − xβi : i = 1, . . . , t} = Gω0 . Then


αi · ω 0 > βi · ω 0 for all i = 1, . . . , t which implies that ω 0 lies in the
interior of Kω .
Conversely, suppose ω 0 lies in the interior of Kω . Then αi · ω 0 >
βi · ω 0 for all binomials xαi − xβi in Gω . This implies that the initial
ideal inω (IA ) ⊆ inω0 (IA ). Therefore, the two initial ideals are equal
since the standard monomials of both initial ideals form a k-vector
space basis for S/IA and if one initial ideal is properly inside another,
then we would have one basis of this vector space properly inside
another which is a contradiction. Since Gω and Gω0 are reduced, they
are equal as every initial ideal gives rise to a unique reduced Gröbner
basis of IA . 

Corollary 14.7. Two distinct Gröbner cones of IA do not intersect


in their interiors.
14. State Polytopes of Toric Ideals 133

We now construct a polytope whose inner normal fan is GF(A)


proving that GF(A) is a polyhedral fan and that it is polytopal.

Definition 14.8. Take the universal Gröbner basis of IA , denoted as


U GB(IA ), to be the set of all binomials (up to sign) that appear in
the reduced Gröbner bases of IA .

Example 14.9. In our running example, U GB(IA ) = {b2 − ac, c2 −


bd, ad − bc, a2 d − b3 , ad2 − c3 }.

It is a fact that every polynomial ideal has a finite universal


Gröbner basis. This follows from the more important fact that ev-
ery polynomial ideal only has finitely many distinct reduced Gröbner
bases [Stu96, Chapter 1] and that each reduced Gröbner basis is fi-
nite. The union of these reduced Gröbner bases is always a universal
Gröbner basis of the ideal.
We now define a grading of S = k[x1 , . . . , xn ] as follows. Define
deg(xi ) = ai ∈ A for i = 1, . . . , n. Then deg(xu ) = Au ∈ Zd .
We sometimes abuse notation and also refer to Au as the degree of
+ −
u ∈ Nn . Notice that the two monomials in a binomial xu −xu ∈ IA
have the same degree under this A-grading. For u ∈ Nn , let
deg−1 (Au) := {v ∈ Nn : deg(u) = deg(v)}
be called the fiber of u or xu .

Definition 14.10. A vector b ∈ Zd is a Gröbner degree of IA if


there is some element xα − xβ ∈ U GB(IA ) such that b = deg(α) =
deg(β). The fibers of Gröbner degrees are called Gröbner fibers.

Example 14.11. The Gröbner degrees of our running example are:


{(2, 2)t , (2, 4)t , (2, 3)t , (3, 3)t , (3, 6)t }.
The Gröbner fibers are:
(1) deg−1 ((2, 2)t ) = {(1, 0, 1, 0), (0, 2, 0, 0)}
(2) deg−1 ((2, 4)t ) = {(0, 1, 0, 1), (0, 0, 2, 0)}
(3) deg−1 ((2, 3)t ) = {(1, 0, 0, 1), (0, 1, 1, 0)}
(4) deg−1 ((3, 3)t ) = {(2, 0, 0, 1), (1, 1, 1, 0), (0, 3, 0, 0)}
(5) deg−1 ((3, 6)t ) = {(1, 0, 0, 2), (0, 1, 1, 1), (0, 0, 3, 0)}
134 14. State Polytopes of Toric Ideals

We can compute all monomials of a given degree using the following


Macaulay 2 commands:
Macaulay 2, version 0.9.2

i1 :
A = {{1,1,1,1},{0,1,2,3}};
i2 :
R = QQ[a..d, Degrees => transpose A];
i3 :
basis({2,2},R)
o3 =
| ac b2 |
1 2
o2 : Matrix R <--- R

Definition 14.12. The state polytope of IA is the Minkowski sum


X
St(IA ) := conv(deg−1 (b))
b Gröbner degree

Example 14.13. In our example, since the left-most 2 × 2 submatrix


of A is non-singular, the projection of any v ∈ R4 of a given degree
to (v3 , v4 ) ∈ R2 can be uniquely lifted back to v. Thus, we can draw
the projections of all Gröbner fibers into the x3 , x4 -plane and then
compute the state polytope. The summands and the Minkowski sum
are shown in Figure 4.
Gröbner Fibers

2 4 5
1 3

1+2 State polytope

1+2+3+4

1+2+3+4+5
1+2+3

Figure 4. The state polytope of our example projected into


R2 .
14. State Polytopes of Toric Ideals 135

In Figure 5 we see that the inner normal fan of the state polytope
coincides with the Gröbner fan we saw in Figure 3.

Figure 5. The state polytope and Gröbner fan.

Theorem 14.14. The Gröbner fan GF(A) of IA is the inner normal


fan of St(IA ).

Proof. Let ω be a term order for IA and Gω = {xαi − xβi : i =


1, . . . , t} be the reduced Gröbner basis of IA with respect to ω. Let
Kω be the Gröbner cone of Gω , N (St(IA )) be the inner normal
fan of St(IA ), and N (face−ω (St(IA ))) be the inner normal cone of
St(IA ) at the face that minimizes ω. We need to show that Kω =
N (face−ω (St(IA ))). The proof is going to need the three facts that
we list below without proof. For details, see [Stu96].
(1) Fact (1): The inner normal cone of a Minkowski sum poly-
tope containing a vector ω 0 is the intersection of all the inner
normal cones of the summands containing ω 0 . In particu-
lar, the inner normal fan of the Minkowski sum polytope
is the common refinement of the inner normal fans of the
summands.
(2) Fact (2): If xα − xβ is an element of the reduced Gröbner
basis Gω of IA , then ω · γ > ω · β for all γ ∈ deg−1 (Aβ). In
particular, β is a vertex of conv(deg−1 (Aβ)) and the inner
normal cone of conv(deg−1 (Aβ)) containing ω is the inner
normal cone at the vertex β.
136 14. State Polytopes of Toric Ideals

(3) Fact (3): For each degree b and a reduced Gröbner basis
Gω , there is a unique element mb ∈ deg−1 (b) such that xmb
is the normal form with respect to Gω , of any monomial xm
such that m ∈ deg−1 (b). In particular, if xα − xβ ∈ Gω ,
then xβ is this unique normal form with respect to Gω of all
monomials of the same degree.
We first prove that
N (face−ω (St(IA ))) ⊆ Kω .
Pick ω 0 ∈ N (face−ω (St(IA ))). Then by Fact (1) below,
ω 0 ∈ N (face−ω (conv(deg−1 (b))))
for each Gröbner degree b of IA . Consider the Gröbner fiber
conv(deg−1 (b = Aα)) of xα − xβ ∈ Gω . By Fact (2) below,
N (face−ω (conv(deg−1 (b)))) is the inner normal cone of
conv(deg−1 (b)) at the vertex β. Since ω 0 lies in this inner normal
cone, we have that α · ω 0 > β · ω 0 . Since this is true for all elements
of Gω , we get that ω 0 ∈ Kω .
Now let’s prove the opposite containment:
Kω ⊆ N (face−ω (St(IA ))).
0
Pick ω in the interior of Kω . Then we know that Gω = Gω0 . By
Fact (3), both ω and ω 0 are optimized at the same lattice point in
conv(deg−1 (b)) for every b of the form Av, v ∈ Nn . Therefore, ω and
ω 0 lie in the same inner normal cone in the convex hull of all Gröbner
fibers. Then Fact (1) implies that both vectors lie in the same inner
normal cone of St(IA ) which proves that ω 0 ∈ N (face−ω (St(IA ))).

Exercise 14.15. Work out the state polytope and Gröbner fan of
the configuration consisting of the columns of
 
1 1 1 1 1
 0 1 2 1 0 .
0 0 1 2 1
Definition 14.16. A polyhedral fan F is said to refine another fan
F 0 if F refines F 0 as cone complexes. The fan F 0 is a coarsening of
F. Recall that the common refinement of a collection of polyhedral
14. State Polytopes of Toric Ideals 137

fans is the new fan obtained as the multi-intersection of all cones


involved.

Notice that the Gröbner fan of our running example is a refine-


ment of the secondary fan of the same configuration.
Theorem 14.17. The Gröbner fan of IA is a refinement of the sec-
ondary fan of A.

Proof. This is a direct consequence of the fact that the radical of


the initial ideal inω (IA ) is the Stanley-Reisner ideal of the regular
triangulation ∆ω . 
Exercise 14.18. Verify Theorem 14.17 in Exercise 14.15.
Bibliography

[AL94] W. W. Adams and P. Loustaunau, An Introduction to Gröbner


Bases, American Mathematical Society, 1994.
[BFS90] L. J. Billera, P. Filliman, and B. Sturmfels, Constructions and
complexity of secondary polytopes, Advances in Mathematics 83
(1990), 155–179.
[BM98] D. Bayer and I. Morrison, Gröbner bases and geometric invari-
ant theory I, Journal of Symbolic Computation 6 (1998), 209–
217.
[Buc65] B. Buchberger, On finding a vector space basis of the residue
class ring modulo a zero dimensional polynomial ideal, Ph.D.
thesis, University of Innsbruck, Austria, 1965, (German).
[CL] T. Christof and A. Loebel, Porta, available at
http://www.iwr.uni-heidelberg.de/groups/comopt/software/PORTA.
[CLO92] D. Cox, J. Little, and D. O’Shea, Ideals, Varieties and Algo-
rithms, Springer-Verlag, New York, 1992.
[CLO98] , Using Algebraic Geometry, Springer-Verlag, New York,
1998, Second edition.
[DF91] D. Dummit and R. Foote, Abstract Algebra, Prentice-Hall, New
Jersey, 1991.
[DRS] J. Deloera, J. Rambau, and F. Santos, Triangulations of Point
Sets, Forthcoming book.
[GKZ94] I. M. Gel’fand, M. Kapranov, and A. Zelevinsky, Mul-
tidimensional Determinants, Discriminants and Resultants,
Birkhäuser, Boston, 1994.

139
140 Bibliography

[GP02] G-M. Greuel and G. Pfister, A Singular Introduction to Com-


mutative Algebra, Springer, 2002.
[Grü03] B. Grünbaum, Convex Polytopes, Springer GTM, New York,
2003, Second Edition.
[HRGZ97] M. Henk, J. Richter-Gebert, and G.M. Ziegler, Basic properties
of convex polytopes, pp. 243–270, CRC Press Ser. Discrete Math.
Appl., Boca Raton, Florida, 1997.
[Jena] A. N. Jensen, CaTS, a software package for computing state
polytopes of toric ideals, Available at
http://www.soopadoopa.dk/anders/cats/cats.html.
[Jenb] , A non-regular Gröbner fan, math.CO/0501352.
[KR00] M. Kreuzer and L. Robbiano, Computational Commutative Al-
gebra I, Springer, Berlin, 2000.
[Lee91] C. Lee, Regular triangulations of convex polytopes, Applied Ge-
ometry and Discrete Mathematics - The Victor Klee Festschrift
(P. Gritzmann and B. Sturmfels, eds.), vol. 4, AMS, Dimacs
Series, Providence, R.I., 1991, pp. 443–456.
[MR88] T. Mora and L. Robbiano, The Gröbner fan of an ideal, Journal
of Symbolic Computation 6 (1988), 183–208.
[Ram] J. Rambau, Topcom, a package for computing triangulations
of point configurations and oriented matroids, Available at
http://www.zib.de/rambau/TOPCOM/.
[SST02] M. Stillman, B. Sturmfels, and R.R. Thomas, Algorithms for
the toric Hilbert scheme, Computations in Algebraic Geometry
with Macaulay 2 (D. Eisenbud, D. Grayson, M. Stillman, and
B. Sturmfels, eds.), Algorithms and Computation in Mathemat-
ics Vol 8, Springer-Verlag, New York, 2002, pp. 179–213.
[Stu88] B. Sturmfels, Some applications of affine Gale diagrams to poly-
topes with few vertices, Siam J. Discrete Math. 1 (1988), 121–
133.
[Stu91] , Gröbner bases of toric varieties, Tôhoku Math. Journal
43 (1991), 249–261.
[Stu96] B. Sturmfels, Gröbner Bases and Convex Polytopes, University
Lecture Series, vol. 8, American Mathematical Society, Provi-
dence, RI, 1996. MR 97b:13034
[Stu02] B. Sturmfels, Solving Systems of Polynomial Equations, vol. 97,
American Mathematical Society, Providence, RI, 2002.
[Zie95] G.M. Ziegler, Lectures on Polytopes, Graduate Texts in Mathe-
matics, vol. 152, Springer-Verlag, New York, 1995.
Index

k-connected, 26 multi-intersection, 77
n-gon outer normal, 62
regular, 4 polyhedral, 62
configuration
acyclic, 47
abelian, 3
graded, 57
affine
totally cyclic, 47
combination, 12
convex, 8
dependence, 38
combination, 10
hull, 12
hull, 10
independence, 38
position, 50
space, 12
cube, 7
algebraic set, 95
unit, 7
associahedron, 90

degree-compatible, 107
binary operation, 2
diagram
binary tree, 92
Gale, 38
bipyramid, 13
Hasse, 19
Buchberger’s
Schlegel, 29, 32
algorithm, 114
dimension
first criterion, 116
affine space, 13
face
Catalan numbers, 91 polytope, 18
circuit, 49 polytope, 13
signed, 49 simplicial complex, 120
co-circuit, 49 division algorithm, 109
signed, 49 down-set, 111
co-face, 41
combinatorially
edge, 18
equivalent, 20
elimination orders, 116
isomorphic, 20
Euclidean algorithm, 102
complex
extreme ray, 62
boundary, 31
cone, 62
polyhedral, 29 face
polytope, 31 configuration, 57
cone, 61 incidence, 19
inner normal, 62 lattice, 18

141
142 Index

lower, 34 homogeneous, 119


number, 18 linear, 96, 103, 115
optimal, 18 membership problem, 101, 113
polytope, 17 monomial, 96
poset principal, 96
polyhedral complex, 30 radical, 98
simplicial complex, 119 Stanley-Reisner, 121
subdivision, 58 univariate, 101
vector, 18 initial
facet, 58 complex, 122
polytope, 18 ideal, 111
fan monomial, 111
coarsening, 136 term, 108
complete, 62 interior, 41
inner normal, 63 relative, 41
outer normal, 62
polytopal, 64 leading
field, 6 monomial, 111
algebraic closure, 95 coefficient, 101
algebraically closed, 95 term, 108
Fourier-Motzkin elimination, 11 lexicographic order, 107
Fundamental theorem of algebra, 95 lineality space, 74
linear dependence, 38
Gale dual, 48 linear program, 15
Gale transform, 38 loop, 26
scaled, 67
Gale’s evenness condition, 22 Minkowski sum, 14
GKZ vector, 80 moment curve, 21
Gröbner monomial, 93
basis, 112
minimal, 112 neighborly, 22
reduced, 112 normalized volume, 80
universal, 115
cone, 129 optima, 15
pointed, 129 optimal value, 16
degree, 133 order ideal, 111
fan, 131
fiber, 133
grading, 119 parenthesization, 92
total degree, 119 partial order, 106
graph permutahedron, 88
dual, 92 permutation, 3
simple, 26 planar, 26
group, 2 polyhedron, 9
dihedral, 4 H, 9
symmetric, 3 polynomial, 93
homogeneous, 119
monic, 101
halfspace, 9 polytope
Hilbert’s Basis Theorem, 113 H, 9
Hilbert’s Basis Theorem, 96 V, 11
Hilbert’s Nullstellensatz, 98 cross, 11
hyperplane, 8 cyclic, 21
supporting, 16 graph, 25
hypersurface, 95 Newton, 128
polar, 20
ideal, 95 product, 13
basis, 95 secondary, 80
circuit, 104 simple, 20
generated, 95 simplicial, 20
Index 143

state, 134 zonotope, 14


poset, 18
refinement, 71
prism, 13
pyramid, 13

refine, 58
regular
subdivision, 34, 60
reverse lexicographic order, 107
ring, 5
coefficient, 94
polynomial, 94
univariate, 94
root, 94

S-pair, 114
secondary
cell, 74
pointed, 74
cone, 74
pointed, 74
fan
pointed, 77
simplex, 12, 58
simplicial complex, 119
non-face, 120
pure, 120
standard monomial, 111
Steinitz Theorem, 26
subdivision, 58
polytopal, 31
support
monomial, 98
polyhedral complex, 30
polynomial, 93
vector, 48
symmetry, 4

table
facet-vertex incidence, 28
multiplication, 2
term, 93
term order, 107
toric ideal, 118
total order, 106
triangulation, 31, 58
unimodular, 89

Upper Bound Theorem, 21

valid inequality, 16
variety, 94, 97
vector
sign, 48
vertex, 11, 18, 58
vertex figure, 53

zero-set, 94

You might also like