Combinatorics Introduction
Combinatorics Introduction
by
Joy Morris
University of Lethbridge
Part I. Enumeration
Chapter 2. Basic Counting Techniques 9
§2.1. The product rule . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
§2.2. The sum rule - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 12
§2.3. Putting them together . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14
§2.4. Summing up - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 17
i
ii
Index 343
Chapter 1
What is
Combinatorics?
Combinatorics is a subfield of “discrete mathematics,” so we should begin by asking what
discrete mathematics means. The differences are to some extent a matter of opinion, and
various mathematicians might classify specific topics differently.
“Discrete” should not be confused with “discreet,” which is a much more commonly-used
word. They share the same Latin root, “discretio,” which has to do with wise discernment or
separation. In the mathematical “discrete,” the emphasis is on separateness, so “discrete” is
the opposite of “continuous.” If we are studying objects that can be separated and treated as
a (generally countable) collection of units rather than a continuous structure, then this study
falls into discrete mathematics.
In calculus, we deal with continuous functions, so calculus is not discrete mathematics. In
linear algebra, our matrices often have real entries, so linear algebra also does not fall into
discrete mathematics.
Text books on discrete mathematics often include some logic, as discrete mathematics is
often used as a gateway course for upper-level math. Elementary number theory and set theory
are also sometimes covered. Algorithms are a common topic, as algorithmic techniques tend to
work very well on the sorts of structures that we study in discrete mathematics.
In Combinatorics, we focus on combinations and arrangements of discrete structures. There
are five major branches of combinatorics that we will touch on in this course: enumeration, graph
theory, Ramsey Theory, design theory, and coding theory. (The related topic of cryptography
can also be studied in combinatorics, but we will not touch on it in this course.) We will focus
on enumeration, graph theory, and design theory, but will briefly introduce the other two topics.
1.1. Enumeration
Enumeration is a big fancy word for counting. If you’ve taken a course in probability and
statistics, you’ve already covered some of the techniques and problems we’ll be covering in
this course. When a statistician (or other mathematician) is calculating the “probability” of a
particular outcome in circumstances where all outcomes are equally likely, what they usually do
is enumerate all possible outcomes, and then figure out how many of these include the outcome
they are looking for.
EXAMPLE 1.1.1. What is the probability of rolling a 3 on a 6-sided die?
SOLUTION. To figure this out, a mathematician would count the sides of the die (there are
six) and count how many of those sides display a three (one of them). They would conclude
that the probability of rolling a 3 on a 6-sided die is 1/6 (one in six).
1
2 1. What is Combinatorics?
That was an example that you could probably figure out without having studied enumera-
tion or probability, but it nonetheless illustrates the basic principle behind many calculations
of probability. The object of enumeration is to enable us to count outcomes in much more
complicated situations. This sometimes has natural applications to questions of probability,
but our focus will be on the counting, not on the probability.
After studying enumeration in this course, you should be able to solve problems such as:
• If you are playing Texas Hold’em poker against a single opponent, and the two cards
in your hand are a pair, what is the probability that your opponent has a higher pair?
• How many distinct Shidokus (4-by-4 Sudokus) are there?
• How many different orders of five items can be made from a bakery that makes three
kinds of cookies?
• Male honeybees come from a queen bee’s unfertilised eggs, so have only one parent
(a female). Female honeybees have two parents (one male, one female). Assuming
all ancestors were distinct, how many ancestors does a male honeybee have from 10
generations ago?
Although all of these questions (and many others that arise naturally) may be of interest
to you, the reason we begin our study with enumeration is because we’ll be able to use many
of the techniques we learn, to count the other structures we’ll be studying.
be scheduled at the same time, or some nodes might represent students and others classes, with
a line between a student and each of the classes they are taking).
After studying graph theory in this course, you should be able to solve problems such as:
• How can we find a good route for garbage trucks to take through a particular city?
• Is there a delivery route that visits every city in a particular area, without repetition?
• Given a collection of project topics and a group of students each of whom has expressed
interest in some of the topics, is it possible to assign each student a unique topic that
interests them?
• A city has bus routes all of which begin and end at the bus terminal, but with different
schedules, some of which overlap. What is the least number of buses (and drivers)
required in order to be able to complete all of the routes according to the schedule?
• Create a schedule for a round-robin tournament that uses as few time slots as possible.
Some of these questions you may only be able to answer for particular kinds of graphs.
Graph theory is a relatively “young” branch of mathematics. Although some of the problems
and ideas that we will study date back a few hundred years, it was not until the 1930s that
these individual problems were gathered together and a unified study of the theory of graphs
began to develop.
We will touch lightly on Ramsey theory in this course, specifically on Ramsey’s Theorem
itself, in the context of graph theory.
Codes are used for many purposes in which the information is not intended to be secret. For
example, computer programs are transformed into long strings of binary data, that a computer
reinterprets as instructions. When you text a photo to a friend, the pixel and colour information
are converted into binary data to be transmitted through radio waves. When you listen to an
audio file, the sound frequencies of the music have been converted into binary data that your
computer decodes back into sound frequencies.
Electronic encoding is always subject to interference, which can cause errors. Even when
a coded message is physically etched onto a device (such as a dvd), scratches can make some
parts of the code illegible. When you are connected to the internet (for example, if you are
streaming), wifi signals can fail, suffer interference from other nearby networks, or become
overloaded. Any of these problems can cause your connection to lose or misread part of the
data that is being transmitted. People don’t like it when their movies, music, or apps freeze,
crash, or skip over something. This can become even more problematic if it happens during an
important online meeting or class, or while you are making an electronic financial transaction.
To avoid this problem, engineers use codes that allow our devices to automatically detect, and
correct, minor errors that may be introduced.
In coding theory, we learn how to create codes that allow for error detection and correction,
without requiring excessive memory or storage capacity. Although coding theory is not a focus
of this course, designs can be used to create good codes. We will learn how to make codes from
designs, and what makes these codes “good.”
EXAMPLE 1.5.1. Suppose we have a string of binary information, and we want the computer
to store it so we can detect if an error has arisen. There are two symbols we need to encode: 0
and 1. If we just use 0 as the code for indicating 0 and 1 as the code for 1, we’ll never know if a
bit has been flipped (from 0 to 1 or vice versa). If we use 00 for 0 and 01 for 1, then if the first
bit gets flipped we’ll know there was an error (because the first bit should never be 1), but we
won’t notice if the second was flipped. If we use 00 for 0 and 11 for 1, then we will be able to
detect an error, as long as at most one bit gets flipped, because flipping one bit of either code
word will result in either 01 or 10, neither of which is a valid code word. Thus, this code allows
us to detect an error. It does not allow us to correct an error, because even knowing that a
single bit has been flipped, there is no way of knowing whether a 10 arose from a 00 with the
first bit flipped, or from a 11 with the second bit flipped. We would need a longer code to be
able to correct errors.
After our study of coding theory, you should be able to solve problems such as:
• Given a code, how many errors can be detected?
• Given a code, how many errors can be corrected?
• Construct some small codes that allow detection and correction of small numbers of
errors.
EXERCISE 1.5.2. Can you come up with an interesting counting problem that you wouldn’t
know how to solve?
6 1. What is Combinatorics?
SUMMARY:
• enumeration
• graph theory
• Ramsey theory
• design theory
• coding theory
Part I
Enumeration
Chapter 2
Basic Counting
Techniques
When we are trying to count the number of ways in which something can happen, sometimes
the answer is very obvious. For example, if a doughnut shop has five different kinds of doughnuts
for sale and you are planning to buy one doughnut, then you have five choices.
There are some ways in which the situation can become slightly more complicated. Perhaps
you haven’t decided whether you’ll buy a doughnut or a bagel, and the store also sells three
kinds of bagels. Or perhaps you want a cup of coffee to go with your doughnut, and there are
four different kinds of coffee, each of which comes in three different sizes.
These particular examples are fairly small and straightforward, and you could list all of the
possible options if you wished. The goal of this chapter is to use simple examples like these to
demonstrate two rules that allow us to count the outcomes not only in these situations, but in
much more complicated circumstances. These rules are the product rule, and the sum rule.
EXAMPLE 2.1.1. Consider the example of buying coffee at a coffee shop that sells four varieties
and three sizes. When you are choosing your coffee, you need to choose both variety and size.
One way of figuring out how many choices you have in total, would be to make a table. You
could label the columns with the sizes, and the rows with the varieties (or vice versa, it doesn’t
matter).
Small Medium Large
Latte small latte medium latte large latte
Mocha small mocha medium mocha large mocha
Espresso small espresso medium espresso large espresso
Cappuccino small cappuccino medium cappuccino large cappuccino
As you can see, a different combination of variety and size appears in each entry of the
table, and every possible combination of variety and size appears somewhere. Thus the total
number of possible choices is the number of entries in this table. Although in a small example
like this we could simply count all of the entries and see that there are twelve, it will be more
useful to notice that elementary arithmetic tells us that the number of entries in the table will
be the number of rows times the number of columns, which is four times three.
9
10 2. Basic Counting Techniques
In other words, to determine the total number of choices you have, we multiply the number
of choices of variety (that is, the number of rows in our table) by the number of choices of size
(that is, the number of columns in our table). This is an example of what we’ll call the product
rule.
We’re now ready to state the product rule in its full generality.
THEOREM 2.1.2 (Product Rule). Suppose that when you are determining the total number of
outcomes, you can identify two different aspects that can vary. If there are n1 possible outcomes
for the first aspect, and for each of those possible outcomes, there are n2 possible outcomes for
the second aspect, then the total number of possible outcomes will be n1 n2 .
In the above example, we can think of the aspects that can change as being the variety of
coffee, and the size. There are four outcomes (choices) for the first aspect, and three outcomes
(choices) for the second aspect, so the total number of possible outcomes is 4 · 3 = 12.
Sometimes it seems clear that there are more than two aspects that are varying. If this
happens, we can apply the product rule more than once to determine the answer, by first
identifying two aspects (one of which may be “all the rest”), and then subdividing one or both
of those aspects. An example of this is the problem posed earlier of buying a doughnut to go
with your coffee.
EXAMPLE 2.1.3. Kyle wants to buy coffee and a doughnut. The local doughnut shop has five
kinds of doughnuts for sale, and sells four varieties of coffee in three sizes (as in Example 2.1.1).
How many different orders could Kyle make?
SOLUTION. A natural way to divide Kyle’s options into two aspects that can vary, is to
consider separately their choice of doughnut, and their choice of coffee. There are five choices
for the kind of doughnut they order, so n1 = 5. For choosing the coffee, we have already used
the product rule in Example 2.1.1 to determine that the number of coffee options is n2 = 12.
Thus the total number of different orders Kyle could make is n1 n2 = 5 · 12 = 60.
Let’s go through an example that more clearly involves repeated applications of the product
rule.
EXAMPLE 2.1.4. Chloë wants to manufacture children’s t-shirts. There are generally three
sizes of t-shirts for children: small, medium, and large. She wants to offer the t-shirts in eight
different colours (blue, yellow, pink, green, purple, orange, white, and black). The shirts can
have an image on the front, and a slogan on the back. She has come up with three images, and
five slogans.
To stock her show room, Chloë wants to produce a single sample of each kind of shirt that
she will be offering for sale. The shirts cost her $4 each to produce. How much are the samples
going to cost her (in total)?
SOLUTION. To solve this problem, observe that to determine how many sample shirts Chloë
will produce, we can consider the size as one aspect, and the style (including colour, image, and
slogan) as the other. There are n1 = 3 sizes. So the number of samples will be three times n2 ,
where n2 is the number of possible styles.
We now break n2 down further: to determine how many possible styles are available, you
can divide this into two aspects: the colour, and the decoration (image and slogan). There are
n2,1 = 8 colours. So the number of styles will be eight times n2,2 , where n2,2 is the number of
possible decorations (combinations of image and slogan) that are available.
We can break n2,2 down further: to determine how many possible decorations are available,
you divide this into the two aspects of image and slogan. There are n2,2,1 = 3 possible images,
2. Basic Counting Techniques 11
and n2,2,2 = 5 possible slogans, so the product rule tells us that there are n2,2 = 3 · 5 = 15
possible combinations of image and slogan (decorations).
Putting all of this together, we see that Chloë will have to create 3(8(3 · 5)) = 360 sample
t-shirts. As each one costs $4, her total cost will be $1440.
Notice that finding exactly two aspects that vary can be quite artificial. Example 2.1.4
serves as a good demonstration for a generalisation of the product rule as we stated it above.
In that example, it would have been more natural to have considered from the start that there
were four apparent aspects to the t-shirts that can vary: size; colour; image; and slogan. The
total number of t-shirts she needed to produce was the product of the number of possible
outcomes of each of these aspects: 3 · 8 · 3 · 5 = 360.
THEOREM 2.1.5 (Product Rule for many aspects). Suppose that when you are determining
the total number of outcomes, you can identify k different aspects that can vary. If for each
i between 1 and k there are ni possible outcomes for the ith aspect, then the total number of
∏
possible outcomes will be ki=1 ni (that is, the product as i goes from 1 to k of the ni ).
Now let’s look at an example where we are trying to evaluate a probability. Since this
course is about counting rather than probability, we’ll restrict our attention to examples where
all outcomes are equally likely. Under this assumption, in order to determine a probability, we
can count the number of outcomes that have the property we’re looking for, and divide by the
total number of outcomes.
EXAMPLE 2.1.6. Iswar has flipped a coin twice, and come up with heads both times. What
is the probability that he will flip heads each of his next two tries?
SOLUTION. To answer this, we consider each coin flip as a different aspect. There are two
possible results for the third flip: heads or tails. For each of these, there are two possible results
for the fourth flip: heads or tails. So in total, the product rule tells us that there are 2 · 2 = 4
possible combinations for the results of the third and fourth flips. This will be the denominator
of the probability.
To determine the numerator (that is, the number of ways in which both flips can result in
heads), we again consider each flip as a different aspect. There is only one possible way for the
third flip to be heads, and then there is only one possible way for the fourth flip to be heads.
So in total, only one of the four possible combinations of outcomes involves both coins landing
as heads.
The probability that Iswar’s next two flips will also result in heads is 1/4.
Notice that in this example, the fact that Iswar’s first two flips were heads was irrelevant
to our calculations, because it was already a known outcome, over and done with, so is true no
matter what may happen with his later flips. If Iswar hadn’t yet flipped the coin and we asked
for the probability that his first four flips will all be heads, then our calculations would have
to include both possible options for the outcome of each of his first two flips. In this case, the
final probability would be 1/16 (there are 16 possible combinations for the outcomes of four
coin flips, only one of which involves all four being heads).
EXERCISES 2.1.7. Use only the product rule to answer the following questions:
1) The car Ace wants to buy comes in four colours; with or without air conditioning; with
five different options for stereo systems; and a choice of none, two, or four floor mats.
If the dealership they visit has three cars in the lot, each with different options, what is
the probability that one of the cars the dealership has in stock has exactly the options
Ace wants?
12 2. Basic Counting Techniques
2) Candyce is writing a “Choose your own adventure” book in which she wants every
possible choice to result in a different ending. If there are four points at which choices
must be made in every storyline, and there are three choices the first time but two
every time after that, how many endings does Candyce need to write?
3) William is buying five books. For each book he has a choice of version: hardcover,
paperback, or electronic. In how many different ways can he make his selection?
SOLUTION. To answer this question, we’ll break the problem into cases. First we’ll divide the
problem into two possibilities: Iswar flips the coin no times; or he flips it at least once. If Iswar
does not flip the coin, there is only one possible outcome (no heads and no tails). If Iswar flips
the coin at least once, then he flips it between one and three times. We’ll have to break this
down further to find how many outcomes are involved.
We break the case where Iswar flips the coin between one and three times down into two
cases: he might flip it exactly once, or he might flip it more than once. If he flips it exactly
once, the outcome of that might be heads or tails, so there are two possible outcomes. If he
flips it more than once, again we’ll need to further subdivide this case.
The case where Iswar flips the coin either two or three times naturally breaks down into
two cases: he might flip it twice, or he might flip it three times. If he flips it twice, the number
of heads he gets might be zero, one, or two, so there are three possible outcomes (the remaining
results, if any, must all be tails). If he flips it three times, the number of heads he gets might
be zero, one, two, or three, so there are four possible outcomes (again, any remaining results
must be tails).
Now we put all of these outcomes together with the sum rule. We conclude that in total,
there are 1 + (2 + (3 + 4)) = 10 different combinations of heads and tails that Iswar might end
up with.
Notice that it was artificial to repeatedly break this example up into two cases at a time.
Thus, Example 2.2.3 serves as a good demonstration for a generalisation of the sum rule as we
stated it above. It would have been more natural to have broken the problem of Iswar’s coin
flips up into four cases from the beginning, depending on whether he flips the coin zero, one,
two, or three times. The total number of combinations of heads and tails that Iswar might end
up with, is the sum of the combinations he can end up with in each of these cases; that is,
1 + 2 + 3 + 4 = 10.
THEOREM 2.2.4 (Sum Rule for many cases). Suppose that when you are determining the to-
tal number of outcomes, you can identify k distinct cases with the property that every possible
outcome lies in exactly one of the cases. If for each i between 1 and k there are ni possible
∑
outcomes in the ith case, then the total number of possible outcomes will be ki=1 ni (that is,
the sum as i goes from 1 to k of the ni ).
There is one other important way to use the sum rule. This application is a bit more
subtle. Suppose you know the total number of outcomes, and you want to know the number
of outcomes that don’t include a particular event. The sum rule tells us that the total number
of outcomes is comprised of the outcomes that do include that event, together with the ones
that don’t. So if it’s easy to figure out how many outcomes include the event that interests
you, then you can subtract that from the total number of outcomes to determine how many
outcomes exclude that event. Here’s an example.
EXAMPLE 2.2.5. There are 216 different possible outcomes from rolling a white die, a red die,
and a yellow die. (You can work this out using the product rule.) How many of these outcomes
involve rolling a one on two or fewer of the dice?
SOLUTION. Tackling this problem directly, you might be inclined to split it into three cases:
outcomes that involve rolling no ones, those that involve rolling exactly one one, and those that
involve rolling exactly two ones. If you try this, the analysis will be long and fairly involved,
and will include both the product rule and the sum rule. If you are careful, you will be able to
find the correct answer this way.
We’ll use a different approach, by first counting the outcomes that we don’t want: those
that involve getting a one on all three of the dice. There is only one way for this to happen: all
14 2. Basic Counting Techniques
three of the dice have to roll ones! So the number of outcomes that involve rolling ones on two
or fewer of the dice, will be 216 − 1 = 215.
EXERCISES 2.2.6. Use only the sum rule to answer the following questions:
1) I have four markers on my desk: one blue and three black. Every day on my way to
class, I grab three of the markers without looking. There are four different markers
that could be left behind, so there are four combinations of markers that I could take
with me. What is the probability that I take the blue marker?
2) Ocean is thinking of either a letter, or a digit. How many different things could they
be thinking of?
3) How many of the 16 four-bit binary numbers have at most one 1 in them?
Menu
Mains Sides Beverages
pancakes fruit cup coffee
oatmeal toast tea
omelette orange juice
waffles
Pancakes, waffles, and toast come with butter.
Coffee and tea come with milk and sugar.
Optional extras:
marmalade, lemon curd, or blackberry jam for toast;
maple syrup for pancakes or waffles.
SOLUTION. We see that the number of choices Grace has available depends partly on whether
or not she orders an item or items that include optional extras. We will therefore divide our
consideration into four cases:
1) Grace does not order any pancakes, waffles, or toast.
2) Grace orders pancakes or waffles, but does not order toast.
3) Grace does not order pancakes or waffles, but does order toast.
4) Grace orders toast, and also orders either pancakes or waffles.
In the first case, Grace has three possible choices for her main dish (oatmeal, omelette, or
nothing). For each of these, she has two choices for her side dish (fruit cup, or nothing). For
each of these, she has four choices for her beverage (coffee, tea, orange juice, or nothing). Using
the product rule, we conclude that Grace could order 3 · 2 · 4 = 24 different breakfasts that do
not include pancakes, waffles, or toast.
2. Basic Counting Techniques 15
In the second case, Grace has two possible choices for her main dish (pancakes, or waffles).
For each of these, she has two choices for her side dish (fruit cup, or nothing). For each of
these, she has four choices for her beverage. In addition, for each of her choices of pancakes or
waffles, she can choose to have maple syrup, or not (two choices). Using the product rule, we
conclude that Grace could order 2 · 2 · 4 · 2 = 32 different breakfasts that include pancakes or
waffles, but not toast.
In the third case, Grace has three possible choices for her main dish (oatmeal, omelette, or
nothing). For each of these, she has only one possible side dish (toast), but she has four choices
for what to put on her toast (marmalade, lemon curd, blackberry jam, or nothing). For each of
these choices, she has four choices of beverage. Using the product rule, we conclude that Grace
could order 3 · 4 · 4 = 48 different breakfasts that include toast, but do not include pancakes or
waffles.
In the final case, Grace has two possible choices for her main dish (pancakes, or waffles).
She has two choices for what to put on her main dish (maple syrup, or only butter). She is
having toast, but has four choices for what to put on her toast. Finally, she again has four
choices of beverage. Using the product rule, we conclude that Grace could order 2 · 2 · 4 · 4 = 64
different breakfasts that include toast as well as either pancakes or waffles.
Using the sum rule, we see that the total number of different breakfasts Grace could order
is 24 + 32 + 48 + 64 = 168.
SOLUTION. To answer this question, there is a natural division into four cases: regular car
plates with three digits; regular car plates with four digits; veteran plates; and motorcycle
plates.
For a regular car plate with three digits, there are 24 choices for the first letter, followed by
24 choices for the second letter, and 24 choices for the third letter. There are 10 choices for the
first digit, 10 choices for the second digit, and 10 choices for the third digit. Using the product
rule, the total number of license plates in this category is 243 · 103 = 13, 824, 000.
For a regular car plate with four digits, there are 20 choices for the first letter, followed by
20 choices for the second letter, and 20 choices for the third letter. There are 10 choices for
the first digit, 10 choices for the second digit, 10 choices for the third digit, and 10 choices for
the fourth digit. Using the product rule, the total number of license plates in this category is
203 · 104 = 80, 000, 000.
For a veteran plate, there are 24 choices for the first letter, followed by 24 choices for the
second letter. There are 10 choices for the first digit, and 10 choices for the second digit. Using
the product rule, the total number of license plates in this category is 242 · 102 = 57, 600.
16 2. Basic Counting Techniques
Finally, for a motorcycle plate, there are 24 choices for the first letter, followed by 24 choices
for the second letter. There are 10 choices for the first digit, 10 choices for the second digit,
and 10 choices for the third digit. Using the product rule, the total number of license plates in
this category is 242 · 103 = 576, 000.
Using the sum rule, we see that the total number of license plates is
13, 824, 000 + 80, 000, 000 + 57, 600 + 576, 000
which is 94, 457, 600.
It doesn’t always happen that the sum rule is applied first to break the problem down into
cases, followed by the product rule within each case. In some problems, these might occur in
the other order. Sometimes there may seem to be one “obvious” way to look at the problem,
but often there is more than one equally effective analysis, and different analyses might begin
with different rules.
In Example 2.3.1, we could have begun by noticing that no matter what else she may choose,
Grace has four possible options for her beverage. Thus, the total number of possible breakfast
orders will be four times the number of possible orders of main and side (with optional extras).
Then we could have proceeded to analyse the number of possible choices for her main dish and
her side dish (together with the extras). Breaking down the choices for her main and side dishes
into the same cases as before, we could see that there are 3 · 2 = 6 choices in the first case;
2 · 2 · 2 = 8 choices in the second case; 3 · 4 = 12 choices in the third case; and 2 · 2 · 4 = 16
choices in the fourth case. Thus she has a total of 6 + 8 + 12 + 16 = 42 choices for her main
and side dishes. The product rule now tells us that she has 4 · 42 = 168 possible orders for her
breakfast.
Let’s run through one more (simpler) example of using both the sum and product rules,
and work out the answer in two different ways.
EXAMPLE 2.3.3. Ming plans to buy her Dad a shirt for his birthday. The store she goes to
has three different colours of short-sleeved shirts, and six different colours of long-sleeved shirts.
They will gift-wrap in her choice of two wrapping papers. Assuming that she wants the shirt
gift-wrapped, how many different options does she have for her gift?
SOLUTION. Let’s start by applying the product rule first. There are two aspects that Ming
can vary: the shirt, and the wrapping. She has two choices for the wrapping, so her total
number of options will be twice the number of shirt choices that she has. For the shirt, we
break her choices down into two cases: if she opts for a short-sleeved shirt then she has three
choices (of colour), while if she opts for a long-sleeved shirt then she has six choices. In total
she has 3 + 6 = 9 choices for the shirt. Using the product rule, we see that she has 2 · 9 = 18
options for her gift.
Alternatively, we could apply the sum rule first. We will consider the two cases: that Ming
buys a short-sleeved shirt; or a long-sleeved shirt. If she buys a short-sleeved shirt, then she
has three options for the shirt, and for each of these she has two options for the wrapping,
making (by the product rule) 3 · 2 = 6 options of short-sleeved shirts. If she buys a long-sleeved
shirt, then she has six options for the shirt, and for each of these she has two options for the
wrapping, making (by the product rule) 6 · 2 = 12 options of long-sleeved shirts. Using the sum
rule, we see that she has 6 + 12 = 18 options for her gift.
EXERCISES 2.3.4. How many passwords can be created with the following constraints:
1) The password is three characters long and contains two lowercase letters and one digit,
in some order.
2. Basic Counting Techniques 17
2) The password is eight or nine characters long and consists entirely of digits.
3) The password is five characters long and consists of lowercase letters and digits. All
of the letters must come before all of the digits in the password, but there can be any
number of letters (from zero through five).
4) The password is four characters long and consists of two characters that can be either
digits or one of 16 special characters, and two lowercase letters. The two letters can be
in any two of the four positions.
5) The password is eight characters long and must include at least one letter and at least
one digit.
6) The password is eight characters long and cannot include any character more than
once.
EXERCISES 2.3.5.
1) There are 8 buses a day from Toronto to Ottawa, 20 from Ottawa to Montreal, and 9
buses directly from Toronto to Montreal. Assuming that you do not have to complete
the trip in one day (so the departure and arrival times of the buses is not an issue), how
many different schedules could you use in travelling by bus from Toronto to Montreal?
2) How many 7-bit ternary strings (that is, strings whose only entries are 0, 1, or 2) begin
with either 1 or 01?
2.4. Summing up
Very likely you’ve used the sum rule or the product rule when counting simple things, without
even stopping to think about what you were doing. The reason we’re going through each of
them very slowly and carefully, is because whsen we start looking at more complicated problems,
our uses of the sum and product rules will become more subtle. If we don’t have a very clear
understanding in very simple situations of what we are doing and why, we’ll be completely lost
when we get to more difficult examples.
It’s dangerous to try to come up with a simple guideline for when to use the product rule
and when to use the sum rule, because such a guideline will often go wrong in complicated
situations. Nonetheless, a good question to ask yourself when you are trying to decide which
rule to use is, “Would I describe this with the word ‘and,’ or the word ‘or’?” The word “and”
is generally used in situations where it’s appropriate to use the product rule, while “or” tends
to go along with the sum rule.
Let’s see how this applies to each of the examples we’ve looked at in this chapter.
In Example 2.1.1, you needed to choose the size and the variety for your coffee. In Ex-
ample 2.1.3, Kyle wanted to choose a doughnut and coffee. In Example 2.1.4, Chloë needed
to determine the size and the colour and the image and the slogan for each t-shirt. In Exam-
ple 2.1.6, we wanted to know the results of Iswar’s third and fourth coin flips. So in each of
these examples, we used the product rule.
In Example 2.2.1, you needed to choose a bagel or a doughnut. In Example 2.2.3, Iswar
could have flipped the coin zero or one or two or three times. So in each of these examples, we
used the sum rule.
You definitely have to be careful in applying this guideline, as problems can be phrased
in a misleading way. We could have said that in Example 2.2.1, we want to know how many
different kinds of doughnuts and of bagels there are, altogether. The important point is that
you aren’t choosing both of these things, though; you are choosing just one thing, and it will
be either a doughnut, or a bagel.
18 2. Basic Counting Techniques
In Example 2.3.1, Grace was choosing a main dish and a side dish and a beverage, so we
used the product rule to put these aspects together. Whether or not she had extra options
available for her main dish depended on whether she chose pancakes or waffles or oatmeal or
omelette or nothing, so the sum rule applied here. (Note that we didn’t actually consider each
of these four things separately, since they naturally fell into two categories. However, we would
have reached the same answer if we had considered each of them separately.) Similarly, whether
or not she had extra options available for her side dish depended on whether she chose toast or
not, so again the sum rule applied.
In Example 2.3.2, the plates can be regular (in either of two ways) or veteran or motorcycle
plates, so the sum rule was used. In each of these categories, we had to consider the options
for the first character and the second character (and so on), so the product rule applied.
Finally, in Example 2.3.3, the shirt Ming chooses can be short-sleeved or long-sleeved, so
the sum rule applies to that distinction. Since she wants to choose a shirt and gift wrap, the
product rule applies to that combination.
EXERCISES 2.4.1. For each of the following problems, do you need to use the sum rule, the
product rule, or both?
1) Count all of the numbers that have exactly two digits, and the numbers that have
exactly four digits.
2) How many possible outcomes are there from rolling a red die and a yellow die?
3) How many possible outcomes are there from rolling three dice, if you only count the
outcomes that involve at most one of the dice coming up as a one?
SUMMARY:
• Product rule
• Sum rule
• Combining the product and sum rules
Chapter 3
Permutations,
Combinations, and
the Binomial
Theorem
The examples we looked at in Chapter 2 involved drawing things from an effectively infinite
population — they couldn’t run out. When you are making up a password, there is no way you’re
going to “use up” the letter b by including it several times in your password. In Example 2.1.4,
Chloë’s suppliers weren’t going to run out of blue t-shirts after printing some of her order, and
be unable to complete the remaining blue t-shirts she’d requested. The fact that someone has
already flipped a coin once with a result of heads doesn’t mean they’ve used up that side of the
coin so won’t be able to flip heads again.
In this chapter, we’ll look at situations where we are choosing more than one item from
a finite population in which every item is uniquely identified — for example, choosing people
from a family, or cards from a deck.
The study of permutations and combinations has a very long history, particularly in India
and China. Much of the older historical context that will be provided in this book comes from
handouts that were developed by Prof. Randy Schwartz of Schoolcraft College in the U.S. He
has made a study of the history of mathematics in a non-eurocentric context, for incorporation
into his own classes, and his handouts on “Combinations and Their Sums” and “Binomial
Coefficients and Subsets” are particularly relevant to this course.
3.1. Permutations
We begin by looking at permutations, because these are a straightforward application of the
product rule. The word “permutation” means a rearrangement, and this is exactly what a
permutation is: an ordering of a number of distinct items in a line. Sometimes even though
we have a large number of distinct items, we want to single out a smaller number and arrange
those into a line; this is also a sort of permutation.
DEFINITION 3.1.1. A permutation of n distinct objects is an arrangement of those objects
into an ordered line. If 1 ≤ r ≤ n (and r is a natural number) then an r-permutation of n
objects is an arrangement of r of the n objects into an ordered line.
19
20 3. Permutations, Combinations, and the Binomial Theorem
So a permutation involves choosing items from a finite population in which every item is
uniquely identified, and keeping track of the order in which the items were chosen.
Since we are studying enumeration, it shouldn’t surprise you that what we’ll be asking in
this situation is how many permutations there are, in a variety of circumstances. Let’s begin
with an example in which we’ll calculate the number of 3-permutations of ten objects (or in
this case, people).
EXAMPLE 3.1.2. Ten athletes are competing for Olympic medals in women’s speed skating
(1000 metres). In how many ways might the medals end up being awarded?
SOLUTION. There are three medals: gold, silver, and bronze, so this question amounts to
finding the number of 3-permutations of the ten athletes (the first person in the 3-permutation
is the one who gets the gold medal, the second gets the silver, and the third gets the bronze).
To solve this question, we’ll apply the product rule, where the aspects that can vary are the
winners of the gold, silver, and bronze medals. We begin by considering how many different
athletes might get the gold medal. The answer is that any of the ten athletes might get that
medal. No matter which of the athletes gets the gold medal, once that is decided we move our
consideration to the silver medal. Since one of the athletes has already been awarded the gold
medal, only nine of them remain in contention for the silver medal, so for any choice of athlete
who wins gold, the number of choices for who gets the silver medal is nine. Finally, with the
gold and silver medalists out of contention for the bronze, there remain eight choices for who
might win that medal. Thus, the total number of ways in which the medals might be awarded
is 10 · 9 · 8 = 720.
We can use the same reasoning to determine a general formula for the number of r-
permutations of n objects:
THEOREM 3.1.3. The number of r-permutations of n objects is n(n − 1) . . . (n − r + 1).
PROOF. There are n ways in which the first object can be chosen (any of the n objects). For
each of these possible choices, there remain n − 1 objects to choose for the second object, etc.
It will be very handy to have a short form for the number of permutations of n objects.
NOTATION 3.1.4. We use n! to denote the number of permutations of n objects, so
n! = n(n − 1) . . . 1.
By convention, we define 0! = 1.
5040(2 + 3 + 4 + 5 + 6 + 7 + 8 + 9) = 221760.
3. Permutations, Combinations, and the Binomial Theorem 21
EXAMPLE 3.1.7. There are 36 people at a workshop. They are seated at six round tables
of six people each for lunch. The Morris family (of three) has asked to be seated together
(side-by-side). How many different seating arrangements are possible at the Morris family’s
table?
SOLUTION. First, there are 3! = 6 ways of arranging the order in which the three members of
the Morris family sit at the table. Since the tables are round, it doesn’t matter which specific
seats they take; only the order in which they sit matters. Once the Morris family is seated, the
three remaining chairs are uniquely determined by their positions relative to the Morris family
(one to their right, one to their left, and one across from them). There are 33 other people
at the conference; we need to choose three of these people and place them in order into the
three vacant chairs. There are 33!/(33 − 3)! = 33!/30! ways of doing this. In total, there are
6(33!/30!) = 196, 416 different seating arrangements possible at the Morris family’s table.
By adjusting the details of the preceding example, it can require some quite different thought
processes to find the answer.
EXAMPLE 3.1.8. At the same workshop, there are three round dinner tables, seating twelve
people each. The Morris family members (Joy, Dave, and Harmony) still want to sit at the
same table, but they have decided to spread out (so no two of them should be side-by-side) to
meet more people. How many different seating arrangements are possible at the Morris family’s
table now?
SOLUTION. Let’s begin by arbitrarily placing Joy somewhere at the table, and seating everyone
else relative to her. This effectively distinguishes the other eleven seats. Next, we’ll consider
the nine people who aren’t in Joy’s family, and place them (standing) in an order clockwise
around the table from her. There are 33!/(33 − 9)! ways to do this. Before we actually assign
seats to these nine people, we decide where to slot in Dave and Harmony amongst them.
9 J 1
8 2
7 3
6 4
5
(In the above diagram, the digits 1 through 9 represent the nine other people who are sitting
at the Morris family’s table, and the J represents Joy’s position.) Dave can sit between any
pair of non-Morrises who are standing beside each other; that is, in any of the spots marked by
small black dots in the diagram above. Thus, there are eight possible choices for where Dave
22 3. Permutations, Combinations, and the Binomial Theorem
will sit. Now Harmony can go into any of the remaining seven spots marked by black dots.
Once Dave and Harmony are in place, everyone shifts to even out the circle (so the remaining
black dots disappear), and takes their seats in the order determined.
We have shown that there are (33!/24!)8 · 7 possible seating arrangements at the Morris
table. That’s a really big number, and it’s quite acceptable to leave it in this format. However,
in case you find another way to work out the problem and want to check your answer, the total
number is 783, 732, 837, 888, 000.
EXERCISES 3.1.9. Use what you have learned about permutations to work out the following
problems. The sum and/or product rule may also be required.
1) Six people, all of whom can play both bass and guitar, are auditioning for a band.
There are two spots available: lead guitar, and bass player. In how many ways can the
band be completed?
2) Your friend Garth tries out for a play. After the auditions, they text you that they
got one of the parts they wanted, and that (including them) nine people tried out for
the five roles. You know that there were two parts that interested them. In how many
ways might the cast be completed (who gets which role matters)?
3) You are creating an 8-character password. You are allowed to use any of the 26 lower-
case characters, and you must use exactly one digit (from 0 through 9) somewhere in
the password. You are not allowed to use any character more than once. How many
different passwords can you create?
4) How many 3-letter “words” (strings of characters, they don’t actually have to be words)
can you form from the letters of the word STRONG? How many of those words contain
an s? (You may not use a letter more than once.)
5) How many permutations of {0, 1, 2, 3, 4, 5, 6} have no adjacent even digits? For example,
a permutation like 5034216 is not allowed because 4 and 2 are adjacent.
3.2. Combinations
Sometimes the order in which individuals are chosen doesn’t matter; all that matters is whether
or not they were chosen. An example of this is choosing a set of problems for an exam. Although
the order in which the questions are arranged may make the exam more or less intimidating,
what really matters is which questions are on the exam, and which are not. Another example
would be choosing shirts to pack for a trip (assuming all of your shirts are distinguishable from
each other). We call a choice like this a “combination,” to indicate that it is the collection of
things chosen that matters, and not the order.
DEFINITION 3.2.1. Let n be a positive natural number, and 0 ≤ r ≤ n. Assume that we have
n distinct objects. An r-combination of the n objects is a subset consisting of r of the objects.
So a combination involves choosing items from a finite population in which every item is
uniquely identified, but the order in which the choices are made is unimportant.
Again, you should not be surprised to learn (since we are studying enumeration) that what
we’ll be asking is how many combinations there are, in a variety of circumstances. One signifi-
cant difference from permutations is that it’s not interesting to ask how many n-combinations
there are of n objects; there is only one, as we must choose all of the objects.
Let’s begin with an example in which we’ll calculate the number of 3-combinations of ten
objects (or in this case, people).
3. Permutations, Combinations, and the Binomial Theorem 23
EXAMPLE 3.2.2. Of the ten athletes competing for Olympic medals in women’s speed skating
(1000 metres), three are to be chosen to form a committee to review the rules for future
competitions. How many different committees could be formed?
SOLUTION. We determined in Example 3.1.2 that there are 10!/7! ways in which the medals
can be assigned. One easy way to choose the committee would be to make it consist of the
three medal-winners. However, notice that if (for example) Wong wins gold, Sajna wins silver,
and Andersen wins bronze, we will end up with the same committee as if Sajna wins gold,
Andersen wins silver, and Wong wins bronze. In fact, what we’ve learned about permutations
tells us that there are 3! different medal outcomes that would each result in the committee
being formed of Wong, Sajna, and Andersen.
In fact, there’s nothing special about Wong, Sajna, and Andersen — for any choice of three
people to be on the committee, there are 3! = 6 ways in which those individuals could have
been awarded the medals. Therefore, when we counted the number of ways in which the medals
could be assigned, we counted each possible 3-member committee exactly 3! = 6 times. So the
number of different committees is 10!/(7!3!) = 10 · 9 · 8/6 = 120.
We can use the same reasoning to determine a general formula for the number of r-
combinations of n objects:
THEOREM 3.2.3. The number of r-combinations of n objects is
n!
.
r!(n − r)!
PROOF. By Theorem 3.1.3, the number of r-permutations of n object is n!/(n − r)! . Suppose
that we knew there are k unordered r-subsets of n objects (i.e. r-combinations). For each of
these k unordered subsets, there are r! ways in which we could order the elements. This tells
us that k · r! = n!/(n − r)!. Rearranging the equation, we obtain k = n!/(r!(n − r)!).
It will also prove extremely useful to have a short form for the number of r-combinations
of n objects.
( )
NOTATION 3.2.4. We use nr to denote the number of r-combinations of n objects, so
( )
n n!
= .
r r!(n − r)!
(n)
DEFINITION 3.2.5. We read r as “ n choose r,” so n choose r is n!/[r!(n − r)!].
Notice that when r = n, we have
( )
n n! n! n!
= = = = 1,
r n!(n − n)! n!0! n!
coinciding with our earlier observation that there is only one way in which all of the n objects
can be chosen. Similarly,
( )
n n!
= = 1;
0 0!(n − 0)!
there is exactly one way of choosing none of the n objects.
One of the earliest known historical examples of calculating combinations comes from India
in the 500s (CE).
24 3. Permutations, Combinations, and the Binomial Theorem
EXAMPLE 3.2.6. Varāhamihira (499—587), an astronomer and mathematician from the region
of Ujjain, wrote the Brhatsambitā, an extensive treatise on divination. At one point in this book,
he considers 16 possible fragrances that can be included in perfumes, and counts the number of
distinct perfumes that could be made using any four of these fragrances. What is the correct
answer to this?
SOLUTION. Now that we understand how to calculate combinations, the answer to this is very
straightforward:
( )
16 16! 16 · 15 · 14 · 13
= = = 1820.
4 4!(16 − 4)! 4·3·2
A common mistake in an example like this, is to divide the problem into the cases that
Jasmine is holding
( ) the Ace, or that she is holding the King, and to determine that each of these
cases includes 12 2 = 66 possible combinations of cards, for a total of 132. The problem with
this analysis is that we’ve counted the combinations that include both the Ace and the King
twice: once as a combination that includes the Ace, and once as a combination that includes
the King. If you do this, you need to compensate by subtracting at the end the number of
combinations that have been counted twice:( that ) is, those that include the Ace and the King.
11
As we worked out in the example, there are 1 = 11 of these, making a total of 132 − 11 = 121
combinations.
3. Permutations, Combinations, and the Binomial Theorem 25
We return to some simple examples of how combinations have been studied and used his-
torically.
EXAMPLE 3.2.8. Abraham ibn Ezra (c. 1093—1167) lived in Spain while it was under Moorish
rule. In his book Se’fer Ha’Olam (“The Book of the World”), he considered the number of
“planetary conjunctions” that could occur involving any given number of the seven “planets”.
At the time, all of the “wandering” celestial bodies were thought to orbit the earth, and the
seven such bodies that were known were called the planets. These seven were the moon, the
sun, Mercury, Venus, Mars, Jupiter, and Saturn. When at least two of them appear to meet in
the sky, it is called a conjunction. For each k from 2 through 7, how many different ways can
exactly k of these be involved in a conjunction?
SOLUTION. For k = 2, the answer is
( )
7 7! 7·6
= = = 21.
2 2!(7 − 2)! 2
For k = 3, the answer is
( )
7 7! 7·6·5
= = = 35.
3 3!(7 − 3)! 3·2
For k = 4, the answer is
( )
7 7! 7·6·5
= = = 35.
4 4!(7 − 4)! 3·2
For k = 5, the answer is
( )
7 7! 7·6
= = = 21.
5 5!(7 − 5)! 2
For k = 6, the answer is
( )
7 7!
= = 7.
6 6!(7 − 6)!
For k = 7, the answer is
( )
7 7!
= =1
7 7!(7 − 7)!
(recall that 0! = 1).
EXAMPLE 3.2.9. In 1144 at the age of 19, Al-Samaw’al ben Yahyā al-Maghribī (c.1130—
c.1180) of Baghdad wrote Al-Bāhir fi’l-jabr (the “Brilliant in Algebra”). Among other things,
he considered equations in multiple variables and counted the number of ways in which it is
possible to take a sum of exactly 6 out of 10 possible variables. What is the correct answer to
this?
SOLUTION. The answer to this is the number of ways to choose 6 of the 10 variables to sum
up: that is,
( )
10 10! 10 · 9 · 8 · 7
= = = 210.
6 6!(10 − 6)! 4·3·2
26 3. Permutations, Combinations, and the Binomial Theorem
EXERCISES 3.2.10. Use what you have learned about combinations to work out the following
problems. Permutations and other counting rules we’ve covered may also be required.
1) For a magic trick, you ask a friend to draw three cards from a standard deck of 52
cards. How many possible sets of cards might they have chosen?
2) For the same trick, you insist that your friend keep replacing their first draw until
they draw a card that isn’t a spade. They can choose any cards for their other two
cards. How many possible sets of cards might they end up with? (Caution: choosing
5♣, 6♢, 3♠ in that order, is not different from choosing 6♢, 5♣, 3♠ in that order. You
do not need to take into account that some sets will be more likely to occur than
others.)
3) How many 5-digit numbers contain exactly two zeroes? (We insist that the number
contain exactly 5 digits.)
4) Sandeep, Hee, Sara, and Mohammad play euchre with a standard deck consisting of
24 cards (A, K, Q, J, 10, and 9 from each of the four suits of a regular deck of playing
cards). In how many ways can the deck be dealt so that each player receives 5 cards,
with 4 cards left in the middle, one of which is turned face-up? The order of the 3 cards
that are left face-down in the middle does not matter, but who receives a particular
set of 5 cards (for example, Sara or Sandeep) does matter.
5) An ice cream shop has 10 flavours of ice cream and 7 toppings. Their megasundae
consists of your choice of any 3 flavours of ice cream and any 4 toppings. (A customer
must choose exactly three different flavours of ice cream and four different toppings.)
How many different megasundaes are there?
If you want to take (as)from two of the four factors, and bs from the other two, Theorem 3.2.3
tells us that there are 42 = 6 ways in which to choose the factors from which you take the as
(then take bs from the other two factors). This is a small enough example that you could easily
work out all six ways by hand if you wish. Thus, the coefficient of a2 b2 will be 6.
(4) If you want to take as from one of the four factors, Theorem 3.2.3 tells us that there are
1 = 4 ways in which to choose the factors from which you take the as. (Specifically, these
four ways consist of taking the a from any one of the four factors, and the bs from the other
three factors). Thus, the coefficient of ab 3
(4) will be 4.
Finally, by Theorem 3.2.3, there is 0 = 1 way to choose zero factors from which to take
as. (Clearly, you must choose a b from every one of the four factors.) Thus, the coefficient of
b4 will be 1.
Putting all of this together, we see that
PROOF. As in Example 3.3.1, we see that the coefficient of ar bn−r in (a + b)n will be the
number of ways of choosing r of the n factors from which( ) we’ll take the a (taking the b from
the other n − r factors). By Theorem 3.2.3, there are nr ways of making this choice.
For the special case, begin by observing that (1 + x)n = (x + 1)n ; then take a = x and b = 1
in the general formula. Use the fact that 1n−r = 1 for any integers n and r.
The Binomial Theorem has been known for a long time. In China it was often used as a way
to work out numerical estimations for high powers of mixed numbers, for example by taking
the first few terms from the expansion of something (like 5
n
) (5 + .11) .
From the theorem above, we see that the values r are the coefficients of the terms in the
Binomial Theorem.
( )
DEFINITION 3.3.3. Expressions of the form nr are referred to as binomial coefficients.
There are some nice, simple consequences of the binomial theorem.
COROLLARY 3.3.4. For any natural number n, we have
n ( )
∑ n
= 2n .
r
r=0
28 3. Permutations, Combinations, and the Binomial Theorem
SUMMARY:
• The number of r-permutations of n objects is n!/(n − r)!.
( )
• The number of r-combinations of n objects is nr = r!(n−r)!
n!
.
• The Binomial Theorem
• Important definitions:
◦ permutation, r-permutation
◦ n factorial
◦ r-combination
◦ n choose r
◦ binomial coefficients
• Notation:
◦ n!
( )
n
◦
r
Chapter 4
Bijections and
Combinatorial
Proofs
You may have learned previously that two sets have the same cardinality if there is a
bijection between them. (A bijection is a one-to-one, onto function.) This leads us to another
important method for counting a set: we come up with a bijection between the elements of the
unknown set, and the elements of a set that we do know how to count. This idea is very closely
related to the concept of a combinatorial proof, which we will explore in the second half of this
chapter.
Aside: We won’t explore the concepts of P and NP directly at all in this course (though they
will be mentioned a few times). if you have studied these ideas in computer science courses, you
may be interested to learn that most of the techniques used to prove that a particular problem
is in P or in NP are related to the techniques discussed in this chapter. Usually a problem X
is proven to be in NP (for example) by starting with a problem Y that is already known to be
in NP. Then the researcher uses some clever ideas to show that problem Y can be related to
problem X in such a way that if problem X could be solved in polynomial time, that solution
would produce a solution to problem Y , still in polynomial time. Thus the fact that Y is in
NP forces X to be in NP also. The same ideas may sometimes relate the number of solutions
of problem X to the number of solutions of problem Y .
29
30 4. Bijections and Combinatorial Proofs
SOLUTION. One approach would be to figure out how many 0-element subsets there are, how
many 1-element subsets, etc., and add up all of the values we find. This works, but there are
so many pieces involved that it is prone to error. Also, the value will not be easy to calculate
once n gets reasonably large.
Instead, we imagine creating a table. The columns are indexed by the elements of the set,
so there are n columns. We index the rows by the subsets of our set (one per row). In each
entry of the table, we place a 1 if the subset that corresponds to this row contains the element
that corresponds to this column. Here’s an example of such a table when the set is {x, y, z}:
x y z
∅ 0 0 0
{x} 1 0 0
{y} 0 1 0
{z} 0 0 1
{x, y} 1 1 0
{x, z} 1 0 1
{y, z} 0 1 1
{x, y, z} 1 1 1
As you can see, the pattern of 1s and 0s is different in each row of the table, since the elements
of each subset are different. Furthermore, any pattern of 1s and 0s that has length 3, appears
in some row of this table.
This is not a coincidence. In general, we can define a bijection between the binary strings of
length n, and the subsets of a set of n elements, as follows. We already know by the definition
of cardinality, that there is a bijection between any set of n elements, and the set {1, . . . , n},
so we’ll actually define a bijection between the subsets of {1, . . . , n} and the binary strings of
length n. Since the composition of two bijections is a bijection, this will indirectly define a
bijection between our original set, and the binary strings of length n.
Given a subset of {1, . . . , n}, the binary string that corresponds to this subset will be the
binary string that has 1s in the ith position if and only if i is in the subset. This tells us how to
determine the binary string from the subset. We can also reverse (invert) the process. Given
a binary string of length n, the corresponding subset of {1, . . . , n} will be the subset whose
elements are the positions of the 1s in the binary string.
Although we haven’t directly proven that this map from subsets to binary strings is both
one-to-one and onto, an invertible function must be a bijection, so the fact that we were able
to find an inverse function does prove that this map is a bijection. (You should check that you
agree that the function we’ve claimed as an inverse really does invert the original function.)
Now, our imaginary table wouldn’t be much use if we actually had to write it out. In order
to write it out, we would need to know all of the subsets of our set already; and if we knew
them all, we could certainly count them! Fortunately, we do not need to write it out. Instead,
we use the bijection we have just defined. Rather than count the number of subsets of an n-set,
we count the number of binary strings of length n. We can do this using just the multiplication
rule! In each position there is either a zero or a one, so there are 2 choices for each of the n
positions. Hence, there are 2n binary strings of length n.
We conclude that 2n subsets can be formed from a set of cardinality n.
This has been known for a very long time. Roughly two millennia ago, the Indian doctor
Sushruta (c.800BCE—c.700BCE) computed the number of flavour combinations that can be
obtained by using at least one of the six known flavours (astringent, bitter, hot, salty, sour, or
sweet) to be 26 − 1 = 63 (removing the empty subset).
4. Bijections and Combinatorial Proofs 31
In some ways, we’ve actually been using this idea pretty much every time we’ve come up
with more than one way to solve a problem. Implicitly, finding a different way of thinking of the
problem is equivalent to finding a bijection between the solutions to these different approaches.
EXAMPLE 4.1.2. How many ways are there to choose ten people from a group of 30 men and
30 women, if the group must include at least one woman?
SOLUTION. Attacking this problem directly will get ugly. We would have to consider sepa-
rately the cases of including one woman, two women, etc., all the way up to ten women, in our
group, and add all of the resulting terms together. Instead, we note that there is an obvious
bijection (the identity map) between groups that do include at least one woman, and groups
that do not include exactly zero women. (We have previously seen this idea used intuitively in
applications of the sum rule, for example when we worked out the number of ways of obtaining
at least one 1 when rolling three six-sided dice, by actually working out the number of ways of
not obtaining zero 1s.)
The
( ) number of groups that do not include zero women is relatively easy to figure out: there
are 60 possible groups of ten people that could be chosen from the 60 people. Of these, there
(10
30
)
are 10 groups that do include zero women (since the members of any such group must be
chosen entirely (from) the ) men). Therefore, the number of groups that do not include exactly
(3030
zero women, is 60 10 − 10 .
Thanks to our bijection, we conclude ( that
) (the ) number of groups that can be chosen, that
will include at least one woman, is also 60 10 − 30
10 .
EXERCISES 4.1.3. The following problems should help you in working with the bijective tech-
nique for counting.
1) We define a structure that is like a subset, except that any element of the original set
may appear 0, 1, or 2 times in the structure. How many of these structures can we
form from the set {1, . . . , n}?
2) Find a bijection between the coefficient of xr in (1 + x)n , and the number of r-
combinations of an n-set.
3) Find a bijection between the number of ways in which three different dolls can be put
into ten numbered cribs, and the number of ways in which ten Olympic contenders can
win the medals in their event.
DEFINITION 4.2.2. Suppose that we count the solutions to a problem about n objects in one
way and obtain the answer f (n) for some function f ; and then we count the solutions to the
same problem in a different way and obtain the answer g(n) for some function g. This is a
combinatorial proof of the identity f (n) = g(n).
The equation f (n) = g(n) is referred to as a combinatorial identity.
In the statement of this theorem and definition, we’ve made f and g functions of a single
variable, n, but the same ideas hold if f and g are functions of more than one variable. Some
of our examples will demonstrate this.
These ideas give us a methodical way to approach the proof of a combinatorial identity.
Combinatorial Proof outline
1) Identify the problem you are counting. The first step is to identify a problem for which
we will be counting the solutions. Sometimes the problem may be provided directly in
the question. If so, this first step is easy. If that didn’t happen, examine one or the
other of the formulas you have been asked to show are equal, and come up with any
problem whose solutions can be counted by that formula. Explain this problem, and
state that you will be counting the solutions in two ways.
2) Counting method 1. Explain why the left-hand side of the combinatorial identity counts
the solutions to the problem you have identified. This is often easy, and perhaps even
follows directly from definitions, especially if you came up with the problem yourself
from that formula.
3) Counting method 2. Explain why the right-hand side of the combinatorial identity
counts the solutions to the problem you have identified. Unless it was challenging to
identify a problem in the first place (which can certainly happen), this is likely to be
the most challenging part of the proof.
4) Conclusion. Note that since your methods both count the number of solutions to the
same problem, the results must be equal, and state the identity that you have proven.
It is not always necessary to explicitly list and label each of these steps, but you may find
it helpful as a method of clearly laying out your proof, and ensuring that it is correct and
complete. Sometimes it may make sense to start with the right-hand side of the identity and
then look at the left-hand side; this is perfectly acceptable.
EXAMPLE 4.2.3. Prove that for every natural number n and every integer r between 0 and n,
we have
( ) ( )
n n
= .
r n−r
COMBINATORIAL PROOF.. The problem. We will count the number of ways of choosing r
objects from a set of n distinct objects in two
( )ways.
Counting method 1: By the definition of nr , this is the number of ways of choosing r objects
from a set of n distinct objects.
Counting method 2: Any time we choose r objects from a set of n objects, the other n − r
objects are being left out of the set we are choosing. So equivalently, instead of choosing the r
objects to include in our set, we could choose the( n −
) r objects to leave out of our set. By the
n
definition of the binomial coefficients, there are n−r ways of making this choice.
Conclusion. Since both of these methods count the number of solutions to the same problem,
it must be the case that for every natural number n and every integer r between 0 and n, we
4. Bijections and Combinatorial Proofs 33
have
( ) ( )
n n
= ,
r n−r
as desired.
(n) Of course, this particular identity is also quite easy to prove directly, using the formula for
r , since
( ) ( )
n n! n! n
= = = .
n−r (n − r)!(n − (n − r))! (n − r)!r! r
Many identities that can be proven using a combinatorial proof can also be proven directly,
or using a proof by induction. The nice thing about a combinatorial proof is it usually gives us
rather more insight into why the two formulas should be equal, than we get from many other
proof techniques.
In Example 4.1.1, we noted that one way to figure out the number of subsets of an n-element
set would be to count the number of subsets of each possible size, and add them all up. We
then followed a bijective approach to prove that the answer is in fact 2n . If we actually carry
through on the first idea, this leads to another combinatorial identity (one that we already
observed via the Binomial Theorem):
EXAMPLE 4.2.4. Prove that for every natural number n,
n ( )
∑ n
= 2n .
r
r=0
This was in fact the idea that was used by Sushruta (c.800BCE—c.700BCE) in his flavour
calculations. It has also been used in a variety of other contexts over the years. The Indian
poet Halayudha (10th century CE) considered the number of kinds of poetic meter that were
possible in a line with a fixed number of syllables, where the meter determined which syllables
were short and which were long. If the line has k syllables, then the number of choices is 2k ,
and he used combinations in his calculations. Bhāskara II (1114—1185), who we earlier saw
34 4. Bijections and Combinatorial Proofs
also used permutations, asked in the same book about the number of ways of choosing some
collection of doors to be open in a palace with 8 doors (requiring that at least one be open), and
arrived at the answer 28 −1 = 255. Although it is an application of this particular combinatorial
proof rather than an example of a combinatorial proof, we provide one other historical example
in slightly more detail.
EXAMPLE 4.2.5. Abū-l’Abbās Ahmad ibn al-Bannā’ (1256—1321) of Morocco considered a
triangle to have 5 key associated values that might be of interest: the lengths of the three
sides; the height; and the area. He asked how many geometrical problems associated with
triangles could be posed, in which some number (at least one, but not all) of these quantities
are provided and the rest are asked for. (Whether or not the problem is solvable from the
given information is not relevant.) He also asked similar questions about circles (to which he
attributed three associated values: diameter, perimeter, and area), and other shapes, but we’ll
only do the calculation for triangles.
SOLUTION. Any subset of the five quantities can be provided, except at least one value must
be provided (so the subset cannot be empty) and the problem cannot( provide
) ( ) all of the values
(so the subset cannot be the entire set). The answer is therefore 25 − 50 − 55 = 32 − 2 = 30.
SOLUTION. The problem. On this occasion the problem was given to us explicitly, and we will
need to come up with the two sides of the combinatorial identity. We will find two methods
for counting the number of ways of including at least one woman in an r-member focus group,
from an initial collection of n men and n women.
Counting method 1: Using the same reasoning that we applied in Example 4.1.2, we see
that the number of ways of choosing a group that includes at least one woman is the total
number of ways of choosing a group( ) of(rn)people from these 2n people, less the number of ways
that include only men; that is: 2n r − r .
Counting method 2: Alternatively, we can divide the problem up into r cases depending on
how many (women
) are to be included in the group (there must be i women, for some 1( ≤ )i ≤ r).
There are ni ways to choose i women for the group, and for each of these, there are r−i n
ways
to choose r − i men to complete the group. Thus, the total number of ways of choosing a group
that includes at least one woman, is
r ( )(
∑ )
n n
.
i r−i
i=1
Conclusion. Since both of these methods counted solutions to the same problem, this
argument yields the combinatorial identity
r ( )(
∑ ) ( ) ( )
n n 2n n
= − ,
i r−i r r
i=1
Our next combinatorial identity was used historically to work out unknown binomial coef-
ficients from known values.
EXAMPLE 4.2.7. Although his ultimate goal was to compute how many “words” (letter com-
binations of various lengths) could be composed from the Arabic alphabet of 28 letters, Ahmad
ibn Mun’im al-’Abdarī (11??—1228) began with a different problem.
In Morocco around 1200CE, where Ahmad lived, silk tassels made with a variety of colours
of silk threads were a common decoration. He asked: of the 10 available colours, how many
ways are there to make tassels that contain exactly three colours? (Since the threads are wound
together and get disarranged easily, the order of the colours is not relevant.)
(n)
SOLUTION.
(n) It was known to Ahmad how to calculate 2 for any n, but explicit formulas for
3 were not known. He began by ordering the colours:
1) indigo; 4) silver; 7) azure; 10) gold.
2) black; 5) orange; 8) red;
3) emerald; 6) white; 9) purple;
Now he argued: the problem of choosing three colours can be broken down into 8 cases,
depending on the highest numbered colour that is used. (This number must be at least 3 in
order to allow two colours with smaller numbers to exist, and cannot be more than 10.) For
each choice of highest-numbered colour, he could work out the number of ways to choose the
other two colours from colours with lower numbers as follows:
1) you can choose colour 3 (emerald) as the highest colour; in this case you must(choose
)
two (both) of the colours with lower numbers (indigo and black). There are 22 = 1
ways to do this;
2) you can choose colour 4 (silver) as the highest colour;( in
) this case you must choose two
of the three colours with lower numbers. There are 32 = 3 ways to do this;
3) you can choose colour 5 (orange) as the highest colour;( in
) this case you must choose
two of the four colours with lower numbers. There are 42 = 6 ways to do this;
4) you can choose colour 6 (white) as the highest colour;
(5) in this case you must choose two
of the five colours with lower numbers. There are 2 = 10 ways to do this;
5) you can choose colour 7 (azure) as the highest colour;
( ) in this case you must choose two
of the six colours with lower numbers. There are 62 = 15 ways to do this;
6) you can choose colour 8 (red) as the highest colour;(in) this case you must choose two
of the seven colours with lower numbers. There are 72 = 21 ways to do this;
7) you can choose colour 9 (purple) as the highest colour;(in) this case you must choose
two of the eight colours with lower numbers. There are 82 = 28 ways to do this;
8) you can choose colour 10 (gold) as the highest colour;
( )in this case you must choose two
of the nine colours with lower numbers. There are 92 = 36 ways to do this.
So in total, there are
1 + 3 + 6 + 10 + 15 + 21 + 28 + 36 = 120
ways to create tassels with three colours. Notice that using our formula,
( )
10 10 · 9 · 8
= = 120
3 6
also.
36 4. Bijections and Combinatorial Proofs
The argument used by Ahmad was also used by Abraham ibn Ezra (c. 1093—1167) in
his study of planetary conjunctions (see Example 3.2.8). However, Ahmad observed this as a
general pattern. We leave up to you to generalise this argument into a formal proof of the
combinatorial identity that underlies it: that
( ) ∑ ( r )
n−1
n
= .
k k−1
r=k−1
One context in which combinatorial proofs arise very naturally, is when we are counting
ordered pairs that have some property. That is, for some subset of X ×Y , we may wish to count
all of the ordered pairs (x, y), where x ∈ X and y ∈ Y , such that (x, y) has some property. We
can do this by first considering every possible value of x ∈ X, and for each such value, counting
the number of y ∈ Y such that (x, y) satisfies the desired property, or by first considering every
possible value of y ∈ Y , and for each such value, counting the number of x ∈ X such that (x, y)
satisfies the desired property.
Although this idea may not seem very practical, it is actually the context in which many of
the combinatorial proofs in later chapters will arise. We will be looking at a set X of elements,
and a set Y that is actually a collection of subsets of elements of X, and counting pairs (x, y)
for which the element x appears in the subset y. By counting these pairs in two ways, we will
find a combinatorial identity.
EXAMPLE 4.2.8. Let B be the set of city blocks in a small city, and let S be the set of street
segments in the city (where a street segment means a section of street that lies between two
intersections). Assume that each block has at least three sides. Count the number of pairs
(s, b) with s ∈ S and b ∈ B such that the street segment s is adjacent to the block b in two
ways. Use this to deduce a combinatorial inequality.
SOLUTION. Note that since the question asks us to deduce an inequality rather than an
equality, one of our counts will not be precise. In other words, for one of our two counting
methods, we will be trying to say that the result is at most or at least some formula, rather
than that it is equal to that formula.
The problem. We will count the number of pairs (s, b) with s ∈ S and b ∈ B such that the
street segment s is adjacent to the block b in two ways.
Counting method 1: Let |S| = t. Each street segment is adjacent to two blocks: the blocks
that lie on either side of the street. Therefore, for any given street segment s, there are two
pairs (s, b) such that s is adjacent to the block b. Multiplying this count by t (the number of
street segments) tells us that the total number of pairs (s, b) ∈ S × B with s adjacent to b is 2t.
Counting method 2: Let |B| = c. Each block is adjacent to at least 3 street segments (this
is where the inequality arises): the street segments that surround the block. Therefore, for any
given block b in the city, there are at least 3 pairs (s, b) such that b is adjacent to the street
segment s. Multiplying this count by c (the number of blocks) tells us that the total number
of pairs (s, b) ∈ S × B with s adjacent to b is at least 3c.
Conclusion. We deduce that 2t ≥ 3c.
EXERCISE 4.2.9. Let P be the set of people in a group, with |P | = p. Let C be a set of clubs
formed by the people in this group, with |C| = c. Suppose that each club contains exactly g
people, and each person is in exactly j clubs. Use two different ways to count the number of
pairs (b, h) ∈ P × C such that person b is in club h, and deduce a combinatorial identity.
4. Bijections and Combinatorial Proofs 37
EXERCISES 4.2.10. Prove the following combinatorial identities, using combinatorial proofs:
( ) ( ) (n−1)
1) For any natural numbers r, n, with 1 ≤ r ≤ n, nr = n−1
r−1 + r .
[Hint: Consider the number of ways to form a team of r people from a group of n people. Then
break the problem into two cases depending on whether or not one specific person is chosen for
the team.]
(n)(r ) (n)(n−k)
2) For any natural numbers k, r, n, with 0 ≤ k ≤ r ≤ n, r k = k r−k .
[Hint: Consider the number of ways to choose r dogs who will enter a competition, from a set
of n dogs, and to choose k of those r dogs to become the finalists. Then choose the finalists
first, followed by the other dogs who entered the competition.]
∑nn 2
( ) ( )
3) For any natural number n, r=0 r = 2nn .
(n−1)!
4) For n ≥ 1 and k ≥ 1, (n−k)! = n (n−1−(k−1))! .
n!
∑ ( )
5) For n ≥ 1, 3n = nk=0 nk 2n−k .
EXERCISES 4.2.11. Sometimes the hardest part of a combinatorial proof can be the first step:
figuring out what problem the given formula provides a solution to. For each of the following
formulas, state a counting problem that can be solved by the formula.
1) n2n−1 .
∑ ( )
2) nr=0 r nr .
∑ ( )( )
3) nk=r nk kr .
( )
4) 2n−r nr .
1
1 1
1 2 1
1 3 3 1
1 4 6 4 1
1 5 10 10 5 1
This triangle has been used in various forms for many centuries. The Moroccan mathemati-
cian Ahmad ibn Mun’im al-’Abdarī (11??—1228) drew the first 10 rows in his calculations of
the number of tassels that could be produced using combinations of 10 colours of silk thread (see
Example 4.2.7), in the 1200s. The Indian poet Halayudha (10th century CE) in the 900s drew
it as a tool in working out the numbers of various kinds of poetic metres that he was interested
in (with a specified number of syllables per line, a particular number of which had to be long
or short). In the book Siyuan Yuchian (“Jade Mirror of the Four Unknowns”), produced in
1303, the Chinese mathematician Zhu Shijie (1249—1314) drew this triangle (and attributed
it to much older sources). Although the first documented use by Blaise Pascal (1623—1662) of
the triangle was in 1654, it is still usually (Eurocentrically) generally referred to as “Pascal’s
triangle”. The “Arithmetic triangle” is a more neutral term that is still used by some sources,
and was in fact the term used by Pascal in his 1654 work Treatise on the Arithmetic Triangle,
but this term is less likely to be recognised.
SUMMARY:
• Counting via bijections
• Combinatorial identities
• Combinatorial proofs
• the Arithmetic Triangle
Chapter 5
Counting with
Repetitions
In counting combinations and permutations, we assumed that we were drawing from a set
in which all of the elements are distinct. Of course, it is easy to come up with a scenario in
which some of the elements are indistinguishable. We need to know how to count the solutions
to problems like this, also.
OK, so if the order in which we make the choice matters, we just use the multiplication
rule. What about if order doesn’t matter?
39
40 5. Counting with Repetitions
EXAMPLE 5.1.2. When Chris brought back the bagels, it turned out that they’d done a poor
job of figuring out what their friends wanted. They all traded around. Later that night, they
sent Chris back to the doughnut store, but this time they told them to just bring back eight
doughnuts and they’d figure out who should get which. If the doughnut store has five varieties,
how many ways are there for Chris to fill this order?
SOLUTION. Let’s call the five varieties chocolate, maple, boston cream, powdered, and jam-
filled. One way to describe Chris’ order would be to make a list in which we first write one c
for each chocolate doughnut, then one m for each maple doughnut, then one b for each boston
cream doughnut, then one p for each powdered doughnut, and finally one j for each jam-filled
doughnut. Since Chris is ordering eight doughnuts, there will be eight letters in this list. Notice
that there’s more information provided by this list than we actually need. We know that all
of the first group of letters are cs, so instead of writing them all out, we could simply put a
dividing marker after all of the cs and before the first m. Similarly, we can put three more
dividing markers in to separate the ms from the bs, the bs from the ps, and the ps from the
js. Now we have a list that might look something like this:
cc||bbb|ppp|
(Notice in this possible list, Chris chose no maple or jam-filled doughnuts.)
Now, we don’t actually need to write down the letters c, m, b and so on, as long as we
know how many spaces they take up; we know that any letters that appear before the first
dividing marker are cs, for example. Thus, the following list gives us the same information as
the list above:
|| | |
Similarly, if we see the list
| | | |
we understand that Chris ordered no chocolate doughnuts; two maple doughnuts; two boston
cream doughnuts; three powdered doughnuts; and one jam-filled doughnut.
So an equivalent problem is to count the number of ways of arranging eight underlines and
four dividing markers in a line. This is something we already understand! We have twelve
positions that we need to fill, and the problem is: in how many ways can we fill eight of the
twelve positions with underlines(12)(placing dividing markers in the other four positions). We
know that this can be done in 8 ways.
This technique can be used to give us a general formula for counting the number of ways of
choosing r objects from n types of objects, where we are allowed to repeatedly choose objects
of the same type.
THEOREM 5.1.3. The number of ways of choosing r objects from n types of objects (with
replacement or repetition allowed) is
( )
n+r−1
.
r
PROOF. We use the same idea as in the solution to Example 5.1.2, above. Since there are n
different types of objects, we will need n − 1 dividing markers to keep them apart. Since we
are choosing r objects, we will need r underlines, for a total of( n + r )− 1 positions to be filled.
We can choose the r positions in which the objects will go in n+r−1 r ways, and then (in each
5. Counting with Repetitions 41
( )
case) put dividing markers into the remaining n − 1 positions. Thus, there are n+r−1 r ways to
choose r objects from n types of objects, if repetition or replacement of choices is allowed.
The reason we say “replacement or repetition” is because there is another natural model for
this type of problem. Suppose that instead of choosing eight bagels from five varieties, Chris is
asked to put their hand into a bag that contains five different-coloured pebbles, and draw one
out; then replace it, repeatedly (with eight draws in total). If they keep count of how many
times they draw each of the rocks, the number of possible tallies they’ll end up with is exactly
the same as the number of doughnut orders in Example 5.1.2.
The following table summarises some of the key things we’ve learned about counting so far:
Table 5.1. The number of ways to choose r objects from n objects (or types
of objects)
n!
order matters nr
(n − r)!
(( )) ( )
n n
order doesn’t matter
r r
Similarly, for any fixed choice of three people who receive the maple doughnuts, there are 3!
ways in which these three maple doughnuts could have been distributed to them, and each of
these choices has been counted 3! times rather than once. The same holds true for the three
boston cream doughnuts. Thus, the solution is 8!/(2!3!3!).
Since
( )( )
8 6 8! 6! 8!
= · = ,
2 3 2!6! 3!3! 2!3!3!
we see that these solutions are in fact identical although they look different.
This technique can be used to give us a general formula for counting the number of ways
of arranging n objects some of which are indistinguishable from each other.
THEOREM 5.2.2. Suppose that:
• there are n objects;
• for each i with 1 ≤ i ≤ m, ri of them are of type i (indistinguishable from each other);
and
• r1 + . . . + rm = n.
Then the number of arrangements (permutations) of these n objects is
n!
.
r1 !r2 ! . . . rm !
PROOF. We use the same idea as in the solution to Example 5.2.1, above. Either approach
will work, but we’ll use the first. There will be n positions in the final ordering of the objects.
We begin by choosing r1 of these to hold the objects of type 1. Then we choose r2 of (them ) to
hold the objects of type 2, and so on. Ultimately, we choose the final rm locations (in rrm m
=1
possible way) to hold the objects of type m.
Using the product rule, the total number of arrangements is
( )( ) ( )
n n − r1 n − r1 − . . . − rm−1
...
r1 r2 rm
n! (n − r1 )! (n − r1 − . . . − rm−1 )!
= · · ... ·
r1 !(n − r1 )! r2 !(n − r1 − r2 )! rm !0!
n!
= ,
r1 !r2 ! . . . rm !
since all of the other terms cancel.
SOLUTION. Even though all of the students in the class are distinct, the order in which they
get chosen for the group they end up in doesn’t matter. One way of making the selection would
be to put the names Cathy, Akos, and Dagmar into a hat (four times each) along with 18 blank
slips of paper. Each student could choose a slip of paper and would be assigned to the group
corresponding to the name they chose. The four slips with Cathy’s name on them are identical,
as are the four with Akos’ name, the four with Dagmar’s name, and the 18 blank slips.
Thus, the solution to this problem is
( )
30 30!
= .
4, 4, 4, 18 4!4!4!18!
We could also work this out more directly, by allowing
( ) each of Cathy, Akos, (and) Dagmar to
choose four students; Cathy’s choice can be made in 30 ways; then Akos’ in 26
4 ways; then
(22) 4
Dagmar’s in 4 ways, and the product of these is 30!/(4!4!4!18!).
k1 + k2 + · · · + km = n,
and evaluate the coefficient of xk11 xk22 · · · xkmm that comes from the product on the left-hand side of the
equation.]
5. Counting with Repetitions 45
SUMMARY:
• The number of ways of choosing r objects
((n)) (n+r−1 ) from n types of objects (with replacement
or repetition allowed) is r = r .
• The number of ( ways of)arranging n objects where ri of them are of type i (indistin-
guishable), is r1 ,r2n,...,rm .
• Notation:
(( ))
n
◦
r
( )
n
◦
r1 , r2 , . . . , rm
Chapter 6
Induction and
Recursion
Some problems can most easily be solved (or counted) with the help of a recursively-defined
sequence. We’ll begin this chapter by introducing these sequences.
Proofs by induction are an important mathematical technique, and are often used in pub-
lished papers. This material is being presented under the assumption that you have seen
elementary proofs by induction in at least one previous course. The basic explanations and
examples are written with the intention of reviewing this background. If you have not encoun-
tered induction before you may wish to find supplementary introductory material and exercises.
We’ll do a quick review of basic proofs by induction, applying them to recursively-defined se-
quences. Then we’ll touch on some slightly more sophisticated uses of induction. Proofs by
induction will be a technique we’ll use throughout the remainder of the course, in a variety of
contexts.
many North American locations has historically been attributed to European explorers). The
sequence had been known to Indian mathematicians as early as the 6th century. Nevertheless,
to avoid confusion we will use this name.
DEFINITION 6.1.2. The Fibonacci sequence is the sequence f0 , f1 , f2 , . . ., defined by f0 = 1,
f1 = 1, and fn = fn−1 + fn−2 for all n ≥ 2.
So in the Fibonacci sequence, f0 = f1 = 1 are the initial conditions, and fn = fn−1 + fn−2
for all n ≥ 2 is the recursive relation.
The usual problem associated with recursively-defined sequences, is to find an explicit for-
mula for the nth term that does not require calculating all of the previous terms. Clearly, if we
want to be able to determine terms that arise later in the sequence, this is critical. If we try to
find the millionth term of a recursively-defined sequence directly, it will require a great deal of
computing time and might also require a lot of memory.
Every time you were asked in school to look at a sequence of numbers, find a pattern, and
give the next number in the sequence, you were probably working out a recurrence relation and
applying it.
EXAMPLE 6.1.3. Consider the sequence 5, 8, 11, 14. What number should come next?
SOLUTION. We consider the differences between successive pairs: 8 − 5 = 3; 11 − 8 = 3;
14 − 11 = 3. This appears to be an arithmetic sequence, with the constant difference of 3
between successive terms. So the sequence can be defined by a1 = 5 and an = an−1 + 3, for
every n ≥ 2. We were asked for a5 , and we know that a4 = 14, so a5 = a4 + 3 = 14 + 3 = 17.
This example shows that the recurrence relation can depend on n, as well as on the values
of the preceding terms. (Although we didn’t state this explicitly in our definition, it is implicit
because n − 1 is the number of previous terms on which rn depends; we could calculate n as
a01 + a02 + . . . + a0n−1 + 1.)
Let’s look at one more example.
EXAMPLE 6.1.5. Stavroula’s bank pays 1% interest (compounded annually), and charges her
a service fee of $10 per year to maintain the account. The fee is charged at the start of the
year, and the interest is calculated on the balance at the end of the year. If she starts with a
balance of $2000, is she making money or losing money? If this account is set up for her by her
parents and she’s not allowed to touch it, how much money will be in the account after seven
years?
SOLUTION. We see that the initial term is r0 = 2000. We’re going to use r0 as the first term,
because then the value of her account after 1 year will be r1 ; after two years will be r2 ; and
after seven years will be r7 . This just makes it a little easier to keep track of what we’re aiming
to figure out.
If we unpack the financial language, it is telling us that every year, the bank takes $10 from
Stavroula’s account at the start of the year. Then at the end of the year, the bank adds 1% of
whatever is in Stavroula’s account, to her account. This can be represented by the following
6. Induction and Recursion 49
1! = 1 ≥ 21 − 2 = 0;
2! = 2 ≥ 22 − 2 = 2;
3! = 6 ≥ 23 − 2 = 6;
4! = 24 ≥ 24 − 2 = 14.
We could continue verifying the values one at a time, but the process would go on forever,
so we’d never be able to complete the proof.
Instead, think about the following method. We know that the inequality holds for n = 1.
Let’s suppose that the inequality holds for some value n = k, i.e. that
k! ≥ 2k − 2.
50 6. Induction and Recursion
Now let’s use the fact that we can easily calculate (k +1)! from k! together with our supposition,
to deduce that the inequality holds when n = k + 1, i.e. that
(k + 1)! ≥ 2k+1 − 2.
This is enough to prove the inequality for every integer n ≥ 1, because applying our supposition
and deduction enough times will prove the inequality for any value at all that interests us! For
example, if we wanted to be sure that the inequality holds for n = 100, we could take the fact
that we know it holds for 1, to deduce that it holds for 2, then the fact that it holds for 2 allows
us to deduce that it holds for 3. By repeating this 97 more times, eventually we see that since
it holds for 99, we can deduce that it holds for 100.
THEOREM 6.2.1 (Principle of Mathematical Induction). Let P (n) be an assertion about the
integer n. If we know that
1) the assertion P (n0 ) is true for some particular integer n0 ; and
2) for any integer k ≥ n0 , if P (k) is true then P (k + 1) must also be true,
then P (n) is true for every integer n ≥ n0 .
DEFINITION 6.2.2. In a proof by induction, determining that P (n0 ) is true for some particular
integer n0 is called the base case. Proving the conditional statement that P (k) ⇒ P (k + 1)
for every k ≥ n0 is called the inductive step. The assumption we make in the inductive step,
that P (k) is true for some arbitrary k ≥ n0 , is called the inductive hypothesis, and can be
referred to by (IH) when it is being used in the proof.
Now that we’ve gone through the formalities, let’s write a proper proof by induction for the
inequality we used to introduce this idea.
EXAMPLE 6.2.3. Prove by induction that n! ≥ 2n −2, for every integer n ≥ 2. (This inequality
is actually true for every n ≥ 0, but the proof is considerably simpler if we restrict our attention
to n ≥ 2.)
PROOF.. Base case: n = 2. We have n! = 2! = 2, and
2n − 2 = 22 − 2 = 4 − 2 = 2.
Certainly 2 ≥ 2, so the inequality holds for n = 2. This completes the proof of the base case.
Inductive step: We begin with the inductive hypothesis. Let k ≥ 2 be arbitrary, and suppose
that the inequality holds for n = k; that is, assume that k! ≥ 2k − 2.
Now we want to deduce that
(k + 1)! ≥ 2k+1 − 2.
Let’s start from the left-hand side of this inequality. By the definition of factorial, we know
that
(k + 1)! = (k + 1)k!.
Now that we have k! in the expression, we’re in a position to apply the inductive hypothesis;
that is,
Proofs by induction work very naturally with recursively-defined sequences, since the recur-
rence relation gives us information about the (k + 1)st term of the sequence, based on previous
terms.
EXAMPLE 6.2.4. Consider the sum of the first n integers. We can think about this as a
recursively-defined sequence, by defining s1 = 1, and sn = sn−1 + n, for every n ≥ 2. Thus,
s2 = 1 + 2;
s3 = s2 + 3 = 1 + 2 + 3,
and so on. Prove by induction that sn = n(n + 1)/2, for every n ≥ 1.
Caution: the steps of a proof by induction are precisely defined, and if you leave any of
them out, or forget the conditions required, things can go badly wrong. The base case may
seem obvious, but can’t be left out; also, the hypothesis that k ≥ n0 may be critical to the
proof, as we saw in Example 6.2.3.
Let’s look at an example where, by forgetting to include the base case, we can give a “proof
by induction” of something that is clearly false.
EXAMPLE 6.2.5. Here is a “proof by induction” (without a base case) that every integer n is
at least 1000.
52 6. Induction and Recursion
PROOF.. Inductive step: We begin with the inductive hypothesis. Let k be arbitrary, and
suppose that k ≥ 1000.
Now we want to deduce that k + 1 ≥ 1000. But clearly,
k + 1 ≥ k ≥ 1000
(by our inductive hypothesis), which is what we wanted to deduce. This completes the
proof of the inductive step.
By the Principle of Mathematical Induction, n ≥ 1000 for every integer n.
Now it’s your turn to try a few. Don’t leave out any of the steps!
EXERCISES 6.2.6. Use the Principle of Mathematical Induction to prove the following:
1) For the recursively-defined sequence given by b1 = 5 and bn = bn−1 + 4 for all n ≥ 2,
prove that for every integer n ≥ 1, bn = 5 + 4(n − 1).
2) For the recursively-defined sequence given by c1 = 3 and cn = cn−1 + 3 · 2n−1 for all
n ≥ 2, prove that for every integer n ≥ 1, cn = 3(2n − 1).
3) Prove that for every integer n ≥ 0, n! ≥ n.
4) Prove that for every integer n ≥ 0, 4n − 1 is divisible by 3.
5) Starting with n = 2 and increasing n from there, calculate the first few values for the
product
∏
n
1
tn = (1 − ).
j
j=2
Conjecture a closed formula for tn based on the values you have calculated, and use
induction to prove that your formula is correct.
6) Prove that for every integer n ≥ 1,
∑
n
1
j! ≤ (n + 1)!
2
j=1
EXAMPLE 6.3.1. Let’s define a recursively-defined sequence by a1 = 2 and for every integer
n ≥ 2, we have
∑
n−1
an = ai .
i=1
Thus, a2 = a1 = 2;
a3 = a1 + a2 = 2 + 2 = 4;
a4 = a1 + a2 + a3 = 2 + 2 + 4 = 8,
SOLUTION ATTEMPT.. We begin with the base case: when n = 2, we have a2 = 2 = 22−1 ,
so the equality is true for the base case. Now for the inductive hypothesis, we let k ≥ 2 be
arbitrary, and suppose that the equality is true for n = k, so ak = 2k−1 . Now when n = k + 1,
we have
∑
k
an = ak+1 = ai ,
i=1
by the recursive relation for this sequence. We know what a1 is, by our initial condition; we
know that ak = 2k−1 , but what about the values in between? The Principle of Mathematical
Induction as we’ve learned it so far, doesn’t allow us to assume anything about (for example)
ak−1 .
Actually, though, the way the concept of induction works, by the time we’re trying to prove
something about an , we’ve actually already deduced it for every value between n0 and n − 1
(inclusive). So there is nothing wrong with assuming that P (i) is true for every value between
n0 and k, rather than just for k, in order to deduce that P (k + 1) is true. More concretely,
this is saying the following. Suppose that by knowing P (0) we can deduce P (1), and then by
knowing P (0) and P (1) we can deduce P (2), and so on, so that eventually by knowing that
everything from P (0) through P (k) is true, we can deduce that P (k + 1) is true. Then P (n) is
true for every integer n ≥ 0. Of course, we don’t have to start with 0; we can start with any
integer n0 . This is the strong form of mathematical induction:
THEOREM 6.3.2 (Strong Induction). Suppose we have a statement P (n) about the integer n.
If we know that
1) the statement P (n0 ) is true for some particular integer n0 ; and
2) for any integer k ≥ n0 , if every P (i) is true for n0 ≤ i ≤ k, then P (k + 1) must also
be true,
then P (n) is true for every integer n ≥ n0 .
Using this, we can complete the example we started above. We have a1 = 2 (by the initial
condition), and the strong induction hypothesis allows us to assume that ai = 2i−1 for every
integer i with 2 ≤ i ≤ k. So using the recursive relation
∑
k
ak+1 = ai ,
i=1
54 6. Induction and Recursion
we see that
∑
k
ak+1 = 2 + 2i−1 .
i=2
You probably learned in high school how to add up geometric sequences like this; in particular,
that
∑
k
2j = 2k+1 − 1,
j=0
and we can re-write what we have as
∑
k−1 ∑
k−1
( )
ak+1 = 1 + 1 + 2 j
=1+ 2j = 1 + 2(k−1)+1 − 1 = 2k .
j=1 j=0
(j − 1) + (k − j) + 1
moves in total to complete her tower of k + 1 pieces. Now,
(j − 1) + (k − j) + 1 = k,
so it takes Shawna k moves to complete the tower, which is what we wanted to deduce. This
completes the proof of the inductive step.
By Strong Induction, it will take Shawna n − 1 moves to complete a tower that contains n
blocks of lego, for every n ≥ 1.
This is pretty amazing. If we tried to go through the full argument for how many moves
it takes her to build a tower with four blocks, it would go something like this. First, to build
a tower with one block clearly takes 0 moves; to build a tower with two blocks clearly takes 1
6. Induction and Recursion 55
move (stick the two blocks together). To build a tower with three blocks, we must use 1 move
to stick together a tower of two blocks (which took 1 move to create) with a tower of one block
(which took 0 moves to create), meaning that we use 2 moves altogether. Now, a tower of four
blocks can be built in two ways: by using 1 move to stick together two towers of two blocks,
each of which took 1 move to make, for a total of 3 moves; or by using 1 move to stick together
a tower of one block (which took 0 moves to make) with a tower of three blocks (which took
2 moves to make), for a total of 3 moves. So under either method, building a tower of four
blocks takes 3 moves. You can see that the argument will get more and more complicated as n
increases, but it will always continue to work.
We won’t need strong induction as such very much until later in the course, but the idea is
useful background for the next kind of induction we’ll look at, which is very important when
dealing with recurrence relations: induction with multiple base cases.
Induction with multiple base cases is very important for dealing with recursively-defined
sequences such as the Fibonacci sequence, where each term depends on more than one of the
preceding terms.
Suppose you were asked to prove that the nth term of the Fibonacci sequence, fn , is at
least 2n−2 . If we try to follow our basic inductive strategy, we’d begin by observing that this is
true for f0 :
f0 = 1 ≥ 2−2 = 1/4.
Then we’d make the inductive hypothesis that our inequality is true for some arbitrary k ≥ 0,
so fk ≥ 2k−2 . Now to deduce the inequality for n = k + 1, the natural approach is to use the
recursive relation, which tells us that
fk+1 = fk + fk−1 .
We can use our inductive hypothesis to make a substitution for fk , but what about fk−1 ? You
might (reasonably) argue at this point that we should use strong induction, which will allow us
to assume that the result is true for both fk and fk−1 , but actually, this doesn’t work! Why
not? Well, the trouble is that everything we know about the Fibonacci sequence starts with
f0 , but if k = 1 (which is the first time we try to use induction) then fk−1 = f−1 , which we
haven’t even defined! It is very important to ensure that in the inductive step, we never make
our assumption go back too far, i.e. to a value below n0 .
So, how can we deal with this problem? The solution is to add another base case, for n = 1.
When n = 1, we have
f1 = 1 ≥ 21−2 = 1/2.
Now if we try induction, at the first step we will be using the fact that the statement is true
for f0 and f1 to prove it for f2 ; then the fact that it’s true for f1 and f2 will allow us to deduce
it for f3 , and so on. The final argument will look like the following.
EXAMPLE 6.3.4. Prove by induction that the nth term of the Fibonacci sequence, fn , is at
least (3/2)n−1 , for every n ≥ 0.
SOLUTION. Since the recursive relation for the Fibonacci sequence requires the two immedi-
ately preceding terms, we will require two base cases.
Proof. Base cases: When n = 0, we have
f0 = 1 ≥ (3/2)−1 = 2/3,
56 6. Induction and Recursion
f1 = 1 ≥ (3/2)1−1 = 1,
so the inequality holds for n = 1. This completes the proof of the base cases.
Inductive step: We begin with the (strong) inductive hypothesis. Let k be an arbitrary
integer at least as big as our biggest base case, so k ≥ 1. Assume that for every integer i with
0 ≤ i ≤ k, we have fi ≥ (3/2)i−1 .
Now we want to deduce that
EXERCISES 6.3.5.
1) Prove by induction that for every n ≥ 0, the nth term of the Fibonacci sequence is no
greater than 2n .
2) The machine at the coffee shop isn’t working properly, and can only put increments of
$4 or $5 on your gift card. Prove by induction that you can get any amount of dollars
that is at least $12. [Hint: You should have four base cases.]
3) Define a recurrence relation by a0 = a1 = a2 = 1, and an = an−1 + an−2 + an−3 for
n ≥ 3. Prove by induction that an ≤ 2n for all n ≥ 0.
6. Induction and Recursion 57
SUMMARY:
• Important definitions:
◦ recursively-defined sequence
◦ initial conditions
◦ recursive relation
◦ Fibonacci sequence
◦ proof by induction
◦ base case
◦ inductive step
◦ inductive hypothesis
◦ strong induction
◦ induction with multiple base cases
• Notation:
◦ (IH)
Chapter 7
Generating
Functions
Recall that the basic goal with a recursively-defined sequence, is to find an explicit formula
for the nth term of the sequence. Generating functions will allow us to do this.
1 + x + x2 + x3 + x4 + x5 .
59
60 7. Generating Functions
in this case.
EXAMPLE 7.2.2.
( )
−2 (−2)(−3)(−4)(−5)(−6)
= = −6.
5 5!
(−n)
If n is a positive integer, then we can come up with a nice formula for r .
PROPOSITION 7.2.3. If n is a positive integer, then
( ) ( )
−n r n+r−1
= (−1) .
r r
PROOF. We have
( )
−n −n(−n − 1) . . . (−n − r + 1)
= .
r r!
Taking a factor of (−1) out of each term on the right-hand side gives
With this definition, the binomial theorem generalises just as we would wish. We won’t
prove this.
THEOREM 7.2.4 (Generalised Binomial Theorem). For any n ∈ R,
∞ ( )
∑
n n
(1 + x) = xr .
r
r=0
EXAMPLE 7.2.5. Let’s check that this gives us the correct values for the coefficients of f (x)
in Example 7.1.2.4, which we already know.
SOLUTION. We have
y r = (−x)r = (−1)r xr ,
62 7. Generating Functions
so we have
(−1)r y r = (−1)2r xr = 1r xr = xr .
Thus, the coefficient of xr in f (x) is 1. This is, indeed, precisely the sequence we started with
in Example 7.1.2.4.
SOLUTION. We model this with generating functions. The exponent of x will represent the
number of paper plates, and the coefficient of xn will represent the number of ways in which
he can buy n paper plates.
We begin by considering the single paper plates that Jiping buys. He could buy 0, or 1, or
any other number of these, so we represent this by the generating function
∞
∑
1 + x + x2 + x3 + x4 + . . . = xi = 1/(1 − x).
i=0
There is exactly one way of choosing any particular number of single paper plates (we are
assuming the plates are indistinguishable).
Now, Jiping could also buy any number of packages of 5 paper plates, but the difference
is that each package he buys contributes 5 to the exponent, since it represents 5 plates. We
represent this by the generating function
∞
∑
1 + x5 + x10 + x15 + . . . = x5i = 1/(1 − x5 ),
i=0
where i represents the number of packages he buys.
Similarly, Jiping could buy any number of packages of 20 paper plates, and each package
he buys contributes 20 to the exponent, since it represents 20 plates. We represent this by the
generating function
∞
∑
1 + x20 + x40 + x60 + . . . = x20i = 1/(1 − x20 ),
i=0
where i represents the number of packages he buys.
Finally, Jiping could buy any number of packages of 75 paper plates, and each package he
buys contributes 75 to the exponent, since it represents 75 plates. We represent this by the
generating function
∞
∑
1 + x75 + x150 + x225 + . . . = x75i = 1/(1 − x75 ),
i=0
where i represents the number of packages he buys.
Obviously, for this particular question, Jiping can’t actually buy 2 or more of the packages
of 75 paper plates, since that would be too many. There are also limits on the number of
packages of other sizes that he should buy, since he doesn’t want to end up with more than 95
plates. So for this problem, we can assume that the generating function for the full problem
actually looks like this:
(1 + x + x2 + . . . + x95 )(1 + x5 + x10 + . . . + x95 )(1 + x20 + x40 + x60 + x80 )(1 + x75 )
and we are looking for the coefficient of x95 .
We could multiply this all out to get our answer. We could be a bit more clever, recognising
that we only really care about the coefficient of x95 , and break the problem down into cases
depending on how many of the bigger packages Jiping buys. It should be noted that the
generating function hasn’t really saved us any work. This approach involves saying, “Well, if
Jiping takes the x75 from the final factor, then there are only six ways to contribute to the
coefficient of x95 : he could choose an x20 from the previous factor and 1s from both of the other
factors; or he could choose 1 from the third factor and any of 1, x5 , x10 , x15 , or x20 from the
second factor, in each case choosing whichever term from the first factor is needed to bring the
64 7. Generating Functions
exponent up to 95.” This is exactly equivalent to saying, “Well, if Jiping buys a package of 75
plates, then there are only six ways to buy 95 plates in total: he could buy a package of 20
plates and be done; or he could buy 0, 1, 2, 3, or 4 packages of 5 plates, in each case buying as
many single plates as are needed to bring the total up to 95.”
So what’s the advantage of the generating function approach? It comes in a couple of ways.
First, it solves multiple problems at once: if we actually multiply out the generating function
above, we will be able to read off not only how many ways there are of buying 95 plates, but
also how many ways there are of buying every number of plates up to 95. (If we hadn’t cut the
factors off as we did, we could also work out the answers for any number of plates higher than
95.) So by doing a bunch of multiplication once (and it’s easy to feed into a computer algebra
system if you don’t want to do it by hand), we can simultaneously find out the answer to a lot
of closely-related questions.
The other advantage is that the generating function approach can help us solve problems
that we don’t see how to solve without it, such as finding an explicit formula for the nth term
of a recursively-defined sequence.
Here’s an example that involves working out the coefficient of a term in a generating function
in two different ways.
EXAMPLE 7.3.2. Consider the generating function (1/(1 − x))4 = (1 + x + x2 + x3 + . . .)4 . As
usual, we want to determine the coefficient of xr in this product.
SOLUTION. We must choose a power of x from each of the four factors, in such a way that
the sum of the powers we choose must be n. This is the same as choosing a total of r items,
when the items come in four distinct types (recall for example, Example 5.1.2). The types are
represented by the factor the term is chosen from, and the exponent chosen from that factor is
the number
(( ))of items (xes) chosen of that type. So we know that the number of ways of doing
4
this is .
r
We have another way of working this out. Our generating function is (1 − x)(−4 ,) and the
Generalised Binomial Theorem tells us that the coefficient of (−x)r in this is −4 r , so the
coefficient of xr is
( ) (( ))
r r r+3 4
(−1) (−1) = .
r r
We’ll use the above example to work out a counting question, but first we need an obser-
vation.
PROPOSITION 7.3.3. For any positive integer k,
1 − xk+1
1 + x + x2 + · · · + xk = .
1−x
You can prove this by induction on k (this is one of the exercises below), or by multiplying
through by 1 − x.
EXAMPLE 7.3.4. Trent is playing a dice game, using 12-sided dice. How many ways are there
for him to roll a total of 24 on his four dice?
7. Generating Functions 65
SOLUTION. Each die can roll any number between 1 and 12, and there are four dice, so the
appropriate generating function is
x4 (1 + x + x2 + x3 + x4 + x5 + x6 + x7 + x8 + x9 + x10 + x11 )4 ,
and the coefficient of x24 in this, will be the same as the coefficient of x20 in
(1 + x + x2 + x3 + x4 + x5 + x6 + x7 + x8 + x9 + x10 + x11 )4 .
Using Proposition 7.3.3, we see that this expression can be rewritten as
( )4
1 − x12
.
1−x
Using the Binomial Theorem and substituting y = −x12 , we see that
( ) ( ) ( ) ( ) ( )
4 4 4 4 4
(1 − x12 )4 = (−x12 )0 + (−x12 )1 + (−x12 )2 + (−x12 )3 + (−x12 )4
0 1 2 3 4
= 1 − 4x12 + 12x24 − 4x36 + x48 .
Most of these terms can be ignored, as they will not contribute to the coefficient of x20 .
Recall that the function we’re interested in is the product of this, with (1 − x)−4 , and there are
only two ways of getting an x20 term from this product: by taking the constant term that we’ve
just worked out, and multiplying it by the x20 term from (1 − x)−4 ; or by taking the x12 term
that we’ve just worked out, and multiplying it by the x8 term from(( (1 −))x)−4 . In the previous
4
example, we worked out that in (1 − x)−4 , the coefficient of x20 is , and the coefficient
(( )) 20
4
of x8 is .
8
Thus, the number of ways in which Trent can roll a total of 24 on his four dice is the
coefficient of x24 in our generating function, which is
(( )) (( ))
4 4
−4 = 1771 − 660 = 1111.
20 8
EXERCISES 7.3.5.
1) Prove Proposition 7.3.3 by induction on k.
2) Find the number of ways Trent can roll a total of 16 on his four dice.
3) If Trent’s four dice are 10-sided dice instead of 12-sided, how many ways can he roll a
total of 24?
4) If Trent rolls five regular (6-sided) dice, how many ways can he roll a total of 11? What
is the probability that he will roll a total of 11?
66 7. Generating Functions
SUMMARY:
• If n > 0 is an integer, then
( ) ( )
−n r n+r−1
= (−1) .
r r
• The Generalised Binomial Theorem
• 1 + x + . . . + xk = (1 − xk+1 )/(1 − x)
• using generating functions for counting things
• Important definitions:
◦ generating function for a sequence
◦ generalised binomial coefficients
Chapter 8
Generating
Functions and
Recursion
We’ve seen how the Generalised Binomial Theorem can be used to extract coefficients from
a certain sort of generating function. Before we proceed with learning how to use generating
functions to find explicit formulas for the nth term of a recursively-defined sequence, we need
to know how to extract coefficients from some more complicated expressions.
SOLUTION. Well, if we could separate the factors of the denominator, we would know how to
deal with each separately. In fact, this is exactly what we do. We set
1+x A B
f (x) = = + .
(1 − 2x)(2 + x) 1 − 2x 2 + x
As we work this through, you’ll see that in working this out, we end up with two equations in
the two unknowns A and B, which we can therefore solve! So it is possible to “split up” the
original generating function, into two separate fractions, each of which has as its denominator
one of the factors of the original denominator. This is the method of partial fractions.
67
68 8. Generating Functions and Recursion
To solve for A and B, we add the fractions A/(1 − 2x) and B/(2 + x) over a common
denominator. This gives
B = 1 − 2(3/5) = −1/5.
Thus, we have
3/5 1/5
f (x) = − .
1 − 2x 2 + x
Notice that the 2 + x is still a bit problematic. We can use the Generalised Binomial Theorem
to work out coefficients for something that looks like (1 + axi )j , but we need that 1, and here
instead we have a 2. To deal with this, we observe that
2 + x = 2(1 + (1/2)x).
Thus,
3/5 1/10
f (x) = − .
1 − 2x 1 + (1/2)x
Now let’s expand each of the two summands separately. We have
3 3
(1 − 2x)−1 = (1 + 2x + (2x)2 + (2x)3 + . . .),
5 5
so the coefficient of x in this part is (3/5)2r . Also,
r
−1 −1 1 1 1
(1 + (1/2)x)−1 = (1 − x + ( x)2 − ( x)3 + − . . .),
10 10 2 2 2
r r
so the coefficient of x in this part is (−1/10)(−1) (1/2) .r
The method of partial fractions can be applied to any generating function that has a de-
nominator that can be factored into simpler terms. However, polynomials of degree 3 or higher
can become hard to factor, so we’ll mostly restrict our attention to applying this either with
denominators that are already factored, or with denominators that have degree at most two.
There is an extra trick that you should be aware of. This arises if the denominator is
divisible by a square. For example, if we are looking for the coefficient of xr in
1+x
g(x) =
(1 − 2x)2 (2 + x)
8. Generating Functions and Recursion 69
then it doesn’t make sense to separate all of the factors out as before, because
A B C A+B C
g(x) = + + = +
1 − 2x 1 − 2x 2 + x 1 − 2x 2 + x
and when we add this up, the denominator will be (1 − 2x)(2 + x) rather than (1 − 2x)2 (2 + x).
This can be dealt with in either of two ways. First, you can include both 1 − 2x and (1 − 2x)2
as denominators:
A B C
g(x) = + + .
1 − 2x (1 − 2x)2 2 + x
The second option is to include only (1 − 2x)2 as one of the denominators, but to include an x
in the corresponding numerator, in addition to the constant term:
Ax + B C
g(x) = + .
(1 − 2x)2 2+x
Either of these methods can be generalised in natural ways to cases where the denominator is
divisible by some higher power.
We’ll see more examples of partial fractions applied to specific situations, so we’ll leave the
explanation there for now.
EXERCISES 8.1.2. Find the coefficient of xr in each of the following generating functions, using
the method of partial fractions and the Generalised Binomial Theorem.
1
1)
(1 + 2x)(2 − x)
x
2)
(1 + x)2 (1 − x)
1 + 2x
3)
(1 − 2x)(2 + x)(1 + x)
Recall that in order to use the Generalised Binomial Theorem, we need the constant term
to be 1. If you are very comfortable with algebraic manipulations, you can use the quadratic
formula to factor as above, and then divide each factor by the appropriate value so as to make
the constant term 1. This may create a messy constant outside the whole thing, and a messy
coefficient of x in each term, but if you are careful, you can get the correct answer this way.
If you are more confident in memorising another formula (closely related to the quadratic
formula) for factoring ax2 + bx + c, you can also factor a quadratic polynomial directly into the
70 8. Generating Functions and Recursion
It is always a good idea to check your result, by multiplying the factors back out.
When coefficients in the factorisation aren’t integers (especially when they are irrational or
even complex, as in the example above), you might find the algebra involved in working out the
coefficients hard to deal with. Let’s work through an example of this, using the factorisation
we’ve just completed.
EXAMPLE 8.2.2. Find the coefficient of xr in f (x), where
1
f (x) = .
3x2 − 2x + 1
SOLUTION. We have determined in the previous example, that
√ √
3x2 − 2x + 1 = (1 − (1 + i 2)x)(1 − (1 − i 2)x),
so we need to solve for A and B, where
1
f (x) = 2
3x − 2x + 1
A B
= √ + √
1 − (1 + i 2)x 1 − (1 − i 2)x
√ √
A(1 − (1 − i 2)x) + B(1 − (1 + i 2)x)
= .
3x2 − 2x + 1
Thus,
√ √
A(1 − (1 − i 2)x) + B(1 − (1 + i 2)x) = 1 + 0x,
√ √
so the constant term gives A+B = 1, while the coefficient of x gives A(1−i 2)+B(1+i 2) = 0.
Substituting B = 1 − A into the latter equation, gives
√ √ √
A − i 2A + 1 + i 2 − A − i 2A = 0,
8. Generating Functions and Recursion 71
√ √
so 1 + i 2 = i2 2A. Hence
√
1+i 2 1 1
A= √ = √ + .
i2 2 2 2i 2
We make the
√ denominator of the first fraction rational, by multiplying numerator and denom-
inator by 2i, giving
√
2i 1
A=− + .
4 2
Now since B = 1 − A, we have
√
1 2i
B= + .
2 4
√ √
To make things a bit simpler, we’ll rewrite A as (2 − 2i)/4, and B = (2 + 2i)/4.
Thus we have
√ √
(2 − 2i)/4 (2 + 2i)/4
f (x) = √ + √ .
1 − (1 + i 2)x 1 − (1 − i 2)x
√
Using the Generalised Binomial Theorem and y = (1 + i 2)x, we see that the first fraction
expands as
√
[(2 − 2i)/4](1 + y + y 2 + y 3 + . . .),
√ √ √
and the coefficient of xr in this, will be [(2 − 2i)/4](1 + i 2)r . Similarly, with y = (1 − i 2)x,
the second fraction expands as
√
[(2 + 2i)/4](1 + y + y 2 + y 3 + . . .),
√ √
and the coefficient of xr in this, will be [(2 + 2i)/4](1 − i 2)r .
So the coefficient of xr in f (x) is
√ √ √
(1 + i 2)r + [(2 + 2i)/4](1 − i 2)r .
You can see from this example that the algebra can get ugly, but the process of finding the
coefficient of xr is nonetheless straightforward.
EXERCISES 8.2.3. For each of the generating functions given, factor the denominator and use
the method of partial fractions to determine the coefficient of xr .
x
1) 2
x + 5x − 1
2+x
2) 2
2x + x − 1
x
3) 2
x − 3x + 1
(1 − 3x)a(x) = 3 − (1 + x + x2 + x3 + . . .),
and we know that
1 + x + x2 + x3 + . . . = 1/(1 − x),
so (1 − 3x)a(x) = 3 − 1/(1 − x). Dividing through by 1 − 3x gives
3 1
a(x) = − .
1 − 3x (1 − x)(1 − 3x)
Now it’s time to apply what we learned in the preceding sections of this chapter. The denom-
inator is already factored, so we can immediately apply the method of partial fractions to the
second fraction. If
Finally, the recursive relation gives a2 = 3(5) − 1 = 14, while our formula gives
Let’s look at one more example, where the recursive relation involves more than one previous
term.
EXAMPLE 8.3.2. Consider the recursively-defined sequence: b0 = 1, b1 = 0, b2 = 1, and for
every n ≥ 3, bn = bn−1 − 2bn−3 . Find an explicit formula for bn in terms of n.
bn − bn−1 + 2bn−3 = 0
for every n ≥ 3. We want to end up with a polynomial in which the coefficient of xm looks
like bm − bm−1 + 2bm−3 , so that we’ll be able to use the recursive relation to replace this by 0.
In order to do this, we’ll take b(x) (to get the bm xm piece), minus xb(x) (to get the −bm−1 xm
piece), plus 2x3 b(x) (to get the +2bm−3 xm piece).
The result looks like:
1 − x + x2
b(x) = .
1 − x + 2x3
If we want to be able to do anything with this, we need to factor the denominator. Although
we don’t have a general method for factoring cubic polynomials, in this case it’s not hard to
see that −1 is a zero of the polynomial (because 1 − (−1) + 2(−1)3 = 0), and hence x + 1 is a
factor of the polynomial. You will not be expected to factor cubic polynomials yourself in this
course, so we won’t review polynomial long division, but if you recall polynomial long division
(or look it up in some other source), you can use it to determine that
Now it’s time to use the factoring formula, with a = 2, b = −2, and c = 1, to factor
2x2 − 2x + 1. This gives
( √ )( √ )
2+ 4−8 2− 4−8
2x − 2x + 1 = 1 1 −
2
x 1− x = (1 − (1 + i)x) (1 − (1 − i)x) .
2 2
Having factored
we now apply the method of partial fractions to split this up into three separate pieces.
If
1 − x + x2 A B C
= + +
1 − x + 2x3 1 + x 1 − (1 + i)x 1 − (1 − i)x
A(2x2 − 2x + 1) + B(1 + x)(1 − (1 − i)x) + C(1 + x)(1 − (1 + i)x)
= ,
1 − x + 2x3
then this gives us three equations:
2A − B(1 − i) − C(1 + i) = 1
(from the coefficient of x); and A + B + C = 1 (from the constant term). The second of
these simplifies to −2A + iB − iC = −1.
The algebra can be done in different ways and gets a bit ugly, but these three equations
can be solved, resulting in A = 3/5, B = (2 − i)/10, C = (2 + i)/10.
Thus,
We now have a general method that we can apply to solve normal linear recursive rela-
tions. Before describing this method, we remark that it is important to our method that our
recursively-defined sequence begin with the 0th term, as in Examples 8.3.1 and 8.3.2 above
where we started out knowing a0 and b0 respectively. If instead we had started with a1 = 5 in
Example 8.3.1 and had not been given a0 then in order to use this method we would need to
use the recursive relation to work out what a0 should be. We would do this by taking what we
do know: a1 = 5 and the recursive relation an = 3an−1 − 1 to solve for a0 . In this case, we see
that a1 = 5 = 3a0 − 1 gives 3a0 = 6 so a0 = 2. We would do this even if the recursive relation
had only been defined for n ≥ 2, since we would be using our calculations to force the recursive
relation to hold for n = 1.
Method
1) Start with a recurrence relation of the form
a(x) = 1 − a1 x − a2 x2 − . . . − ak xk .
3) Define the generating function
h(x) = h0 + h1 x + h2 x2 + . . . .
4) Find a linear combination of the generating function so that the coefficient of xm is
f (m) for every m greater than or equal to k as follows:
5) Substitute in the values of h0 , . . . , hk−1 and factor a(x) (remember that you can use
complex roots). Find a closed form for
∞
∑
f (n)xn .
n=k
6) Use partial fractions to turn our expression for h(x) into a sum of expressions that we
can expand using the generalised binomial theorem.
7) Make variable substitutions if necessary to get summands that look like
A
.
(1 + y)n
8) Use the generalised binomial theorem to find hn , the coefficient of xn in h(x).
EXERCISES 8.3.3. For each of the following recursively-defined sequences, use the method of
generating functions to find an explicit formula for the nth term of the sequence.
1) c0 = 2, c1 = 0, cn = cn−1 + 2cn−2 for every n ≥ 2.
2) d0 = 0, d1 = 1, dn = 2dn−2 + 1 for every n ≥ 2.
3) e0 = 2, en = 3en−1 − 2 for every n ≥ 1.
4) f0 = 1, f1 = 3, and fn = 4(fn−1 − fn−2 ) for every n ≥ 2.
5) g0 = 2, g1 = 0, and gn = 2gn−1 − 2gn−2 for every n ≥ 2.
6) h0 = 1/2 and hn = 3hn−1 − 1/2 for every n ≥ 1.
7) i0 = i1 = 2, i2 = 0, and in = 3in−1 − 3in−2 + in−3 for every n ≥ 3.
8) j0 = −1, j1 = 0, and jn = 2jn−1 + 3jn−2 for every n ≥ 2.
9) k0 = 10 and kn = 11kn−1 − 10 for every n ≥ 1.
SUMMARY:
• Method of partial fractions
• Formula for factoring quadratic polynomials into the required form
• Applying generating functions to recursively-defined sequences
Chapter 9
Some Important
Recursively-Defined
Sequences
9.1. Derangements
g : {1, . . . , n − 1} → {1, . . . , n − 1}
as follows. We set g(j) = i, and for every other value, g(a) = f (a) (that is, for every a ∈
{1, . . . , n − 1} \ {j}). We had f (j) = n and f (n) = i, and we are eliminating n from the
derangement while maintaining a bijection, by creating the shortcut g with g(j) = i but g(a) =
79
80 9. Some Important Recursively-Defined Sequences
f (a) for every other a ∈ {1, . . . , n − 1}. (So whereas f maps j to n and n to i, the map g takes
j to i directly and is not defined on n.) Since f is a derangement and j ̸= i, we see that g is
also a derangement (this time of n − 1 objects). So there are Dn−1 possible derangements g,
and for a fixed choice of i, these are in one-to-one correspondence with derangements f that
have f (j) = n and f (n) = i, so there are also Dn−1 of these.
We conclude that Dn = (n − 1)(Dn−1 + Dn−2 ).
We also need some initial conditions. We have D1 = 0; there is no way of arranging a single
object so that it doesn’t end up in the correct place. Also, D2 = 1, since there is exactly one
way of deranging two objects (by interchanging them).
If we wanted to solve this recursively-defined sequence, we would need to use exponential
generating functions, which we’ll introduce in this chapter but won’t really study in this course.
Instead, we’ll give the explicit formula for Dn without proof.
PROPOSITION 9.1.2. For any n ≥ 1, the number of derangements of n objects is
( n )
∑ (−1)i
Dn = n! .
i!
i=0
EXERCISES 9.1.3.
1) Use induction to prove Proposition 9.1.2.
2) Which kind of induction did you have to use to prove Proposition 9.1.2?
3) Calculate D5 using the explicit formula given in Proposition 9.1.2.
4) Calculate D5 using the recursive relation.
[( · ) · ], or [ · ( · )].
These numbers have something in common with Example 6.3.3, in which Shawna was
building towers from lego. If we’d asked in how many different orders she could combine the
blocks to build her tower, assuming that the final order for the blocks was decided in advance,
we would have been asking for the Catalan number. So we can use logic similar to the logic
we used in that example: in order to create an expression with n terms, our final step must
involve combining a set of k terms (for which the order of combining them has already been
determined) and a set of n − k terms (for which the order of combining them has already been
determined). Here, k may take on any value from 1 to n − 1. This results in the recursive
relation:
∑
n−1
Cn = Ck Cn−k .
k=1
9. Some Important Recursively-Defined Sequences 81
This may be easier to see with an example, so we will use the recursive relation to work out C4 .
EXAMPLE 9.2.2. We’ve worked out C3 above; in order to work out C4 using this recursive
relation, we also need to know C1 and C2 . There is only one way to combine a single term (we
don’t need brackets at all), so C1 = 1. We also have C2 = 1, since there is only one way to put
brackets around a pair of terms: ( · ).
Now, to use brackets to order the operations in a four-term expression, our final operation
must either combine a group of three terms with a single term; a group of two terms with
another group of two terms; or a single term with a group of three terms (this time, the single
term is at the left). The first two expressions below come from combining a group of three
terms with a single term; the third comes from combining a group of two terms with another
group of two terms; and the last two come from combining a single term with a group of three
terms.
C4 = C3 C1 + C2 C2 + C1 C3 = 2 + 1 + 2 = 5.
We would like to use generating functions to figure out what we can about the Catalan
numbers. Unfortunately, there is a difficulty. Any time we want to use generating functions
to solve a recursively-defined sequence, the sequence must start with a 0th term, to be the
coefficient of x0 . With some recursively-defined sequences (including any linear recurrence of
the sort we looked at in Chapter 7), we can simply use the recursive relation “backwards” to
solve previous terms, going down to n = 0, even if our initial conditions began with much
higher terms. For example, if a recursively-defined sequence is given by h2 = 1, h3 = 5 and
hn = 8hn−2 − hn−1 for every n ≥ 4, we can use n = 3 in this to get
h3 = 5 = 8h1 − h2 = 8h1 − 1.
Solving for h1 gives h1 = 3/4. Then using the recursive relation with n = 2 gives
∑
n−1
c0 = 1 , and cn = ck cn−k−1 for every n ≥ 1.
k=0
Notice that
c(x)c(x) = (c0 + c1 x + c2 x2 + c3 x3 + . . .)(c0 + c1 x + c2 x2 + c3 x3 + . . .)
= c0 c0 + (c1 c0 + c0 c1 )x + (c2 c0 + c1 c1 + c0 c2 )x2 + (c0 c3 + c1 c2 + c2 c1 + c3 c0 )x3 + . . .
82 9. Some Important Recursively-Defined Sequences
This should look familiar! In fact, you can see that the coefficient of xm in (c(x))2 , is the same
as the coefficient of xm+1 in c(x), since the latter is
∑
m
ck cm−k
k=0
also.
Thus, we have an expression for c(x) in terms of (c(x))2 , since multiplying (c(x))2 by x
gives all of the terms of c(x) except c0 : c(x) = x(c(x))2 + c0 . We can rearrange this equation,
to see that
x[c(x)]2 − c(x) + 1 = 0.
We are about to do something to this generating function that may seem a bit like black
magic: we will use the quadratic formula to factor this quadratic equation in c(x), treating x
as the coefficient of (c(x))2 . Thus, in the quadratic formula, we take a = x, b = −1, and c = 1,
and obtain
√
1 ± 1 − 4x
c(x) = .
2x
Of course, there are two roots to this, and only one of them will give the correct generating
function; we need to work out which one (whether to take the plus or the minus).
Using the Generalised Binomial Theorem, we see that
( ) ( ) ( ) ( )
1/2 1/2 1/2 1/2
(1 − 4x) =
1/2
+ (−4x) + 2
(−4x) + . . . + (−4x)k + . . . ,
0 1 2 k
and
( )
1/2 (1/2)(−1/2)(−3/2) . . . (1/2 − k + 1) (−1)k−1 1 · 3 · 5 · (2k − 3)
= =
k k! 2k k!
2k k! = 2k (1 · 2 · 3 · . . . · k) = 2 · 4 · 6 · . . . · 2k,
so if we multiply the numerator and denominator of the fraction by k! (which does not change
the result), we see that we have
( )
(−1)1 · 3 · 5 · (2k − 3)2 · 4 · 6 . . . · 2k (−1)(2k − 2)!2k (−1)(2k)! −1 2k
= = = ,
k!k! k!k! (2k − 1)k!k! 2k − 1 k
9. Some Important Recursively-Defined Sequences 83
so
∞
∑ ( )
1 2k k
(1 − 4x) 1/2
=− x .
2k − 1 k
k=0
The coefficients shown on the right-hand side of this equation quickly get big and negative.
If
√
1+ 1 − 4x
c(x) = ,
2x
then for n > 0 the coefficient of xn in c(x) will be half of the coefficient of xn+1 in (1 − 4x)1/2 ,
which (when n is large) will be big and negative. But it is easy to see from the recurrence
relation that all of the Catalan numbers are positive. To get positive coefficients, we must use
√
1 − 1 − 4x
c(x) = .
2x
Since in this expression we take the negative of the large negative coefficients, the result will
be large positive coefficients (even when we divide by 2, and look for the coefficient of xn+1 ).
Thus,
∑ (2k) k
1 − (1 − 4x)1/2 1+ ∞ 1
k=0 2k−1 k x
c(x) = = .
2x 2x
From this, we see that for n > 0, the coefficient of xn in c(x) is half of the coefficient of
xn+1 in (1 − 4x)1/2 , which is
( )
1 2(n + 1) 1 (2n + 2)!
=
2 n + 1 2n + 1 2(n + 1)!(n + 1)!(2n + 1)
1 2n + 2 (2n)! 2n + 1
= · · ·
2 n + 1 (n + 1)!n! 2n + 1
( )
1 2n
= .
n+1 n
So
( )
1 2n
cn = .
n+1 n
()
1 0
Although we derived this expression for n > 0 only, we can verify that c0 = 1 = 0+1 0 since
0! = 1, so this expression is true for every n ≥ 0.
EXERCISES 9.2.3.
1) Use induction and the recursive relation for Catalan numbers (as adjusted for the values
of {ci }, where ci = Ci+1 ) to prove that cn > 0 for every n ≥ 0.
2) Calculate c4 using the explicit formula that we calculated in this section.
3) Calculate c4 using the recursive relation.
formula for the nth term of the sequence. In some cases, a different kind of generating function,
the exponential generating function, may succeed where an ordinary generating function fails.
In this section we will be using techniques from calculus. This section is not required for
understanding other parts of this book, and the material can be omitted or skimmed over.
DEFINITION 9.3.1. The exponential generating function for the sequence a0 , a1 , . . ., is
∞
∑ ai xi
.
i!
i=0
Obviously, the difference between this and an ordinary generating function comes from
the factorial expression in the denominator. Cancellation between this and expressions in the
numerator can lead to nicer compact expressions.
EXAMPLE 9.3.2. The exponential generating function for the sequence 1, 1, 1, . . . is
1 x x2
+ + + ....
0! 1! 2!
This is the Taylor series expansion for ex . Thus, ex is the exponential generating function for
1, 1, 1, . . ..
We will not be using exponential generating functions in this course; we are just introducing
the topic. We will go through one example of a sequence for which exponential generating
functions are useful: the Bell numbers. As with many other topics in this course, although
the Bell numbers are named for Eric Temple Bell (1883—1960), who wrote about them in the
1930s, he does not deserve credit for their discovery. They go back to medieval Japan, and had
been much studied by mathematicians prior to Bell’s writing.
DEFINITION 9.3.3. The Bell number Bn is the number of partitions of {1, . . . , n} into subsets.
In case you are not familiar with the term, a partition of a set X into subsets is a collection
of subsets X1 , . . . , Xk with the properties that:
∪
• ki=1 Xi = X; and
• for any 1 ≤ i, j ≤ k with i ̸= j, we have Xi ∩ Xj = ∅.
In other words, every element of X must appear in exactly one of the subsets.
Let’s look at the first few Bell numbers.
EXAMPLE 9.3.4. There is only one way to partition {1} into subsets: {1}, so B1 = 1.
There are two ways to partition {1, 2} into subsets: take the two subsets {1}, {2}, or put
everything into the single subset {1, 2}, so B2 = 2.
There are five ways to partition {1, 2, 3} into subsets: {1}, {2}, {3}, or {1, 2}, {3}, or
{1, 3}, {2}, or {2, 3}, {1}, or {1, 2, 3}, so B3 = 5.
Probably after seeing the above examples, you don’t want to calculate larger Bell numbers
directly. However, we can derive a recursive relation for these numbers. For this relation to
work properly, we will define B0 = 1.
PROPOSITION 9.3.5. For n ≥ 1, the nth Bell number
n (
∑ )
n−1
Bn = Bn−k .
k−1
k=1
9. Some Important Recursively-Defined Sequences 85
PROOF. We’ll use a combinatorial proof of this statement. We know that Bn is the number of
partitions of {1, . . . , n} into subsets.
For the other side of the equation, let’s consider the subset that contains the element n, and
) k ≥ 1, and since this is a subset of
call the cardinality of this subset k. Since n is in this (subset,
{1, . . . , n}, we have k ≤ n, so 1 ≤ k ≤ n. There are n−1 k−1 ways to choose the remaining k − 1
(n−1)
elements of this subset; that is, for any 1 ≤ k ≤ n, there are k−1 ways to choose the subset of
{1, . . . n} that contains the element n. For each of these ways, there are n − k other elements
that must be partitioned, and by the definition of the Bell numbers, there are Bn−k ways to
partition
( ) them into subsets. (Our definition of B0 = 1 deals with the case k = n, ensuring that
the n−1n−1 = 1 way of choosing n to be in a single set of all n elements is counted once and only
once.)
Thus, using the product and sum rules, we see that
n (
∑ )
n−1
Bn = Bn−k .
k−1
k=1
Let us try to find the exponential generating function for the Bell numbers. To understand
the calculations that follow, you will need to know some calculus (more specifically, you will
need to have some background in derivatives). If you don’t have that background, you won’t
understand the details we’ll be going over, although you may still be able to get a general sense
of what is going on.
When dealing with exponential generating functions, notice that the derivative of xn /n! is
nxn−1 xn−1
= ,
n! (n − 1)!
so taking derivatives often helps us find a nice expression for the coefficients. You already know
a particularly simple example of this: the derivative of ex is ex , which tells us that all of the
coefficients in that exponential generating function are equal.
Define
∞
∑ xi x x2 xn
B(x) = Bi = B0 + B1 + B2 + . . . + Bn + ....
i! 1! 2! n!
i=0
d x x2 xn−1
B(x) = B1 + B2 + B3 + . . . + Bn + ...
dx 1! 2! (n − 1)!
∞
∑ xn−1
= Bn .
(n − 1)!
n=1
86 9. Some Important Recursively-Defined Sequences
Using our recursive relation from Proposition 9.3.5, we see that this is
[ n (
∞ ∑ ) ]
d ∑ n−1 xn−1
B(x) = Bn−k
dx k−1 (n − 1)!
n=1 k=1
[
∞ ∑
]
∑ n
(n − 1)! xn−1
= Bn−k
(k − 1)!(n − k)! (n − 1)!
n=1 k=1
[
∞ ∑
]
∑ n
1 n−1
= Bn−k x
(k − 1)!(n − k)!
n=1 k=1
[ n
∞ ∑
]
∑ xk−1 xn−k
= Bn−k .
(k − 1)! (n − k)!
n=1 k=1
Notice that for each value of n, as k goes from 1 to n the values k − 1 and n − k take on
every pair of non-negative integral values that add up to n. Thus, as n goes from 1 to infinity,
the values k − 1 and n − k take on every possible pair of non-negative integral values. Therefore,
we can rewrite this expression as
∞ ∑
[∞ ]
d ∑ xj xi
B(x) = Bi
dx j! i!
j=0 i=0
∞
[∞ ]
∑ xj ∑ xi
= Bi
j! i!
j=0 i=0
[ ]
∑∞ j ∞
∑ i
x x
= Bi
j! i!
j=0 i=0
x
= e B(x).
Now, consider the derivative of e−(e ) B(x). By the product and chain rules, this is
x
so it must be the case that e−(e ) B(x) is constant, say e−(e ) B(x) = c. Then B(x) = ce(e ) .
x x x
Since
∞
∑ ∑ ∞
0n
B(0) = Bn =1+ 0 = 1,
n!
n=0 n=1
(recall that 00 = 0, or if you don’t like that, simply use the expansion of B(0)), we see that
0
cee = ce1 = ce = 1,
so c = e−1 . Hence
2) What is the exponential generating function for the sequence ai = i! for every i ≥ 0?
Give the sequence in both an expanded and a closed form.
3) What is the exponential generating function for the sequence bi = (i + 1)!/2 for every
i ≥ 0? Give the sequence in both an expanded and a closed form.
SUMMARY:
• generating functions must start with a 0th term
• Important definitions:
◦ derangements
◦ Catalan numbers
◦ exponential generating function
◦ Bell numbers
Chapter 10
Other Basic
Counting
Techniques
There are two other elementary techniques that are surprisingly useful even in quite diffi-
cult counting problems. We will wrap up our exploration of enumeration by discussing these
techniques.
89
90 10. Other Basic Counting Techniques
The name of this principle comes from the idea that it can be stated with the categories
being a row of holes, and the items being pigeons who are assigned to these holes.
In Example 10.1.1, the categories were the editions, and the items were the text books.
Example 10.1.1 was a very direct and straightforward application of the Pigeonhole Princi-
ple. The Principle can also apply in much more subtle and surprising ways.
EXAMPLE 10.1.3. Maria makes a bet with Juan. He must buy her at least one chocolate bar
every day for the next 60 days. If, at the end of that time, she cannot point out a span of
consecutive days in which the number of chocolate bars he bought for her was precisely 19,
then she will pay for all of the chocolate bars and give them back to him. If she can find such
a span, then she gets to keep the chocolate bars. To limit the size of the bet, they agree in
advance that Juan will not buy more than 100 chocolate bars in total.
Is there a way for Juan to win this bet?
SOLUTION. The answer is no. For 1 ≤ i ≤ 60, let ai represent the number of chocolate bars
that Juan has bought for Maria by the end of day i. Then 1 ≤ a1 < a2 < . . . < a60 ≤ 100.
Maria is hoping that for some i < j, she will be able to find that ai + 19 = aj . We therefore
also need to consider the values a1 + 19 < a2 + 19 < . . . < a60 + 19. By the bounds on a1 and
a60 , we have a1 + 19 ≥ 20, and a60 + 19 ≤ 119. Thus, the values a1 , . . . , a60 , a1 + 19, . . . , a60 + 19
are 120 numbers all of which lie between 1 and 119.
By the Pigeonhole Principle, at least two of these numbers must be equal, but we know
that the ai s are strictly increasing (as are the ai + 19s), so there must exist some i < j such
that ai + 19 = aj . Maria must point to the span of days from the start of day i + 1 to the end
of day j, since in this span Juan bought her 19 chocolate bars.
In fact, Juan could not win a bet of this nature that lasted more than 56 days, but proving
this requires more detailed analysis specific to the numbers involved, and is not really relevant
to this course.
Here is another example that would be hard to prove if you didn’t know the Pigeonhole
Principle.
EXAMPLE 10.1.4. Fix n, and colour each point of the plane with one of n colours. Prove that
there exists a rectangle whose four corners are the same colour.
( )
PROOF. Take a grid of points with n + 1 rows and n n+1 2 + 1 columns. We claim that this
grid will contain such a rectangle.
Since n colours have been used, and there are n+1 points in each column, by the Pigeonhole
Principle each column must contain
( ) at least two grid points that are the same colour.
In any column, there are n+1 possible locations in which a pair of points of the same
2 ( )
colour could appear. Thus there are at most n+1 2 ways to position two points of colour 1 in
a column so that the points do not occupy the same two locations in more than one of these
columns.
( ) The same is true for each of the n colours. Therefore, we can create a maximum
of n n+1
2 columns, each having two points of some colour, in such a way as to avoid having
the same( ) colour occupy the same two locations in more than one of the columns. Since we
have n n+12 + 1 columns, there must exist some pair of columns such that the same colour
does occupy the same two locations in both of the columns. These four points form a rectangle
whose corners all have the same colour.
So far we have only thought about guaranteeing that there are at least two items in some
category. Sometimes we might want to know that there are at least k items in some cate-
gory, where k > 2. There is a generalisation of the Pigeonhole Principle that applies to such
situations.
10. Other Basic Counting Techniques 91
PROPOSITION 10.1.5 (Generalised Pigeonhole Principle). Given n items that fall into m
different categories, if n > km for some positive integer k, then at least k + 1 of the items must
fall into the same category.
PROOF. Amongst the first km items, either k + 1 of the items are from the same category (so
we are done), or there are exactly k items from each of the m categories. Since n > km, there
is at least one more item. This item must fall into the same category as one of the previous
items. Since every category already has k items, this means that there will be k + 1 items in
this category.
Notice that the Pigeonhole Principle is a special case of the Generalised Pigeonhole Princi-
ple, obtained by taking k = 1.
EXAMPLE 10.1.6. The population of West Lethbridge in the 2014 census was 35, 377.
Show that at least 97 residents of West Lethbridge share a birthday. If you live in West
Lethbridge, how many people can you be sure have the same birthday as you?
SOLUTION. For the first part of this question, we apply the generalised pigeonhole principle,
with m = 366 (for the 366 days of the year, counting February 29 since it is just as legitimate
a birthday as any other despite being more uncommon), k = 96, and n = 35, 377. We have
Notice that although we have found in the above example that some group of at least 97
people in West Lethbridge must have the same birthday, we have no idea of which 97 people
are involved, or of what the joint birthday is. This is rather remarkable, but is an example of
a type of proof that is quite common in advanced mathematics. Such proofs are referred to as
“non-constructive,” since they prove that something exists, without giving you any idea of how
to find (or construct) such a thing.
The proof of following theorem involves a more subtle application of the Generalised Pi-
geonhole Principle. It is due to Pál Erdős (1913—1996) and György Szekeres (1911—2005).
THEOREM 10.1.7 (Erdős-Szekeres Theorem). For every pair of integers a, b ≥ 1, if S is a
sequence of ab + 1 distinct real numbers, then there is either an increasing subsequence of length
a + 1 or a decreasing subsequence of length b + 1 in S.
PROOF. Define a function f that maps each element of S to the length of the longest increasing
subsequence that begins with that element.
If there exists some s ∈ S such that f (s) ≥ a + 1, then we are done. So we may assume
that f (s) ≤ a for every s ∈ S. Since there is always an increasing sequence of length at least
1 starting at any element of S, we in fact have 1 ≤ f (s) ≤ a for every s ∈ S, so there are
a possible values for the outputs of f . Since |S| = ab + 1, and ab + 1 > ab, the Generalised
Pigeonhole Principle tells us that at least b + 1 elements of S must have the same output under
the function f .
We claim that if x is before y in S and f (x) = f (y), then x > y. By assumption, x ̸= y
(all values of S are distinct), so the only other possibility is x < y. If x < y, then taking x
92 10. Other Basic Counting Techniques
followed by an increasing subsequence of length f (y) that starts at y, would give an increasing
subsequence of length f (y) + 1 that starts at x, contradicting f (x) = f (y). This contradiction
shows that x < y is not possible, so x > y, as claimed.
Let s1 , s2 , . . . , sb+1 be elements of S that have the same output under f , and appear in this
order. Then by the claim we proved in the previous paragraph, s1 > s2 > . . . > sn+1 , which is
a decreasing subsequence of length b + 1.
In fact, ab + 1 is the smallest possible length for S that guarantees this property. For any
a, b, there is a sequence of length ab in which the longest increasing sequence has length a and
the longest decreasing subsequence has length b. One such sequence is
n1 + n2 + . . . + nm − m + 1
items that fall into m categories, there must be some 1 ≤ i ≤ m such that at least ni items fall
into the ith category.
n 1 + n2 + . . . + nm − m
items, either there is some 1 ≤ i ≤ m such that at least ni of the items fall into the ith category,
or there are precisely ni − 1 objects in the ith category, for every 1 ≤ i ≤ m. Since there is at
least one more item, this item must fall into the ith category for some 1 ≤ i ≤ m, which means
that there will be ni items in this category.
Notice that the Generalised Pigeonhole Principle is a special case of the “Even more gener-
alised pigeonhole principle,” obtained by taking
n1 = n2 = . . . = nm = k.
EXAMPLE 10.1.9. Suppose Ali owes Tomas $10, and wants to give him a number of identical
pieces of currency to pay her debt. Her bank only gives out currency in loonies (which have a
value of $1), twonies (which have a value of $2), five-dollar bills, or ten-dollar bills, and does not
take requests for specific kinds of currency. How much money must Ali request from the teller,
if she wants to be sure to have $10 in identical pieces of currency with which to pay Tomas?
SOLUTION. If Ali gets any $10 bills she can give one of those to Tomas and is done. If she
gets at least two $5 bills, she is done. If she gets at least five twonies, she is done, and if she
gets at least 10 loonies she is done. So the most money she can get without being able to give
Tomas their $10 in a single type of currency, is 9 loonies, 4 twonies, and a $5 bill, for a total of
$22. Therefore, if Ali asks for $23, she is guaranteed to be able to pay Tomas in a single type
of currency.
10. Other Basic Counting Techniques 93
Although the above example does not directly use the “Even more generalised pigeonhole
principle” because it asks for the value of the currency Ali needs to request rather than the
number of items she must request, it uses the same ideas and should be helpful in understanding
the concept.
EXERCISES 10.1.10.
1) Show that in any positioning of 17 rooks on an 8-by-8 chessboard, there must be at
least three rooks none of which threaten each other (i.e. no two of which lie in the
same row or column).
2) Sixteen people must sit in a row of eighteen chairs. Prove that somewhere in the row
there must be six adjacent chairs all occupied.
3) An artist has produced a large work of art to be carried in a parade. Part of the concept
is that it must be carried by people of roughly the same size (i.e., either all adults, or
all children). The artist has left it to the last minute to find people to carry this, and
is in a bit of a panic. They don’t know if they will be able to assemble enough of either
adults or children to carry the piece, so they decides to ask everyone they see, until
they have enough volunteers. It takes 15 adults to carry the piece, or 23 children. If
everyone approached agrees to help, how many people does the artist need to approach
before they are sure to have enough people to carry their art in the parade?
4) Let n be odd, let a be even, and let π : {1, . . . , n} → {1, . . . , n} be a permutation.
Prove that the product
is even. Is the same conclusion necessarily true if n is even or if a is odd? Give a proof
or a counterexamples in each case.
5) Let n ≥ 1, let x be a positive integer, and let S be a subset of cardinality n + 1 from
{x, x2 , . . . , x2n }. Prove that there exist two numbers in S whose product is x2n+1 .
6) Show that in every set of n + 1 distinct integers, there exist two elements a and b such
that a − b is divisible by n.
7) A drawer contains socks of 8 different colours. How many socks must you pull out of
the drawer to be certain that you have two of the same colour?
8) There are 15 students in a Combinatorics class. Explain how you know that two of
them have their birthday in the same month.
9) A pizza restaurant has 8 different toppings. Every day in October, they will put a
2-topping pizza on sale (a pizza that has two distinct toppings on it; the order of the
toppings does not matter). Prove that the same pizza will be on sale on two different
days.
10) Suppose A is a set of 10 natural numbers between 1 and 100 (inclusive). Show that
two different subsets of A have the same sum. For example, if
then the subsets {6, 13, 45, 65} and {2, 30, 97} both add up to 129.
[Hint: Compare the answers to two questions: How many subsets of A are there? Since there
are only 10 elements of A, and each of them is at most 100, how many different possible sums
are there?]
94 10. Other Basic Counting Techniques
11) Consider any set of 5 points in the plane that have integer coordinates. Prove that there
is some pair from these 5 points such that the midpoint of the line segment joining this
pair of points also has integer coordinates. Give an example of 4 points in the plane
that do not have this property, and list all of the midpoints as evidence.
10.2. Inclusion-Exclusion
In school, you probably saw Venn diagrams sometimes, showing groups that overlapped with
one another. We could draw a very basic Venn diagram showing the kinds of trees that are
growing at the various houses on my street:
Houses on my street
Looking at the Venn diagram can help us figure out the values of some of the pieces from
knowing the values of others. Suppose we know how many houses have deciduous trees, and
how many houses have evergreen trees. Naïvely, you might think that adding these together
would give us the total number of houses with trees. However, by looking at the Venn diagram,
we see that if we simply add the values together, then any houses that have both kinds of trees
have been counted twice (once as a house with a deciduous tree, and again as a house with an
evergreen tree). So in order to work out the number of houses that have trees, we can add the
number that have deciduous trees to the number that have evergreen trees and then subtract
the number that have both kinds of trees. This is the idea of “inclusion-exclusion.”
Specifically, if two sets A and B are disjoint, then |A ∪ B| = |A| + |B|. However, if A and B
are not disjoint, then |A| + |B| counts the elements of A ∩ B twice (both as elements of A and
as elements of B). Subtracting this overcount yields the correct answer:
PROPOSITION 10.2.1 (Inclusion-Exclusion for 2 sets). For any finite sets A and B, we have
|A ∪ B| = |A| + |B| − |A ∩ B| = 5 + 5 − 3 = 7.
This is correct, since
|A ∪ B| = |{p, r, o, n, g, h, s}| = 7.
EXAMPLE 10.2.3. Every one of the 4000 students at Modern U owns either a tablet or a smart
watch (or both). Surveys show that:
• 3500 students own a tablet, and
• 1000 students own a smart watch.
How many students own both a tablet and a smart watch?
SOLUTION. Let
• S be the set of all students at Modern U ,
• T be the set of students who own a tablet, and
• W be the set of students who own a smart watch.
Then, by assumption,
|S| = |T ∪ W | = |T | + |W | − |T ∩ W |,
so
The following exercise provides a formula for the union of three sets A, B, and C. The idea
is that A ∩ B, A ∩ C and B ∩ C have all been overcounted. However, subtracting all of these
will overcompensate, because the elements of A ∩ B ∩ C have been subtracted too many times,
so they need to be added back in.
EXERCISE 10.2.4. Suppose A, B, and C are finite sets. Show
|A ∪ B ∪ C| = |A| + |B| + |C|
− |A ∩ B| − |A ∩ C| − |B ∩ C|
+ |A ∩ B ∩ C|.
[Hint: We have formulas for |(A ∪ B) ∪ C| and |A ∪ B|. The equality (A ∪ B) ∩ C = (A ∩ C) ∪ (B ∩ C)
provides another useful formula.]
96 10. Other Basic Counting Techniques
The following general formula calculates the cardinality of the union of any number of sets,
by adding or subtracting the cardinality of every possible intersection of the sets. It is called
the Inclusion-Exclusion formula, because it works by adding (or “including” ) the cardinalities
of certain sets, and subtracting (or “excluding” ) the cardinalities of certain other sets.
THEOREM 10.2.5 (Inclusion-Exclusion). Let A1 , . . . , An be finite sets. Then
( n )
∑ ∑ ( )
|A1 ∪ . . . ∪ An | = |Ai | − |Ai ∩ Aj | + . . . + (−1)n+1 |A1 ∩ . . . ∩ An | .
i=1 1≤i<j≤n
Of course, we can figure out the value of any one of the terms in the inclusion-exclusion
formula, if we know the values of all of the other terms.
EXAMPLE 10.2.6. Sandy’s class is at Calaway Park (an amusement park). There are 21
students in the class. At the end of the day, the teacher asks some questions and determines
the following:
• every student rode at least one of the roller coaster, the train, the log ride, or the
bumper cars;
• 13 students rode the roller coaster;
• 6 students rode the train;
• 12 students rode the log ride;
• 15 students rode the bumper cars;
• 2 students rode all four of the rides; and
• 10 students rode at least 3 of these 4 rides.
How many students rode exactly two of the four rides?
SOLUTION. We begin by establishing some notation. Let A1 be the set of students who rode
the roller coaster; A2 will be the set of students who rode the train; A3 will be the set of
students who rode the log ride; and A4 will be the set of students who rode the bumper cars.
Ignoring the last piece of information for a moment, the rest of we have been given tells us
that:
• |A1 ∪ A2 ∪ A3 ∪ A4 | = 21;
• |A1 | = 13;
• |A2 | = 6;
• |A3 | = 12;
• |A4 | = 15; and
• |A1 ∩ A2 ∩ A3 ∩ A4 | = 2.
The last piece of information is a bit more tricky to encode. Observe that if we take
|A1 ∩ A2 ∩ A3 | + |A1 ∩ A2 ∩ A4 | + |A1 ∩ A3 ∩ A4 | + |A2 ∩ A3 ∩ A4 |, using ideas similar to inclusion-
exclusion (or drawing the Venn diagram) we see that we have found the number of students
who rode at least 3 of the 4 rides, except that we have counted the number of students who
rode all 4 rides in each of the four summands, instead of counting it only once. So we need to
subtract |A1 ∩ A2 ∩ A3 ∩ A4 | off three times to get the number of students who rode at least 3
of the 4 rides. Since we know that |A1 ∩ A2 ∩ A3 ∩ A4 | = 2, this tells us that
so
Only three of the students rode exactly two of the four rides.
This was a very complicated example. You should not expect to have to work out examples
that are quite so tricky, but this gives you an idea of the power of inclusion-exclusion. Here is
a more straightforward application.
EXAMPLE 10.2.7. In the Faculty of Arts and Science, the voting method used is “approval;”
that is, regardless of the number of positions available, each voter can mark as many boxes as
they wish on their ballot.
Imagine that Prof. Li, Prof. Cheng, and Prof. Osborn were all nominated for two computer
science positions on the department’s search committee. Barb Hodgson notes the following facts
when counting the ballots:
• Prof. Cheng received 18 votes; Prof. Osborn received 15 votes, and Prof. Li received
10 votes.
• Only one ballot had all three boxes marked.
• Five of the ballots were marked for both Prof. Osborn and Prof. Li.
• Ten of the ballots were marked for Prof. Cheng and Prof. Osborn.
• Six of the ballots were marked for Prof. Cheng and Prof. Li.
How many members of the department voted in the election?
SOLUTION. Again, we begin by establishing some notation. Let C be the set of ballots that
were marked for Prof. Cheng; let O be the set of ballots that were marked for Prof. Osborn;
and let L be the set of ballots that were marked for Prof. Li. Then what we want is |C ∪ O ∪ L|:
the number of ballots that were marked for at least one of the three candidates; this is the same
as the number of people who voted.
Inclusion-Exclusion tells us that
We have been given all of the values on the right-hand side of this equation, so we see that
|C ∪ O ∪ L| = 18 + 15 + 10 − 10 − 6 − 5 + 1 = 23.
There were 23 department members who voted in the election.
In fact, the information we have been given is enough for us to fill in the values in every
piece of the Venn diagram.
Department members
C O
3 9 1
1
5 4
The 9 people who voted for Prof. Cheng and Prof. Osborn but not Prof. Li is determined
from the fact that 10 people voted for Professors Cheng and Osborn, and only one of those
voted for all three professors. Similarly, the 4 people who voted for Prof. Li and Prof. Osborn
but not Prof. Cheng is determined from the fact that 5 people voted for Professors Li and
Osborn, and only one of those voted for all three professors; also, the 5 people who voted for
Prof. Cheng and Prof. Li but not Prof. Osborn is determined from the fact that 6 people voted
for Professors Cheng and Li, and only one of those voted for all three professors.
From the above deductions, we see that of the 18 votes Prof. Cheng received, one ballot
was marked for all 3 candidates; 9 were marked for Professors Cheng and Osborn (but not
Li); and 5 were marked for Professors Cheng and Li (but not Osborn). The remaining 3 votes
must have been for Prof. Cheng alone, allowing us to fill in that spot. Similarly, of the 15
votes Prof. Osborn received, one ballot was marked for all 3 candidates; 9 were marked for
Professors Cheng and Osborn (but not Li); and 4 were marked for Professors Osborn and Li
(but not Cheng). The remaining vote must have been for Prof. Osborn alone, allowing us to
fill in that spot. Finally, all of Prof. Li’s 10 votes are accounted for between the 5 who voted
for Professors Cheng and Li (but not Osborn), the 4 who voted for Professors Li and Osborn
(but not Cheng) and the one who voted for all three, so we put a 0 into the final spot.
10. Other Basic Counting Techniques 99
EXERCISES 10.2.8.
1) Of 15 students in a stats class, 8 are math majors, 6 are CS majors, and 7 are in
education. None are in all three, and none have any other majors. There are two
math/CS joint majors, and 3 CS majors who are in education. How many math majors
are in education? How many of the math majors are not in either CS or education?
2) Kevin has 165 apps on his phone. Every one of these that is not a game and was not
free, requires internet access. Of these, 78 were free. Internet access is necessary for
124 of the apps to function fully. Of the apps on his phone, 101 are games. Kevin has
62 games on his phone that require internet access; 48 of these were free. Out of all
of the games on his phone, 58 were free. How many of the free apps on Kevin’s phone
that aren’t games, require internet access?
3) How many integers between 1 and 60 are divisible by at least one of 2, 3, and 5?
4) In the 403 area code, how many of the 10-digit possible phone numbers (where any
combination of digits is allowed) contain at least one of each odd digit?
5) Assume |U | = 15, |V | = 12, and |U ∩ V | = 4. Find |U ∪ V |.
6) Assume |R| = 13, |S| = 17, and |R ∪ S| = 25. Find |R ∩ S|.
7) Assume |J| = 300, |J ∪ L| = 500, and |J ∩ L| = 150. Find |L|.
8) At a small university, there are 90 students that are taking either Calculus or Linear
Algebra (or both). If the Calculus class has 70 students, and the Linear Algebra class
has 35 students, then how many students are taking both Calculus and Linear Algebra?
9) How many numbers from 1 to 5000 are divisible by either 3 or 17?
10) How many 12-digit numbers (in which the first digit is not 0) have either no 0 or no 5?
SUMMARY:
• Pigeonhole Principle
• Generalised Pigeonhole Principle
• Even more generalised pigeonhole principle
• Inclusion-Exclusion
Part II
Graph Theory
Chapter 11
Basics of Graph
Theory
11.1. Background
In combinatorics, what we call a graph has nothing to do with the x and y axes, and plotting.
Here, a graph is the most straightforward way you could think of to model a network. A
network could be a computer network, a road network, a telephone network; it doesn’t matter
what kind of network it is. Conceptually, any network consists of a bunch of things (let’s call
them nodes) that are being connected in some fashion. To model this, we draw some points for
the nodes, and we draw edges between nodes that have a direct connection.
Leonhard Euler (1707—1783) laid the foundations of graph theory in 1735, with his solution
to the Königsberg bridge problem. Königsberg, Prussia (now Kaliningrad, Russia) was a city
on the river Pregel. The city included two islands in the river, as well as land on both sides of
the river, and there were seven bridges connecting the various parts of the city. The lay-out of
the city and its bridges looked something like this:
The question had been posed: is it possible for residents of Königsberg, out for Sunday
strolls, to cross each of the seven bridges exactly once? Better yet, can they do this and end
up in the same part of the city where they started?
Euler modeled the problem using a graph, with a vertex for each part of the city (one for
each bank, and one for each island), and edges representing the bridges. His model looked like
this:
103
104 11. Basics of Graph Theory
B D
C
The nodes A and C represent the two banks of the river, while B and D represent the
islands. In the model, the question becomes can we trace all of the edges of this graph, without
lifting our pen from the paper or going over an edge more than once?
Euler was actually able to find an easy method you can use on any graph, to quickly work
out whether or not this can be done for that graph. Also, unlike what we saw in the Pigeonhole
Principle (or some of the probabilistic methods we’ll mention in Section 11.5), his method is
constructive: if it can be done, his method shows you how to do it. We’ll go over this method
later, in Chapter 13.
a b c
results generalise to multigraphs and to graphs or multigraphs with loops, even where we don’t
specify this.
There is still more basic terminology that we need to establish before we can say much
about a graph.
DEFINITION 11.2.4. If e = {u, v} is an edge of a graph (or a multigraph, with or without
loops), then we say that u and v are endvertices (singular: endvertex) of e. We say that e is
incident with u and v (or vice versa, the vertices are also incident with the edge), and that u
and v are adjacent since there is an edge joining them, or that u is a neighbour of v.
NOTATION 11.2.5. We use the notation u ∼ v to denote that u is adjacent to v. We may also
denote the edge e = {u, v} by uv or by vu.
After one more definition, we will go through some examples using the terminology we have
established.
DEFINITION 11.2.6. If v ∈ V is a vertex of a graph (simple or multi, with or without loops),
then the number of times v appears as the endvertex of some edge is called the valency of v
in G. (Many sources use degree rather than valency, but the word degree has many meanings
in mathematics, making valency a preferable term for this.) A vertex of valency 0 is called a
isolated vertex.
Remark 11.2.7. In a graph without loops, we can define the valency of any vertex v as the
number of edges incident with v. For most purposes, this is a good way to think of the valency.
However, when a graph has loops, many formulas work out more nicely if we consider each loop
to contribute 2 to the valency of its endvertex. This fits the definition we have given, since a
vertex v appears twice as the endvertex of any loop incident with v.
E = {{a, A}, {a, B}, {a, C}, {b, A}, {b, B}, {b, C}, {c, A}, {c, B}, {c, C}} .
Perhaps you can see already why most people prefer to use a diagram rather than a list of
vertices and edges to describe a graph!
106 11. Basics of Graph Theory
The vertex a is adjacent to A, B and C. The vertex C is not adjacent to B. The edge
{a, C} is incident with the vertex a; the vertex C is also an endvertex of this edge. Every vertex
in this graph has valency 3, so none of the vertices is isolated. This is a simple graph, as it has
no loops or multiple edges.
Although a diagram is a convenient and often helpful way to visualise a graph, it is important
to note that because a graph is defined by the sets V and E, it is often possible to draw a
particular graph in ways that look quite different. Despite the different-looking drawings, as
long as V and E are the same, the graph is also the same. In Figure 11.2.3, we see two different
drawings of the graph given by V = {a, b, c, d} and
E = {{a, b}, {a, c}, {a, d}, {b, c}, {b, d}, {c, d}}.
d c c b
EXAMPLE 11.2.10. Let the graph G be defined by V = {w, x, y, z} and E = {e1 , e2 }, where
e1 = {w, x} and e2 = {w, y}. There are no loops or multiple edges, so G is a simple graph. The
edge e2 has endvertices w and y. The vertex w is incident with both e1 and e2 . The vertices x
and y are not adjacent. The vertex z is an isolated vertex, as it has no neighbours. The vertex
y has only one neighbour, w. The valency of w is 2. The valency of x and the valency of y are
both 1. In verifying all of these statements, drawing a diagram of the graph might help you.
EXERCISES 11.2.11. For each of the following graphs (which may or may not be simple, and
may or may not have loops), find the valency of each vertex. Determine whether or not the
graph is simple, and if there is any isolated vertex. List the neighbours of a, and all edges with
which a is incident.
1) Let G be defined by V = {a, b, c, d, e} and E = {e1 , e2 , e3 , e4 , e5 , e6 } with e1 = {a, c},
e2 = {b, d}, e3 = {c, d}, e4 = {c, e}, e5 = {d, e}, and e6 = {e, e}.
2) Let G be defined by V = {a, b, c} and E = {e1 , e2 , e3 } with e1 = {a, b}, e2 = {a, c},
and e3 = {a, c}.
3) Let G be defined by V = {a, b, c, d} and E = {e1 , e2 , e3 } with e1 = {a, b}, e2 = {a, c},
and e3 = {b, c}.
EXERCISES 11.2.12.
1) Let G be the graph whose vertices are the 2-element subsets of {1, 2, 3, 4, 5}, with
vertices {a, b} and {c, d} adjacent if and only if {a, b} ∩ {c, d} = ∅. Draw G.
2) The number of edges in the k-dimensional cube Qk (which is an important structure in
network design, but you do not need to know the structure to solve this. We’ll discuss
Qk further in Section 12.5) can be found by the recurrence relation:
Use generating functions to solve this recurrence relation and therefore determine the
number of edges in the k-dimensional cube.
NOTATION 11.3.2. The graph obtained by deleting the vertex v from G is denoted by G \ {v}.
We can delete more than one vertex; for any set S ⊆ V of vertices of G, we use G \ S to denote
the graph obtained by deleting all of the vertices of S from G.
The graph G \ {v} might be a multigraph, but only if G is. It could have loops, but only if
G has loops.
If we begin with the graph
A B C
a b c
and delete the vertex D, then we obtain the graph shown in Figure 11.2.2.
We can also delete edges, rather than vertices.
DEFINITION 11.3.3. Start with a graph (or multigraph, with or without loops) G with vertex
set V and edge set E, and some edge e ∈ E. If we delete the edge e from the graph G, the
resulting graph has vertex set V and edge set E \ {e}.
NOTATION 11.3.4. The graph obtained by deleting the edge e from G is denoted by G \ {e}.
We can delete more than one edge; for any set T ⊆ E of edges of G, we use G \ T to denote
the graph obtained by deleting all of the edges of T from G.
The graph G \ {e} might be a multigraph, but only if G is. It could have loops, but only if
G has loops.
Notice that deleting the edges {C, D}, {a, D} and {c, D} from the graph drawn above, does
not result in the graph shown in Figure 11.2.2, because the graph we obtain by deleting these
edges still has the vertex D (as an isolated vertex), whereas the graph shown in Figure 11.2.2
has only the six vertices {a, b, c, A, B, C}.
Vertex and edge deletion will be very useful for using proofs by induction on graphs (and
multigraphs, with or without loops). It is handy to have terminology for a graph that can be
obtained from another graph by deleting vertices and/or edges.
DEFINITION 11.3.5. Let G be a graph. If H can be obtained from G by deleting vertices
and/or edges, then H is a subgraph of G. A subgraph H of G is proper if H ̸= G.
For some later discussions, a particular kind of subgraph is often important.
108 11. Basics of Graph Theory
EXAMPLE 11.3.7. Consider the following graph. Draw all of its induced subgraphs on 4 ver-
tices.
v0
v4 v1
v3 v2
SOLUTION. For an induced subgraph, we can only delete vertices. To end with four vertices,
we can only delete one of the vertices. There are five ways to do this (deleting each of v0
through v4 in turn.) The graphs we obtain are:
v0 v0 v0 v0
v4 v1 v4 v4 v1 v4 v1 v1
v3 v2 v3 v2 v3 v2 v3 v2
Before giving the proof by induction, let’s show a few of the small complete graphs. In
particular, we’ll need to have K1 in mind as it will be the base case for our induction.
K1
K2 K3 K4 K5
PROOF BY INDUCTION. Base case: n = 1. As we can see above, the graph K1 has 0 edges.
Also,
So the equality holds for n = 1. This completes the proof of the base case.
) We begin with the inductive hypothesis. Let k ≥ 1 be arbitrary, and suppose
Inductive(step:
k
that Kk has 2 edges.
( )
We want to deduce that Kk+1 has k+1 2 edges. Start with Kk+1 , and let the number of
edges of this graph be t. Now we delete a vertex v from Kk+1 . By the definition of vertex
deletion, we must delete every edge incident with v. Since Kk+1 is complete, v is adjacent to
every other vertex, so there are k edges incident with v, and it is precisely these edges that we
have deleted. There must be t − k edges remaining.
Notice that deleting v does not affect edges that are not incident with v. Therefore, if we
consider any two vertices in the remaining graph, they will still be adjacent (since they were
adjacent in Kk+1 and the edge between them was not deleted). Thus, the remaining graph is
Kk .
Using our inductive hypothesis, we know that Kk has k(k − 1)/2 edges. We have shown
that t − k = k(k − 1)/2, so
( ) ( )
k(k − 1) k − 1) k(k + 1) k+1
t= +k =k +1 = = ,
2 2 2 2
which is what we wanted to deduce. This completes the proof
( ) of the inductive step.
By the Principle of Mathematical Induction, Kn has n2 vertices for every n ≥ 1.
Although this proof by induction may seem ridiculously long and complicated in comparison
with the combinatorial proof, it serves as a relatively simple illustration of how proofs by
induction can work on graphs. This can be a very powerful technique for proving results about
graphs.
One more definition relates to complete graphs, and will prove useful in a variety of contexts.
DEFINITION 11.3.10. The complement of G (denoted Gc ) is the graph with the same vertices
as G, but whose edges are precisely the non-edges of G. (That is, u is adjacent to v in the
complement of G if and only u is not adjacent to v in G.) Therefore, if Gc is the complement
of G, then E(K|V (G)| ) is the disjoint union of E(G) and E(Gc ).
It is worth noting that Ḡ is also a standard notation for the complement of the graph G.
Here is another result, due to Leonhard Euler (1707—1783) that can be proven using either
a combinatorial proof, or a proof by induction.
LEMMA 11.3.11 (Euler’s handshaking lemma). For any graph (or multigraph, with or without
loops)
∑
d(v) = 2|E|.
v∈V
This is called the handshaking lemma because it is often explained using vertices to represent
people, and edges as handshakes between people. In this explanation, the lemma says that if you
add up all of the hands shaken by all of the people, you will get twice the number of handshakes
that took place. This is an example of using two ways to count pairs (v, e) ∈ V × E such that v
is incident with e, a notion that we discussed briefly when we introduced combinatorial proofs.
COMBINATORIAL PROOF. For the left-hand side of the equation, at every vertex we count
the number of edges incident with that vertex. To get the right-hand side from this, observe
that this process results in every edge having been counted exactly twice (once at each of its two
endvertices; or, in the case of a loop, twice at its single endvertex since both ends are there).
110 11. Basics of Graph Theory
Although from the right perspective the handshaking lemma might seem obvious, it has a
very important and useful corollary.
COROLLARY 11.3.12. Every graph has an even number of vertices of odd valency.
PROOF. Since the sum of all of the valencies in the graph is even (by Euler’s handshaking
lemma), the number of odd summands in this sum must be even. That is, the number of
vertices that have odd valency must be even.
EXERCISES 11.3.13.
1) Give a proof by induction of Euler’s handshaking lemma for simple graphs.
2) Draw K7 .
3) Show that there is a way of deleting an edge and a vertex from K7 (in that order) so
that the resulting graph is complete. Show that there is a way of deleting an edge and
a vertex from K7 (in that order) so that the resulting graph is not complete.
4) Prove Corollary 11.3.12 by induction on the number of edges. (Use edge deletion, and
remember that the base case needs to be when there are no edges.)
5) Use graphs to give a combinatorial proof that
k ( )
∑ ( )
ni n
≤ ,
2 2
i=1
∑k
where n1 , n2 , . . . , nk are positive integers with i=1 ni = n. Under what circumstances
does equality hold?
a A
G H
Which of these graphs is K2 ? They can’t both be K2 since they aren’t the same graph —
can they?
The answer lies in the concept of isomorphisms. Intuitively, graphs are isomorphic if they
are identical except for the labels (on the vertices). Recall that as shown in Figure 11.2.3, since
graphs are defined by the sets of vertices and edges rather than by the diagrams, two isomorphic
graphs might be drawn so as to look quite different.
DEFINITION 11.4.1. Two graphs G1 = (V1 , E1 ) and G2 = (V2 , E2 ) are isomorphic if there is
a bijection (a one-to-one, onto map) φ from V1 to V2 such that for any v, w ∈ V1 ,
G1 ∼
= G2 ⇔ G2 ∼
= G1 ,
since any bijection has an inverse function that is also a bijection, and since
e b w v
d c z x
G H
are isomorphic. The map φ defined by
• φ(a) = v;
112 11. Basics of Graph Theory
• φ(b) = z;
• φ(c) = y;
• φ(d) = x;
• φ(e) = w
is an isomorphism. It is straightforward (though perhaps tedious) to check that each of the 5
edges of G maps to one of the five edges of H under φ.
To prove that two graphs are isomorphic, we must find a bijection that acts as an isomor-
phism between them. If we want to prove that two graphs are not isomorphic, we must show
that no bijection can act as an isomorphism between them.
Sometimes it can be very difficult to determine whether or not two graphs are isomorphic.
It is possible to create very large graphs that are very similar in many respects, yet are not
isomorphic. A common approach to this problem has been attempting to find an “invariant”
that will distinguish between non-isomorphic graphs. An “invariant” is any function that can
be defined on graphs, that must produce the same output for all graphs in any isomorphism
class. Thus, if you can find an invariant that is different for two graphs, you know that these
graphs must not be isomorphic. We say in this case that this invariant distinguishes between
these two graphs.
Mathematicians have come up with many, many graph invariants. Unfortunately, so far, for
every efficiently-computable invariant it is possible to find two graphs that are not isomorphic,
but for which the invariant is the same. In other words, no known efficiently-computable
invariant distinguishes between every pair of non-isomorphic graphs. (We are glossing over some
details here. What we have said is true if we mean “computable in polynomial time” when we
say “efficiently-computable”. In 2019, László Babai published an upgrade to the isomorphism
test we discuss in the next paragraph, enabling his algorithm to produce an invariant that
distinguishes between any pair of nonisomorphic graphs and is computable in quasipolynomial
time.)
In case you know what this means (perhaps if you are studying computer science), the
graph isomorphism problem is particularly interesting because it is one of a very few natural
problems that are known to be in NP but that are not known to be either in P, or to be
NP-complete. (Other classical examples are the discrete logarithm and integer factorisation
problems.) Although no polynomial time algorithm for solving this problem is known, in 2015
(with a minor patch added in 2017) László Babai (1950—) at the University of Chicago found a
quasipolynomial time algorithm for solving the graph isomorphism problem. This was a major
development in our understanding of algorithmic complexity.
To give a bit more context for the importance of Babai’s result without going into detail,
we provide short definitions of various possible algorithmic complexities (running times). An
algorithm runs in polynomial time if the number of operations it takes is at most nc for some
constant c, where n is a parameter describing the size of the input. An algorithm requires
exponential time if the number of operations it takes is at least 2cn for some positive constant c,
for all sufficiently large n. The
√ best known graph isomorphism test prior to Babai’s algorithm
required time exponential in n (this is better than being exponential in n). An algorithm is
c
quasipolynomial if the number of operations it takes is at most 2c1 (log(n)) 2 for some positive
constants c1 and c2 . Note that if we can find a quasipolynomial algorithm with c2 = 1, then
this would actually run in polynomial time.
We give a few graph invariants in the following proposition.
PROPOSITION 11.4.4. If G1 ∼
= G2 are graphs, then
1) G1 and G2 have the same number of vertices;
11. Basics of Graph Theory 113
PROOF.
1) Since G1 ∼
= G2 , there is an isomorphism φ : V1 → V2 (where V1 is the vertex set of G1
and V2 is the vertex set of G2 ). Since φ is a bijection, we must have |V1 | = |V2 |.
2) Since
(EXAMPLE
5
) 11.4.5. The graph G of Example 11.4.3 is not isomorphic to K5 , because K5 has
2 = 10 edges by Proposition 11.3.9, but G has only 5 edges. Notice that the number of
vertices, despite being a graph invariant, does not distinguish these two graphs.
The graphs G and H:
a b u v
f c z w
e d y x
G H
are not isomorphic. Each of them has 6 vertices and 9 edges. However, the graph G has
two vertices of valency 2 (a and c), two vertices of valency 3 (d and e), and two vertices of
valency 4 (b and f ). Meanwhile, the graph H has one vertex of valency 2 (w), four vertices of
valency 3 (u, x, y, and z), and one vertex of valency 4 (v). Although each of these lists has the
same values (2s, 3s, and 4s), the lists are not the same since the number of entries that contain
each of the values is different. In particular, the two vertices a and c both have valency 2, but
there is only one vertex of H (vertex w) of valency two. Either a or c could be sent to w by
an isomorphism, but either choice leaves no possible image for the other vertex of valency 2.
Therefore, an isomorphism between these graphs is not possible.
Observe that the two graphs
a b u v
f c z w
e d y x
both have 6 vertices and 7 edges, and each has four vertices of valency 2 and two vertices of
valency 3. Nonetheless, these graphs are not isomorphic. Perhaps you can think of another
graph invariant that is not the same for these two graphs.
114 11. Basics of Graph Theory
To prove that these graphs are not isomorphic, since each has two vertices of valency 3,
any isomorphism would have to map {c, f } to {v, z}. Now, whichever vertex gets mapped to u
must be a mutual neighbour of c and f since u is a mutual neighbour of v and z. But c and f
have no mutual neighbours, so this is not possible. Therefore there is no isomorphism between
these graphs.
A natural problem to consider is: how many different graphs are there on n vertices? If
we are not worrying about whether or not the graphs are isomorphic, we could have infinitely
many graphs just by changing the labels on the vertices, and that’s not very interesting. To
avoid this problem, we fix the set of labels that we use. Label the vertices with the elements of
{1, . . . , n}. We’ll call the number of graphs we find, the
( )number of labeled graphs on n vertices.
Any edge is a 2-subset of {1, . . . , n}. There are n2 possible edges in total. Any graph is
formed by taking a subset of the n(n − 1)/2 possible edges. In Example 4.1.1, we learned how
to count these: there are 2n(n−1)/2 subsets.
()
EXAMPLE 11.4.6. When n = 1, we have 12 = 0, and 20 = 1, so there is exactly one labeled
graph on 1 vertex. It looks like this:
1
(2)
When n = 2, we have 2 = 1, and 21 = 2. so there are exactly two labeled graphs on 2
vertices. They look like this:
1 1
2 2
(3)
When n = 3, we have 2 = 3, and 23
= 8, so there are exactly eight labeled graphs on 3
vertices. They look like this:
1 1 1 1 1 1 1 1
2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3
(4)
When n = 4, we have 2 = 6, and 26
= 64, so there are exactly sixty-four labeled graphs
on 4 vertices. We won’t attempt to draw them all here.
Although that answer is true as far as it goes, you will no doubt observe that even though
we are using a fixed set of labels, some of the graphs we’ve counted are isomorphic to others.
A more interesting question would be, how many isomorphism classes of graphs are there on
n vertices? Since we are considering isomorphism classes, the labels we choose for the vertices
are largely irrelevant except to tell us which vertices are adjacent to which other vertices, if we
don’t have a diagram. Thus, if we are drawing the graphs, we usually omit vertex labels and
refer to the resulting graphs (each of which represents an isomorphism class) as unlabeled. So
the question is, how many unlabeled graphs are there on n vertices?
We can work out the answer to this for small values of n. From the labeled graphs on 3
vertices, you can see that there are four unlabeled graphs on 3 vertices. These are:
There are 11 unlabeled graphs on four vertices. Unfortunately, since there is no known
polynomial-time algorithm for solving the graph isomorphism problem, determining the number
of unlabeled graphs on n vertices gets very hard as n gets large, and no general formula is known.
11. Basics of Graph Theory 115
(All of these things could still be hard even if a polynomial time algorithm were found, but
without such an algorithm these other questions seem completely out of reach.)
EXERCISES 11.4.7. For each of the following pairs of graphs, find an isomorphism or prove
that the graphs are not isomorphic.
a w
e b x v
1)
d c y z
G H
a w
e b x v
2)
d c y z
G H
3) G1 = (V1 , E1 ) and G2 = (V2 , E2 ) with V1 = {a, b, c, d}, V2 = {A, B, C, D}, E1 =
{ab, ac, ad}, E2 = {BC, CD, BD}.
EXERCISES 11.4.8.
1) Draw five unlabeled graphs on 5 vertices that are not isomorphic to each other.
2) How many labeled graphs on 5 vertices have 1 edge?
3) How many labeled graphs on 5 vertices have 3 or 4 edges?
V = {v1 , . . . , vn }.
For every pair of vertices vi and vj with 1 ≤ i < j ≤ n, the edge vi vj occurs randomly and
independently with probability p.
EXAMPLE 11.5.2. Suppose we have three vertices u, v, and w, and we fix p = 1/4. For each
pair of vertices, we flip a coin twice, and draw an edge between the vertices only if we obtain
heads both times. We have three pairs of vertices, so flip the coin 6 times, with the first two
flips are for uv, the next two for uw, and the final two are for vw. The outcomes on our first
attempt are T, T, T, H, T, H. Our result is the empty graph, shown below.
116 11. Basics of Graph Theory
v w
On our second attempt, the outcomes are H, H, T, H, H, T. The result is again shown
below.
u
v w
Under the Gilbert model, the probability of obtaining a given graph that has m edges
( ) n
(where 0 ≤ m ≤ n2 ) is pm (1 − p)( 2 )−m . If p is large, obtaining a graph that has many edges is
much more likely than a graph that has few edges; if p is small, a graph with few edges is more
likely. If p = 1/2, then any given (labelled) graph will be equally likely to arise.
DEFINITION 11.5.3. In the Erdős-Renyi random graph model, the number of edges m is also
fixed in advance. From all possible (labelled) graphs on n vertices and with m edges, one is
chosen at random, with equal probability of choosing any one.
( n))
Under the Erdős-Renyi model, since there are (m 2 (labelled) graphs with m edges on n
(n)
vertices, the probability of choosing a specific graph is 1/ ( 2 ) .
m
Probability can be applied to graph theory in some very powerful ways, and Paul Erdős was
a pioneer in much of this work. In addition to studying random graphs, one of the techniques
he applied with great success was non-constructive probabilistic proofs. That sounds big and
complicated, but it’s actually a bit like something we saw with the Pigeonhole Principle: it’s
possible to prove that something exists, without being able to find it.
In the case of probabilistic proofs, the basic idea is this: if you can prove that the probability
that a graph has a particular property is not 0, then a graph with that property must exist!
Such a proof is “non-constructive” as it does not construct (or tell us how to construct) a graph
that has the property.
Although our attention in this course is restricted to finite graphs, random graphs are
particularly interesting in the infinite case. If our vertex set is countably infinite and we apply
the Gilbert random graph model with any allowed choice of p (so p is not 0 or 1, but can be
anything in between), then almost certainly the result we obtain will be isomorphic to a specific
graph. (“Almost certainly” has a very precise meaning in this context, that boils down to the
probability of its occurrence being 1. In practice this may mean something like the probability
of its happening being the limit as k tends to infinity of 1 − pk .)
The infinite random graph that almost certainly arises from this process is known as the
Rado graph, named for Richard Rado (1906—1989), but it also often just called the random
graph, due to its omnipresence. It has many very interesting properties. Perhaps some of the
most interesting are that:
• every finite graph appears as an induced subgraph of the random graph.
• given any sets v1 , . . . , vn and u1 , . . . , um of vertices in the random graph, it is possible
to find a vertex x that is adjacent to all of the vertices v1 , . . . , vn and not adjacent to
any of the vertices u1 , . . . , um .
If we allow an uncountably infinite number of vertices, then in contrast to the countable
situation, there are many nonisomorphic random graphs.
11. Basics of Graph Theory 117
Despite the apparent universality of the Rado graph, other random graphs on countably
infinite sets of vertices can almost certainly arise if other random models are used. In particular,
in a 2011 paper, Anthony Bonato (1971—) and Jeannette Janssen (1963—) studied random
graphs whose vertices correspond to a dense but countably infinite subset of the real numbers,
with one additional condition on the vertex set that is not particularly restrictive, but is too
technical to include in this overview. In their model, they fix a distance D and a probability
p (with 0 < p < 1). For any two vertices x and y with |x − y| < D, the edge xy occurs
with probability p (so there are no edges between vertices that are too far apart). Under this
model, they were able to show that a specific graph (up to isomorphism) is almost certainly
the outcome. However, this graph is easily seen to be distinct from the random graph, since
in the random graph any two nonadjacent vertices have a mutual neighbour, whereas in this
graph there are vertices that are not joined by a path of length n for any finite n.
In fact, Bonato and Janssen showed that a similar result holds if the vertices are chosen
to be dense countably infinite subsets of Rn , as long as the probability of two vertices being
adjacent is determined by their maximum difference in any coordinate (that is, for vertices
SUMMARY:
• graphs are defined by sets, not by diagrams
• deleting a vertex or edge
• how to use proofs by induction on graphs
• Euler’s handshaking lemma
• graph invariants, distinguishing between graphs
• labeled and unlabeled graphs
• random graphs
• Important definitions:
◦ graph, vertex, edge
◦ loop, multiple edge, multigraph, simple graph
◦ endvertex, incident, adjacent, neighbour
◦ degree, valency, isolated vertex
◦ subgraph, induced subgraph
◦ complete graph, complement of a graph
◦ isomorphic graphs, isomorphism between graphs
• Notation:
◦u∼v
◦ uv
◦ val(v), deg(v), d(v), dG (v)
◦ G \ {v}, G \ {e}
◦ Kn , Gc
∼ G2
◦ G1 =
Chapter 12
Moving through
graphs
We have some basic concepts and terminology now, but it is important to remember that
graphs are models of networks. Networks are all about moving things around, whether those
things are cars, data, or whatever. So if graphs are going to be useful models, routes in the
network need to correspond to routes in the graph, and we need to be able to describe these
routes, and to learn about them.
DEFINITION 12.1.1. A directed graph, or digraph for short, consists of two sets:
• V , whose elements are the vertices of the digraph; and
• A, whose elements are ordered pairs from V , so
A ⊆ {(v1 , v2 ) | v1 , v2 ∈ V }.
We will give one example of generalising a result on graphs, to the context of digraphs. In
order to do so, we need a definition.
119
120 12. Moving through graphs
NOTATION 12.1.4. The outvalency of vertex v is denoted by d+ (v). The invalency of vertex
v is denoted by d− (v).
LEMMA 12.1.5 (Euler’s handshaking lemma for digraphs). For any digraph,
∑ ∑
d+ (v) = d− (v) = |A|.
v∈V v∈V
COMBINATORIAL PROOF. For the left-hand side of the equation, at every vertex we count
the number of arcs that begin at that vertex. Since each of these arcs ends at some vertex,
we get the same result in the middle part of the equation, where at every vertex we count the
number of arcs that end at that vertex. In each case, we have counted every arc precisely once,
so both of these values are equal to the right-hand side of the equation, the number of arcs in
the digraph.
EXERCISES 12.1.6.
1) Use induction to prove Euler’s handshaking lemma for digraphs that have no loops
(arcs of the form (v, v) or multiarcs (more than one arc from some vertex u to some
other vertex v).
2) A digraph isomorphism is a bijection on the vertices that preserves the arcs. Come up
with a digraph invariant, and prove that it is an invariant.
3) List the invalency and outvalency of each vertex of the digraph from Example 12.1.2.
DEFINITION 12.2.2. The graph G with vertex set V is connected if for every u, v ∈ V , there
is a u − v walk.
The connected component of G that contains the vertex u, is
{v ∈ V | there is a u − v walk. }.
This definition of connected component seems to depend significantly on the choice of the
vertex u. In fact, though, being in the same connected component of G is an equivalence relation
on the vertices of G, so the connected components of G are a property of G itself, rather than
depending on particular choices of vertices. We won’t go through a formal proof that being in
the same connected component is an equivalence relation (we leave this as an exercise below),
but we will go through the proof of a proposition that is closely related.
PROPOSITION 12.2.3. Let G be a graph, and let u, v, w ∈ V (G). Suppose that v and w are in
the connected component of G that contains the vertex u. Then w is in the connected component
of G that contains the vertex v.
PROOF. Since v and w are in the connected component of G that contains the vertex u, by
definition there is a u − v walk, and a u − w walk. Let (u = u1 , u2 , . . . , uk = w) be a u − w
walk, and let (u = v1 , v2 , . . . , vm = v) be a u − v walk.
We need to show that w is in the connected component of G that contains the vertex v; by
definition, this is equivalent to showing that there is a v − w walk. Consider the sequence of
vertices:
(v = vm , vm−1 , . . . , v1 = u = u1 , u2 , . . . , uk = w).
When discussing walks, it is convenient to have standard terminology for describing the
length of the walk.
DEFINITION 12.2.4. The length of a walk is one less than the number of vertices in the walk.
Thus, if we think of a walk as a sequence of edges (formed by consecutive pairs of vertices from
the walk), the length of the walk is the number of edges in the walk.
Unfortunately, there is some disagreement amongst mathematicians as to whether the length
of a walk should be used to mean the number of vertices in the walk, or the number of edges
in the walk. We will use the latter convention throughout this course because it is consistent
with the definition of the length of a cycle (which will be introduced in the next section). You
should be aware, though, that you might find the other convention used in other sources.
Sometimes it is obvious that a graph is disconnected from the way it has been drawn,
but sometimes it is less obvious. In the following example, you might not immediately notice
whether or not the graph is connected.
a b
h c
g d
f e
Find a walk of length 4 from a to f . Find the connected component that contains a. Is the
graph connected?
SOLUTION. A walk from of length 4 from a to f is (a, c, a, c, f ). (Notice that the vertices
and edges used in a walk need not be distinct.) Remember that the length of this walk is the
number of edges used, which is one less than the number of vertices in the sequence!
The connected component that contains a is {a, c, e, f }. There are walks from a to each
of these vertices, but there are no edges between any of these vertices and any of the vertices
{b, d, g, h}.
Since there is no walk from a to b (for example), the graph is not connected.
EXERCISES 12.2.6.
1) Prove that being in the same connected component of G is an equivalence relation on
the vertices of any graph G.
2) Is the following graph connected? Find the connected component that contains a. Find
a walk of length 5 from a to f .
a b
j c
i d
h e
g f
3) Is the following graph connected? Find the connected component that contains a. Find
a walk of length 3 from a to d.
a b
j c
i d
h e
g f
NOTATION 12.3.2. For n ≥ 0, a graph on n + 1 vertices whose only edges are those used in
a path of length n (which is a walk of length n that is also a path) is denoted by Pn . (Notice
that P0 ∼
= K1 and P1 ∼= K2 .)
Notice that if an edge were to appear more than once in a walk, then at least one of its
endvertices would also have to appear more than once, so a path does not allow vertices or
edges to be re-visited.
EXAMPLE 12.3.3. In the graph
a b c d
e f g h
(a, f, c, h) is a path of length 3. However, (a, f, c, h, d, f ) is not a path, even though no edges
are repeated, since the vertex f appears twice. Both are walks.
PROPOSITION 12.3.4. Suppose that u and v are in the same connected component of a graph.
Then any u − v walk of minimum length is a path. In particular, if there is a u − v walk, then
there is a u − v path.
PROOF. Since u and v are in the same connected component of a graph, there is a u − v walk.
Towards a contradiction, suppose that we have a u − v walk of minimum length that is not
a path. By the definition of a path, this means that some vertex x appears more than once in
the walk, so the walk looks like:
(u = u1 , . . . , ui = x, . . . , uj = x, . . . , uk = v),
and j > i. Observe that the following is also a u − v walk:
This allows us to prove another interesting fact that will be useful later.
PROPOSITION 12.3.5. Deleting an edge from a connected graph can never result in a graph
that has more than two connected components.
124 12. Moving through graphs
A cycle is like a path, except that it starts and ends at the same vertex. The structures
that we will call cycles in this course, are sometimes referred to as circuits.
DEFINITION 12.3.6. A walk of length at least 1 in which no vertex appears more than once,
except that the first vertex is the same as the last, is called a cycle.
NOTATION 12.3.7. For n ≥ 3, a graph on n vertices whose only edges are those used in a
cycle of length n (which is a walk of length n that is also a cycle) is denoted by Cn .
The requirement that the walk have length at least 1 only serves to make it clear that a
walk of just one vertex is not considered a cycle. In fact, a cycle in a simple graph must have
length at least 3.
EXAMPLE 12.3.8. In the graph from Example 12.3.3, (a, e, f, a) is a cycle of length 3, and
(b, g, d, h, c, f, b) is a cycle of length 6.
Here are drawings of some small paths and cycles:
P0 P1 P2 P3 P4 P5 P6
C3 C4 C5 C6
We end this section with a proposition whose proof will be left as an exercise.
12. Moving through graphs 125
PROPOSITION 12.3.9. Suppose that G is a connected graph. If G has a cycle in which u and
v appear as consecutive vertices (so uv is an edge of G) then G \ {uv} is connected.
EXERCISES 12.3.10.
1) In the graph
a b c d
e f g h
12.4. Trees
A special class of graphs that arise often in graph theory, is the class of trees. If a mathematician
suspects that something is true for all graphs, one of the first families of graphs for which they
will probably try to prove it, is the family of trees. The strong structure of trees makes them
much easier to work with than many other families of graphs.
DEFINITION 12.4.1. A tree is a connected graph that has no cycles.
A forest is a disjoint union of trees. So a forest is a graph that has no cycles (but need not
be connected).
A leaf is a vertex of valency 1 (in any graph, not just in a tree or forest).
Notice that the graph Pn is a tree, for every n ≥ 1.
We prove some important results about the structure of trees.
PROPOSITION 12.4.2. Let T be a connected graph with no cycles. Then deleting any edge
from T disconnects the graph.
PROOF. If T has no edges, the statement is vacuously true. We may thus assume that T has
at least one edge. Let {u, v} be an arbitrary edge of T . (Since a loop is a cycle, we must have
u ̸= v even if we were not assuming that our graphs are simple.)
Towards a contradiction, suppose that deleting {u, v} from T does not disconnect T . Then
by the definition of a connected graph, there is a u − v walk in T \ {uv}. By Proposition 12.3.4,
the shortest u − v walk in T \ {uv} must be a u − v path. If we take this same walk in T and
add u to the end, this will still be a walk in T since T contains the edge uv. Since the walk
in T \ {uv} was a path, no vertices were repeated. Adding u to the end of this walk makes a
walk (certainly of length at least 2) in which no vertex is repeated except that the first and last
126 12. Moving through graphs
vertices are the same: by definition, a cycle. Thus, T has a cycle, contradicting our hypothesis.
This contradiction serves to prove that deleting any edge from T disconnects the graph.
Since a tree is a connected graph with no cycles, this shows that deleting any edge from a
tree will disconnect the graph.
PROPOSITION 12.4.3. Every tree that has at least one edge, has at least two leaves.
PROOF. We prove this by strong induction on the number of vertices. Notice that a (simple)
graph on one vertex must be K1 , which has no edges, so the proposition does not apply.
Therefore our base case will be when there are 2 vertices.
Base case: n = 2. Of the two (unlabeled) graphs on 2 vertices, only one is connected: K2
(or P1 ; these are isomorphic). Both of the vertices have valency 1, so there are two leaves. This
completes the proof of the base case.
Induction step: We begin with the strong inductive hypothesis. Let k ≥ 2 be arbitrary.
Suppose that for every 2 ≤ i ≤ k, every tree with i vertices has at least two leaves. (Since i ≥ 2
and a tree is a connected graph, every tree on i vertices has at least one edge, so we may omit
this part of the hypothesis.)
Let T be a tree with k + 1 vertices. Since k + 1 > 1, T has at least one edge. Choose any
edge {u, v} of T , and delete it. By Proposition 12.4.2, the resulting graph is disconnected. By
Proposition 12.3.5, it cannot have more than two connected components, so it must have exactly
two connected components. Furthermore, by the proof of that proposition, the components are
Tu (the connected component that contains the vertex u) and Tv (the connected component
that contains the vertex v).
Since T has no cycles, neither do Tu or Tv . Since they are connected components, they are
certainly connected. Therefore, both Tu and Tv are trees. Since u is not a vertex of Tv and v
is not a vertex of Tu , each of these trees has at most k vertices.
If both Tu and Tv have at least two vertices, then we can apply our induction hypothesis to
both. This tells us that Tu and Tv each have at least two leaves. In particular, Tu must have
some leaf x that is not u, and Tv must have some leaf y that is not v. Deleting uv from T did
not change the valency of either x or y, so x and y must also have valency 1 in T . Therefore T
has at least two leaves. This completes the induction step and therefore the proof, in the case
where Tu and Tv each have at least two vertices. We must still consider the possibility that at
least one of Tu and Tv has only one vertex.
Since k + 1 ≥ 3, at least one of Tu and Tv must have two vertices, so only one of them can
have only one vertex. Without loss of generality (since nothing in our argument so far made
any distinction between u and v, we can switch u and v if we need to), we may assume that Tv
has only one vertex, and Tu has at least two vertices. Applying our induction hypothesis to Tu ,
we conclude that Tu has some leaf x that is not u, and that is also a leaf of T . Furthermore,
since Tv has only one vertex, this means that deleting the edge uv left v as an isolated vertex,
so uv was the only edge incident with v in T . Therefore, v is a leaf of T . Thus, T has at least
two leaves: x and v. This completes the induction step and therefore the proof, in the case
where at least one of Tu and Tv has only one vertex. Since we have dealt with all possibilities,
this completes our induction step.
By the Principle of Mathematical Induction, every tree that has at least one edge, has at
least two leaves.
THEOREM 12.4.5. The following are equivalent for a graph T with n vertices:
1) T is a tree;
2) T is connected and has n − 1 edges;
3) T has no cycles, and has n − 1 edges;
4) T is connected, but deleting any edge leaves a disconnected graph.
PROOF. We will prove that the statements are equivalent by showing that 1 ⇒ 2 ⇒ 3 ⇒ 4 ⇒ 1.
Thus, by using a sequence of implications, we see that any one of the statements implies any
other.
(1 ⇒ 2) We assume that T is a tree, and we would like to deduce that T is connected and
has n − 1 edges. By the definition of a tree, T is connected. We will use induction on n to show
that T has n − 1 edges.
Base case: n = 1. There is only one (unlabeled) graph on one vertex, it is K1 , so T ∼ = K1 ,
which has no edges. Since 0 = n − 1, this completes the proof of the base case.
Inductive step: We begin with the inductive hypothesis. Let k ≥ 1 be arbitrary, and suppose
that every tree on k vertices has k − 1 edges.
Let T be an arbitrary tree with k + 1 vertices. Since k + 1 ≥ 2 and T is connected, T must
have at least one edge, so by Proposition 12.4.3, T has at least two leaves. Let v be a leaf
of T . By Proposition 12.4.4, T \ {v} is a tree. Also, T \ {v} has k vertices, so we can apply
our induction hypothesis to conclude that T \ {v} has k − 1 edges. Since v was a leaf, T has
precisely one more edge than T \ {v}, so T must have k = (k + 1) − 1 edges. This completes
our inductive step.
By the Principle of Mathematical Induction, every tree on n vertices has n − 1 edges.
(2 ⇒ 3) We assume that T is connected and has n − 1 edges. We need to deduce that T
has no cycles.
Towards a contradiction, suppose that T has a cycle. Repeatedly delete edges that are in
cycles until no cycles remain. By Proposition 12.3.9 (used repeatedly), the resulting graph is
connected, so by definition it is a tree. Since we have already proven that 1 ⇒ 2, this tree must
have n − 1 edges. Since we started with n − 1 edges and deleted at least one (based on our
assumption that T has at least one cycle), this is a contradiction. This contradiction serves to
prove that T must not have any cycles.
(3 ⇒ 4) We assume that T has no cycles, and has n − 1 edges. We must show that T is
connected, and that deleting any edge leaves a disconnected graph. We begin by showing that
T is connected; we prove this by induction on n.
Base case: n = 1. Then T ∼ = K1 is connected.
Inductive step: We begin with the inductive hypothesis. Let k ≥ 1 be arbitrary, and suppose
that every graph on k vertices that has k − 1 edges and no cycles, is connected.
Let T be an arbitrary graph with k + 1 vertices that has k edges and no cycles. By Euler’s
handshaking lemma,
∑
d(v) = 2k.
v∈V
If each of the k + 1 vertices had valency 2 or more, then we would have
∑
d(v) ≥ 2(k + 1)
v∈V
(this is a lot like the Pigeonhole Principle in concept, but the Pigeonhole Principle itself doesn’t
apply to this situation). Since 2k < 2(k + 1), there must be some vertex v that does not have
valency 2 or more. Delete v. In so doing, we delete at most 1 edge, since v has at most 1
128 12. Moving through graphs
incident edge. Thus, the resulting graph has k vertices and k or k − 1 edges, and since T has
no cycles, neither does T \ {v}.
If T \ {v} has k edges, then deleting any of the edges results in a graph on k vertices with no
cycles and k − 1 edges, which by our inductive hypothesis must be connected. Therefore T \ {v}
is a connected graph that remains connected after any edge is deleted. By Proposition 12.4.2
(in the contrapositive), this means that T \ {v} must contain a cycle, but this is a contradiction.
This contradiction serves to prove that T \ {v} cannot have k edges.
Thus, T \ {v} has k − 1 edges and k vertices, and no cycles. By our inductive hypothesis,
T \ {v} must be connected. Furthermore, the fact that T \ {v} has k − 1 edges means that v is
incident to an edge, which must have its other endvertex in T \ {v}. Therefore T is connected.
This completes the inductive step.
By the Principle of Mathematical Induction, every graph on n vertices with no cycles and
n − 1 edges is connected.
It remains to be shown that deleting any edge leaves a disconnected graph, but now that
we know that T is connected, this follows from Proposition 12.4.2.
(4 ⇒ 1) We assume that T is connected, but deleting any edge leaves a disconnected graph.
By the definition of a tree, we must show that T has no cycles. This follows immediately from
Proposition 12.3.9.
EXERCISES 12.4.6.
1) Prove Proposition 12.4.4.
2) Draw a tree on 6 vertices.
3) There are two non-isomorphic trees on 4 vertices. Find them.
4) There are 11 non-isomorphic graphs on 4 vertices. Draw all 11, and under each one
indicate: is it connected? Is it a forest? Is it a tree?
[Hint: One has 0 edges, one has 1 edge, two have 2 edges, three have 3 edges, two have 4 edges,
one has 5 edges, and one has 6 edges.]
EXAMPLE 12.5.2. The following graph (C4 ) has 8 automorphisms. It can be left alone; rotated
by 90◦ , 180◦ , or 270◦ or reflected through the vertical, horizontal, or either diagonal axis.
Observe that leaving a graph alone: that is, mapping every vertex to itself, is always an
automorphism of any graph. We call this the trivial automorphism.
There are many interesting problems and results relating to automorphisms of graphs. In
this section we have chosen a few topics to focus on from this broad field. The first topic is the
distinguishing number of graphs. Although this idea had appeared previously, broad interest in
12. Moving through graphs 129
it (and the origin of this terminology) began with a paper by Michael Owen Albertson (1946—
2009) and Karen Linda Collins (1959—) from 1996, in which they provided the basic definitions
and some initial results.
DEFINITION 12.5.3. Suppose that a colour has been assigned to each vertex of a graph G.
An automorphism φ of G is said to preserve the colouring if for every v ∈ V (G), the colour of
v is the same as the colour of φ(v).
EXAMPLE 12.5.4. Only the trivial automorphism, and reflection through the vertical axis,
preserve the colouring of C4 shown below.
DEFINITION 12.5.5. The distinguishing number of a graph is the smallest number of colours
required to colour the vertices of that graph so that the trivial automorphism is the only
automorphism that preserves the colouring.
Albertson and Collins posed the problem of finding the distinguishing number of any graph.
One of the very early results in probabilistic graph theory (a technique mentioned in Sec-
tion 11.5) was a theorem by Pál Erdős (1913—1996) and Alfréd Rényi (1921—1970) that almost
every graph has only the trivial automorphism. More precisely, what they showed is that if
you choose a finite graph completely at random, then the probability is 1 that the graph you
chose has no automorphisms other than the trivial automorphism. Erdős and Renyi’s result
immediately implies that almost every graph has a distinguishing number of 1: we can colour
every vertex black, and still only the trivial automorphism preserves this colouring, since it is
the only automorphism of the graph.
Despite the Erdős-Renyi result, there are many interesting families of graphs (such as the
cycles Cn ) that have plenty of nontrivial automorphisms. Although (by Erdős and Renyi’s
result) the number of such graphs is vanishingly small as a proportion of all possible graphs,
they nonetheless exist, and finding their distinguishing number is an interesting problem.
For the cycle Cn , the problem of finding the distinguishing number is equivalent to asking if
you have a set of n identical keys on a key ring, and you apply coloured covers to some of them,
how many colours of covers do you need to ensure that you can tell all of your keys apart from
each other? This question has some strong relationships to one of the enumeration questions
we considered much earlier in this course: how many beaded necklaces can be made with a
collection of coloured beads?
We begin by considering C5 .
EXAMPLE 12.5.6. The cycle C5 has a distinguishing number of 3.
To see that two colours are not sufficient, note that if two colours are used then one of the
colours must be used on 1 or 2 of the vertices, while the other colour is used on the remaining
4 or 3 vertices. In either case, some case-by-case analysis shows that there is a reflection that
preserves the colouring.
To see that three colours are sufficient, observe this colouring:
The only nontrivial automorphism that fixes the white vertex is reflection through the
vertical axis, and this does not fix the grey vertex.
Now we consider C6 .
130 12. Moving through graphs
Since only one of the white vertices has no white neighbours, any automorphism that
preserves the colouring must fix that vertex. The only nontrivial automorphism that fixes this
vertex is the reflection through the horizontal axis, and that reflection does not preserve the
colouring of one of the other two white vertices. Therefore, only the trivial automorphism
preserves this colouring.
Before providing some of the known results on distinguishing numbers, we introduce one
interesting family of graphs: the hypercubes.
DEFINITION 12.5.8. The hypercube of dimension n, Qn has as its vertices all possible binary
strings of length n. Two vertices are adjacent if the corresponding strings differ in exactly one
position.
In Chapter 19 we will look at some of these ideas (binary strings and how many positions
they differ in) in more detail. According to the terminology that will be used in that chapter,
the vertices of Qn are the n-bit binary strings, and two vertices are adjacent if the corresponding
strings have a Hamming distance of 1.
We can now give distinguishing numbers for some families of graphs.
PROPOSITION 12.5.9. The distinguishing number of
• Cn is 2 when n ≥ 6. It is 3 for 3 ≤ n ≤ 5.
• Pn is 2 when n ≥ 2. It is 1 for n = 1.
• Kn is n.
• Kn,n is n + 1.
• Qn is 1 when n = 0. It is 2 if n = 1 or if n ≥ 4. It is 3 if n = 2 or n = 3.
We mentioned above that almost all graphs have a distinguishing number of 1. The results
we have just listed indicate the pattern that has emerged from research into the distinguishing
number of graphs whose distinguishing number is not 1: that is, in almost all such cases it is
possible to find a distinguishing colouring that uses just 2 colours.
After doing some work on the distinguishing number herself, Debra Lynn Boutin (1957—)
introduced a related concept: the distinguishing cost.
DEFINITION 12.5.10. For a graph with distinguishing number 2, the distinguishing cost is
the smallest number of vertices that need to be coloured with the less-commonly-used colour,
in order to produce a distinguishing colouring of the graph with 2 colours (that is, a colouring
with 2 colours for which only the trivial automorphism preserves the colours).
EXAMPLE 12.5.11. The distinguishing cost of C6 is 3. We have already seen in Example 12.5.7
that using three vertices of each colour can provide a distinguishing colouring. To see that one
or two vertices of one colour are not sufficient, we observe that any subset of one or two of
the vertices of C6 is preserved (as a set) by some reflection automorphism. Thus, no matter
which one or two vertices we might choose to colour with the second colour, there would be a
nontrivial automorphism preserving the colouring.
In fact, the distinguishing cost of Cn is 3 for every n ≥ 6, by similar reasoning.
12. Moving through graphs 131
In case you are unfamiliar with this notation, ⌈r⌉ denotes the ceiling of the real number r:
the smallest integer that is greater than or equal to r.
⌈log2 (16)⌉ + 1 = 4 + 1 = 5
and
so 5 ≤ dc(Q16 ) ≤ 7.
While distinguishing is a fascinating topic by itself, we wish to introduce one other family
of graphs that relates to automorphisms. We will not provide nearly as much detail on this
topic.
In 1989, Cheryl Elisabeth Praeger (1948—) and Ming-Yao Xu (1941—) introduced a family
of graphs that has become known as the Praeger-Xu graphs. This is a family of graphs for
which every vertex in each of the graphs has valency 4. Without going into detail, each of the
graphs in the Praeger-Xu family has far more automorphisms (relative to the number of vertices
that it has) than any other graph for which every vertex has valency 4. The Praeger-Xu graphs
have been studied by a number of researchers, and have arisen in several contexts related to
automorphisms of graphs. In the same paper, Praeger and Xu actually introduced a collection
of related families of graphs where every vertex of every graph in a given family has valency
2p for some prime p, but the case where p = 2 is particularly interesting and this is the family
that is known as the Praeger-Xu graphs.
DEFINITION 12.5.14. The Praeger-Xu graph P X(n, k) has for its vertices the ordered pairs
(i, x), where i ∈ {0, . . . , n − 1} and x is a binary string of length k. Edges are any pair of
vertices of the form {(i, ay), (i + 1, yb)} where y is a binary string of length k − 1, a, b ∈ {0, 1},
i ∈ {0, . . . , n − 1}, and addition in the first entry is performed modulo n.
EXAMPLE 12.5.15. In P X(8, 5), the vertex (7, 10111) has four neighbours: (0, 01110), (0, 01111),
(6, 01011), and (6, 11011).
The sets of vertices forming a line represent fixed values of the first coordinate, increasing
in a clockwise direction. From outside to inside, the second entries of each vertex label are
SUMMARY:
• many definitions and results about graphs can be generalised to the context of digraphs.
• trees can be characterised in a variety of ways.
• Important definitions:
◦ digraph
◦ arc
◦ walk
◦ length of a walk
◦ connected
◦ connected component
◦ path, cycle
◦ tree, forest, leaf
◦ automorphism
• Notation:
◦ Pn
◦ Cn
Chapter 13
i d
h e
g f
(i, b, c, h, i, d, e, f, g, d, a, g, j, a) is an Euler trail. In the graph
a b c d
e f g h
(a, e, f, b, g, f, c, d, h, c, g, d, f, a) is an Euler tour.
133
134 13. Euler and Hamilton
Here is Euler’s method for finding Euler tours. We will state it for multigraphs, as that
makes the corresponding result about Euler trails a very easy corollary.
THEOREM 13.1.3. A connected graph (or multigraph, with or without loops) has an Euler tour
if and only if every vertex in the graph has even valency.
PROOF. As the statement is if and only if, we must prove both implications.
(⇒) Suppose we have a multigraph (possibly with loops) that has an Euler tour,
(u1 , u2 , . . . , ue+1 = u1 ),
where e = |E|. Let u be an arbitrary vertex of the multigraph. Every time u appears in the
tour, exactly two of the edges incident with u are used: if u = uj , then the edges used are
uj−1 uj and uj uj−1 unless j = 1 or j = e + 1 in which case u = u1 = ue+1 and the edges are
ue u and uu2 (and we consider this as one appearance of u in the tour). Therefore, if u appears
k times in the tour, then since by the definition of an Euler tour all edges incident with u are
used exactly once, we conclude that u must have valency 2k. Since u was an arbitrary vertex
of the multigraph and k (the number of times u appears in the tour) must be an integer, this
shows that the valency of every vertex must be even.
(⇐) Suppose we have a connected multigraph in which the valency of every vertex is even.
Consider the following algorithm (which will be the first stage of our final algorithm):
Make u (some arbitrary vertex) our active vertex, with a list L of all of the edges of E.
Make u the first vertex in a new sequence C of vertices. Repeat the following step as many
times as possible:
Call the active vertex v. Choose any edge vx in L that is incident with v. Add x (the other
endvertex of this edge) to the end of C, and make x the new active vertex. Remove vx from L.
We claim that when this algorithm terminates, the sequence C will be a tour (though not
necessarily an Euler tour) in the multigraph. By construction, C is a walk, and C cannot use
any edge more than once since each edge appears in L only once and is removed from L once
it has been used, so C is a trail. We need to show that the walk C is closed.
The only way the algorithm can terminate is if L contains no edge that is incident with the
active vertex. Towards a contradiction, suppose that this happens at a time when the active
vertex is y ̸= u. Now, y has valency 2r in the multigraph for some integer r, so there were
2r edges in L that were incident with y when we started the algorithm. Since y ̸= u, every
time y appears in C before this appearance, we removed 2 edges incident with y from L (one
in the step when we made y the active vertex, and one in the following step). Furthermore,
we removed one additional edge incident with y from L in the final step, when we made y the
active vertex again. Thus if there are t previous appearances of y in C, we have removed 2t + 1
edges incident with y from L. Since 2r is even and 2t + 1 is odd, there must still be at least one
edge incident with y that is in L, contradicting the fact that the algorithm terminated. This
contradiction shows that, when the algorithm terminates, the active vertex must be u, so the
sequence C is a closed walk. Since C is a trail, we see that C must be a tour.
If the tour C is not an Euler tour, let y be the first vertex that appears in C for which
there remains an incident edge in L. Repeat the previous algorithm starting with y being the
active vertex, and with L starting at its current state (not all of E). The result will be a tour
beginning and ending at y that uses only edges that were not in C. Insert this tour into C as
follows: if C = (u = u1 . . . , y = ui , . . . , uk = u) and the new tour is (y = v1 , . . . , vj = y), then
the result of inserting the new tour into C will be
(u = u1 , . . . , y = ui = v1 , v2 , . . . , vj = y = ui , ui+1 , . . . , uk = u).
Replace C by this extended tour.
13. Euler and Hamilton 135
Repeat the process described in the previous paragraph as many times as possible (this
is the second and last stage of our final algorithm). Since E is finite and the multigraph is
connected, sooner or later all of the edges of L must be exhausted. At this point, we must have
an Euler tour.
EXAMPLE 13.1.4. Use the algorithm described in the proof of the previous result, to find an
Euler tour in the following graph.
a b c d
e f g h
SOLUTION. Let’s begin the algorithm at a. As E = L is a large set, we won’t list the remaining
elements every time we choose a new active vertex in the early stages. An easy method for you
to keep track of the edges still in L is to colour the edges that are no longer in L (the edges we
use) with a different colour as we go.
There are many different possible outcomes for the algorithm since there are often many
acceptable choices for the next active vertex. One initial set of choices could be
C = (a, b, f, e, a, f, g, a).
The first stage of the algorithm terminates at this point since all four edges incident with a
have been used. At this point, we have
L = {bg, bh, cd, cf, cg, ch, df, dg, dh, gh}.
The first vertex in C that is incident with an edge in L is b. We run the first stage of the
algorithm again with b as the initial active vertex and this list for L. Again, there are many
possible outcomes; one is (b, g, h, b).
We insert (b, g, h, b) into C, obtaining a new C = (a, b, g, h, b, f, e, a, f, g, a). At this point,
we have
C = (a, b, g, c, f, d, g, h, b, f, e, a, f, g, a).
At this point, we have L = {cd, ch, dh}. The first vertex in C that is incident with an edge
in L is c. We run the first stage of the algorithm one final time with c as the initial active vertex
and L = {cd, ch, dh}. This time there are only two possible outcomes: (c, d, h, c) or (c, h, d, c).
We choose (c, d, h, c).
Inserting this into C yields our Euler tour:
C = (a, b, g, c, d, h, c, f, d, g, h, b, f, e, a, f, g, a).
COROLLARY 13.1.5. A connected graph (or multigraph, with or without loops) has an Euler
trail if and only if at most two vertices have odd valency.
136 13. Euler and Hamilton
PROOF. Suppose we have a connected graph (or multigraph, with or without loops), G. Since
the statement is if and only if, there are two implications to prove.
(⇒) Suppose that G has an Euler trail. If the trail is closed then it is a tour, and by
Theorem 13.1.3, there are no vertices of odd valency. If the trail is not closed, say it is a u − v
walk. Add an edge between u and v to G, creating a new graph G∗ (note that G∗ may be a
multigraph if uv was already an edge of G, even if G wasn’t a multigraph), and add u to the
end of the Euler trail in G, to create an Euler tour in G∗ . By Theorem 13.1.3, the fact that G∗
has an Euler tour means that every vertex of G∗ has even valency. Now, the vertices of G all
have the same valency in G∗ as they have in G, with the exception that the valencies of u and
v are one higher in G∗ than in G. Therefore, in this case there are exactly two vertices of odd
valency in G; namely, u and v.
(⇐) Now we suppose that G has at most 2 vertices of odd valency. By Corollary 11.3.12
(the corollary to Euler’s handshaking lemma), if there are at most two vertices of odd valency,
then there are either 0 or 2 vertices of odd valency. We consider these two cases.
If there are 0 vertices of odd valency, then by Theorem 13.1.3, G has an Euler tour.
If there are two vertices of odd valency, say u and v, add an edge between u and v to G,
creating a new graph G∗ (note that G∗ may be a multigraph if uv was already an edge of G,
even if G wasn’t a multigraph). Now in G∗ every vertex has even valency, so G∗ has an Euler
tour. In fact, a careful look at the algorithm given in the proof of Theorem 13.1.3 shows that
we may choose u and v (in that order) to be the first two vertices in this Euler tour, so that uv
(the edge that is in G∗ but not G) is the first edge used in the tour. Now if we delete u from
the start of this Euler tour, the result is an Euler trail in G that starts at v and ends at u.
EXERCISES 13.1.6.
1) For each of the following graphs, is there an Euler tour? Is there an Euler trail? If
either exists, find one; if not, explain why not.
a b a b c d a b c
j c
(b) (c)
(a) i d
e f g h d e f
h e
g f
2) For each of the following four graphs, determine whether it has an Euler trail, and
whether it has an Euler tour. (Explain how you know.)
0 0 0 0
9 1 9 1 9 1 9 1
8 2 8 2 8 2 8 2
(a) (b) (c) (d)
7 3 7 3 7 3 7 3
6 4 6 4 6 4 6 4
5 5 5 5
3) If it is possible, draw a graph that has an even number of vertices and an odd number
of edges, that also has an Euler tour. If that isn’t possible, explain why there is no
such graph.
4) Which complete graphs have an Euler tour? Of the complete graphs that do not have
an Euler tour, which of them have an Euler trail?
13. Euler and Hamilton 137
EXERCISE 13.1.7. Sylvia’s cat is missing. She wants to look for it in all the nearby streets,
but she is tired and doesn’t want to walk any farther than she must. Find an efficient route
for Sylvia to take through her neighbourhood so that she starts and ends at home and walks
through each street exactly once. The location of Sylvia’s house is marked with a house-shaped
symbol ( ).
A street
2nd Cres.
.
ve
B street
.
zA
ve
yA
1st Cres. 3rd Cres.
C street
DEFINITION 13.2.1. A Hamilton cycle is a cycle that visits every vertex of the graph.
A Hamilton path is a path that visits every vertex of the graph.
The definitions of path and cycle ensure that vertices are not repeated. Hamilton paths
and cycles are important tools for planning routes for tasks like package delivery, where the
important point is not the routes taken, but the places that have been visited.
In 1857, Sir William Rowan Hamilton (1805—1865) first presented a game he called the
“icosian game.” It involved tracing edges of a dodecahedron in such a way as to visit each corner
precisely once. In fact, two years earlier Reverend Thomas Penyngton Kirkman (1806—1895)
had sent a paper to the Royal Society in London, in which he posed the problem of finding what
he called closed polygons in polyhedra; a closed polygon he defined as a circuit of edges that
passes through each vertex just once. Thus, Kirkman had posed a more general problem prior
to Hamilton (and made some progress toward solving it); nonetheless, it is Hamilton for whom
these structures are now named. As we’ll see later when studying Steiner Triple Systems in
design theory, Kirkman was a gifted mathematician who seems to have been singularly unlucky
in terms of receiving proper credit for his achievements. As his title indicates, Kirkman was a
minister who pursued mathematics on the side, as a personal passion.
Hamilton managed to convince the company of John Jacques and sons, who were manu-
facturers of toys (including high-quality chess sets) to produce and market the “icosian game.”
It was produced under the name Around the World, and sold in two forms: a flat board, or
an actual dodecahedron. In both cases, nails were placed at the corners of the dodecahedron
representing cities, and the game was played by wrapping a string around the nails, traveled
only along edges, visiting each nail once, and ending at the starting point. Unfortunately, the
game was not a financial success. It is not very difficult and becomes uninteresting once solved.
John Jacques and sons paid Hamilton 25 pounds for the rights to it.
The thick edges form a Hamilton cycle in the graph of the dodecahedron:
138 13. Euler and Hamilton
Not every connected graph has a Hamilton cycle; in fact, not every connected graph has a
Hamilton path.
Unfortunately, in contrast to Euler’s result about Euler tours and trails (given in Theo-
rem 13.1.3 and Corollary 13.1.5), there is no known characterisation that enables us to quickly
determine whether or not an arbitrary graph has a Hamilton cycle (or path). This is a hard
problem in general. We do know of some necessary conditions (any graph that fails to meet
these conditions cannot have a Hamilton cycle) and some sufficient conditions (any graph that
meets these must have a Hamilton cycle). However, many graphs meet all of the necessary
conditions while failing to meet all of the sufficient conditions. There are also some known
conditions that are either necessary or sufficient for the existence of a Hamilton path.
Here is a necessary condition for a graph to have a Hamilton cycle.
THEOREM 13.2.2. If G is a graph with a Hamilton cycle, then for every S ⊂ V with S ̸= ∅, V ,
the graph G \ S has at most |S| connected components.
PROOF. Let C be a Hamilton cycle in G. Fix an arbitrary proper, nonempty subset S of V .
One at a time, delete the vertices of S from C. After the first vertex is deleted, the result
is still connected, but has become a path. When any of the subsequent |S| − 1 vertices is
deleted, it either breaks some path into two shorter paths (increasing the number of connected
components by one) or removes a vertex at an end of some path (leaving the number of connected
components unchanged, or reducing it by one if this component was a P0 ). So C \ S has at
most 1 + (|S| − 1) = |S| connected components.
Notice that if two vertices u and v are in the same connected component of C \ S, then
they will also be in the same connected component of G \ S. This is because adding edges can
only connect things more fully, reducing the number of connected components. More formally,
if there is a u − v walk in C, then any pair of consecutive vertices in that walk is adjacent in C
so is also adjacent in G. Therefore the same walk is a u − v walk in G. This tells us that the
number of connected components of G \ S is at most the number of connected components of
C \ S, which we have shown to be at most |S|.
13. Euler and Hamilton 139
EXAMPLE 13.2.3. When a non-leaf is deleted from a path of length at least 2, the deletion of
this single vertex leaves two connected components. So no path of length at least 2 contains a
Hamilton cycle.
Here’s a graph in which the non-existence of a Hamilton cycle might be less obvious without
Theorem 13.2.2. Deleting the three white vertices leaves four connected components.
As you might expect, if all of the vertices of a graph have sufficiently high valency, it will
always be possible to find a Hamilton cycle in the graph. (In fact, generally the graph will
have many different Hamilton cycles.) Before we can formalise this idea, it is helpful to have
an additional piece of notation.
DEFINITION 13.2.4. The minimum valency of a graph G is
min d(v).
v∈V
The maximum valency of a graph G is
max d(v).
v∈V
NOTATION 13.2.5. We use δ to denote the minimum valency of a graph, and ∆ to denote its
maximum valency. If we need to clarify the graph involved, we use δ(G) or ∆(G).
The following theorem was proven by Gabriel Andrew Dirac (1925—1984) back in 1952,
yet it remains one of the most powerful known methods for determining that a graph has a
Hamilton cycle.
THEOREM 13.2.6 (Dirac, 1952). If G is a graph with vertex set V such that |V | ≥ 3 and
δ(G) ≥ |V |/2, then G has a Hamilton cycle.
PROOF. Towards a contradiction, suppose that G is a graph with vertex set V , that |V | = n ≥
3, and that δ(G) ≥ n/2, but G has no Hamilton cycle.
Repeat the following as many times as possible: if there is an edge that can be added to G
without creating a Hamilton cycle in the resulting graph, add that edge to G. When this has
been done as many times as possible, call the resulting graph H. The graph H has the same
vertex set V , and since we have added edges we have not decreased the valency of any vertex,
so we have δ(H) ≥ n/2. Now, H still has no Hamilton cycle, but adding any edge to H gives
a graph that does have a Hamilton cycle.
Since complete graphs on at least three vertices always have Hamilton cycles (see Exer-
cise 13.2.12.1), we must have H ̸∼= Kn , so there are at least two vertices of H, say u and v,
that are not adjacent. By our construction of H from G, adding the edge uv to H would result
in a Hamilton cycle, and this Hamilton cycle must use the edge uv (otherwise it would be a
140 13. Euler and Hamilton
Hamilton cycle in H, but H has no Hamilton cycle). Thus, the portion of the Hamilton cycle
that is in H forms a Hamilton path from u to v. Write this Hamilton path as
(u = u1 , u2 , . . . , un = v).
Define the sets
In fact, the statement of Dirac’s theorem was improved by John Adrian Bondy (1944—)
and Václav Chvátal (1946—) in 1976. They began by observing that the proof given above for
Dirac’s Theorem actually proves the following result.
LEMMA 13.2.7. Suppose that G is a graph on n vertices, u and v are nonadjacent vertices of
G, and d(u) + d(v) ≥ n. Then G has a Hamilton cycle if and only if the graph obtained by
adding the edge uv to G has a Hamilton cycle.
With this in mind, they made the following definition.
DEFINITION 13.2.8. Let G be a graph on n vertices. The closure of G is the graph obtained
by repeatedly joining pairs of nonadjacent vertices u and v for which d(u) + d(v) ≥ n, until no
such pair exists.
Before they were able to work with this definition, they had to prove that the closure of a
graph is well-defined. In other words, since there will often be choices involved in forming the
closure of a graph (if more than one pair of vertices satisfy the condition, which edge do we add
first?), is it possible that by making different choices, we might end up with a different graph at
the end? The answer, fortunately, is no; any graph has a unique closure, as we will now prove.
13. Euler and Hamilton 141
LEMMA 13.2.9. Closure is well-defined. That is, any graph has a unique closure.
PROOF. Let (e1 , . . . , eℓ ) be one sequence of edges we can choose to arrive at the closure of
G, and let the resulting closure be the graph G1 . Let (f1 , . . . , fm ) be another such sequence,
and let the resulting closure be the graph G2 . We will prove by induction on ℓ that for every
1 ≤ i ≤ ℓ, ei ∈ {f1 , . . . , fm }. We will use {ui , vi } to denote the endvertices of ei .
Base case: ℓ = 1, so only the edge {u1 , v1 } is added to G in order to form G1 . Since this
was the first edge added, we must have
dG (u1 ) + dG (v1 ) ≥ n.
Since G2 has all of the edges of G, we must certainly have
e1 , . . . , ek ∈ {f1 , . . . , fm }.
Consider ek+1 = {uk+1 , vk+1 }. Let G′ be the graph obtained by adding the edges e1 , . . . , ek to
G. Since ek+1 was chosen to add to G′ to form G1 , it must be the case that
This allowed Bondy and Chvátal to deduce the following result, which is stronger than
Dirac’s although as we’ve seen the proof is not significantly different.
THEOREM 13.2.10. A simple graph has a Hamilton cycle if and only if its closure has a
Hamilton cycle.
PROOF. Repeatedly apply Lemma 13.2.7.
EXERCISES 13.2.12.
1) Prove by induction that for every n ≥ 3, Kn has a Hamilton cycle.
2) Find the closure of each of these graphs. Can you easily tell from the closure whether
or not the graph has a Hamilton cycle?
a b a b
(a) f c (b) f c
e d e d
3) Use Theorem 13.2.2 to prove that this graph does not have a Hamilton cycle.
a b
h c
g d
f e
4) Prove that if G has a Hamilton path, then for every nonempty proper subset S of V ,
G − S has no more than |S| + 1 connected components.
5) For the two graphs in Exercise 2, either find a Hamilton cycle or use Theorem 13.2.2
to show that no Hamilton cycle exists.
SUMMARY:
• algorithms for finding Euler tours and trails
• Important definitions:
◦ closed walk, trail, tour
◦ Euler tour, Euler trail
◦ Hamilton cycle, Hamilton path
◦ minimum valency, maximum valency
◦ closure of a graph
• Notation:
◦ δ, ∆
Chapter 14
Graph Colouring
6 3
5 4
This gives a schedule. In case you have trouble distinguishing the “colours” of the edges,
the normal edges are 12, 37, and 46; the thin edges are 13, 24, and 57; the dotted edges are 15,
26, and 34; the dashed edges are 17, 36, and 45; the thick edges are 23, 47, and 56; the grey
edges are 14, 25, and 67; and the thin dashed edges are 16, 27, and 35.
143
144 14. Graph Colouring
EXAMPLE 14.1.6. The colouring given in Example 14.1.1 shows that χ′ (K7 ) ≤ 7, since we
were able to properly edge-colour K7 using seven colours.
To show that we cannot colour K7 with fewer than 7 colours, notice that because each of
the 7 vertices can only be incident with one edge of a given colour, there cannot be more than
3 edges coloured with any given colour (3 edges are already incident with 6 of the 7 vertices,
and a fourth edge would have(7) to be incident with two others).
We know that K7 has 2 = 21 edges, so if at most 3 edges can be coloured with any given
colour, we will require at least 7 colours to properly edge-colour K7 . Thus χ′ (K7 ) ≥ 7.
Thus, we have shown that χ′ (K7 ) = 7.
This shows that χ′ (K7 ) = 7 > ∆(K7 ) = 6, so it is not always possible to achieve equality in
the bound given by Proposition 14.1.5. Our next example shows that it is sometimes possible
to achieve equality in that bound.
EXAMPLE 14.1.7. Here is a proper 5-edge-colouring of K6 :
1 2
6 3
5 4
In case the edge colours are difficult to distinguish, the thick edges are 12, 36, and 45; the
thin edges are 13, 24, and 56; the dotted edges are 14, 26, and 35; the dashed edges are 15, 23,
and 46; and the grey edges are 16, 25, and 34. This shows that χ′ (K6 ) ≤ 5. Since the valency
14. Graph Colouring 145
of every vertex of K6 is 5, Proposition 14.1.5 implies that χ′ (K6 ) ≥ 5. Putting these together,
we see that χ′ (K6 ) = ∆(K6 ) = 5, so equality in the bound of Proposition 14.1.5 is achieved by
K6 .
The following rather remarkable result was proven by Vadim Georgievich Vizing (1937—
2017) in 1964:
THEOREM 14.1.8 (Vizing’s Theorem). For any simple graph G, χ′ (G) ∈ {∆(G), ∆(G) + 1}.
We will not go over the proof of this theorem.
DEFINITION 14.1.9. If χ′ (G) = ∆(G) then G is said to be a class-one graph, and if χ′ (G) =
∆(G) + 1 then G is said to be a class-two graph.
To date, graphs have not been completely classified according to which graphs are class
one and which are class two, but it has been proven that “almost every” graph is of class one.
Technically, this means that if you choose a random graph out of all of the graphs on at most
n vertices, the probability that you will choose a class-two graph approaches 0 as n approaches
infinity.
There are, however, infinitely many class-two graphs; the same argument we used to show
that χ′ (K7 ) ≥ 7 can also be used to prove that χ′ (K2n+1 ) = 2n + 1 for any positive integer n,
since the number of edges is
EXAMPLE 14.1.11. The following graphs are bipartite. Every edge has one endvertex on the
left side, and one on the right.
The graph Kn is not bipartite if n ≥ 3. The first vertex may as well go into V1 ; the second
vertex is adjacent to it, so must go into V2 ; but the third vertex is adjacent to both, so cannot
go into either V1 or V2 .
Although the following class of bipartite graphs will not be used in this chapter, they are
an important class of bipartite graphs that will come up again later.
146 14. Graph Colouring
DEFINITION 14.1.12. The complete bipartite graph, Km,n , is the bipartite graph on m + n
vertices with as many edges as possible subject to the constraint that it has a bipartition into
sets of cardinality m and n. That is, it has every edge between the two sets of the bipartition.
Before proving that all bipartite graphs are class one, we need to understand the structure
of bipartite graphs a bit better. Here is an important theorem.
THEOREM 14.1.13. A graph G is bipartite if and only if G contains no cycle of odd length.
PROOF. This is an if and only if statement, so we have two implications to prove.
(⇒) We prove the contrapositive, that if G contains a cycle of odd length, then G cannot
be bipartite.
Let
(v1 , v2 , . . . , v2k+1 , v1 )
be a cycle of odd length in G. We try to establish a bipartition V1 and V2 for G. Without
loss of generality, we may assume that v1 ∈ V1 . Then we must have v2 ∈ V2 since v2 ∼ v1 .
Continuing in this fashion around the cycle, we see that for every 1 ≤ i ≤ k, we have v2i+1 ∈ V1
and v2i ∈ V2 . In particular, v2k+1 ∈ V1 , but v1 ∈ V1 and v1 ∼ v2k+1 , contradicting the fact that
every edge must have one of its endvertices in V2 . Thus, G is not bipartite.
(⇐) Let G be a graph that is not bipartite. We must show that there is an odd cycle in G.
If every connected component of G is bipartite, then G is bipartite (choose one set of the
bipartition from each connected component; let V1 be the union of these, and V2 the set of all
other vertices of G; this is a bipartition for G). Thus there is at least one connected component
of G that is not bipartite.
Pick any vertex u from a non-bipartite connected component of G, and assign it to V1 .
Place all of its neighbours in V2 . Place all of their neighbours into V1 . Repeat this process,
at each step putting all of the neighbours of every vertex of V1 into V2 , and then all of the
neighbours of every vertex of V2 into V1 .
Since this component is not bipartite, at some point we must run into the situation that
we place a vertex v into Vj , but a neighbour u1 of v is also in Vj (for some j ∈ {1, 2}). By our
construction of V1 and V2 , there must be a walk from u1 to v that alternates between vertices
in Vj and vertices in V3−j . By Proposition 12.3.4, there must in fact be a path from u1 to v
that alternates between vertices in Vj and vertices in V3−j . Since the path alternates between
the two sets but begins and ends in Vj , it has even length. Therefore, adding u1 to the end of
this path yields a cycle of odd length in G.
In order to prove that bipartite graphs are class one, we require a lemma.
LEMMA 14.1.14. Let G be a connected graph that is not a cycle of odd length. Then G the
edges of G can be 2-coloured so that edges of both colours are incident with every non-leaf vertex.
(Note: this will probably not be a proper 2-edge-colouring of G.)
PROOF. We first consider the case where every vertex of G has even valency.
Choose a vertex v of G subject to the constraint that if any vertex of G has valency greater
than 2, then v is such a vertex. Since every vertex of G has even valency, we can find an Euler
tour of G that begins and ends at v. Alternate edge colours around this tour. Clearly, every
vertex that is visited in the middle of the tour (that is, every vertex except possibly v) must
be incident with edges of both colours, since whichever colour is given to the edge we travel to
reach that vertex, the other colour will be given to the edge we travel when leaving that vertex.
If any vertex of G has valency greater than 2, then by our choice of v, the valency of v must
be greater than 2, so v is visited in the middle of the tour, and this colouring has the desired
property. If every vertex of G has valency 2, then since G is connected, G must be a cycle (see
14. Graph Colouring 147
Exercise 12.3.10.4. Since G is not a cycle of odd length (by hypothesis), G must be a cycle of
even length. Therefore the number of edges of G is even, so the tour will begin and end with
edges of opposite colours, both of which are incident with v. Again we see that this colouring
has the desired property.
Suppose now that G has at least one vertex of odd valency.
Create a new vertex, u, and add edges between u and every vertex of G that has odd valency.
All of the vertices of G will have even valency in this new graph, and by Corollary 11.3.12 (the
corollary to Euler’s handshaking lemma), u must also have even valency, so this graph has an
Euler tour; in fact, we can find an Euler tour that begins with the vertex u. Alternate edge
colours around this tour. Delete u (and its incident edges) but retain the colours on the edge of
G. We claim that this colouring will have the desired property. If a vertex v has even valency
in G, it must be visited in the middle of the tour and the edges we travel on to reach v and
to leave v will have different colours. Neither of these edges is incident with u, so both are in
G. If a vertex v has valency 1 in G, then v is a leaf and the colour of its incident edge doesn’t
matter. If a vertex v has odd valency at least 3 in G, then v is visited at least twice in the
middle of the tour. Only one of these visits can involve the edge uv, so during any other visit,
the edges we travel on to reach v and to leave v will have different colours. Neither of these
edges is incident with u, so both are in G. Thus, this colouring has the desired property.
NOTATION 14.1.15. Given a (not necessarily proper) edge-colouring C, we use c(v) to denote
the number of distinct colours that have be used on edges that are incident with v. Clearly,
c(v) ≤ d(v).
then we must have c(v) = d(v) for every v ∈ V . This is precisely equivalent to the definition of
a proper colouring.
At last, we are ready to prove that bipartite graphs are class one.
THEOREM 14.1.17. If G is bipartite, then χ′ (G) = ∆(G).
PROOF. Let G be a bipartite graph. Towards a contradiction, suppose that χ′ (G) > ∆(G).
Let C be an optimal ∆(G)-edge-colouring of G. By assumption, C will not be a proper edge
colouring, so there must be some vertex u such that c(u) < d(u). By the Pigeonhole Principle,
some colour j must be used to colour at least two of the edges incident with u, and since there
are ∆(G) ≥ d(u) colours in total and only c(u) are used on edges incident with u, there must
be some colour i that is not used to colour any edge incident with u.
Consider only the edges of G that have been coloured with either i or j in the colouring
C. Since G is bipartite, these edges cannot include an odd cycle. We apply Lemma 14.1.14 to
each connected component formed by these edges to re-colour these edges . Our re-colouring
will use only colours i and j, and if a vertex v was incident to at least two edges coloured with
either i or j in C, then under the re-colouring, v will be incident with at least one edge coloured
with i and at least one edge coloured with j. Leave all of the other edge colours alone, and call
this new colouring C ′ .
148 14. Graph Colouring
We claim that C ′ is an improvement on C. Any vertex v that had at most one incident
edge coloured with either i or j under C, will still have exactly the same colours except that
the edge coloured i or j might have switched its colour to the other of i and j. In any case, we
will have c′ (v) = c(v). Any vertex v that had at least two incident edges coloured with either i
or j under C, will still have all of the same colours except that it will now have incident edges
coloured with both i and j, so c′ (v) ≥ c(v). Furthermore, we have c′ (u) > c(u) since the edges
incident with u now include edges coloured with both i and j, where before there were only
edges coloured with j. Thus,
∑ ∑
c′ (v) ≥ c(v),
v∈V v∈V
so C′
is an improvement on C, as claimed.
We have contradicted our assumption that C is an optimal ∆(G)-edge-colouring. This
contradiction serves to prove that χ′ (G) = ∆(G).
EXERCISES 14.1.18.
1) Prove that every tree is a class-one graph.
2) Prove that every cycle of odd length is a class-two graph.
3) Find a graph that contains a cycle of odd length, but is a class-one graph.
4) For each of the following graphs, find the edge-chromatic number, determine whether
the graph is class one or class two, and find a proper edge-colouring that uses the
smallest possible number of colours.
(a) The two graphs in Exercise 13.2.12.2.
(b) The two graphs in Example 14.1.11.
(c) The skeleton of a dodecahedron (the upper of the two graphs drawn below).
(d) The Petersen graph (the lower of the two graphs drawn below). You may assume,
without proof, that the Petersen graph is class two.
5) Find a systematic approach to colouring the edges of complete graphs that demon-
strates that χ′ (K2n−1 ) = χ′ (K2n ) = 2n − 1.
14. Graph Colouring 149
6) Find a systematic approach to colouring the edges of complete bipartite graphs that
demonstrates that χ′ (Km,n ) = ∆(Km,n ) = max{m, n}.
EXERCISES 14.1.19. The following exercises illustrate some of the connections between Hamil-
ton cycles and edge-colouring.
1) Definition. A graph is said to be Hamilton-connected if there is a Hamilton path
from each vertex in the graph to each of the other vertices in the graph.
Prove that if G is bipartite and has at least 3 vertices, then G is not Hamilton-
connected.
[Hint: Prove this by contradiction. Consider the length of a Hamilton path and where it can
end.]
2) Suppose that G is a bipartite graph with V1 and V2 forming a bipartition. Show that
if |V1 | ̸= |V2 | then G has no Hamilton cycle.
3) Prove that if every vertex of G has valency 3, and G has a Hamilton cycle, then G is
class one.
[Hint: Use Corollary 11.3.12 (the corollary to Euler’s handshaking lemma), and find a way to
assign colours to the edges of the Hamilton cycle.]
EXAMPLE 14.2.3.
1) We have R(k, 1) = 1 for all k. This is because K1 has no edges, so, for any colouring
of any Kn , it is true (vacuously) that all of the edges of K1 are blue.
2) We have R(k, 2) = k for all k. If some edge is blue, then there is a blue K2 , while if
there are no blue edges, then the entire graph is a red Kk .
3) We have R(3, 3) = 6. To see this, note that Example 14.2.1 shows R(3, 3) ≤ 6, while
there is no monochromatic triangle in the edge-colouring of K5 pictured below (because
the only monochromatic cycles are of length 5), so R(3, 3) > 5.
4) We have R(k, ℓ) = R(ℓ, k) for all k and ℓ. If every colouring of Kn has either a red Kk
or a blue Kℓ , then we see that every colouring of Kn must have either a red Kℓ or a
blue Kk , just by switching red and blue in the colouring.
5) If k ≤ k ′ and ℓ ≤ ℓ′ , then R(k, ℓ) ≤ R(k ′ , ℓ′ ). We have a colouring of Kn that contains
either a red Kk′ or a blue Kℓ′ . Since k ≤ k ′ and ℓ ≤ ℓ′ , we know that any Kk′ contains
a copy of Kk , and any Kℓ′ contains a copy of Kℓ .
It is not at all obvious that R(k, ℓ) exists: theoretically, R(4, 4) might not exist, because
it might be possible to colour the edges of a very large Kn in such a way that there is no
monochromatic K4 . Fortunately, the following extension of the proof of Example 14.2.1 implies
that R(k, ℓ) does exist for all k and ℓ. In fact, it provides a bound on how large R(k, ℓ) can be
(see Exercise 14.2.5.3 below).
PROPOSITION 14.2.4. R(k, ℓ) ≤ R(k − 1, ℓ) + R(k, ℓ − 1) for all k, ℓ ≥ 2.
PROOF. Let n = R(k − 1, ℓ) + R(k, ℓ − 1), and suppose each edge of Kn is coloured either red
or blue. We wish to show there is either a red Kk or a blue Kℓ .
Choose some vertex v of Kn . Then the number of edges incident with v is
( ) ( )
n − 1 = R(k − 1, ℓ) + R(k, ℓ − 1) − 1 > R(k − 1, ℓ) − 1 + R(k, ℓ − 1) − 1 ,
so the very generalized Pigeonhole Principle implies that either R(k − 1, ℓ) of these edges are
red, or R(k, ℓ − 1) of these edges are blue.
For definiteness, let us assume that the edges vu1 , vu2 , . . . , vur are all blue, where r =
R(k, ℓ − 1). Now, u1 , u2 , . . . , ur are the vertices of a copy of Kr that is inside Kn . Since
r = R(k, ℓ − 1), we know that this Kr contains either a red Kk or a blue Kℓ−1 .
If it contains a red Kk , then we have the desired red Kk . So we may assume u1 , . . . , uℓ−1
are the vertices of a blue Kℓ−1 . Since the edges vu1 , vu2 , . . . , vuℓ−1 are also blue, we see that
v, u1 , u2 , . . . , uℓ−1 are the vertices of the desired blue Kℓ .
EXERCISES 14.2.5.
1) Show R(3, 4) > 6.
2) Using Proposition 14.2.4 and the values of R(k, ℓ) given in Example 14.2.3, find the
best upper bound you can on R(k, ℓ) for 3 ≤ k ≤ ℓ ≤ 6.
3) Show R(k, ℓ) ≤ 2k+ℓ for all k and ℓ.
[Hint: Use Proposition 14.2.4 and induction on k + ℓ.]
14. Graph Colouring 151
4) It is known that 40 ≤ R(3, 10) ≤ 42. Using this information, what can you say about
R(3, 11)?
5) Show there are at least two monochromatic triangles in every colouring of the edges of
K6 with two colours.
[Hint: Show that there must either be two red (say) triangles, or a red triangle and a blue edge
whose endvertices are not in the triangle. Then show that any colouring of the edges joining
the red triangle with the blue edge creates either a blue triangle or a second red triangle.]
Remark 14.2.6. The exact value of R(k, ℓ) seems to be extremely difficult to find, except for
very small values of k and ℓ. For example, although it has been proved that R(4, 4) = 18 and
R(4, 5) = 25, no one has been able to determine the precise value of R(k, ℓ) for any situation in
which k and ℓ are both at least 5. The legendary combinatorist Pál Erdős (1913—1996) said
that it would be hopeless to try to calculate the exact value of R(6, 6), even with all of the
computer resources and brightest minds in the whole world working on the problem for a year.
(We do know that R(6, 6) is somewhere between 102 and 165.) For more information about the
values that have been calculated, see the Wikipedia article on Ramsey’s theorem.
EXERCISES 14.2.7. The edges of Kn can also be coloured with more than two colours.
1) Show that every colouring of the edges of K17 with 3 colours has a monochromatic
triangle.
2) Suppose there is a monochromatic triangle in every colouring of the edges of Kn with
c colours. Show that if N − 1 > (c + 1)(n − 1), then every colouring of the edges of KN
with c + 1 colours has a monochromatic triangle.
Similar arguments (combined with induction on the number of colours) establish the fol-
lowing very general result.
THEOREM 14.2.8 (Ramsey’s Theorem). Given c colours and fixed sizes n1 , . . . , nc ≥ 1, there
is an integer
r = R(n1 , . . . , nc )
such that for any c-colouring of the edges of Kr , there must be some i ∈ {1, . . . , c} such that
Kr has a subgraph isomorphic to Kni all of whose edges have been coloured with colour i.
r1 + r2 = |V1 | + |V2 | + 1
vertices, we must have either |V1 | ≥ r2 , or |V2 | ≥ r1 .
Suppose first that |V1 | ≥ r2 . Since r2 = R(n1 − 1, n2 ), the subgraph whose vertices are the
elements of V1 has a subgraph that is either a red Kn1 −1 or a blue Kn2 . In the latter case,
this subgraph is also in our original Kr1 +r2 and we are done. In the former case, the subgraph
whose vertices are the elements of V1 ∪ {v} has a red Kn1 and we are done.
Suppose now that |V2 | ≥ r1 (the proof is similar). Since r1 = R(n1 , n2 − 1), the subgraph
whose vertices are the elements of V2 has a subgraph that is either a red Kn1 or a blue Kn2 −1 .
In the former case, this subgraph is also in our original Kr1 +r2 and we are done. In the latter
case, the subgraph whose vertices are the elements of V2 ∪ {v} has a blue Kn2 and we are done.
By the Principle of Mathematical Induction, for every n1 , n2 ≥ 1, there is some integer
r = R(n1 , n2 ) such that for any colouring of the edges of Kr , there is a subgraph that is either
a red Kn1 or a blue Kn2 .
This second proof by induction completes the proof of the second base case for our original
induction on c, the number of colours. We are now ready for the inductive step for our original
proof by induction.
Inductive step: We begin with the inductive hypothesis. Let m ≥ 2 be arbitrary. Assume
that for every k1 , . . . , km ≥ 1, there is an integer r = R(k1 , . . . , km ) such that for any m-
colouring of the edges of Kr , there must be some i ∈ {1, . . . , m} such that Kr has a subgraph
isomorphic to Kki , all of whose edges have been coloured with colour i.
Let n1 , . . . , nm+1 be arbitrary. Take a complete graph on
EXERCISES 14.2.9.
1) Find R(2, 2, 3).
2) Find R(2, 4).
3) Find a 2-edge-colouring of K6 that does not have a K4 of either colour.
EXERCISE 14.2.10. Let c ∈ N+ , and let N = R(3, . . . , 3) where there are c entries (all equal
to 3). If {A1 , A2 , . . . , Ac } is any partition of {1, 2, . . . , N } into c subsets, show that some Ai
contains three integers x, y, and z, such that x + y = z. This result is known as Schur’s
Theorem, named for Issai Schur (1875—1941).
[Hint: The vertices of KN are 1, 2, . . . , N . Put colour i on each edge uv with |u − v| ∈ Ai . If u, v, w are
the vertices of a monochromatic triangle of colour i, with u > v > w, then {u − v, v − w, u − w} ⊆ Ai ,
and we have (u − v) + (v − w) = u − w.]
To provide a somewhat broader perspective on Ramsey theory, we conclude this section
with a couple of results on other problems that are related to this branch of combinatorics. We
begin with a theorem from the 1930s.
THEOREM 14.2.11 (Happy Ending Theorem). Any set of 5 points in the plane such that no
three are collinear, form the corners of a convex quadrilateral.
Eszter Klein (1910—2005) asked the more general question: how many points in the plane
are required (assuming that no three are collinear) to ensure that some subset of n of them form
the corners of a convex n-gon? She solved this question for the case n = 4 in the above theorem,
but in the more general context only upper (and lower) bounds are known; Erdős and György
Szekeres (1911—2005) were the first to publish such bounds. Erdős dubbed this the “Happy
Ending” problem (and the special case is sometimes known as the Happy Ending Theorem)
because this collaboration developed Klein’s relationship with Szekeres, who she later married.
The Erdős-Szekeres bounds for Klein’s general question used Ramsey’s Theorem, together with
the Happy Ending Theorem.
We show in the following example that four points would not be sufficient.
EXAMPLE 14.2.12. Recall that in order for a polygon to be convex, the straight line segment
connecting any points that lie within or on the boundary of the polygon cannot pass outside
the polygon. A convex quadrilateral therefore cannot include a corner that lies in the interior
of the triangle formed by the other three corners, as in this configuration:
The remainder of the proof of the Happy Ending Theorem consists of showing that 5 points
suffices. There are only three possible configurations for 5 points in the plane: they may form
a convex 5-gon; four of them may form a convex quadrilateral with the remaining point in the
interior; or three of them may form a triangle with the remaining two points in the interior.
These configurations and the convex quadrilaterals that can be found in each case are drawn
below. Our final drawing is in fact the only way the last configuration can arise. This means
that there is always a convex quadrilateral, but determining exactly how the points can lie in
154 14. Graph Colouring
this final configuration requires some additional consideration of the geometry involved. We
will not include further details here.
The other result we present here looks more similar to Ramsey’s Theorem. It arises from
the general question posed by Kazimierz Zarankiewicz (1902—1959): Given integers m, n, s,
and t, what is the largest number of edges that a bipartite graph whose bipartition sets contain
m and n vertices, without containing a complete bipartite Ks,t subgraph? The value of the
answer to this question is denoted by z(m, n; s, t).
In about 1951 (published in 1954), Tamás Kővári (1930—2010), Vera Sós (1930—), and Pál
Turán (1910—1976) proved the following upper bound on this value.
THEOREM 14.2.13.
This represents a possible assignment of 4 colours to the vertices. The colour of each vertex
(red, green, blue, or yellow) is indicated by writing the first letter of the colour’s name on the
vertex).
b r b r
g y g y
b r b r
Notice that this colouring obeys the constraint that interfering towers are not assigned the
same frequencies.
14. Graph Colouring 155
EXAMPLE 14.3.6. Prove that for a graph G, χ(G) = 2 if and only if G is a bipartite graph
that has at least one edge.
PROOF. (⇒) Suppose that χ(G) = 2. Take a proper 2-colouring of G with colours 1 and 2.
Let V1 denote the set of vertices of colour 1, and let V2 denote the set of vertices of colour 2.
Since the colouring is proper, there are no edges both of whose endvertices are in V1 (as these
would be adjacent vertices both coloured with colour 1). Similarly, there are no edges both of
whose endvertices are in V2 . Thus, the sets V1 and V2 form a bipartition of G, so G is bipartite.
Since 2 colours were required to properly colour G, G must have at least one edge.
(⇐) Suppose that G is bipartite, and that V1 and V2 form a bipartition of G. Colour the
vertices in V1 with colour 1, and colour the vertices of V2 with colour 2. By the definition of a
bipartition, no pair of adjacent vertices can have been assigned the same colour. Thus, this is
a proper 2-colouring of G, so χ(G) ≤ 2. Since G has at least one edge, the endpoints of that
edge must be assigned different colours, so χ(G) ≥ 2. Thus χ(G) = 2.
DEFINITION 14.3.8. A graph G is k-critical if χ(G) = k, but for every proper subgraph H
of G, χ(H) < χ(G).
PROOF. Towards a contradiction, suppose that G is a disconnected k-critical graph, and let
G1 and G2 be (nonempty) subgraphs of G such that every vertex of G is in either G1 or G2 ,
and there is no edge from any vertex in G1 to any vertex in G2 . By the definition of k-critical,
χ(G1 ) < χ(G) and χ(G2 ) < χ(G). But if we colour G1 with χ(G1 ) colours and G2 with χ(G2 )
156 14. Graph Colouring
colours, since there is no edge from any vertex of G1 to any vertex of G2 , this produces a proper
colouring of G with
colours. This contradiction serves to prove that every k-critical graph is connected.
PROOF. Towards a contradiction, suppose that G is k-critical and has a vertex v of valency at
most k − 2. By the definition of k-critical, G \ {v} must be (k − 1)-colourable. Now, since v has
no more than k − 2 neighbours, its neighbours can be assigned at most k − 2 distinct colours in
this colouring. Therefore, amongst the colours used in the (k − 1)-colouring of G \ {v}, there
must be a colour that is not assigned to any of the neighbours of v. If we assign this colour
to v, the result is a proper (k − 1)-colouring of G, contradicting χ(G) = k. This contradiction
serves to prove that every k-critical graph has minimum valency at least k − 1.
PROOF. Let G be an arbitrary graph. By deleting as many edges and vertices as it is possible
to delete without reducing the chromatic number (we can never increase the chromatic number
by deleting vertices or edges, see Exercise 14.3.14.1), we see that G must have a subgraph H
that is χ(G)-critical. By Theorem 14.3.10, we see that
δ(H) ≥ χ(G) − 1.
Thus, every vertex of H has valency at least χ(G) − 1, so in G, these same vertices still have
valency at least χ(G) − 1. For any such vertex v, we have
so χ(G) ≤ ∆(G) + 1.
We have already seen two families of graphs for which this bound is attained: for complete
graphs, we have
∆(Kn ) + 1 = (n − 1) + 1 = n = χ(Kn )
∆(C2n+1 ) + 1 = 2 + 1 = 3 = χ(C2n+1 )
(see Example 14.3.7). In fact, Rowland Leonard Brooks (1916—1993) proved in 1941 that these
are the only connected graphs for which this bound is obtained.
EXAMPLE 14.3.13. The following very famous graph is called the Petersen graph, named for
Peter Christian Julius Petersen (1839—1910). It is an exceptional graph in many ways, so when
mathematicians are trying to come up with a proof or a counterexample in graph theory, it is
often one of the first examples they will check. Find its chromatic number.
SOLUTION. We have ∆ = 3, and since this graph is neither a complete graph nor a cycle
of odd length, by Brooks’ Theorem this shows that χ ≤ 3. We can find a cycle of length 5
around the outer edge of the graph, so this graph is not bipartite but has an edge. Therefore
(by Example 14.3.6), χ > 2. Hence χ = 3.
EXERCISES 14.3.14.
1) Prove that if H is a subgraph of G then χ(G) ≥ χ(H).
2) Prove Proposition 14.3.5 by induction.
3) Prove Corollary 14.3.11 by induction for every graph on at least one vertex.
4) For each i, j ∈ {4, 5, 6}, suppose you are given a graph G that contains a subgraph
isomorphic to Ki and no vertex has more than j neighbours. What (if anything) can
you say about χ(G)? Can you say more if you know that G is connected and is neither
a complete graph nor a cycle of odd length?
EXERCISES 14.3.15. For each of the following graphs, determine its chromatic number by
using theoretical arguments to provide a lower bound, and then producing a colouring that
meets the bound. Do the same for the edge-chromatic number.
1)
4)
2)
5)
3) 6)
158 14. Graph Colouring
We have seen that the largest complete subgraph of a graph provides a lower bound on
the chromatic number of the graph. In general, this isn’t a very good lower bound, and we’ve
certainly seen examples where it is not achieved.
DEFINITION 14.3.16. A graph G is a perfect graph if for every induced subgraph H of G,
the chromatic number χ(H) is equal to the number of vertices in the largest complete subgraph
of H.
A characterisation of perfect graphs had long been conjectured, but was finally proved in
2006. Although Maria Chudnovsky (1977—), George Neil Robertson (1938—), Paul Seymour
(1950—), and Robin Thomas (1962—2020) were involved in this proof and are credited with
the theorem, it is the main result in the Ph.D. thesis of Chudnovsky.
THEOREM 14.3.17 (Strong Perfect Graph Theorem). A graph is perfect if and only if no
induced subgraph is either a cycle of odd length at least 5, or the complement of a cycle that
has odd length at least 5.
Note that any cycle of odd length has chromatic number 3, but its largest complete subgraph
is K2 , so such a graph can certainly not be perfect, and therefore by definition any graph having
such an induced subgraph cannot be perfect. This is less obvious in the case of the complement
of an odd cycle. We will not try to prove in general that the complement of an odd cycle is not
perfect, but we provide an illustrative example.
EXAMPLE 14.3.18. The following graph is the complement of a cycle of length 7. Its largest
complete subgraph is a K3 . However, if we colour any of its triangles with three colours and
determining all of the colours that would be forced by that beginning in a proper 3-colouring,
it is not hard to see that 4 colours are required in a proper colouring.
Its largest complete subgraph has three vertices (any column of vertices). It can be properly
coloured with 3 colours.
14. Graph Colouring 159
SUMMARY:
• Vizing’s Theorem
• graphs are bipartite if and only if they contain no cycle of odd length
• Ramsey’s Theorem
• graphs are bipartite if and only if they are 2-colourable
• Brooks’ Theorem
• Petersen graph
• Strong Perfect Graph Theorem
• Important definitions:
◦ proper k-edge-colouring, k-edge-colourable
◦ edge chromatic number, chromatic index
◦ class one graph, class two graph
◦ bipartite, bipartition
◦ complete bipartite graph
◦ proper k-colouring, k-colourable
◦ chromatic number
◦ k-critical
◦ perfect graph
• Notation:
◦ χ′ (G)
◦ Km,n
◦ R(n1 , . . . , nc )
◦ χ(G)
Chapter 15
Planar graphs
15.1. Planar graphs
Visually, there is always a risk of confusion when a graph is drawn in such a way that some of its
edges cross over each other. Also, in physical realisations of a network, such a configuration can
lead to extra costs (think about building an overpass as compared to building an intersection).
It is therefore helpful to be able to work out whether or not a particular graph can be drawn
in such a way that no edges cross.
DEFINITION 15.1.1. A graph is planar if it can be drawn in the plane (R2 ) so edges that do
not share an endvertex have no points in common, and edges that do share an endvertex have
no other points in common.
Such a drawing is called a planar embedding of the graph.
e b
d c
Here is a planar embedding:
c
d
b a
PROOF. Label the vertices of K5 as v1 , . . . , v5 . Consider the 3-cycle (v1 , v2 , v3 , v1 ). The vertex
v4 must lie either inside or outside the boundary determined by this 3-cycle. Furthermore, since
there is an edge between v4 and v5 , the vertex v5 must lie on the same side (inside or outside)
as v4 .
Suppose first that v4 and v5 lie inside the boundary. The edges v1 v4 , v2 v4 , and v3 v4 divide
the area inside the boundary into three regions, and v5 must lie inside one of these three regions.
161
162 15. Planar graphs
One of v1 , v2 , and v3 is not a corner of this region, and in fact lies outside of it while v5 lies
inside of it, making it impossible to draw the edge from this vertex to v5 .
The proof is similar if v4 and v5 lie on the outside of the boundary determined by the 3-cycle
(v1 , v2 , v3 , v1 ).
(v1 , u1 , v2 , u2 , v1 ).
The vertex v3 must lie either inside or outside the boundary determined by this 4-cycle. Fur-
thermore, since there is an edge between v3 and u3 , the vertex u3 must lie on the same side
(inside or outside) as v3 .
Suppose first that v3 and u3 lie inside the boundary. The edges v3 u1 and v3 u2 divide the
area inside the boundary into two regions, and u3 must lie inside one of these two regions. One
of v1 and v2 does not lie on the boundary of this region, and in fact lies outside of it while u3
lies inside of it, making it impossible to draw the edge from this vertex to u3 .
The proof is similar if v3 and u3 lie on the outside of the boundary determined by the
4-cycle (v1 , u1 , v2 , u2 , v1 ).
However, both K5 and K3,3 can be embedded onto the surface of what we call a torus (a
doughnut shape), with no edges meeting except at mutual endvertices. Embeddings are shown
in Figures 15.1.1 and Figure 15.1.2.
The dotted edge wraps around through the hole in the torus.
You might think at this point that every graph can be embedded on the torus without edges
meeting except at mutual endvertices, but this is not the case. In fact, for any surface there are
graphs that cannot be embedded in that surface (without any edges meeting except at mutual
endvertices).
For any embedding of a planar graph, there is another embedded planar graph that is closely
related to it, which we will now describe. Notice that a planar embedding partitions the plane
into regions.
DEFINITION 15.1.5. The regions into which a planar embedding partitions the plane, are
called the faces of the planar embedding.
15. Planar graphs 163
The dotted edge wraps around through the hole in the torus.
EXAMPLE 15.1.6. In these drawings, we have labeled the faces of the two planar embeddings
with f1 , f2 , etc., to show them clearly.
f1
f1 f2 f5
f2
f3 f6
f4 f5 f3
f4
NOTATION 15.1.7. We use F (G) (or simply F if the graph is clear from the context) to denote
the set of faces of a planar embedding.
DEFINITION 15.1.8. We say that an edge is incident with a face of a planar embedding, if it
lies on the boundary of the face (or inside the face).
For a planar embedding of G, the dual graph or planar dual, G∗ , is defined by V (G∗ ) =
F (G), and fi ∼ fj if and only if there is an edge of G that is incident with both fi and fj .
It is possible that the dual graph of a planar embedding will not be a simple graph, even if
the original graph was simple.
EXAMPLE 15.1.9. Here we show how to find the planar duals of the embeddings given in
Example 15.1.6. We include the original embedding as above; the grey vertices and dashed
edges are the vertices and edges of the dual graph.
164 15. Planar graphs
Note that the second graph has loops and multiedges. Note also that although f1 and f5
meet at a vertex in the embedding of the first graph, they are not adjacent in the dual since
they do not share a common edge.
Some other useful observations:
• |E(G)| = |E(G∗ )|, and every dashed edge crosses exactly one black edge;
• the valency of the vertex fi in G∗ is equal to the number of edges you trace, if you
trace around the perimeter of the face fi in G (so edges that dangle inside the face get
counted twice).
PROPOSITION 15.1.10. The dual graph of a planar embedding has a natural planar embedding,
so is a planar graph. Furthermore, (G∗ )∗ = G.
Both of these facts follow fairly directly from the definitions.
EXAMPLE 15.1.11. Be careful! — Two different planar embeddings of the same graph may
have nonisomorphic dual graphs, as we show here.
f2
f1 f2 f3 f4 f1 f3 f4
In the planar dual of the embedding on the left, f1 will have valency 3; f2 and f3 will have
valency 4; and f4 will have valency 7. In the planar dual of the embedding on the right, f1 will
have valency 3; f2 will have valency 5; f4 will have valency 4, and f3 will have valency 6. Since
the lists 3, 4, 4, 7 and 3, 4, 5, 6 are not permutations of each other, the planar duals cannot be
isomorphic.
Before moving on to other related topics, we present a classification of planar graphs. This is
a theorem by Kazimierz Kuratowski (1896—1980) (from whose name the notation for complete
graphs is taken). He proved this result in 1930.
We need one new definition.
EXAMPLE 15.1.13. An example is shown in Figure 15.1.3. The white vertices are the new
ones.
h c
g d
f e
SOLUTION. Here is a subdivision of K3,3 in the given graph. The white vertices are the vertices
that are subdividing edges. Unnecessary edges have been deleted. The bipartition consists of
{a, c, e} and {b, g, h}.
a b
h c
g d
f e
EXERCISES 15.1.16.
1) Prove that if a graph G has a subgraph H that is not planar, then G is not planar.
Deduce that for every n ≥ 6, Kn is not planar.
166 15. Planar graphs
2) Find a planar embedding of the following graph, and find the dual graph of your
embedding:
a b
f c
e d
3) Find a planar embedding of the following graph, and find the dual graph of your
embedding:
a b
f c
e d
4) The graph in Example 15.1.15 also has a subgraph that is a subdivision of K5 . Find
such a subgraph.
5) Prove that the Petersen graph is not planar. [Hint: Use Kuratowski’s Theorem.]
6) Find planar embeddings of the two graphs pictured below. (These graphs are obtained
by deleting an edge from K5 and deleting an edge from K3,3 , respectively.)
Rather than embedding graphs onto a different surface (such as a torus) to avoid edges that
cross, it sometimes makes more sense to ask what is the fewest number of possible edge-crossings,
for any embedding of the graph into the plane. Certainly for many real-life applications, this
may be more useful, as we are looking at the smallest number of overpasses that may be
required, or places where we need to add insulation into a chip so that wires that cross do not
interfere with each other.
Even this number can get very large, and for some purposes it is more useful to consider
how many times any given edge must participate in edge-crossings. Under this model, it is
better to spread around the edge crossings so that no edge participates in more than one (for
example), than to have one edge appear in all of the crossings, even if this lowers the total
number of crossings.
With this in mind, we define a graph to be k-planar if it can be drawn in the plane so that
no edge participates in more than k edge-crossings.
15. Planar graphs 167
It is possible to test for planarity in linear time, using Kuratowski’s Theorem or Wagner’s
Theorem (which we will discuss later in this chapter), and even to find a planar embedding if
the graph is planar, or a minimal subgraph obstructing planarity if the graph is non-planar.
One of the best of the known algorithms is the “edge addition method” due to John M. Boyer
(1968—) and Wendy Joanne Myrvold (1961—) from 2004. In contrast, testing whether or not a
graph is 1-planar is known to be NP-complete. In fact, in a 2020 preprint (accepted but not yet
published at the time of this edit), John Cameron Urschel (1991—) and Jake Wellens (1992—)
have shown that testing whether or not a graph is k-planar for any k ≥ 1 is NP-complete.
|V | − |E| + |F | = 2.
PROOF 1.. We will prove this formula by induction on the number of faces of the embedding.
Let G be a planar embedding of a connected graph (or multigraph, with or without loops).
Base case: If |F | = 1 then G cannot have any cycles (otherwise the interior and exterior of
the cycle would be 2 distinct faces). So G must be a connected graph that has no cycles, i.e.,
a tree. By Theorem 12.4.5 we know that we must have |E| = |V | − 1, so
|V | − |E| + |F | = |V | − (|V | − 1) + 1 = 2.
A tree cannot have any loops or multiple edges, as these form cycles.
Inductive step: We begin by stating our inductive hypothesis. Let k ≥ 1 be arbitrary, and
assume that for any planar embedding of a connected graph (or multigraph, with or without
loops) with k faces, |V | − |E| + |F | = 2.
Let G be a planar embedding of a connected graph with k + 1 ≥ 2 faces. Since trees
have only one face, G must have a cycle. Choose any edge e that is in a cycle of G, and let
H = G \ {e}. Clearly, we have
|E(H)| = |E(G)| − 1
and |V (H)| = |V (G)|. Also,
|F (H)| = |F (G)| − 1 = k
since the edge e being part of a cycle must separate two faces of G, which are united into one
face of H. Furthermore, since e was in a cycle and G is connected, by Proposition 12.3.9 H is
connected, and H has a planar embedding induced by the planar embedding of G. Therefore
our inductive hypothesis applies to H, so
2 = |V (H)| − |E(H)| + |F (H)|
= |V (G)| − (|E(G) − 1) + (|F (G)| − 1)
= |V (G)| − |E(G)| + |F (G)|
This completes the inductive step.
By the Principle of Mathematical Induction, |V | − |E| + |F | = 2 for any planar embedding
of a connected graph (or multigraph, with or without loops).
168 15. Planar graphs
The above proof is unusual for a proof by induction on graphs, because the induction is
not on the number of vertices. If you try to prove Euler’s formula by induction on the number
of vertices, deleting a vertex might disconnect the graph, which would mean the induction
hypothesis doesn’t apply to the resulting graph.
However, there is a different graph operation that reduces the number of vertices by 1, and
keeps the graph connected. Unfortunately, it may turn a graph into a multigraph, so it can only
be used to prove a result that holds true for multigraphs as well as for graphs. This operation
is called edge contraction.
DEFINITION 15.2.2. Let G be a graph with an edge uv. The graph G′ obtained by contracting
the edge uv has vertices
|V | − |E| + |F | = 1 − e + (e + 1) = 2.
Inductive step: We begin by stating our inductive hypothesis. Let k ≥ 1 be arbitrary, and
assume that for any planar embedding of a connected graph (or multigraph, with or without
loops) with k vertices, |V | − |E| + |F | = 2.
Let G be a planar embedding of a connected graph with k + 1 ≥ 2 vertices. Since the graph
is connected and has at least two vertices, it has at least one edge uv, with u ̸= v. Let G′ be
the graph we obtain by contracting uv. Then G′ is a planar embedding of a connected graph
(or multigraph, with or without loops) on k vertices, so our inductive hypothesis applies to G′ .
Therefore,
2 = |V (G′ )| − |E(G′ )| + |F (G′ )|
= (|V (G)| − 1) − (|E(G) − 1) + |F (G)|
= |V (G)| − |E(G) + |F (G)|
This completes the inductive step.
15. Planar graphs 169
Contraction of edges has some other very important uses in graph theory. Before looking
at some corollaries of Euler’s Formula, we’ll explain one well-known theorem that involves edge
contraction and planar graphs.
DEFINITION 15.2.3. Let G be a graph. Then H is a minor of G if we can construct H from
G by deleting or contracting edges, and deleting vertices.
In 1937, Klaus Wagner (1910—2000) proved a theorem quite similar to Kuratowski’s.
THEOREM 15.2.4 (Wagner’s Theorem). A graph is planar if and only if it has no minor
isomorphic to K5 or K3,3 .
It is possible to prove Wagner’s Theorem as an easy consequence of Kuratowski’s Theorem,
since if G has a subgraph that is a subdivision of K5 or K3,3 then contracting all but one
piece of each subdivided edge gives us a minor that is isomorphic to K5 or K3,3 . Nonetheless,
Wagner’s Theorem is important in its own right, as the first example of the much more recent
and very powerful work by George Neil Robertson (1938—) and Paul Seymour (1950—) on
graph minors.
A family is said to be minor-closed if given any graph in the family, any minor of the graph is
also in the family. Planar graphs are an example of a minor-closed family, since the operations of
deletion (of edges or vertices) and contraction of edges preserve a planar embedding. Robertson
and Seymour proved the remarkable result that if a family of graphs is minor-closed, then the
family can be characterised by a finite set of “forbidden minors.” That is, for any such family
F, there is a finite set L of graphs, such that G ∈ F if and only if no minor of G appears in L.
Wagner’s Theorem tells us that when F is the family of planar graphs, L = {K5 , K3,3 }.
Historically, mathematicians who study other branches of mathematics have often looked
down on graph theory as “easy”. The technical and impressive structural proof about forbidden
minors by Robertson and Seymour was instrumental in beginning to change that stereotype.
Euler’s Formula has some important corollaries.
COROLLARY 15.2.5. Let G be a connected graph. Then every planar embedding of G has the
same number of faces.
PROOF. We have |V | − |E| + |F | = 2. Since |V | and |E| do not depend on the choice of
embedding, we have |F | = 2 + |E| − |V | cannot depend on the choice of embedding.
|E| ≤ 3|V | − 6.
If in addition, G has no cycles of length less than 4, then |E| ≤ 2|V | − 4.
COMBINATORIAL PROOF.. Fix a planar embedding of G. We move around each face, count-
ing the number of edges that we encounter, and work out the result in two ways.
First, we look at every face in turn and count how many edges surround that face. Since
the graph is simple, every face must be surrounded by at least 3 edges unless there is only one
face. If there is only one face and when moving around this face we do not count at least 3
edges, then the graph is a tree that has at most one edge, so |V | ≤ 2. Therefore, our count will
come to at least 3|F |.
Every edge either separates two faces, or dangles into a face. In the former case, it will be
counted once each time we move around one of the two incident faces. In the latter case, it
will be counted twice as we move around the face it dangles into: once when we move inwards
170 15. Planar graphs
along this dangling part, and once when we move back outward. Thus, every edge is counted
exactly twice, so our count will come to exactly 2|E|.
Combining these, we see that 2|E| ≥ 3|F |, so |F | ≤ 2|E|/3. If G has no cycles of length less
than 4, then every face must be surrounded by at least 4 edges, so the same argument gives
2|E| ≥ 4|F |, so |F | ≤ |E|/2.
By Euler’s Formula, |V | − |E| + |F | = 2, so
|V | − |E| + 2|E|/3 ≥ 2.
Multiplying through by 3 and moving the |E| terms to the right-hand side, gives
3|V | ≥ |E| + 6,
which can easily be rearranged into the form of our original statement. In the case where G
has no cycles of length less than 4, we obtain instead
|V | − |E| + |E|/2 ≥ 2,
so 2|V | ≥ |E| + 4, which again can easily be rearranged into the form given in the statement of
this corollary.
PROOF. Towards a contradiction, suppose that G is a simple connected planar graph, and for
every v ∈ V , d(v) ≥ 6. Then
∑
d(v) ≥ 6|V |.
v∈V
Therefore,
Euler’s Formula (and its corollaries) give us a much easier way to prove that K5 and K3,3
are non-planar.
COROLLARY 15.2.8. The graph K5 is not planar.
(5)
PROOF. In K5 we have |E| = 2 = 10, and |V | = 5. So
EXERCISES 15.2.10.
1) Use induction to prove an Euler-like formula for planar graphs that have exactly two
connected components.
2) Euler’s formula can be generalised to disconnected graphs, but has an extra variable
for the number of connected components of the graph. Guess what this formula will
be, and use induction to prove your answer.
3) Find and prove a corollary to Euler’s formula for disconnected graphs, similar to Corol-
lary 15.2.6. (Use your answer to Exercise 2.)
4) For graphs embedded on a torus, |V | − |E| + |F | has a different (but constant) value,
as long as all of the faces “look like” discs. (To be more precise for the sake of anyone
familiar with topology, the faces must be embeddable into a plane, rather than looking
like a torus. So putting a planar embedding of a graph down on one side of a torus
doesn’t count.) What is this value?
5) Definition. We say that a planar embedding of a graph is self-dual if it is isomorphic
to its planar dual.
Prove that if a planar embedding of the connected graph G is self-dual, then |E| =
2|V | − 2.
6) Show that if G is a simple planar graph with at least eleven vertices, then the comple-
ment of G is not planar.
7) Find a planar graph G with |V | = 8 whose complement is also planar.
8) For each of the following sets of conditions, either draw a connected, simple graph G
in the plane that satisfies the conditions, or explain how you know that there isn’t one.
(a) The graph has 15 vertices and 12 edges.
(b) The graph has 10 vertices and 33 edges.
(c) The graph has 5 vertices and 8 edges.
(d) The graph has 6 vertices and 9 edges, and the embedding has 6 faces.
∗
172 15. Planar graphs
Traditionally, map-makers colour the different states so as to ensure that if two states share
a border, they are not coloured with the same colour. (This makes it easier to distinguish the
borders.) If two states simply meet at a corner, then they may be coloured with the same
colour.
Using additional colours used to add to the cost of producing the map. Also, if there are too
many colours they become harder and harder to distinguish amongst. The question is, without
knowing in advance what the map will look like, is there a bound on how many colours will be
required to colour it? If so, what is that bound? In other words, what is the largest number of
colours that might be required to colour some map?
Well over a century ago, mathematicians observed that it never seemed to require more
than 4 colours to colour a map. The map shown above does require 4 colours, since the central
rectangular state (marked with an asterisk) and the three states that surround it must all
receive different colours (each shares a border with each of the others). Unfortunately, they
couldn’t prove that no more would ever be required, although a number of purported proofs
were published and later found to have errors.
Although the bound of 4 eluded many attempts at proof, in 1890 Percy John Heawood
(1861—1955) successfully proved that 5 colours suffice to colour any map. His method was
based on an incorrect proof of the Four-Colour Theorem by Sir Alfred Bray Kempe (1849—
1922), from 1879. This result is known as the Five-Colour Theorem. Its proof is slightly
technical but not difficult, and we will give it in a moment. First we will give a very short proof
that 6 colours suffice.
Notice that if we turn the map into a graph by placing a vertex wherever borders meet,
and an edge wherever there is a border, this problem is equivalent to finding a proper vertex
colouring of the planar dual of this graph. Thus, what we will actually prove is that the vertices
of any planar graph can be properly coloured using 6 (or in the subsequent result, 5) colours.
There is a detail that we are skimming over here: the planar dual could have loops, which
would make it impossible to colour the graph. However, this can only happen if there is a face
of the original map that meets itself along a border, which would never happen in a map. The
planar dual might also have multiedges, but this does not affect the number of colours required
to properly colour the graph, so we can delete any multiedges and assume that we are dealing
with a simple planar graph.
PROPOSITION 15.3.1. Every planar graph is properly 6-colourable.
PROOF. Towards a contradiction, suppose that there is a planar graph that is not properly
6-colourable. By deleting edges and vertices, we can find a subgraph G that is a 7-critical
planar graph.
By Corollary 15.2.7, we must have δ(G) ≤ 5 since G is planar. But by Theorem 14.3.10, we
must have
δ(G) ≥ 7 − 1 = 6
since G is 7-critical. This contradiction serves to prove that every planar graph is properly
6-colourable.
By the definition of a k-critical graph, G \ {v} can be properly 5-coloured. Since G itself
cannot be properly 5-coloured, the neighbours of v must all have been assigned different colours
in the proper 5-colouring of G \ {v}. Let’s label the neighbours of v as v1 , v2 , v3 , v4 , and v5
as they appear clockwise around v. We will call the colour of v1 blue, the colour of v2 purple,
the colour of v3 yellow, and the colour of v4 green, as shown in the picture. Here is a picture
(where, in order to enable viewing in black-and-white, we have put the first letter of a colour
onto a vertex, instead of actually colouring the vertex).
v1
b
v5 p v2
g y
v4 v3
Consider the subgraph consisting of the vertices coloured blue or yellow (and all edges
between such vertices). If v1 and v3 are not in the same connected component of this subgraph,
then in the connected component that contains v1 , we could interchange the colours yellow
and blue. Since we are doing this to everything in a connected component of the yellow-blue
subgraph, the result will still be a proper colouring, but v1 now has colour yellow, so v can be
coloured with blue. This contradicts the fact that G is 6-critical, so it must be the case that v1
and v3 are in the same connected component of the yellow-blue subgraph. In particular, there
is a walk from v1 to v3 that uses only yellow and blue vertices. By Proposition 12.3.4, there is
in fact a path from v1 to v3 that uses only yellow and blue vertices.
Similarly, if we consider the subgraph consisting of the vertices coloured purple or green
(and all edges between such vertices), we see that there must be a path from v2 to v4 that uses
only purple or green vertices.
There is no way to draw the yellow-blue path from v1 to v3 and the purple-green path from
v2 to v4 , without the two paths crossing each other. Since the graph is planar, they must cross
each other at a vertex, u. Since u is on the yellow-blue path, it must be coloured either yellow
or blue. Since u is on the purple-green path, it must be coloured either purple or green. It’s
not possible to satisfy both of these conditions on the colour of u. This contradiction serves to
prove that no planar 6-critical graph exists, so every planar graph is properly 5-colourable.
In fact, Kenneth Ira Appel (1932—2013) and Wolfgang Haken (1928—) proved the Four-
Colour Theorem in 1976.
THEOREM 15.3.3 (Four-Colour Theorem). Every planar graph is properly 4-colourable.
Their proof involved considering a very large number of cases — so many that they used
a computer to analyse them all. Although computers are often used in mathematical work
now, this was the first proof that could not reasonably be verified by hand. It was viewed with
suspicion for a long time, but is now generally accepted.
One of the methods by which mathematicians attempted unsuccessfully to prove the Four-
Colour Theorem seemed particularly promising, and has led to a lot of interesting work in its
own right. We require a couple of definitions to explain the connection.
DEFINITION 15.3.4. A cubic graph is a graph for which all of the vertices have valency 3.
DEFINITION 15.3.5. A bridge in a connected graph is an edge whose deletion disconnects the
graph.
174 15. Planar graphs
THEOREM 15.3.6. The problem of 4-colouring a planar graph is equivalent to the problem of
3-edge-colouring a cubic graph that has no bridges.
We’ll prove one direction of the equivalence stated in this theorem; the other direction is a
bit more complicated.
PROOF. Suppose that every planar graph can be properly 4-coloured, and that G is a (simple)
bridgeless cubic graph, embedded in the plane. We’ll show that there is a proper 3-edge-
colouring of G. Since G is bridgeless, we don’t run into the problem of a loop in the planar
dual, so the Four-Colour Theorem applies to the faces of G. Properly colour the faces of G
with colours red, green yellow, and black. Every edge of G lies between faces of two distinct
colours, by the definition of a proper colouring of a map. Colour the edges of G according to
the following table: if the colours of the faces separated by the edge e are the colours listed in
the left-hand column, then use the colour listed in the right-hand column to colour e.
Face colours Edge colour
green, black dashed
yellow, black dotted
red, black solid
green, yellow solid
green, red dotted
red, yellow dashed
Let v be an arbitrary vertex. We will show that the three edges incident with v must all
receive different colours. Since 3 edges meet at v, three faces also meet at v, and every pair of
these faces share an edge. Thus the three faces that meet at v must all receive different colours.
There are four different cases, depending on which colour is not used for a face at v. We show
what happens in the following picture, using R, G, Y, and B to indicate the face colours, and
colouring the edges according to the table above in each case.
R Y R Y R G Y G
G B B B
In each case, the three edges incident with v are assigned different colours, so this is a
proper 3-edge colouring of G.
This theorem was proven by Peter Guthrie Tait (1831—1901) in 1880; he thought that
every cubic graph with no bridges must be 3-edge-colourable, and thus that he had proven the
Four-Colour Theorem. In fact, Vizing’s Theorem tells us that any cubic graph can be 4-edge-
coloured, so we would only need to reduce the number of colours by 1 in order to prove the
Four-Colour Theorem. The problem therefore boils down to proving that there are no bridgeless
planar cubic graphs that are class two.
In 1881, Peter Christian Julius Petersen (1839—1910) published the Petersen graph that
we saw previously in Example 14.3.13.
This graph is cubic and has no bridges, but is not 3-edge-colourable (this can be proved
using a case-by-case analysis). Thus, there exist bridgeless cubic graphs that are class two!
15. Planar graphs 175
Many people have tried to find other examples, as classifying these could provide a proof of the
Four-Colour Theorem.
For many years (regularly from 1956 − 1981, with a few additional sporadic articles until
1986), Martin Gardner (1914—2010) wrote a “Mathematical Games” column in the Scientific
American about interesting math problems and puzzles. As the Four-Colour Theorem is easy
to explain without technical language, it was a topic he wrote about in 1976, in an article
entitled “Snarks, Boojums and other conjectures related to the four-color-map theorem”. When
writing about the importance of bridgeless cubic class-two graphs, he decided they needed a
more appealing name. Since they seemed rare and elusive, he called them snarks, after Lewis
Carroll’s poem “The Hunting of the Snark.” The name has stuck.
DEFINITION 15.3.7. A snark is a bridgeless cubic class-two graph.
Two infinite families and a number of individual snarks are known. There is no reason to
believe that these are all of the snarks that exist. By the Four-Colour Theorem, we know that
there are no planar snarks; if we could find a direct proof that there are no planar snarks, this
would provide a new proof of the Four-Colour Theorem.
EXERCISES 15.3.8.
1) Prove that if a cubic graph G has a Hamilton cycle, then G is a class-one graph.
2) Properly 4-colour the faces of the map given at the start of this section.
3) The map given at the start of this section can be made into a cubic graph, by placing
a vertex everywhere two borders meet (including the coast as a border) and edges
where there are borders. Use the method from the proof of Theorem 15.3.6 to properly
3-edge-colour this cubic graph, using your 4-colouring of the faces.
4) Prove that a graph G that admits a planar embedding has an Euler tour if and only if
every planar dual of G is bipartite.
5) Prove that if a graph G that admits a planar embedding in which every face is sur-
rounded by exactly 3 edges, G is 3-colourable if and only if it has an Euler tour.
176 15. Planar graphs
SUMMARY:
• Kuratowski’s Theorem, Wagner’s Theorem
• Euler’s Formula
• |E| ≤ 3|V | − 6 for a planar graph
• colouring maps
• the Five Colour Theorem
• the Four Colour Theorem
• Important definitions:
◦ planar graph, planar embedding
◦ face
◦ dual graph, planar dual
◦ subdividing an edge, subdivision of a graph
◦ edge contraction, contracting an edge
◦ minor
◦ cubic graph
◦ bridge
◦ snark
Part III
Design
Theory
Chapter 16
Latin squares
16.1. Latin squares and Sudokus
You can think of a Latin square as a Sudoku puzzle that can be of any (square) size, and does
not have the requirement that every value appear in each of the outlined smaller subsquares.
DEFINITION 16.1.1. A Latin square of order n is an n × n array whose entries are elements
of a set N of cardinality n, with the property that every element of N appears exactly once in
each row and each column.
1 2 3 4
4 1 2 3
3 4 1 2
2 3 4 1
Notice that in the above example, we placed the numbers 1, 2, 3, and 4 in the first row, in
that order. For each subsequent row, we shifted the numbers one place to the right (wrapping
around). This same technique (placing the numbers from 1 through n across the first row) will
work to construct a Latin square of order n.
So you might think (with reason) that Latin squares aren’t very interesting. However, even
knowing that there is a Latin square of every possible order and they are easy to construct,
there remain some interesting related questions.
Some of these questions are related to Sudokus. If we fill in some entries of a Latin square,
are there conditions on these entries that guarantee that this can be completed to a full Latin
square? Are there conditions under which we can be sure that a partial Latin square has a
unique completion to a full Latin square?
Some of these questions have easy answers that are not what we are really looking for.
For example, if we give you all but one entry of a Latin square (or Sudoku), then if it can be
completed at all, the completion will be unique. However, some interesting mathematical work
has been done on these problems, both for Latin squares and for Sudokus.
It has recently been proved (using computers) that a Sudoku puzzle with 16 or fewer squares
pre-filled cannot be completed uniquely. This is a theorem by Gary McGuire (1967—), Bastian
Tugemann, and Gilles Civario (1972—), published in 2014 in Experimental Mathematics. The
published version is available online by subscription to the journal, but a preprint is freely
available on the widely-used “arχiv” scientific preprint server hosted by Cornell University.
However, there are tens of thousands of (non-isomorphic) ways of pre-filling 17 entries of a
Sudoku puzzle, that have a unique completion. Gordon F. Royle (1962—) built a web page
179
180 16. Latin squares
with a complete list of those that were known at the time. His work on this was used by
McGuire, Tugemann, and Civiaro in their paper. The original web page was inaccessible at the
most recent editing of this book, but there is a copy available through the Wayback Machine’s
archive of the internet.
Looking only at “non-isomorphic” examples is important, because there are many ways
of creating Latin squares (or Sudoku puzzles) that are essentially the same. The following
operations take a Latin square to another Latin square that is structurally essentially the same:
• Permuting of the symbols used in the set N . For example, changing every 1 to a 2 and
every 2 to a 1.
• Interchanging any two rows.
• Interchanging any two columns.
• Making all of the rows into columns, and all of the columns into rows.
EXERCISES 16.1.3.
1) Prove that interchanging two rows of a Latin square, yields a Latin square.
2) Complete the following Latin square. Is the completion unique?
1 − 4 −
− 1 − −
− − − 3
− − − −
3) Use the method described at the start of this chapter to create a Latin square of order
5. What 3 of the operations listed above that change a Latin square to an isomorphic
Latin square, are required to arrive at the following result?
5 1 4 2 3
1 3 5 4 2
4 5 2 3 1
2 4 3 1 5
3 2 1 5 4
4) Show there are exactly two different Latin squares of order 3 whose first row is 1, 2, 3.
5) Show there are exactly twelve different Latin squares of order 3 whose entries are the
numbers 1, 2, 3. [Hint: Use Exercise 16.1.3.4.]
6) There are four different Latin squares of order 4 whose first row is 1, 2, 3, 4 and whose
first column is also 1, 2, 3, 4. That is, there are only four ways to complete the following
Latin square:
1 2 3 4
2 − − −
3 − − −
4 − − −
1 2 3 1 2 3
3 1 2 2 3 1
2 3 1 3 1 2
We see that the ordered pairs (1, 1), (2, 2) and (3, 3) appear in the first row; the pairs (3, 2),
(1, 3), and (2, 1) appear in the second row; and the pairs (2, 3), (3, 1), and (1, 2) appear in the
third row. Every possible ordered pair whose entries lie in {1, 2, 3} has appeared.
There is a nice pattern to the squares given in this example. The first follows the general
construction we mentioned at the start of this chapter. For the second, each row has been
182 16. Latin squares
shifted one place to the left (rather than to the right) from the one above it. This construction
does actually work for n odd, but never for n even. For example, when n = 4, it would give
1 2 3 4 1 2 3 4
4 1 2 3 2 3 4 1
3 4 1 2 3 4 1 2
2 3 4 1 4 1 2 3
You can see that the ordered pair (1, 1) occurs in two positions: row 1, column 1, and row
3, column 3. So this pair of Latin squares is definitely not orthogonal. In fact, the first of these
squares has no Latin square that is orthogonal to it. However, there is a pair of orthogonal
Latin squares of order 4:
1 2 3 4 1 2 3 4
3 4 1 2 4 3 2 1
4 3 2 1 2 1 4 3
2 1 4 3 3 4 1 2
DEFINITION 16.2.3. A set of Latin squares is mutually orthogonal if every distinct pair of
Latin squares in the set are orthogonal. We call such a set, a set of MOLS (for Mutually
Orthogonal Latin Squares).
The natural question that arises in this context is, how many Latin squares can there be in
a set of MOLS?
Before we attempt to answer this question, notice that if we have a pair of orthogonal
Latin squares and we permute the symbols used in the set N independently for each of the
squares (resulting in new Latin squares that are nonetheless essentially the same, as discussed
in Section 16.1), the resulting pair of Latin squares will still be orthogonal. If in the first square
the symbol x maps to the symbol y, and in the second square the symbol u maps to the symbol
v, then in the new pair of Latin squares the ordered pair (y, v) will appear precisely once, since
the ordered pair (x, u) appeared precisely once in the original pair of Latin squares. This is
true for any pair of entries (y, v), so every pair of entries must appear precisely once.
This idea that we can independently permute the symbols in each square, leads to a very
nice method of representing MOLS. The key idea is that it is not necessary to use the same
set of symbols for each square, since the symbols we choose can be permuted independently
to match each other. In fact, we don’t need to use symbols at all to represent some of the
squares; we can vary some other characteristic. For example, to represent the two orthogonal
Latin squares of order 3 that were shown in Example 16.2.2, we can use the symbols 1 to 3 to
represent the first square, and the colours red (for 1), blue (for 2) and green (for 3) to represent
the second square. However, varying the colours is not feasible here since we are keeping things
in black-and-white for the sake of accessibility and ease of printing. Instead, for the second
square, let us use “tilted left” (for 1), “straight up” (for 2), and “tilted right” (for 3). So (for
example) since in the second row, third column the first square had a 2 and the second had a
1, we place a 2 that is tilted to the left in that location in our new representation (tilted left
because the entry of the second square was 1; and 2 because that was the entry of the first
square). Here is the complete representation:
1 2 3
3 1 2
2 3 1
By the property of orthogonality, every combination of tilting and number must appear
in exactly one position! Even more amazing, if we have a set of MOLS and vary different
16. Latin squares 183
parameters for each of the squares, the fact that the squares are all mutually orthogonal will
mean that every combination of the parameters appears in exactly one position. For example,
if we have a set of five MOLS, we could place a coloured shape behind each coloured symbol,
and have different numbers of copies of the symbol. For any possible colour of any possible
shape appearing behind any possible number of any possible colour of any possible symbol, you
would be able to find a position in which that combination appears!
This approach to MOLS is essentially the context in which they first arose, as we can
see from Euler’s example of the officers. For the two orthogonal Latin squares sought in his
question, the symbols in one represent the ranks while the symbols in the other represent the
regiment. In his final square, each officer could be represented by a pair of symbols indicating
their rank and their regiment — or by a letter for their regiment and a colour for their rank.
Here is a partial answer to the question of how many MOLS of order n there can be:
THEOREM 16.2.4. If S is a set of MOLS of order n, then |S| ≤ n − 1.
PROOF. We may assume that N = {1, . . . , n}. In each of the Latin squares in S, we can
independently permute the symbols of N . As was noted above, the result will still be a set
of MOLS. We permute the symbols so that the first row of each of the Latin squares has the
entries 1, 2, . . . , n in that order.
Now, if we take any i ∈ N and consider any pair of the Latin squares, the ordered pair (i, i)
appears somewhere in the first row. Consider the first entry of the second row in each square
of S. None of these entries can be 1, since 1 has already appeared in the first column of each
of the Latin squares. No two of the Latin squares can have the same entry j in this position,
since the ordered pair (j, j) has already appeared in the jth position of the first row of this pair
of squares, so can’t appear again in the first position of the second row. So there cannot be
more squares in S, than the n − 1 distinct entries from N \ {1} that could go into this position.
Thus, |S| ≤ n − 1, as claimed.
The next natural question is, is it possible to achieve n − 1 MOLS of order n? We have
already seen that the answer is yes in one very small case, since we found 2 MOLS of order 3.
In fact, there are infinitely many values of n for which there are n − 1 MOLS of order n.
The following result can be generalised to prime powers using some basic field theory that
you should understand if you have taken a course that includes any field theory. However, for
the purposes of this course, we will avoid the explicit field theory and prove the result only for
primes.
We do require a bit of modular arithmetic for this result. As modular arithmetic will also
be useful for some of our later results, here is a quick review of some key points.
DEFINITION 16.2.5. Performing calculations modulo n means replacing the result with the
remainder you would get upon dividing that result by n. In other words, if the result of a
computation is n or larger, replace the result by its remainder upon division by n.
NOTATION 16.2.6. If a and b have the same remainder upon division by n, then we write
a ≡ b (mod n).
There are two key facts from modular arithmetic that we will require. The first is that if
a ≡ b (mod n) and 0 ≤ a, b < n, then we must have a = b.
The other is that if qa ≡ qb (mod n) and n and q have a greatest common divisor of 1, then
a ≡ b (mod n). In the special case where n is prime, as long as q is not a multiple of n then n
and q will always have a greatest common divisor of 1.
THEOREM 16.2.7. For any prime p, there are p − 1 MOLS of order p.
184 16. Latin squares
PROOF. We will use N = {0, . . . , p−1}. In order to ensure that the results of our computations
will be in N , all of the calculations given in this result should be taken modulo p.
The squares will be {S1 , . . . , Sp−1 }. For k ∈ {1, . . . , p},
0 1 ... p−1
k k+1 ... k + (p − 1)
2k 2k + 1 ... 2k + (p − 1)
Sk =
.. .. ..
. . .
(p − 1)k (p − 1)k + 1 . . . (p − 1)k + (p − 1)
We first verify that each Sk is a Latin square. The entries in each row are easily seen to
be distinct. If the entries in the first column are distinct, then we can see that the entries in
every other column will be distinct. Suppose that 0 ≤ i, j ≤ p − 1 and that ik ≡ jk (mod p).
Then since every k ∈ {1, . . . , p − 1} has a greatest common divisor of 1 with p, we see that
i ≡ j (mod p). Since 0 ≤ i, j ≤ p − 1, this forces i = j. So the entries in the first column of Sk
are all distinct. Thus, every Sk is a Latin square.
Suppose that for some 1 ≤ i, j ≤ p − 1, the squares Si and Sj have the same ordered pair
in two positions: row k1 , column m1 , and row k2 , column m2 . Then by the formulas given for
the entries of each Latin square, we must have
Since (k2 − k1 )i ≡ (k2 − k1 )j (mod p), and 1 ≤ i, j ≤ p − 1, either i = j (so we chose the same
Latin square twice instead of choosing a pair of distinct Latin squares), or k2 − k1 ≡ 0 (mod p).
Since k1 and k2 are row numbers, they are between 1 and p so this forces k1 = k2 . Furthermore,
in this case we must also have m2 − m1 ≡ 0 (mod p), and we see that this also forces m1 = m2 .
Thus, the two positions in which the same ordered pair appeared, were actually the same
position chosen twice.
This shows that {Sk | 1 ≤ k ≤ p − 1} is indeed a set of p − 1 MOLS.
EXAMPLE 16.2.8. Here are the first 8 of the 10 MOLS of order 11, found using the formula
given in the proof above.
0 1 2 3 4 5 6 7 8 9 10 0 1 2 3 4 5 6 7 8 9 10
1 2 3 4 5 6 7 8 9 10 0 2 3 4 5 6 7 8 9 10 0 1
2 3 4 5 6 7 8 9 10 0 1 4 5 6 7 8 9 10 0 1 2 3
3 4 5 6 7 8 9 10 0 1 2 6 7 8 9 10 0 1 2 3 4 5
4 5 6 7 8 9 10 0 1 2 3 8 9 10 0 1 2 3 4 5 6 7
5 6 7 8 9 10 0 1 2 3 4 10 0 1 2 3 4 5 6 7 8 9
6 7 8 9 10 0 1 2 3 4 5 1 2 3 4 5 6 7 8 9 10 0
7 8 9 10 0 1 2 3 4 5 6 3 4 5 6 7 8 9 10 0 1 2
8 9 10 0 1 2 3 4 5 6 7 5 6 7 8 9 10 0 1 2 3 4
9 10 0 1 2 3 4 5 6 7 8 7 8 9 10 0 1 2 3 4 5 6
10 0 1 2 3 4 5 6 7 8 9 9 10 0 1 2 3 4 5 6 7 8
16. Latin squares 185
0 1 2 3 4 5 6 7 8 9 10 0 1 2 3 4 5 6 7 8 9 10
3 4 5 6 7 8 9 10 0 1 2 4 5 6 7 8 9 10 0 1 2 3
6 7 8 9 10 0 1 2 3 4 5 8 9 10 0 1 2 3 4 5 6 7
9 10 0 1 2 3 4 5 6 7 8 1 2 3 4 5 6 7 8 9 10 0
1 2 3 4 5 6 7 8 9 10 0 5 6 7 8 9 10 0 1 2 3 4
4 5 6 7 8 9 10 0 1 2 3 9 10 0 1 2 3 4 5 6 7 8
7 8 9 10 0 1 2 3 4 5 6 2 3 4 5 6 7 8 9 10 0 1
10 0 1 2 3 4 5 6 7 8 9 6 7 8 9 10 0 1 2 3 4 5
2 3 4 5 6 7 8 9 10 0 1 10 0 1 2 3 4 5 6 7 8 9
5 6 7 8 9 10 0 1 2 3 4 3 4 5 6 7 8 9 10 0 1 2
8 9 10 0 1 2 3 4 5 6 7 7 8 9 10 0 1 2 3 4 5 6
0 1 2 3 4 5 6 7 8 9 10 0 1 2 3 4 5 6 7 8 9 10
5 6 7 8 9 10 0 1 2 3 4 6 7 8 9 10 0 1 2 3 4 5
10 0 1 2 3 4 5 6 7 8 9 1 2 3 4 5 6 7 8 9 10 0
4 5 6 7 8 9 10 0 1 2 3 7 8 9 10 0 1 2 3 4 5 6
9 10 0 1 2 3 4 5 6 7 8 2 3 4 5 6 7 8 9 10 0 1
3 4 5 6 7 8 9 10 0 1 2 8 9 10 0 1 2 3 4 5 6 7
8 9 10 0 1 2 3 4 5 6 7 3 4 5 6 7 8 9 10 0 1 2
2 3 4 5 6 7 8 9 10 0 1 9 10 0 1 2 3 4 5 6 7 8
7 8 9 10 0 1 2 3 4 5 6 4 5 6 7 8 9 10 0 1 2 3
1 2 3 4 5 6 7 8 9 10 0 10 0 1 2 3 4 5 6 7 8 9
6 7 8 9 10 0 1 2 3 4 5 5 6 7 8 9 10 0 1 2 3 4
0 1 2 3 4 5 6 7 8 9 10 0 1 2 3 4 5 6 7 8 9 10
7 8 9 10 0 1 2 3 4 5 6 8 9 10 0 1 2 3 4 5 6 7
3 4 5 6 7 8 9 10 0 1 2 5 6 7 8 9 10 0 1 2 3 4
10 0 1 2 3 4 5 6 7 8 9 2 3 4 5 6 7 8 9 10 0 1
6 7 8 9 10 0 1 2 3 4 5 10 0 1 2 3 4 5 6 7 8 9
2 3 4 5 6 7 8 9 10 0 1 7 8 9 10 0 1 2 3 4 5 6
9 10 0 1 2 3 4 5 6 7 8 4 5 6 7 8 9 10 0 1 2 3
5 6 7 8 9 10 0 1 2 3 4 1 2 3 4 5 6 7 8 9 10 0
1 2 3 4 5 6 7 8 9 10 0 9 10 0 1 2 3 4 5 6 7 8
8 9 10 0 1 2 3 4 5 6 7 6 7 8 9 10 0 1 2 3 4 5
4 5 6 7 8 9 10 0 1 2 3 3 4 5 6 7 8 9 10 0 1 2
We’ve now seen that it is possible to find p − 1 MOLS of order p for any prime p, and that
the proof can be generalised to prime powers. However, as we’ve already discussed in relation
to Euler’s original problem, there are orders for which the bound of n − 1 MOLS of order n
cannot be attained: in fact, for order 6 it is not possible even to find a pair of orthogonal Latin
squares.
If you are interested in or familiar with some finite geometry, the existence of n − 1 MOLS
of order n is equivalent to the existence of a projective plane of order n. Projective planes,
in turn, are a special kind of design. For an interesting article about some of these rela-
tionships, see https://www.maa.org/sites/default/files/pdf/upload_library/22/Ford/
Lam305-318.pdf. This article is by Clement Wing Hong Lam (1949—), who (with coauthors
Larry Henry Thiel (1945—) and Stan Swiercz (1955—)) used a computer to prove that there
is no projective plane of order 10 (and equivalently, that there are not 9 MOLS(10)). There is
also some information about affine planes, projective planes, and their existence in Sections 18.3
and 18.4. Whether or not a projective plane of order 12 exists is unknown. The nonexistence
186 16. Latin squares
of a plane of order 10 was independently verified in 2011 and again in 2020 using a different
(but still computer-based) approach.
EXERCISES 16.2.9.
1) Find the two MOLS of order 11 that are not included in Example 16.2.8, but are
orthogonal to each other and to the squares listed there.
2) Find a third Latin square of order 4 that is orthogonal to both of the orthogonal Latin
squares of order 4 that were given earlier in this section.
3) Here is a Latin square of order 8, and some entries for a second Latin square of order
8. Complete the second square so as to obtain a pair of orthogonal Latin squares.
1 2 3 4 5 6 7 8 1 2 3 4 5 6 7 8
2 1 4 3 6 5 8 7 3 4 − − − 8 5 6
3 4 1 2 7 8 5 6 5 − 7 − − 2 3 −
4 3 2 1 8 7 6 5 7 − − 6 − − − −
5 6 7 8 1 2 3 4 4 − − 1 8 − − −
6 5 8 7 2 1 4 3 2 − − − − 5 − −
7 8 5 6 3 4 1 2 8 − − − − − − 1
8 7 6 5 4 3 2 1 6 − − 7 − − − 3
4) Write down the six mutually orthogonal Latin squares S1 , . . . , S6 of order 7 that are
constructed by letting p = 7 in the proof of Theorem 16.2.7.
EXAMPLE 16.3.2. The university is striking a student committee on the subject of tutorials.
For each of the 5 Faculties, they ask students to elect one representative who is taking classes
from that faculty. They do not want one student trying to represent more than one faculty.
The candidates are:
• Joseph, who is taking courses in Arts and Science, Fine Arts, Management, and Edu-
cation;
• René, who is taking courses in Health Sciences;
• Claire, who is taking courses in Education and Health Sciences;
• Sandra, who is taking courses in Management, Fine Arts, and Health Sciences;
• Laci, who is taking courses in Education and Health Sciences; and
• Jing, who is taking courses in Education.
Can the committee be filled?
16. Latin squares 187
SOLUTION. The answer is no. For the three Faculties of Arts & Science, Fine Arts, and
Management, there are only two possible student representatives: Joseph (who could represent
any of the three), and Sandra (who could represent either Fine Arts or Management). So it is
not possible to elect one student to represent each of the five Faculties, without allowing one of
these students to fill two roles.
In Example 16.3.2, we observed that we could find a collection of the sets to be represented,
that collectively had fewer possible representatives than there are sets in the collection. It is
easy to see that if this happens, there cannot be a system of distinct representatives for the
sets.
What Philip Hall proved is the converse: unless we have an obstruction of this type, it is
always possible to find a system of distinct representatives.
THEOREM 16.3.3 (Hall’s Theorem). The collection of sets T1 , . . . , Tn has a system of distinct
representatives if and only if for every 1 ≤ k ≤ n, the union of any k of the sets has cardinality
at least k.
This theorem is often referred to as “Hall’s Marriage Theorem,” as one of the problems it
solves can be stated as follows. Suppose we have a collection of men and a collection of women.
Each of the women has a list of men she likes (from the collection). When is it possible to marry
each of the women to a man that she likes? (The context is historical, and the assumption of
the time was that every woman would want to marry a man.)
We have seen that one of the two implications of Hall’s Theorem is easy to prove. We will
not try to prove the other implication here, but will focus on using the result. Here are some
examples and exercises. For completeness, we provide a proof of Hall’s Theorem at the end of
this chapter.
EXAMPLE 16.3.4. Let A1 = {a, b, c, d}, A2 = {b, c}, A3 = {b}, A4 = {b, c}. Does this collec-
tion of sets have a system of distinct representatives? If so, find one; if not, explain why.
SOLUTION. The answer is that this collection of sets has no system of distinct representatives,
because the union of three sets A2 , A3 , and A4 has only two elements: b and c.
EXAMPLE 16.3.5. Let A1 = {a, d}, A2 = {a, c}, A3 = {b, c}, A4 = {c, d}. Does this collection
of sets have a system of distinct representatives? If so, find one; if not, explain why.
SOLUTION. This collection of sets does have a system of distinct representatives: take a for
A1 , c for A2 , b for A3 , and d for A4 . For clarity, we underline the representatives in the following
list of the sets: A1 = {a, d}, A2 = {a, c}, A3 = {b, c}, A4 = {c, d}.
(In fact, it also has another system of distinct representatives: take d for A1 , a for A2 , b for
A3 , and c for A4 : A1 = {a, d}, A2 = {a, c}, A3 = {b, c}, A4 = {c, d}. )
EXERCISES 16.3.6. For each collection of sets, determine whether or not it has a system of
distinct representatives. If so, find one; if not, explain why.
1) A1 = {x}, A2 = {y, z}, A3 = {x, y}.
2) A1 = {u, v, w, x, y, z}, A2 = {v, w, y}, A3 = {w, x, y}, A4 = {v, w, x, y}, A5 = {v, x, y},
A6 = {v, y}.
3) A1 = {x}, A2 = {y}, A3 = ∅.
4) A1 = {x, z}, A2 = {y}, A3 = {x, y, z}.
5) T1 = {a, b, c, d}, T2 = {a, b, c}, T3 = {a}, T4 = {c}.
188 16. Latin squares
COROLLARY 16.3.9. Suppose that m rows of a Latin square of order n have been filled, where
m < n, and that to this point no entry appears more than once in any row or column. This
structure can always be completed to a Latin square.
PROOF. As long as m < n, we can repeatedly apply Theorem 16.3.8 to deduce that it is
possible to add a row. Once you actually find a row that can be added (note that the statement
of Hall’s Theorem does not explain how to do this), do so. Eventually this process will result
in a complete square.
Hall’s Theorem can also be used to prove a special case of a result we proved previously,
Theorem 14.1.17. The special case we can prove with Hall’s Theorem, is the case where every
vertex has the same valency.
16. Latin squares 189
THEOREM 16.3.10. If G is a bipartite graph in which every vertex has the same valency, then
any bipartition sets V1 and V2 have the same cardinality, and there is a set of |V1 | edges that
can be properly coloured with the same colour.
PROOF. Let k be the valency of every vertex, and for some arbitrary bipartition sets V1 and
V2 , let n = |V1 |. By a slight adaptation of Euler’s handshaking lemma, taking into account the
fact that every edge has exactly one of its endvertices in V1 , we see that nk = |E|. By the same
argument, k|V2 | = |E|, which forces |V2 | = n = |V1 |. Since the bipartition was arbitrary, the
first statement follows.
Let V1 = {v1 , . . . , vn }. For every 1 ≤ i ≤ n, let
Ti = {u ∈ V | u ∼ vi }.
A system of distinct representatives for the sets T1 , . . . , Tn will produce n = |V1 | edges that can
be properly coloured with the same colour.
Observe that every set Ti has cardinality k (since this is the valency of every vertex), and
every vertex appears in exactly k of the sets (again because this is the valency of the vertex).
Therefore, by Proposition 16.3.7, there is a system of distinct representatives for T1 , . . . , Tn .
Hence we can find n = |V1 | edges that can be properly coloured with the same colour.
COROLLARY 16.3.11. If G is a bipartite graph in which every vertex has the same valency k,
then its edges can be properly coloured using k colours.
PROOF. Repeat the following step k times: find a set of edges that can be properly coloured.
Colour them with a new colour, and delete them from the graph.
At each stage, Theorem 16.3.10 tells us providing that every vertex has the same valency,
we can find a set of edges that are properly coloured, one of which is incident with every vertex
of the graph. Since the valency of every vertex is reduced by exactly one when we delete such
a set of edges, at each stage every vertex will have the same valency.
To conclude the chapter, we provide a proof of Hall’s Theorem. As previously noted, one
direction is obvious, so we prove only the other direction.
PROOF OF HALL’S THEOREM.. We will prove this by strong induction on the number of
sets, n.
Base case: n = 1. If a single set has one element, then that set has a representative. This
completes the proof of the base case.
Inductive step: We begin with the inductive hypothesis. Let m ≥ 1 be arbitrary. Suppose
that whenever 1 ≤ i ≤ m, and a collection of i sets T1 , . . . , Ti has the property that for every
1 ≤ k ≤ i, the union of any k of the sets has cardinality at least k, then that collection of sets
has a system of distinct representatives.
We want to deduce that whenever we have a collection of m + 1 sets with the property that
for every 1 ≤ k ≤ m + 1, the union of any k of the sets has cardinality at least k, then that
collection of sets has a system of distinct representatives. Let T1 , . . . , Tm+1 be such a collection
of sets.
We look at the subcollection of sets T1 , . . . , Tm , and consider two cases. First, suppose that
for every 1 ≤ k ≤ m, the union of any k of these sets has cardinality at least k + 1. In this
case, take any element t ∈ Tm+1 (which by hypothesis is nonempty) to be the representative
for Tm+1 , and remove this element from each of the other sets. Due to the case we are in, for
every 1 ≤ k ≤ m, the union of any k of the sets T1 − {t}, . . . , Tm − {t} still has cardinality at
least k, (we have removed only the element t from this union, which previously had cardinality
at least k + 1). Thus we can apply our induction hypothesis to find a system of distinct
190 16. Latin squares
representatives for T1 , . . . , Tm that does not include the element t. This completes a system of
distinct representatives for our full collection of sets.
The other case is that there is some 1 ≤ k ≤ m and some collection of k of the sets
T1 , . . . , Tm , whose union has cardinality precisely k. By our induction hypothesis, there is a
system of distinct representatives for these k sets. From the other m + 1 − k sets (observe that
1 ≤ m + 1 − k ≤ m), remove the k elements that were in the union of the original k sets.
Consider any k ′ of these adjusted sets, with 1 ≤ k ′ ≤ m + 1 − k. Observe that the union of
the k + k ′ sets consisting of the original k sets together with these k ′ sets must have contained
at least k + k ′ distinct elements by hypothesis, so after removing the k representatives of the
original k sets (which are the only elements in those sets), these k ′ sets must still have at least
k ′ distinct elements in their union. Therefore, we can apply our induction hypothesis to these
other m + 1 − k adjusted sets, and see that they too have a system of distinct representatives,
none of which are amongst the k representatives for the original k sets. Combining these
two systems of distinct representatives yields a system of distinct representatives for the full
collection of sets.
EXERCISES 16.3.12.
1) Onyx is doing some research on what people learn from visiting different countries.
They have a set of questions that are to be answered by someone who has visited
the country. Before fully launching the study, Onyx wants to try the questions out
on some of their friends. Since the questions are the same for different countries, they
don’t want one person to answer the questions for more than one country, as that could
bias the results. Of their close friends, the following people have visited the following
countries:
• England: Adam, Ella, Justin
• Wales: Adam, Justin, Faith, Cayla
• Scotland: Bryant, Justin, Ella
• Ireland: Adam, Bryant, Justin
• Germany: Cayla, Bryant, Justin, Faith, Denise
• France: Ella, Justin, Bryant
• Italy: Adam, Ella, Bryant
Prove that Onyx cannot find seven different friends, each of whom has visited a different
one of these countries.
2) Can the following be completed to a 4 × 4 Latin square? Does Hall’s Theorem apply
to this? If not, why not?
1 2 3 4
4 1 2 3
2 4
3) Show (by example) that it is possible to have a bipartite graph in which the bipartition
sets have the same cardinality k and the valency of every vertex is either 3 or 4, but
no set of k edges can be properly coloured with a single colour.
16. Latin squares 191
4) How do you know (without actually finding a completion) that the following can be
completed to a Latin square of order 7 ?
1 2 3 4 5 6 7
2 4 7 6 1 5 3
3 7 4 2 6 1 5
4 6 2 5 3 7 1
5) Find a completion of the partial Latin square in Exercise 4.
6) For each of these bipartite graphs, let V1 = {a, b, c, d, e, f }, and determine whether
there is a set of |V1 | disjoint edges. (In other words, determine whether there is a set
of |V1 | edges that can be properly coloured with the same colour.)
u v w x y z
(a)
a b c d e f
u v w x y z
(b)
a b c d e f
u v w x y z
(c)
a b c d e f
SUMMARY:
• Hall’s (Marriage) Theorem
• a partial Latin square containing m rows can always be completed.
• Important definitions:
◦ Latin square
◦ orthogonal Latin squares
◦ MOLS (mutually orthogonal Latin squares)
◦ system of distinct representatives (SDR)
Chapter 17
Designs
17.1. Balanced Incomplete Block Designs (BIBD)
Suppose you have 7 possible treatments for a disease, that you hope may work well singly or
in combination. You would like to try out every possible combination of them, but the number
of (non-empty) subsets of the set of 7 treatments is 27 − 1 = 127, and you have only 7 mice
in the lab who have this disease. You believe that using a pair of the treatments together will
have a more significant impact than adding more (of)the treatments, but even trying every pair
of treatments on a different mouse would require 72 = 21 mice.
Here is a strategy you could try: give each of the mice 3 of the treatments, according to the
following scheme. For 1 ≤ i ≤ 7, the treatments given to mouse i will be the elements of the
ith set in the following list:
{1, 2, 3}, {1, 4, 5}, {1, 6, 7}, {2, 4, 6}, {2, 5, 7}, {3, 4, 7}, {3, 5, 6}.
Careful perusal of this scheme will show that every pair of treatments is used together on
precisely one of the mice.
DEFINITION 17.1.1. A design is a pair (V, B), where V is a finite set of points (also called
varieties) and B is a collection of subsets of V , called blocks of the design.
This definition of a design is too broad to be of much interest without additional constraints,
but a number of different constraints have been studied.
NOTATION 17.1.2. We use v to denote |V | and b to denote |B|.
DEFINITION 17.1.3. A regular design is a design in which every point appears in the same
number of blocks, r.
A uniform design is a design in which every block contains the same number of points, k.
A balanced design is a design in which every pair of points appear together in the same
number of blocks, λ.
EXAMPLE 17.1.4. In our disease treatments for the mice, we have V = {1, 2, 3, 4, 5, 6, 7},
B = {{1, 2, 3}, {1, 4, 5}, {1, 6, 7}, {2, 4, 6}, {2, 5, 7}, {3, 4, 7}, {3, 5, 6}}.
This is a regular, uniform, balanced design. In this design, v = 7, b = 7, r = 3, k = 3, and
λ = 1.
A regular, uniform, balanced design may be referred to as a (b, v, r, k, λ)-design. So our
disease treatments for the mice formed a (7, 7, 3, 3, 1)-design.
193
194 17. Designs
A (b, v, r, k, λ)-design is called complete if v = k. In this case, every block will contain every
point. A (b, v, r, k, λ)-design is called trivial if k = 1. In this case, every block consists of a
single point, and no points appear together in a block. The case ( ) k = 2 is also fairly trivial
since in this case the blocks of the design must consist of the v2 pairs of elements of v, each
occurring λ times.
DEFINITION 17.1.5. A balanced incomplete block design (BIBD) is a regular, uniform,
balanced design that is not complete. So it is a (b, v, r, k, λ)-design with k < v.
Although this definition includes the possibility k = 1 or k = 2, these are not interesting
cases, and can usually be ignored.
EXAMPLE 17.1.6. Here is another BIBD. This one has parameters (20, 16, 5, 4, 1).
{a, b, c, d}, {e, f, g, h}, {i, j, k, l}, {m, n, o, p}, {a, e, i, m}, {a, g, l, n}, {a, h, j, o},
{a, f, k, p}, {b, f, j, n}, {b, h, k, m}, {b, g, i, p}, {b, e, l, o}, {c, g, k, o}, {c, e, j, p},
{c, f, l, m}, {c, h, i, n}, {d, h, l, p}, {d, f, i, o}, {d, e, k, n}, {d, g, j, m}
COMBINATORIAL PROOF.. For the first equation, we count the total number of appearances
of each point in the design (including repetitions) in two ways. This is another example of
counting ordered pairs from a cartesian product, as we have discussed previously.
First, there are b blocks, each of which has k points in it. So the answer will be bk.
Second, there are v points, each of which appears r times. So the answer will be vr.
Thus, vr = bk.
For the second equation, we fix a point p, and count the number of points with which p
appears in a block, in two ways.
First, p appears in r blocks. In each of these, there are k − 1 points besides p. So the answer
will be r(k − 1).
Second, for every point p′ ∈ V with p′ ̸= p, the point p′ appears with p in λ different blocks.
Since there are v − 1 choices for p′ , the answer will be λ(v − 1).
Thus, r(k − 1) = λ(v − 1).
PROOF. Given an edge-colouring of λKv as described, define the points of the design to be
the set of vertices of the multigraph, and for each colour, create a block whose vertices are the
vertices of the Kk that has that colour. All of these blocks will have cardinality k. Every vertex
has valency λ(v − 1), and every Kk of one colour that contains that vertex will use k − 1 of the
edges incident with that vertex, so every vertex will appear in
r = λ(v − 1)/(k − 1)
blocks. Now, any edge of the λKv must appear in some Kk (the one coloured with the colour
of that edge). Thus for any pair of points, these vertices are joined by λ edges each of which
appears in some Kk , so these points must appear together in λ of the Kk subgraphs, i.e. λ of
the blocks.
Similarly, given a BIBD(v, k, λ), and a multigraph λKv , label the vertices of Kv with the
points of the design. For each block of the design, use a new colour to colour the edges of a Kk
that connects the points in that block. There will be enough uncoloured edges joining these
points, since every pair of points appear together in exactly λ blocks, and there are λ edges
joining the corresponding vertices. In fact, careful counting can show that this will result in
colouring every edge of the multigraph.
This is nicest in the case where λ = 1, when the BIBD corresponds to an edge-colouring of
Kv .
A colouring of the edges of a graph (or multigraph) is often referred to as a decomposition
of the graph (or multigraph), since we can think of the colour classes as sets of edges whose
union forms the entire edge set of the graph.
These provide alternate ways of thinking of designs that may be more intuitive, and are
certainly more visual.
Equations (17.1.1) and (17.1.2) lead to numerical conditions on v, k, and λ that must be
satisfied in order for a BIBD(v, k, λ) to exist.
THEOREM 17.1.9. A BIBD(v, k, λ) cannot exist unless
v−1 v(v − 1)
λ and λ
k−1 k(k − 1)
are integers.
λ(v − 1)/(k − 1)
blocks. Since a point can only appear in an integral number of blocks, the first result follows.
Similarly, By Equation (17.1.2), there must be
λv(v − 1)
k(k − 1)
blocks in the design. Since there can’t be a fractional number of blocks, the second result
follows.
Although these conditions are necessary to the existence of a BIBD, there is no guaran-
tee that a BIBD with specified parameters will exist, even if those parameters satisfy these
conditions.
196 17. Designs
λv(v − 1)
= 2 · 15 · 14/20 = 21.
k(k − 1)
Both of these are integers, so if a design were to exist, each point would appear in 7 blocks,
and there would be 21 blocks. A computer search can verify that no such design exists.
EXERCISES 17.1.11.
1) Show that for any BIBD(v, k, λ), the number of edges of λKv is equal to the number
of edges of Kk times the number of blocks of the design.
2) Suppose there is a BIBD(16, 6, 3). How many blocks does it have? In how many of
those blocks does each point appear?
3) Find an edge-colouring of K5 so that the edges of any colour form a K2 . What are the
parameters of the design to which this corresponds?
4) Here are the blocks of a BIBD with λ = 1:
The design of Example 17.1.6 has the following block intersection graph. Starting from any
vertex, label the vertices clockwise in order by
{a, b, c, d}, {a, e, i, m}, {a, g, l, n}, {a, h, j, o}, {a, f, k, p},
{e, f, g, h}, {b, f, j, n}, {b, h, k, m}, {b, g, i, p}, {b, e, l, o},
{i, j, k, l}, {c, g, k, o}, {c, e, j, p}, {c, f, l, m}, {c, h, i, n},
{m, n, o, p}, {d, h, l, p}, {d, f, i, o}, {d, e, k, n}, {d, g, j, m}.
Each vertex has exactly three other vertices to which it is not adjacent: the vertices that are
5, 10, and 15 vertices away from it around the circle.
Block-intersection graphs have many very nice properties. An example of such a property
was given in a 2013 paper by Atif Aliyan Abueida (1966—) and David Angus Pike (1968—).
They showed that if you consider any non-Hamilton cycle in the block-intersection graph of any
BIBD, the cycle can be “extended”: that is, there is a cycle that includes all of the vertices of
the original cycle, and one additional vertex. For example, in the block-intersection graph of
Example 17.1.12 the cycle
({a, b, c, d}, {d, f, i, o}, {a, e, i, m}, {c, e, j, p}, {c, f, l, m}),
and so on. The new cycle need not necessarily be achieved by simply inserting a vertex between
two consecutive vertices of the previous cycle; it just has to include all of those vertices (and
one more) in it. Abueida and Pike also produced a polynomial-time algorithm for finding cycles
of every possible length in the block-intersection graph of a BIBD.
(V, {B c | B ∈ B})
is a design.
DEFINITION 17.2.1. We call the design constructed by this method, the complementary de-
sign or complement of the design we started with.
EXAMPLE 17.2.3. The complement of the design given in Example 17.1.6, is the following:
EXAMPLE 17.2.5. The collection {1, 2, 5}, {1, 3, 10}, {1, 7, 15} is a difference collection for n =
19. The differences we attain appear in the following table.
17. Designs 199
Difference set i j j − i, i − j
D1 1 2 ±1
D1 1 5 ±4
D1 2 5 ±3
D2 1 3 ±2
D2 1 10 ±9
D2 3 10 ±7
D3 1 7 ±6
D3 1 15 ±14 ≡ ±5 (mod 19)
D3 7 15 ±8
Suppose we have a difference collection for v in which each set D1 , . . . , Dm has the same
cardinality. Use Di + ℓ to denote the set
{d + ℓ (mod v) | d ∈ Di },
performing the modular arithmetic so as to ensure that Di + ℓ ⊆ {1, . . . , v}. Then the sets
{Di + ℓ | 1 ≤ i ≤ m, 0 ≤ ℓ ≤ v − 1}
19 1 2
18 3
4
17
5
16
6
15
7
14
8
13 9
12 10
11
The solid (or blue) triangle has edges of lengths 1, 3, and 4; the dotted (or red) triangle has
edges of lengths 2, 7, and 9; and the dashed (or green) triangle has edges of lengths 6, 8, and 5.
A design created using this method is called a cyclic design, since a small number of “starter
blocks” are being rotated cyclically (in the graph) to find the remaining blocks of the design.
Notice that for a cyclic design to exist, since each set in the difference collection leads to v
blocks in the final design, b must be a multiple of v.
Although these methods can successfully create designs with many different sets of parame-
ters, they are not nearly enough to allow us to determine the parameters for which BIBDs exist.
We noted previously that the necessary conditions given in Theorem 17.1.9 are not sufficient
to guarantee the existence of a BIBD with a particular set of parameters. However, there is a
very powerful result along these lines, known as Wilson’s Theorem after its discoverer, Richard
Michael Wilson (1945—). It tells us that if we fix k, there are only finitely many values for v
that satisfy the necessary conditions but for which no BIBD(v, k, 1) exists. Then by Method 1
(repeating blocks), if a BIBD(v, k, 1) exists, then so does a BIBD(v, k, λ) for any λ. Here is a
formal statement of Wilson’s Theorem.
THEOREM 17.2.6 (Wilson’s Theorem). Given k, there is an integer v(k) such that for every
v > v(k) that satisfies the three conditions:
• v ∈ Z;
• v(v − 1)/[k(k − 1)] ∈ Z; and
• (v − 1)/(k − 1) ∈ Z,
a BIBD(v, k, 1) exists.
We will not give a proof of this theorem.
EXERCISES 17.2.7.
1) Prove that the complement of a BIBD is indeed a design, and that it has the parameters
we claimed in Proposition 17.2.2.
[Hint: Use inclusion-exclusion to determine how many blocks of the original design contain
neither point from an arbitrary pair.]
2) Find the complement of the BIBD(8, 4, 3) given by V = {1, 2, 3, 4, 5, 6, 7, 8} and
{ }
{1, 2, 3, 4}, {5, 6, 7, 8}, {1, 2, 5, 6}, {1, 2, 7, 8}, {3, 4, 5, 6}, {3, 4, 7, 8}, {2, 4, 6, 8},
B= .
{1, 3, 5, 7}, {1, 3, 6, 8}, {2, 4, 5, 7}, {1, 4, 5, 8}, {1, 4, 6, 7}, {2, 3, 5, 8}, {2, 3, 6, 7}
3) By adding two more sets to the sets {1, 3, 7} and {1, 6, 13}, you can create a dif-
ference collection for 25 in which each of the sets has 3 elements, and thus a cyclic
BIBD(25, 3, 1). Find two sets to add.
4) Use a difference set to construct a cyclic (11, 11, 5, 5, 2) design.
17. Designs 201
{ }
5) Show that the collection C = {0, 1, 3}, {0, 4, 5}, {0, 4, 7}, {0, 5, 7} is a difference col-
lection for 13. Construct the design and give its parameters.
6) Determine whether the given set D is a difference set for the given value of n. If it is
a difference set, find the parameters of the resulting cyclic BIBD.
(a) D = {1, 2, 4, 10} for n = 13.
(b) D = {2, 4, 5, 6, 10} for n = 21.
7) Prove that in any cyclic design, there exists an integer c such that b = cv, ck(k − 1) =
λ(v − 1), and r = ck. What is the significance of c in terms of the design?
8) Explain why a BIBD with v = 6, b = 10, k = 3, r = 5, and λ = 2 cannot be cyclic.
9) Does the condition you proved in Exercise 7 show that a BIBD with v = 61, b = 305,
k = 4, r = 20, and λ = 1 cannot be cyclic?
λv(v − 1)
b= ,
k(k − 1)
so b ≥ v implies
λv(v − 1)
≥ v.
k(k − 1)
Since v is the number of points of a design, it must be positive, so dividing through by v does
not reverse the inequality. Thus,
λ(v − 1)
≥ 1.
k(k − 1)
Since k is the number of points in each block, both k and k − 1 must be positive (we
are ignoring the trivial case k = 1), so multiplying through by k(k − 1) does not reverse the
inequality. Thus,
The following equations involving ni are consequences of easy combinatorial proofs, together
with the definition of ni :
∑
k
(17.3.1) ni = b − 1,
i=0
because both sides of this equation count every block except B.
∑
k
(17.3.2) ini = k(r − 1),
i=0
because both sides of this equation count the number of times elements of B appear in some
other block of the design.
∑
k
i(i − 1)ni = k(k − 1)(λ − 1),
i=2
because both sides of this equation count the number of times all of the ordered pairs of elements
from B appear together in some other block of the design. Note that when i = 0 or i = 1, we
have i(i − 1)ni = 0, so in fact
∑
k ∑
k
(17.3.3) i(i − 1)ni = i(i − 1)ni = k(k − 1)(λ − 1).
i=0 i=2
∑
k ∑
k ∑
k ∑
k ∑
k
(x − i)2 ni = (x2 − 2xi + i2 )ni = x2 ni − 2x ini + i2 ni .
i=0 i=0 i=0 i=0 i=0
Using Equations (17.3.1), (17.3.2), and (17.3.4), we see that this is equal to
Hence,
k(b − 1) = bk − k = vr − k.
Hence
r(k − 1) − (v − 1)
λ−1= .
v−1
Therefore,
(λ − 1)(v − 1) = r(k − 1) − v + 1.
Thus, we have
b = vr/k ≥ v,
as desired.
Notice that if k is fixed, then only finitely many values of v do not meet Fisher’s Inequality,
so satisfying this inequality did not need to be added as a condition to Wilson’s Theorem.
EXERCISES 17.3.2.
1) Find values for v, k and λ that satisfy Theorem 17.1.9 but do not satisfy Fisher’s
Inequality. What can you say about the existence of a design with these parameters?
2) Suppose that λ = 1 and k = 20. How big must v be to satisfy Fisher’s Inequality?
What is the smallest value for v that satisfies all of the necessary conditions?
3) Suppose that λ = 2 and k = 20. How big must v be to satisfy Fisher’s Inequality?
What is the smallest value for v that satisfies all of the necessary conditions?
4) Explain how you know there does not exist a BIBD with v = 46, b = 23, and k = 10.
5) Explain how you know there does not exist a BIBD with v = 8, b = 10, k = 4, and
r = 5.
204 17. Designs
6) If B is a BIBD with v = 22, then what can you say about the value of b?
SUMMARY:
• equivalence between designs and (multi)graph colouring/decomposition problem
• necessary conditions for a BIBD
• construction methods for designs
• Wilson’s Theorem
• Fisher’s Inequality
• Important definitions:
◦ design
◦ blocks
◦ balanced, regular, uniform
◦ BIBD
◦ complementary design
◦ difference collection
• Notation:
◦ b, v, r, k, λ
Chapter 18
More designs
18.1. Steiner and Kirkman triple systems
In 1844, Wesley Stoker Barker Woolhouse (1809—1893), editor of the Ladies and Gentleman’s
Diary, posed that publication’s annual prize problem:
Determine the number of combinations that can be made of n symbols, p
symbols in each, with this limitation, that no combination of q symbols which
may appear in any one of them shall be repeated in any other.
If we take q = 2 then this is essentially a design with k = p and v = n, although it need not
be balanced; some pairs might appear once while other pairs do not appear. Although some
responses were printed in 1845, they were not satisfactory, and in 1846 Woolhouse repeated the
question for the special case q = 2 and p = 3.
In 1847, Reverend Thomas Penyngton Kirkman (1806—1895) (previously mentioned in
Chapter 13) found a complete solution to this problem in the case where the design is bal-
anced (with λ = 1), and made some progress towards solving the complete problem. In our
terminology, his solution completely determined the values of v for which a BIBD(v, 3, 1) exists.
Although Jakob Steiner (1796—1863) did not study triple systems until 1853, he came up
with Kirkman’s result independently, and his work was more broadly disseminated in mathe-
matical circles, so these structures still carry his name. Despite this, as we shall see later in
this section, there is a related problem that has been named after Kirkman.
DEFINITION 18.1.1. A triple system is a (regular) balanced design in which every block has
cardinality 3; that is, a BIBD(v, 3, λ).
A Steiner triple system is a triple system with λ = 1.
EXAMPLE 18.1.2. The cyclic BIBD(19, 3, 1) given in Example 17.2.5 is a Steiner triple system.
So is the design on 7 points given by
{1, 2, 3}, {1, 4, 5}, {1, 6, 7}, {2, 4, 6}, {2, 5, 7}, {3, 4, 7}, {3, 5, 6}.
NOTATION 18.1.3. Since the only variable in a Steiner triple system is v, for such a system
on v points we use the notation STS(v).
Triple systems might seem like a very special case of designs, and it would be reasonable to
wonder why we have chosen to single these out for special study and attention. The answer is
that triple systems can be thought of as the smallest interesting examples of designs, since (as
noted previously) if k = 1 there are no pairs in any block and the design is trivial; and if k = 2
then the blocks are simply copies of every possible pair from the set V . So triple systems are a
205
206 18. More designs
natural starting point when we are learning about designs: they include examples that are are
not too big or complicated to understand, but are non-trivial.
If you are now convinced that triple systems are worth studying, you might still be wondering
about Steiner triple systems in particular. We’ve seen that the method of repeating blocks allows
us to construct a triple system for any λ if we first have a triple system with λ = 1, so Steiner
triple systems will be the rarest kind of triple system, and are therefore of particular interest.
In the remainder of this section, we will prove Kirkman’s result characterising the values
of v for which an STS(v) exists. To do this, we will require two results about the existence of
special kinds of Latin squares. There are many connections in combinatorics!
The special kinds of Latin squares we require will be symmetric: that is, the entry in row i
and column j must equal the entry in row j, column i. We will also specify the entries on the
main diagonal: the positions for which the row number and the column number are the same.
LEMMA 18.1.4. For every odd n, there is a symmetric Latin square of order n with 1, 2, …, n
appearing in that order down the main diagonal.
EXAMPLE 18.1.5. When n = 11, here is the (symmetric) Latin square constructed in the
proof of Lemma 18.1.4:
1 7 2 8 3 9 4 10 5 11 6
7 2 8 3 9 4 10 5 11 6 1
2 8 3 9 4 10 5 11 6 1 7
8 3 9 4 10 5 11 6 1 7 2
3 9 4 10 5 11 6 1 7 2 8
9 4 10 5 11 6 1 7 2 8 3
4 10 5 11 6 1 7 2 8 3 9
10 5 11 6 1 7 2 8 3 9 4
5 11 6 1 7 2 8 3 9 4 10
11 6 1 7 2 8 3 9 4 10 5
6 1 7 2 8 3 9 4 10 5 11
You can see that this construction will not work when n is even, since the values of some of
the entries given in the formulas would not be integers. In fact, it is not possible to construct
a symmetric Latin square of order n with the entries 1, . . . n down the main diagonal when n is
even. Fortunately, it is possible to construct something similar that will achieve what we will
require.
18. More designs 207
LEMMA 18.1.6. For every even n, there is a symmetric Latin square of order n with the values
1, . . . , n/2, 1, . . . , n/2 appearing in that order down the main diagonal.
PROOF. Make the entries of the first row
EXAMPLE 18.1.7. When n = 10, here is the (symmetric) Latin square constructed in the
proof of Lemma 18.1.6:
1 6 2 7 3 8 4 9 5 10
6 2 7 3 8 4 9 5 10 1
2 7 3 8 4 9 5 10 1 6
7 3 8 4 9 5 10 1 6 2
3 8 4 9 5 10 1 6 2 7
8 4 9 5 10 1 6 2 7 3
4 9 5 10 1 6 2 7 3 8
9 5 10 1 6 2 7 3 8 4
5 10 1 6 2 7 3 8 4 9
10 1 6 2 7 3 8 4 9 5
We are now ready to characterise the values of v for which there is an STS(v).
THEOREM 18.1.8. An STS(v) exists if and only if v ≡ 1, 3 (mod 6).
PROOF. We prove the two implications separately.
(⇒) Suppose that an STS(v) exists. Then by Theorem 17.1.9, the values
By Lemma 18.1.4, there is a Latin square of order 2q + 1 in which for every 1 ≤ i ≤ 2q + 1, the
entry i appears in position (i, i).
For 1 ≤ i, j ≤ 2q + 1 with i ̸= j, if the entry in position (i, j) of this Latin square is ℓ, then
use new colours to colour the edges that join the vertices in each of the following sets:
{ui , vi−q , x}; {vi , wi−q , x}; and {wi , ui−q , x},
every edge incident with x (as well as all of our other remaining edges) will have been coloured.
Now all of the edges of K6q+1 have been coloured, and each colour class forms a K3 , so we
have constructed a Steiner triple system.
EXAMPLE 18.1.9. We will use the method of Theorem 18.1.8 to construct an STS(15).
18. More designs 209
1 4 2 5 3
4 2 5 3 1
2 5 3 1 4
5 3 1 4 2
3 1 4 2 5
Here are the blocks we form from this Latin square:
After solving Woolhouse’s problem, Kirkman noticed that his construction of an STS(15)
had a very nice property. He challenged others to come up with this solution in the following
problem that he published in the 1850 edition of the Ladies and Gentleman’s Diary:
Fifteen young ladies in a school walk out three abreast for seven days in suc-
cession: it is required to arrange them daily so that no two shall walk twice
abreast.
This has become known as Kirkman’s Schoolgirl Problem.
Although this problem begins by requiring an STS(15), it has the additional requirement
that it must be possible to partition the blocks of this design (the rows of young ladies) into
seven groups (of five blocks each) so that every point (young lady) appears exactly once in each
group. This extra requirement comes from the fact that each of the young ladies must walk out
every day, and can only be in one row in any given day.
DEFINITION 18.1.10. A BIBD is a resolvable design if the blocks of the design can be
partitioned into sets, each of which forms a partition of the point set of the BIBD.
A Kirkman triple system is a resolvable Steiner triple system.
Notice that since each block has 3 points in it, a Kirkman triple system is only possible if
v/3 is an integer. Since a Kirkman triple system is also a Steiner triple system, this means that
we must have v ≡ 3 (mod 6).
There are seven non-isomorphic Kirkman triple systems of order 15.
Kirkman triple systems are also known to exist whenever v ≡ 3 (mod 6) (this result was
presented at a conference in 1968 by Dwijendra Kumar Ray-Chaudhuri (1933—) and Richard
Michael Wilson (1945—), and published in 1971 in the proceedings of that conference).
THEOREM 18.1.11 (Ray-Chaudhuri and Wilson, 1971). There is a Kirkman triple system
whenever v ≡ 3 (mod 6).
EXERCISES 18.1.12.
1) For v = 37, give the Latin square you would have to use in order to construct a Steiner
triple system using the method described in the proof of Theorem 18.1.8.
2) For v = 39, give the Latin square you would have to use in order to construct a Steiner
triple system using the method described in the proof of Theorem 18.1.8.
210 18. More designs
3) For v = 19, use the method described in the proof of Theorem 18.1.8 to construct a
Steiner triple system.
4) Is the STS(15) constructed in Example 18.1.9 a Kirkman triple system? Explain your
answer. [Hint: Think of Pigeonhole-type arguments.]
5) Find all values of λ for which a triple system on six varieties exists. For each such value
of λ, either give a design or explain how to construct it.
[Hint: Begin by showing that if such a design exists, its parameters are (2r, 6, r, 3, 2r/5). Then
determine what values r can take on. Finally use some results about how to construct designs.]
6) Construct an STS(13) design. Show your work.
7) Let v = 21.
(a) Write down the Latin square that you would use to construct a Steiner triple sys-
tem (for this value of v) using the method described in the proof of Theorem 18.1.8.
(b) For the resulting Steiner triple system, which triples contain:
(i) both u1 and u3 ?
(ii) both v2 and w7 ?
(iii) both u3 and w4 ?
(iv) both v5 and w5 ?
(v) w3 ?
8) Let v = 27.
(a) Write down the Latin square that you would use to construct a Steiner triple sys-
tem (for this value of v) using the method described in the proof of Theorem 18.1.8.
(b) For the resulting Steiner triple system, which triples contain:
(i) both v3 and u8 ?
(ii) both u4 and w4 ?
(iii) both u5 and w4 ?
(iv) v2 ?
(v) both v2 and v5 ?
18.2. t-designs
In a BIBD, every pair appears together λ times. In the notation of Woolhouse’s problem, q = 2.
What about larger values of q? (We’ll still only consider the case where every q-set appears an
equal number of times λ, so the design must be balanced, but we will include the more general
situation that λ ≥ 1.)
DEFINITION 18.2.1. A t-(v, k, λ) design is a design on v points with blocks of cardinality
k, such that every t-subset of V appears in exactly λ blocks.
So far, all we have looked at have been 2-designs.
THEOREM 18.2.2. In a t-(v, k, λ) design,
( ) ( )
k−i v−i
is a divisor of λ for every 0 ≤ i ≤ t − 1.
t−i t−i
18. More designs 211
PROOF. We (k) first consider the special case where i = 0. Notice that in each of the b blocks, ( )
there are t subsets of cardinality t that appear in that block. So in the entire design, b kt
subsets of cardinality
( ) t appear.
There exist vt subsets (v)of cardinality t from the v points of V , and each appears in λ blocks,
so in the entire design, λ t subsets of cardinality t appear.
( ) ( )
Thus, b kt = λ vt .
( )
Similarly, if we fix any set of i varieties, there are v−i
t−i subsets of cardinality t that include
these i varieties. Each such subset appears in λ blocks. However, for each of the blocks that
contains these i elements (the number of these will be our( quotient),
) we can complete our i-set
to a set of cardinality t that lies within this block, in k−i ways. Thus, we have counted
(k−i) (k−i
t−i) ( )
any such block t−i times in the preceding count. So t−i must be a divisor of λ v−i t−i , as
claimed.
{1, 5, 6, 10}, {1, 2, 8, 9}, {2, 3, 6, 7}, {3, 4, 9, 10}, {4, 5, 7, 8}, {1, 3, 4, 7},
{2, 4, 5, 10}, {1, 3, 5, 8}, {1, 2, 4, 6}, {2, 3, 5, 9}, {4, 6, 8, 9}, {1, 7, 9, 10},
{3, 6, 8, 9}, {5, 6, 7, 9}, {2, 7, 8, 10}, {1, 2, 3, 10}, {1, 2, 5, 7}, {1, 4, 5, 9},
{1, 3, 6, 9}, {1, 6, 7, 8}, {1, 4, 8, 10}, {2, 3, 4, 8}, {2, 4, 7, 9}, {2, 5, 6, 8},
{2, 6, 9, 10}, {3, 4, 5, 6}, {3, 5, 7, 10}, {3, 7, 8, 9}, {4, 6, 7, 10}, {5, 8, 9, 10}
λ(v − t + 1)/(k − t + 1)
blocks. This is because if we fix a (t − 1)-set, it can be made into a t-set by adding any one of
the v − t + 1 other elements of V . Each of these t-sets appears in λ of the blocks. However,
some of these blocks are the same; in fact, we have counted each block containing this (t−1)-set
once for every other element of the block (since every other element of the block forms a t-set
when put together with the (t − 1)-set). So every block that contains this (t − 1)-set has been
counted k − (t − 1) times. The result follows. (From the above formula we can see that k − t + 1
is a divisor of λ(v − t + 1); this is exactly the condition that Theorem 18.2.2 gives when we take
i = t − 1.)
212 18. More designs
Therefore, since
1(10 − 3 + 1)/(4 − 3 + 1) = 4,
the 3 − (10, 4, 1) design that we gave above, is also a 2 − (10, 4, 4) design. In more generality, a
t − (v, k, λ) design with t > 2 is also a (t − 1) − (v, k, λ(v − t + 1)/(k − t + 1)) design.
The name of Jakob Steiner (1796—1863) is also used in this more general context, and
without the constraint on the block sizes.
DEFINITION 18.2.5. A Steiner system is a t-design with λ = 1.
The 3-(10, 4, 1) design above is a Steiner system.
Our ability to construct Steiner systems when k > 3, or when t > 2, except in trivial cases,
is almost nonexistent. In fact, there are no known constructed Steiner systems with t > 5,
with the exception that taking every possible t-subset of a v-set is always a (trivial) t − (v, t, 1)
design.
Despite this, in 2014 a remarkable theorem was proved by Peter Keevash (1978—), along
similar lines to Wilson’s Theorem, but applying to this more general context.
The necessary conditions given in Theorem 18.2.2 are not sufficient to guarantee the exis-
tence of a BIBD with a particular set of parameters. However, Keevash’s Theorem tells us that
if we fix k and t, there are only finitely many values for v that satisfy the necessary conditions
but for which no t − (v, k, 1) design exists. His proof was probabilistic, so does not produce
constructions for any designs. Here is a formal statement of Keevash’s Theorem.
THEOREM 18.2.6 (Keevash’s Theorem). Given k and t, there is an integer v(k, t) such that
for every v > v(k, t) that satisfies the conditions:
• v ∈ Z; and
• for every 0 ≤ i ≤ t − 1,
( ) ( )
k−i v−i
is a divisor of λ .
t−i t−i
2) If v = 15 and λ = 1, what are all possible values of k and t ≥ 2 for which t-designs
might exist? Do not include any trivial t−(v, t, 1) design, so you may assume v > k > t.
3) Is it possible for a 3-(16, 6, 1) design to exist? If so, how many blocks will it have?
What will the value of r be?
4) Let B be the (7, 3, 1)-design. Define a new design D as follows, on the varieties
{1, . . . , 8}. It has 14 blocks, of two types:
I. the blocks of B but with variety 8 added to each; and
II. the blocks of the complementary design to B.
18. More designs 213
DEFINITION 18.3.2. A (finite) affine plane consists of a (finite) set of points, a (finite) set of
lines, and an incidence relation between the points and the lines. The incidence relation must
satisfy these Euclidean axioms:
214 18. More designs
PROOF. The following diagram may be a helpful visual aid as you read through the proof
below.
p
L
q
r
L′ M
Towards a contradiction, suppose that there were a line L that contained only a single point,
p. By the final axiom, there are at least two other points in the finite affine plane, q and r, that
do not both lie on a line with p. By the first axiom, there is a line L′ that contains both p and
q (but by our choice of q and r, L′ does not contain r). Now by the parallel postulate, there is
a line M through r that is parallel to L′ . Furthermore, there is a unique line through p that is
parallel to M . But we know that M is parallel to L′ ; in addition, M does not contain p, so it
is also parallel to L; this is a contradiction.
We can now show that every line contains the same number of points.
PROPOSITION 18.3.4. In a finite affine plane, if one line contains exactly n points, then
every line contains exactly n points.
PROOF. Again, we begin with a diagram that may be a helpful visual aid to understanding
this proof.
L′
p
q
L
M M′ M ′′
Let L be a line that contains exactly n points, and let L′ be any other line of the finite
affine plane. By Proposition 18.3.3, we know that n > 1, and that L′ also contains at least
two points (we observed above that no line can be empty of points). Since any two points lie
together on a unique line, if L and L′ meet, they meet in a single point, so there is a point p of
L that is not in L′ , and a point q of L′ that is not in L. By the first axiom, there is a line M
that contains the points p and q.
18. More designs 215
We define a map ψ from points of L to points of L′ as follows. Let ψ(p) = q. For any other
point p′ of L (with p′ ̸= p), by the parallel postulate there is a unique line M ′ through p′ that
is parallel to M . Since M passes through q and is parallel to M ′ , it is the unique line with
this property, so in particular, L′ cannot be parallel to M ′ . Therefore, M ′ has a unique point
of intersection, say q ′ , with L′ . Define ψ(p′ ) = q ′ . Since M ′ and q ′ were uniquely determined,
the map ψ is well-defined (that is, there is no ambiguity about which point of L′ is found to be
ψ(p′ )).
We claim that ψ is a bijection between the points of L and the points of L′ ; proving this will
complete the proof. We first show that ψ is one-to-one. Suppose that ψ(p1 ) = q1 , ψ(p2 ) = q2 ,
and q1 and q2 are actually the same point of L′ . Then by the definition of ψ, q1 is on some
line M1 that is parallel to M , and contains p1 , while q2 is on some line M2 that is parallel to
M , and contains p2 . Since q1 = q2 , the parallel postulate tells us that we must have M1 = M2 .
This line can only meet L in a single point, so we must have p1 = p2 . Thus, ψ is one-to-one.
To show that ψ is onto, let q ′′ be any point of L′ with q ′′ ̸= q (we already know that q has
a pre-image, p). By the parallel postulate, there is a unique line M ′′ through q ′′ that is parallel
to M . Since M is the unique line through p that is parallel to M ′′ , we see that L is not parallel
to M ′′ , so L must meet M ′′ at some point that we will call p′′ . Now by the definition of ψ, we
have ψ(p′′ ) = q ′′ . Thus, q ′′ has a pre-image, so ψ is onto.
We refer to the number of points on each line of a finite affine plane as the order of the
plane. We can now figure out how many points are in a finite affine plane of order n.
PROPOSITION 18.3.5. A finite affine plane of order n has n2 points.
PROOF. Since the plane has at least three points, not all of which lie on the same line, it has
at least two lines L and L′ that intersect at a point q but are not equal. We know that each of
these lines contains n points. By the parallel postulate, for each of the n − 1 points on L′ that
is not on L, there is a line through that point that is parallel to L. Now, L and these n − 1 lines
that are parallel to L each contain n points, and since they are all parallel (it is an exercise,
see below, to prove that if M is parallel to L and N is parallel to L, then N is parallel to M ),
these points are all distinct. Therefore the plane has at least n2 points.
Consider any point p that is not on L. By the parallel postulate, there must be a line P
through p that is parallel to L. Now, L is the unique line through q that is parallel to P , so in
particular, L′ is not parallel to P . Therefore, L′ and P have a point of intersection, which is
one of the n − 1 points of L′ that is not on L. So P was one of the n − 1 lines that we found
in our first paragraph, meaning that p is one of the n2 points that we found there. Thus, the
plane has exactly n2 points.
You might be wondering by now why we are spending so much time looking at affine planes,
when they are a geometric structure. Despite the fact that they come from geometry, finite
affine planes can be thought of as a special kind of design.
Think of the points of a finite affine plane as points of a design, and the lines as blocks,
with a point being in a block if it is incident with (on) the corresponding line. The first axiom
for the incidence relation guarantees that every pair of points appear together in exactly one
block, so our design has λ = 1. By Proposition 18.3.4, we see that an affine plane of order n is
uniform, with k = n. By Proposition 18.3.5, an affine plane of order n has v = n2 . Although
we have not included a proof of this, it can also be shown that this design is regular, so it is in
fact a BIBD(n2 , n, 1).
Using
( ) ( )
k v
b =λ
t t
216 18. More designs
from Theorem 18.2.2, we see that in a finite affine plane of order n looked at as a design, we
( ) ( 2)
have b n2 = n2 , so bn(n − 1) = n2 (n2 − 1). Hence b = n(n + 1). In other words, a finite affine
plane of order n has n(n + 1) lines.
EXAMPLE 18.3.6. A finite affine plane of order 3 has 32 = 9 points. Each line has 3 points,
and there are 3(4) = 12 lines. Since each line has three points, every line lies in a parallel class
consisting of three mutually parallel lines, so there are four such parallel classes. We can choose
two of the parallel classes of lines to be “horizontal” and “vertical” lines. The other two classes
will be the two types of diagonal lines. We can’t draw all of these as straight lines, so we have
drawn one parallel class of lines as sets of three points joined by dashes, and the other as sets
of three points joined by dots.
The dashes and dots that join sets of points that aren’t in a straight line may not provide
a very clear image of what’s going on; it is probably clearer to think of the diagonal lines
as “wrapping around” when they go off the bottom, top, or either side of the image, and
reappearing on the opposite side.
There is a nice connection between affine planes and mutually orthogonal Latin squares.
THEOREM 18.3.7. There is an affine plane of order n > 1 if and only if there are n − 1
mutually orthogonal Latin squares of order n.
PROOF. (⇒) An affine plane of order n has n + 1 classes of parallel lines (each class containing
n lines). Consider two of these sets as the horizontal lines and the vertical lines: H1 , . . . , Hn
and V1 , . . . , Vn . Label a point as (i, j) if it lies at the intersection of Vi and Hj . Since each of
the n2 points lies on a vertical line and on a horizontal line, and since every pair of points lie
together on only one line, this is actually a bijection between {1, . . . , n} × {1, . . . , n} and the
points of the affine plane; that is, this provides n2 coordinates that uniquely determine the n2
points of the plane.
Consider any one of the remaining parallel classes of n lines, L1 , . . . , Ln . Observe that every
point of the affine plane lies on precisely one of these lines. Create a Latin square from this
parallel class by placing k in position (i, j) of the Latin square if and only if the point (i, j) of
the affine plane lies on line Lk . Since every line of L1 , . . . , Ln meets every line of H1 , . . . , Hn
exactly once (by the axioms of an affine plane), each entry will appear exactly once in each
row. Similarly, since every line of L1 , . . . , Ln meets every line of V1 , . . . , Vn exactly once (by
the axioms of an affine plane), each entry will appear exactly once in each column. So we have
indeed created a Latin square.
We will now show that the n − 1 Latin squares created by this method (using the n − 1
parallel classes of lines that remain after excluding the ones we have designated as horizontal
and vertical lines) are mutually orthogonal. We’ll do this by considering two arbitrary Latin
squares, L (coming from the lines L1 , . . . , Ln ) and M (coming from the lines M1 , . . . , Mn ). In
position (i, j), the entry of L being i′ means that line Li′ passes through the point (i, j) (which
is the intersection of lines Vi and Hj ). Similarly, this entry of M being j ′ means that line Mj ′
passes through the point (i, j) (which is the intersection of lines Vi and Hj ). Since the lines Li′
and Mj ′ have a unique point of intersection, there cannot be any other positions in which the
entry of L is i′ while the entry of M is j ′ . Thus, each ordered pair (i′ , j ′ ) ∈ {1, . . . , n}×{1, . . . , n}
18. More designs 217
must appear in exactly one position as the entries of L and M (in that order), and hence L and
M are orthogonal. Since they were arbitrary, we have n − 1 mutually orthogonal Latin squares.
(⇐) The converse of this proof uses the same idea, in the opposite direction. Given n − 1
mutually orthogonal n by n Latin squares, take the n2 coordinate positions to be the points of
our affine plane. Define two parallel classes of lines (each containing n lines) to be the points
whose first coordinate is equal (so all of the points with first coordinate 1 form one line, and
all of the points with first coordinate 2 form a second line, etc.), and the points whose second
coordinate is equal. Each of the n − 1 Latin squares determines an additional parallel class of n
lines: namely, each line consists of the points for which the entry of the Latin square has some
fixed value. Since n > 1, there are clearly at least three points that are not all on the same
line. We leave it as an exercise to prove that any two points lie together in a unique line, and
that the parallel postulate is satisfied.
EXAMPLE 18.3.8. Use the formula from the proof of Theorem 16.2.7 to construct 6 MOLS of
order 7. Use the construction given in the proof of Theorem 18.3.7 to construct an affine plane
of order 7 from your squares.
0 1 2 3 4 5 6 0 1 2 3 4 5 6
1 2 3 4 5 6 0 2 3 4 5 6 0 1
2 3 4 5 6 0 1 4 5 6 0 1 2 3
3 4 5 6 0 1 2 6 0 1 2 3 4 5
4 5 6 0 1 2 3 1 2 3 4 5 6 0
5 6 0 1 2 3 4 3 4 5 6 0 1 2
6 0 1 2 3 4 5 6 0 1 2 3 4 5
0 1 2 3 4 5 6 0 1 2 3 4 5 6
3 4 5 6 0 1 2 4 5 6 0 1 2 3
6 0 1 2 3 4 5 1 2 3 4 5 6 0
2 3 4 5 6 0 1 5 6 0 1 2 3 4
5 6 0 1 2 3 4 2 3 4 5 6 0 1
1 2 3 4 5 6 0 6 0 1 2 3 4 5
4 5 6 0 1 2 3 3 4 5 6 0 1 2
0 1 2 3 4 5 6 0 1 2 3 4 5 6
5 6 0 1 2 3 4 6 0 1 2 3 4 5
3 4 5 6 0 1 2 5 6 0 1 2 3 4
1 2 3 4 5 6 0 4 5 6 0 1 2 3
6 0 1 2 3 4 5 3 4 5 6 0 1 2
4 5 6 0 1 2 3 2 3 4 5 6 0 1
2 3 4 5 6 0 1 1 2 3 4 5 6 0
The affine plane will have 72 = 49 points, and we will denote these as ordered pairs (a, b),
where a, b ∈ {1, . . . , 7} and consider them to represent the 49 positions in a 7 by 7 Latin square.
There will be 7(8) = 56 lines, in 8 parallel classes of seven lines each. Although we could draw
the affine plane, you’ve already seen from the affine plane of order 3 that a black-and-white
image all of which is pre-drawn can be more confusing than helpful, so instead we will list each
of the 56 lines as a set of 7 points.
218 18. More designs
{(1, 1), (2, 1), (3, 1), (4, 1), (5, 1), (6, 1), (7, 1)}, {(1, 2), (2, 2), (3, 2), (4, 2), (5, 2), (6, 2), (7, 2)},
{(1, 3), (2, 3), (3, 3), (4, 3), (5, 3), (6, 3), (7, 3)}, {(1, 4), (2, 4), (3, 4), (4, 4), (5, 4), (6, 4), (7, 4)},
{(1, 5), (2, 5), (3, 5), (4, 5), (5, 5), (6, 5), (7, 5)}, {(1, 6), (2, 6), (3, 6), (4, 6), (5, 6), (6, 6), (7, 6)},
{(1, 7), (2, 7), (3, 7), (4, 7), (5, 7), (6, 7), (7, 7)}
and similarly the second parallel class will represent the vertical rows:
{(1, 1), (1, 2), (1, 3), (1, 4), (1, 5), (1, 6), (1, 7)}, {(2, 1), (2, 2), (2, 3), (2, 4), (2, 5), (2, 6), (2, 7)},
{(3, 1), (3, 2), (3, 3), (3, 4), (3, 5), (3, 6), (3, 7)}, {(4, 1), (4, 2), (4, 3), (4, 4), (4, 5), (4, 6), (4, 7)},
{(5, 1), (5, 2), (5, 3), (5, 4), (5, 5), (5, 6), (5, 7)}, {(6, 1), (6, 2), (6, 3), (6, 4), (6, 5), (6, 6), (6, 7)},
{(7, 1), (7, 2), (7, 3), (7, 4), (7, 5), (7, 6), (7, 7)}.
The remaining six parallel classes will each represent one of the Latin squares. In the next
parallel class, the first line consists of all of the points where the entry of the first Latin square
is 0; the second consists of all the points where the entry is 1, and so on.
{(1, 1), (7, 2), (6, 3), (5, 4), (4, 5), (3, 6), (2, 7)}, {(2, 1), (1, 2), (7, 3), (6, 4), (5, 5), (4, 6), (3, 7)},
{(3, 1), (2, 2), (1, 3), (7, 4), (6, 5), (5, 6), (4, 7)}, {(4, 1), (3, 2), (2, 3), (1, 4), (7, 5), (6, 6), (5, 7)},
{(5, 1), (4, 2), (3, 3), (2, 4), (1, 5), (7, 6), (6, 7)}, {(6, 1), (5, 2), (4, 3), (3, 4), (2, 5), (1, 6), (7, 7)},
{(7, 1), (6, 2), (5, 3), (4, 4), (3, 5), (2, 6), (1, 7)}.
The next parallel class comes from the second Latin square (reading across, so the second
square is the second one in the first line):
{(1, 1), (6, 2), (4, 3), (2, 4), (7, 5), (5, 6), (3, 7)}, {(2, 1), (7, 2), (5, 3), (3, 4), (1, 5), (6, 6), (4, 7)},
{(3, 1), (1, 2), (6, 3), (4, 4), (2, 5), (7, 6), (5, 7)}, {(4, 1), (2, 2), (7, 3), (5, 4), (3, 5), (1, 6), (6, 7)},
{(5, 1), (3, 2), (1, 3), (6, 4), (4, 5), (2, 6), (7, 7)}, {(6, 1), (4, 2), (2, 3), (7, 4), (5, 5), (3, 6), (1, 7)},
{(7, 1), (5, 2), (3, 3), (1, 4), (6, 5), (4, 6), (2, 7)}.
{(1, 1), (5, 2), (2, 3), (6, 4), (3, 5), (7, 6), (4, 7)}, {(2, 1), (6, 2), (3, 3), (7, 4), (4, 5), (1, 6), (5, 7)},
{(3, 1), (7, 2), (4, 3), (1, 4), (5, 5), (2, 6), (6, 7)}, {(4, 1), (1, 2), (5, 3), (2, 4), (6, 5), (3, 6), (7, 7)},
{(5, 1), (2, 2), (6, 3), (3, 4), (7, 5), (4, 6), (1, 7)}, {(6, 1), (3, 2), (7, 3), (4, 4), (1, 5), (5, 6), (2, 7)},
{(7, 1), (4, 2), (1, 3), (5, 4), (2, 5), (6, 6), (3, 7)}.
{(1, 1), (4, 2), (7, 3), (3, 4), (6, 5), (2, 6), (5, 7)}, {(2, 1), (5, 2), (1, 3), (4, 4), (7, 5), (3, 6), (6, 7)},
{(3, 1), (6, 2), (2, 3), (5, 4), (1, 5), (4, 6), (7, 7)}, {(4, 1), (7, 2), (3, 3), (6, 4), (2, 5), (5, 6), (1, 7)},
{(5, 1), (1, 2), (4, 3), (7, 4), (3, 5), (6, 6), (2, 7)}, {(6, 1), (2, 2), (5, 3), (1, 4), (4, 5), (7, 6), (3, 7)},
{(7, 1), (3, 2), (6, 3), (2, 4), (5, 5), (1, 6), (4, 7)}.
{(1, 1), (3, 2), (5, 3), (7, 4), (2, 5), (4, 6), (6, 7)}, {(2, 1), (4, 2), (6, 3), (1, 4), (3, 5), (5, 6), (7, 7)},
{(3, 1), (5, 2), (7, 3), (2, 4), (4, 5), (6, 6), (1, 7)}, {(4, 1), (6, 2), (1, 3), (3, 4), (5, 5), (7, 6), (2, 7)},
{(5, 1), (7, 2), (2, 3), (4, 4), (6, 5), (1, 6), (3, 7)}, {(6, 1), (1, 2), (3, 3), (5, 4), (7, 5), (2, 6), (4, 7)},
{(7, 1), (2, 2), (4, 3), (6, 4), (1, 5), (3, 6), (5, 7)}.
18. More designs 219
And finally,
{(1, 1), (2, 2), (3, 3), (4, 4), (5, 5), (6, 6), (7, 7)}, {(2, 1), (3, 2), (4, 3), (5, 4), (6, 5), (7, 6), (1, 7)},
{(3, 1), (4, 2), (5, 3), (6, 4), (7, 5), (1, 6), (2, 7)}, {(4, 1), (5, 2), (6, 3), (7, 4), (1, 5), (2, 6), (3, 7)},
{(5, 1), (6, 2), (7, 3), (1, 4), (2, 5), (3, 6), (4, 7)}, {(6, 1), (7, 2), (1, 3), (2, 4), (3, 5), (4, 6), (5, 7)},
{(7, 1), (1, 2), (2, 3), (3, 4), (4, 5), (5, 6), (6, 7)}.
comes from the sixth Latin square.
Every affine plane that we know of, has as its order some prime power. We have previously
seen (through the connection to MOLS) that there are affine planes of every prime order (in
fact, we mentioned without proof that this is true for every prime power order). Many design
theorists have tried to answer the question of whether or not the order of an affine plane must
always be a prime power, but the answer is not yet known. It was only in 1989 that the
nonexistence of an affine plane of order 10 was proven. In fact, it is not currently known
whether or not there is an affine plane of order 12. (See Section 16.2 for more about these
facts.)
EXERCISES 18.3.9.
1) Prove that if L, M , and N are lines of an affine plane, and L is parallel to both M and
N , then M is parallel to N .
2) Draw a finite affine plane of order 5. How many lines does it have?
3) How many points, and how many lines are in a finite affine plane of order 19?
4) Prove the omitted details from the proof of Theorem 18.3.7: that is, that the given
construction yields a structure that satisfies the axioms of an affine plane.
5) Draw an affine plane of order 5. Use the construction given in the proof of Theo-
rem 18.3.7 to produce 4 mutually orthogonal Latin squares of order 5 from your plane.
You have seen this structure already in this course; it is the same as the BIBD(7, 3, 1) that
appeared in Example 17.1.4.
The following is a very interesting connection. We will not try to present the proof here,
but it is a natural extension of the similar result that we proved for affine planes.
THEOREM 18.4.3. There is a finite projective plane with n + 1 points on each line, if and only
if there is a complete set of n − 1 MOLS of order n.
EXERCISES 18.4.4.
1) Is every design with λ = 1 a projective plane? If not, what condition could fail?
2) Which (if any) of the designs we have seen in this course, are projective planes?
3) From our results on MOLS, for what values can you be sure that a projective plane
exists?
4) From our results on MOLS, for what values can you be sure that a projective plane
does not exist?
5) What can you determine about the parameters of a design that corresponds to a pro-
jective plane?
SUMMARY:
• construction of Steiner triple systems
• structure of affine planes
• connection between affine planes and MOLS
• Important definitions:
◦ triple system, Steiner triple system
◦ resolvable design, Kirkman triple system
◦ t-design
◦ affine plane
◦ projective plane
• Notation:
◦ STS(v)
Chapter 19
EXAMPLE 19.1.2. Perhaps the word 0110 tells an automated factory to close the 2nd and 3rd
valves. If we send that message over a wireless network, interference (or some other issue) might
change one of the bits, so the factory receives the message 0010. As a result, the factory closes
only the 3rd valve, and leaves the 2nd valve open. This could have disastrous consequences, so
we would like to do something to avoid such problems.
EXAMPLE 19.1.3. One simple solution is to append a check-bit to the end of the message. To
do this, we set three rules:
1) We require all messages to have a certain length. (For example, let’s say that all
messages must have exactly 5 bits.)
2) We require all messages to have an even number of 1s.
3) We agree that the final bit of the message (called a “parity check-bit” ) will not convey
any information, but will be used only to guarantee that Rule 2 is obeyed. (Thus, each
message we send will have 4 bits of information, plus the check bit.)
In particular, if we wish to send the message 0110 (which already has an even number of
1s), then we append 0 to the end, and send the message 01100. If, say, the 2nd bit gets changed
in transmission, so the factory receives the message 00100, then the factory’s computer control
can see that this cannot possibly be the intended message, because it has an odd number of 1s.
So the factory can return an error message, asking us to send our instructions again.
Remark 19.1.4. As a real-life example, bar-code scanners used by cashiers employ the above
principle: if the check-bit is not correct, then the scanner does not beep, so the cashier knows
that the item needs to be rescanned.
EXERCISE 19.1.5. Under the rules of Example 19.1.3, which of the following strings are allowed
to be sent as a message?
It is sometimes not feasible to have a message re-sent (for example, if it spends a long time
in transit), so it would be much better to have a system that enables the recipient to correct
transmission errors, not just detect them.
EXAMPLE 19.1.6 (Triple-repetition code). We could agree to send each bit of our message
3 times. For example, if we want to send the message 0110, then we would transform (or
“encode” ) it as 000111111000. If, say, the 2nd bit gets garbled, so the factory receives
010111111000, then it knows there was a problem in the transmission of the first 3 bits, because
they are not all the same. Furthermore, since most of these bits are 0, the factory can figure
out that we probably meant to say 000, and correctly decode the entire message as 0110.
The triple-repetition code works, but it is very inefficient, because only one-third of the
bits we send are conveying information — most of the bits are check-bits that were added to
correct the possible errors. After developing some theory, we will see some codes that are able
to correct every single-bit error, but use far fewer check bits.
EXERCISE 19.1.7. Let Tn be the set of all ternary sequences of length n (so every entry is
0, 1, or 2). Write a recurrence relation for cn , the number of code words from Tn that have
no 2 consecutive zeros. Use generating functions to solve your recurrence relation, deriving an
explicit formula for cn .
Remark 19.2.3. When two bits are “transposed” (or “switched”), meaning that a string 01 gets
changed to 10 (or vice-versa), this counts as two bits being different, because a 0 is changed to
a 1 and a 1 is changed to a 0, even though you might think of the switch as being only a single
operation.
EXERCISE 19.2.4. Compute the Hamming distance between the following pairs of words:
Remark 19.2.7. Exercise 19.2.6.4 is called the triangle inequality, because it says that the
length of one side of a triangle is always less than (or equal to) the sum of the lengths of the
other two sides.
DEFINITION 19.2.8. The minimum distance of a code C (denoted d(C)) is the smallest Ham-
ming distance between two distinct elements of C.
EXAMPLE 19.2.9.
( )
1) d {100, 010, 011} = 1 (because d(010, 011) = 1).
( )
2) d {000, 011, 101, 110} = 2.
( )
3) d {10001, 11111} = 3.
EXERCISE 19.2.10. What is the minimum distance of each of the following codes?
1) { tell , tale , sale , date }
2) { mon , tue , wed , thu , fri , sat , sun }
3) {00000, 01011, 10101, 10110, 10011}
Making the minimum distance of a code C large is the key to ensuring that it can detect
(or correct) large errors. We will make this idea very explicit in our next two results:
THEOREM 19.2.11. A code C can detect all possible errors affecting at most k bits if and only
d(C) > k.
224 19. Designs and Codes
Although a minimum distance of k allows us to detect errors that affect at most k bits, it
isn’t sufficient to allow us to correct all such errors. For the purposes of correcting errors, we
require the minimum distance to be twice this large.
THEOREM 19.2.12. A code C can correct all possible errors affecting at most k bits if and
only d(C) > 2k.
EXERCISES 19.2.13.
1) Suppose that a code C has a minimum distance of 7.
(a) How many errors can it detect?
(b) How many errors can it correct?
2) Suppose that a code C has a minimum distance of 6.
(a) How many errors can it detect?
(b) How many errors can it correct?
EXERCISE 19.2.14. Let Bn represent the set of binary strings of length n. Prove that a code
from B10 that has more than 2 words, cannot correct 3 errors. Hypothesize a generalisation of
this result to codes on Bn with more than 2 words.
1 1 1
Namely (performing all arithmetic modulo 2), we have
0
0 1
G 1 =
0 .
0
1
226 19. Designs and Codes
In fact, multiplying any 3-bit string by G yields the same string with its parity check-bit
appended.
x1
x1
x2
PROOF. We see that G x2 =
, and x1 + x2 + x3 (mod 2) is 0 if there are an
x3
x3
x1 + x2 + x3
even number of 1s among x1 , x2 , and x3 , and it is 1 if there are an odd number of 1s among
x1 , x2 , and x3 .
Remark 19.3.3. In the next section, we will see how to choose G so that the resulting code C
can correct errors.
Although many important error-correcting codes are constructed by other methods, we will
only discuss the ones that come from generator matrices (except in Section 19.5).
DEFINITION 19.3.4. Any code that comes from a generator matrix G (by the General Method
described above) is said to be a binary linear code.
EXAMPLE 19.3.5. Find all the codewords of the binary linear code C corresponding to the
generator matrix
[ ] [ ]
I3 1 0 1
G= , with A = .
A 0 1 1
SOLUTION. We have
1 0 0
[ ] 0 1 0
I
G= 3 =
0 0 1.
A 1 0 1
0 1 1
We use this matrix to encode each of the 23 = 8 binary strings of length 3:
0 0 0 0
0
0 0 0 0 1 0 1
G 0 = 0 ,
G 0 = 1 ,
G 1 = 0 ,
G 1 = 1 ,
0 0 1 1 0 0 1 1
0 1 1 0
1 1 1 1
1 0 1 0 1 1 1 1
G 0 =
0 , G 0 =
1 , G 1 =
0 , G 1 =
1 .
0 1 1 0 0 1 1 0
0 1 1 0
19. Designs and Codes 227
[ ]
I
EXERCISES 19.3.6. Encode each of the given words by using the generating matrix G = k
A
associated to the given matrix A.
[ ]
1 1 0 0
1) A = . Words to encode: 0101, 0010, 1110.
1 0 0 1
1 1 0
1 0 1
2) A =
0 1 1. Words to encode: 110, 011, 111, 000.
1 1 1
The generator matrix provides an easy way to encode messages for sending, but it is hard
to use it to decode a message that has been received. For that, the next section will introduce
a slightly different matrix. From this new matrix, it will be easy to determine whether the
corresponding code can correct every single-bit error.
NOTATION 19.4.1. A[binary ] linear code is of type (n, k) (or we say C is an (n, k) code) if its
Ik
generator matrix G = is an n × k matrix. In other words, G encodes messages of length k
A
as codewords of length n, which means that the number of check bits is n − k. We usually use r
to denote the number of check bits, so r = n − k. Then A is an r × k matrix.
EXERCISE 19.4.2. How many codewords are there in a binary linear code of type (n, k)?
[ ]
Ik
DEFINITION 19.4.3. If G = is the generator matrix of a binary linear code C, and A is
A
an r × k matrix (so C is of type (k + r, k)), then the parity-check matrix of C is
P = [A Ir ].
EXAMPLE 19.4.4.
1) For the code C of Example 19.3.5, the matrix A is 2 × 3, so r = 2. Therefore, the
parity-check matrix of C is
[ ]
1 0 1 1 0
P = [A Ir ] = [A I2 ] = .
0 1 1 0 1
P = [A Ir ] = [A I1 ] = [1 1 1 1]
(since I1 = [1]).
228 19. Designs and Codes
EXERCISE 19.4.5. Suppose the generator matrix of the binary linear code C is
1 0 0 0
0 1 0 0
0 0 1 0
0 0 0 1
.
1 0 1 1
1 0 0 1
0 1 1 1
What is the parity-check matrix of this code?
The parity-check matrix can be used to check whether a message we received is a valid
codeword:
PROPOSITION 19.4.6. A column vector x is a codeword if and only if P x = 0.
PROOF. (⇒) Since x is a codeword, we have x = Gm for some (k-bit) message m. This means
that
[ ] [ ]
I m
x = Gm = k m = .
A Am
Then
[ ]
m [ ] [ ]
P x = [A Ir ] = Am + Am = 2Am ≡ 0 (mod 2).
Am
[ ]
m
(⇐) Suppose P x = 0. Write x = , where
y
• m is the first k rows of x, and
• y is the remaining r = n − k rows of x.
Then
[ ]
m [ ]
0 = P x = [A Ir ] = Am + y .
y
This means y = −Am = Am (mod 2), so
[ ] [ ] [ ]
m m I
x= = = k m = Gm,
y Am A
so x ∈ C.
EXAMPLE 19.4.7. Here is a simple illustration of Proposition 19.4.6. For the code in which
every codeword is required to have an even number of 1s, Example 19.4.4.2 tells us that the
parity-check matrix is P = [1 1 1 1]. Hence, for any 4-bit string x1 x2 x3 x4 , we have
x1
x2
P x = [1 1 1 1]
x3 = [x1 + x2 + x3 + x4 ].
x4
This is 0 (mod 2) if and only if there are an even number of 1s in x, which is what it means to
say that x is a codeword.
19. Designs and Codes 229
EXAMPLE 19.4.8. Use the parity-check matrix to determine whether each of these words is in
the code C of Example 19.3.5:
SOLUTION. From Example 19.4.4.1, we know that the parity-check matrix of this code is
[ ]
1 0 1 1 0
P = .
0 1 1 0 1
We have:
1
1 [ ] [ ] [ ]
1·1+0·1+1·1+1·1+0·1 1 0
• P 1 = = ̸= , so 11111 is not a codeword.
1 0 · 1 + 1 · 1 + 1 · 1 + 0 · 1 + 1 · 1 1 0
1
1
0 [ ] [ ]
1 · 1 + 0 · 0 + 1 · 1 + 1 · 0 + 0 · 1 0
•P
1 = 0 · 1 + 1 · 0 + 1 · 1 + 0 · 0 + 1 · 1 = 0 , so 10101 is a codeword.
0
1
0
0 [ ] [ ]
1·0+0·0+1·0+1·0+0·0 0
• P 0 = = , so 00000 is a codeword.
0 0 · 0 + 1 · 0 + 1 · 0 + 0 · 0 + 1 · 0 0
0
1
1 [ ] [ ] [ ]
•P 0 = 1 · 1 + 0 · 1 + 1 · 0 + 1 · 1 + 0 · 0 = 0 ̸= 0 , so 11010 is not a codeword.
0·1+1·1+1·0+0·1+1·0 1 0
1
0
(These answers can be verified by looking at the list the elements of C in the solution of
Example 19.3.5.)
It is evident from the parity-check matrix whether a code corrects every single-bit error:
THEOREM 19.4.9. A binary linear code C can correct every single-bit error if and only if the
columns of its parity-check matrix are all distinct and nonzero.
PROOF. Suppose a codeword x is transmitted, but the ith bit gets changed, so a different
string y is received. Let ei be the string that is all 0s, except that the ith bit is 1, so y = x + ei .
Then
P y = P (x + ei ) = P x + P ei = 0 + P ei = P ei
is the ith column of P .
Therefore, if all the columns of P are nonzero, then P y is nonzero, so the receiver can detect
that there was an error. If, in addition, all of the columns of P are distinct, then P y is equal
to the ith column of P , and not equal to any other column, so the receiver can conclude that
the error is in the ith bit. Changing this bit corrects the error.
230 19. Designs and Codes
Conversely, if either the ith column of P is zero, or the ith column is equal to the jth
column, then either P ei = 0 or P ei = P ej . Therefore, when the codeword 00 . . . 0 is sent, and
an error changes the ith bit, resulting in the message ei being received, either P ei = 0, so the
receiver does not detect the error (and erroneously concludes that the message ei is what was
sent), or cannot tell whether the error is in the ith bit (and message 0 was sent) or the error
is in the j th bit (and message ei + ej was sent). In either case, this is a single-bit error that
cannot be corrected.
1
0
0
1
• P = 0.
This is 0, so there is no error.
0 0 This means that the received word 101001 decodes as 101001.
0
1
19. Designs and Codes 231
0
0
0
1
•P
1
= 1. This is not any of the columns of P , so there are at least two
1 errors. Therefore, we cannot decode the received word 001101.
0
1
EXERCISES 19.4.12.
1) The parity-check matrix of a certain binary linear code is
1 0 1 0 1 0 0 0
1 0 0 1 0 1 0 0
.
0 1 0 1 0 0 1 0
0 1 1 1 0 0 0 1
(a) Decode each of the following received words: 10001111, 11110000, 01111101.
(b) Find the generator matrix of the code.
2) The parity check matrix of a certain binary linear code is
1 1 0 1 0 0
0 1 1 0 1 0 .
1 0 1 0 0 1
Remark 19.4.14. Generalizing Example 19.4.13, a binary linear code is called a Hamming code
if the columns of its parity-check matrix P = [A Ir ] are a list of all the 2r − 1 nonzero binary
vectors of length r (in some order, and without repetition). Every Hamming code can correct all
single-bit errors. Because of their high efficiency, Hamming codes are often used in real-world
applications. But they only correct single-bit errors, so other binary linear codes (which we will
not discuss) need to be used in situations where it is likely that more than one bit is wrong.
232 19. Designs and Codes
EXERCISES 19.4.15.
1) Explain how to make a binary linear code of type (29, 24) that corrects all single-bit
errors.
2) Explain why it is impossible to find a binary linear code of type (29, 25) that corrects
all single-bit errors.
3) For each k ≤ 20, find the smallest possible number r of check bits in a binary linear
code that will let you send k-bit messages and correct all single-bit errors. (That is,
for each k, we want a code of type (n, k) that corrects all single-bit errors, and we want
r = n − k to be as small as possible.)
4) What is the smallest possible number r of check bits in a binary linear code that will
let you send 100-bit messages and correct all single-bit errors?
{1, 2, 3}, {1, 4, 5}, {1, 6, 7}, {2, 4, 6}, {2, 5, 7}, {3, 4, 7}, {3, 5, 6},
the corresponding code is
PROPOSITION 19.5.2. A BIBD(v, k, 1) can be used to produce a code that can correct up to
k − 2 errors.
PROOF. Let B and B ′ be blocks of the design, and let b, b′ be the corresponding binary strings
of length k as described at the start of this section. If the blocks have no points in common,
then d(b, b′ ) = 2k. If the blocks have 1 entry in common, then
d(b, b′ ) = 2(k − 1)
(the strings differ in the k − 1 positions corresponding to points that are in B but not in B ′ ,
and in the k − 1 positions corresponding to points that are in B ′ but not in B). Since λ = 1,
the blocks cannot have more than one point in common. So in any case,
EXERCISES 19.5.3.
1) Suppose that you use a BIBD to create a code whose words have length 10, that is
4-error-correcting. How many words will your code have?
2) How many errors can be corrected by a code that comes from a BIBD(21, 4, 1)?
233
3) Recall the 2-(8, 4, 3) design given in Exercise 17.2.7.2. It is possible to show that this
is also a 3-(8, 4, 1) design; for the purposes of this problem, you may assume that this
is true. If we convert these blocks to binary strings to form code words for a code, how
many errors can this code correct?
SUMMARY:
• how to make a code from a design
• Important definitions:
◦ binary string
◦ code, codeword
◦ Hamming distance
◦ minimum distance of a code
◦ detect errors, correct errors
◦ encode, decode
◦ generator matrix
◦ parity-check matrix
◦ binary linear code of type (n, k)
◦ Hamming code
• Notation:
◦ d(x, y)
◦ d(C)
[ ]
I
◦G= k
A
◦ P = [A Ir ]
Appendix A
Complex Numbers
When you were very young and first learning about numbers, you probably began with the
numbers we use for counting: 1, 2, 3, and so on. If you even had a concept of the number line
at that time, it would have looked something like this:
...
1 2 3 4 5
In fact, until you grasped the concept of infinity, your number line may also have had a
definite ending.
At some point, you learned about the concept of 0. During elementary school, negative
numbers were introduced to you and your number line expanded to include all of the integers:
... ...
−5 −4 −3 −2 −1 0 1 2 3 4 5
but it still had lots of gaps.
Once you learned about fractions, you began to fill in those gaps between the integers, and
even though there were still technically some gaps, you probably thought of the number line as
continuous. Eventually you learned about the real numbers, and your number line solidified:
... ...
−5 −4 −3 −2 −1 0 1 2 3 4 5
Each of these steps required a real leap of the imagination. In many societies, mathematical
reasoning stopped before one of these developments, and they never developed words or symbols
for some or all of 0, negative numbers, fractions, or real numbers. These concepts were outside
of their frame of reference, and would probably not have made sense to someone from one
of these societies without a fair bit of explanation and justification. When you were young,
you might well have been confused by the idea that someone could have less than no cookies.
Understanding what a negative number means usually involves the introduction of the concept
of debt, which is far less natural than counting things that you see. Similarly, the concept
of fractional items only becomes natural if you have items that you want to divide up and
the result of that division is not an integer. Real numbers typically only arise through either
algebraic manipulation, or geometry, and even in those situations rational numbers are close
enough for most practical purposes.
So maybe it’s not so surprising that with complex numbers, we introduce a way to solve
one of the few types of equation that have no solution in the real numbers: equations in which
it is necessary to take the square root of a negative number. Is it really any more surprising
to tell you that we can take the square root of a negative number after all, than it was to tell
you that we could divide a single pie into seven equal pieces, obtaining a number that wasn’t
an integer? It does require us to once again expand our understanding of the number line, but
we’ve done that before.
235
236 A. Complex Numbers
√
This, then, is the√key concept of complex numbers: that −1 exists. Since it would be
cumbersome to write −1 all the time, we give this quantity a symbol: i. Rather unfortunately,
i is short for “imaginary”. While this is a natural term to use for the most basic number that
isn’t a “real” number, it does tend to reinforce many people’s first impression on first learning
about i: that these are numbers that don’t really make any sense, or that have no practical
value. In fact, complex numbers are extremely useful and no less natural than any of the other
conceptual leaps we’ve been discussing. √ √
Once we accept that there is no good reason for √−1 not to exist, then why shouldn’t −4
exist? In fact, it√is an easy calculation that if i = −1 so that i2 = −1, then (2i)2 = 4i2 =
4(−1) = −4, so −4 = 2i. Similarly,
√ the√square √
√ root of any real negative number is some real
multiple of i: if x ∈ R then −x = x −1 = xi.
+
Actually, just as every equation of the form x2 = r has two real solutions when r is positive,
it also has two solutions when r is negative. We see that (−i)2 = (−1)2 i2 = 1(−1) = −1 and
similarly, if (ri)2 = x then (−ri)2 = x also.
At this point, in addition to the real number line we have introduced the imaginary number
line: every possible real multiple of i. Since 0 · i = 0 is on both of these number lines, it is
natural to draw the two number lines perpendicular to each other, intersecting at 0:
..
.
3i
2i
... ...
−3 −2 −1 0 1 2 3
−i
−2i
−3i
..
.
This image of the imaginary numbers led to a joke about an error message you might receive
from your telephone service provider: “We’re sorry; the number you have reached is imaginary.
Please rotate your phone 90 degrees and try your call again.”
It’s pretty easy to see that if we take two numbers, each of which is on either the real or
imaginary number line, and multiply them together, then we get another number that is on
one of these lines. Also, if we add two real numbers the result is real. Similarly, if we add two
imaginary numbers then the result is imaginary, since ai + bi = (a + b)i. But what if we add a
real number to an imaginary number?
A number like 2 + 5i is not on either of our number lines. So again, we have to expand our
concept of the numbers to include the whole of what we refer to as the complex plane. Any
linear combination a + bi of a real number with an imaginary number, is a complex number. We
can view this number as lying in position (a, b) of the plane, since its real part takes us a steps
horizontally along the real number line, and its imaginary part takes us b steps vertically along
A. Complex Numbers 237
the imaginary number line. Thus, any point in the plane corresponds to a complex number,
and vice versa. In the image below we’ve inserted a small number of these points.
..
.
3i
−3.16 + 2.3i 2i
2.3 + 1.75i
i
... ...
−3 −2 −1 0 1 2 3
−i
−2i 2 − 1.5i
−3i
−1.7 − 3.62i ..
.
In high school, you should have learned how to use the quadratic formula to find the roots
of quadratic equations. This is a common context in which complex numbers arise naturally.
You were probably taught that for an equation of the form
ax2 + bx + c = 0
Very likely you learned that if b2 − 4ac = 0 then there is only one (repeated) root (the graph of
the quadratic equation just touches the x-axis at its maximum or minimum), and if b2 −4ac < 0
then there are no roots (the graph of the equation is either entirely above, or entirely below,
the x-axis). This is true insofar as the real roots are concerned, but when b2 − 4ac < 0 there
are complex roots. When we allow complex numbers, an equation of degree d in x always has
d roots (some of which may be repeated).
Now that we understand what complex numbers are and where they come from, we need
to quickly cover the rules of basic arithmetic involving them.
Addition. We’ve already talked a bit about adding two complex numbers. If you’re familiar
with linear algebra and think of complex numbers as vectors in the plane, then adding them is
just like vector addition. It’s pretty straightforward even if you don’t have that background.
We have
We add the real parts of the summands to form the real part of the sum, and we add the
complex parts of the summands to form the complex parts of the sum.
238 A. Complex Numbers
EXAMPLE A.0.1.
√ √ √
(1 + 2i) + (−5 + 3i) = (1 − 5) + (3 + 2)i = −4 + (3 + 2)i
EXAMPLE A.0.3.
√ √ √ √ √
(1 + 2i)(−5 + 3i) = −5 + 3i − 5 2i + 3 2i2 = (−5 − 3 2) + (3 − 5 2)i
a − bi
as its complex conjugate. The value of this arises from the usefulness of differences of squares,
and it will work in a similar manner to the technique of rationalising a denominator. If we take
the product of a complex number with its complex conjugate, the result will be a difference
of squares. Since the square of either a real number or a complex number is always real, this
means that we get a real number! Here are the calculations:
√ √
EXAMPLE A.0.4. The complex conjugate of 1+ 2i is 1− 2i. If we multiply these two values
we obtain
√ √ √
(1 + 2i)(1 − 2i) = (1 − ( 2i)2 ) = 1 + 2 = 3.
Division. If our denominator is a real nonzero number r then it is easy to perform division:
the denominator by the complex conjugate of the denominator. This makes our denominator
real, which we understand how to work with. Here’s how we do this:
EXAMPLE A.0.5.
√ √ √ ( ) ( √ )
−5 + 3i (−5 + 3i)(1 − 2i) (−5 + 3 2) + (3 + 5 2)i 5 √ 5 2
√ = √ √ = √ = − + 2 + 1+ i.
1 + 2i (1 + 2i)(1 − 2i) 1 − ( 2i)2 3 3
Appendix B
Biographical Briefs
In this appendix, I provide brief biographical sketches of the mathematicians whose names
have arisen in this book.
Numerous mathematicians, with a wide diversity of backgrounds and identities, work in the
field of combinatorics. Some (including many of those from the most marginalised backgrounds)
have focused their attention on math education, generally providing significant support and
inspiration to students. One example of this is that a number of the first Black people (and
particularly the first Black women) to receive PhDs in mathematics in North America, went on
to teach at Historically Black Colleges. Typically they would have heavy teaching loads, and
little if anything in the way of research expectations. Some focus on writing books, or popular
articles of mathematics, or on mathematical outreach to children. Such people may have a huge
influence on the field, but are not often actively involved in research, so do not make discoveries
or prove results that fit easily into a book such as this. Indigenous mathematicians likewise feel
heavy pressures to teach, mentor, and serve their communities, that often limit the time they
have for research.
It is important to acknowledge that underrepresentation is not accidental, and that systemic
barriers as well as overt discrimination, harassment, and bullying have all contributed to it.
Mathematicians continue to grapple with these issues.
Without leaving out anyone whose work seemed important to understanding the key topics
of this book, I have tried to include results by people with diverse backgrounds and identities. It
is often not apparent from someone’s name whether or not they come from an underrepresented
population, so I hope to make you aware of some of these mathematicians’ identities through
these sketches. There are likely to be other aspects to their identities that I remain unaware
of. I hope that you may find some of these people relatable, and possibly inspirational.
Perhaps even more than mathematicians in other fields of research, combinatorists like to
collaborate. We enjoy working together, and encourage our students to develop research skills
through collaborations also. This has been a broader change to mathematical culture over time:
mathematicians used to be much rarer and more isolated, so worked on their own a lot more
than they typically do now. Particularly in the very recent context, it’s therefore usual for
someone’s most significant piece of work to have been written in conjunction with others. This
means that finding a theorem or object that has been named after a woman, for example, is
challenging: her best work may have been completed with other researchers, and will bear their
names as well. Please don’t take this as a sign that women (or other underrepresented groups)
haven’t made important contributions!
Names are listed in alphabetical order, but this comes with some caveats. Following the
style guides I found, medieval Arabic names are alphabetised under the first name. When the
indefinite article “Al-” is part of the first name, it is ignored in the alphabetising. Chinese
names have been alphabetised by the family name. The order in which Chinese family names
241
242 B. Biographical Briefs
and given names are used has varied over time and through contexts, so is not consistent in
this book. The medieval Zhu Shijie is referred to as such (his family name is Zhu); the modern
Ming-Yao Xu publishes (when he writes in English) with his name in this order (his family
name is Xu).
I have endeavoured to contact all of the living mathematicians included below, for approval
and confirmation of the information I am including. Many of them responded very helpfully,
for which I am extremely grateful. If you believe that something is inaccurate or should not be
included, please do not hesitate to contact me so we can sort this out. Any errors are my own.
I am deeply indebted to Laci Babai who carefully read many of these sketches. Laci pro-
vided a great deal of clarification and additional information, and even provided suggestions
for beautiful and carefully-constructed wording that I have adopted gratefully. To avoid filling
the sketches with quotation marks and repeated references to Laci, this general acknowledg-
ment stands in lieu of specific attribution for the many phrases and even paragraphs that he
generously offered. In particular, without his knowledge of the Hungarian context and of the
numerous Hungarian mathematicians listed below (most if not all of whom he knows or has
known), these sketches would contain numerous misunderstandings and inaccuracies.
B.2. Biographies
Abraham ibn Ezra (c. 1093—1167).
Abraham ibn Ezra was an 11th-century Jewish scholar whose commentaries on the bible have
been highly influential, and who disseminated Arabic scholarly knowledge into Jewish commu-
nities. He was born in Tudela, in what is now the Spanish province of Navarre. In the Middle
ages, the town of Tudela had one of the oldest and most important Jewish communities in that
region. Abraham moved to Córdoba as a young man and spent about half of his adult life
there. In the final 27 years of his life he travelled extensively (going as far as Baghdad), after
fleeing from the attacks on hitherto tolerant Moorish Iberia by the fanatic Almohads around
1140. He seems to have made his living largely as a poet and author.
Abraham married and had five children, four of whom are believed to have died young.
His youngest son Isaac, an influential poet, converted to Islam in 1140; this event was deeply
troubling to Abraham, as reflected in some of his own poetry.
Abraham is primarily known for his commentaries on the Torah. He also wanted to spread
the (largely Arabic) knowledge he gained in Spain to the many Jewish communities he visited
and lived in during his travels. His own writing was in Hebrew, and he also translated other
works into Hebrew. Along with his biblical commentaries, he wrote books on Hebrew grammar;
mathematics; philosophy; and astrology, as well as writing poetry. The book in which he
discusses the problem described in Example 3.2.8 (mentioned again in passing in Example 4.2.7)
is one of his books on astrology.
B. Biographical Briefs 245
A lunar crater, Abenezra, was named after Abraham. Robert Browning’s poem “Rabbi
Ben Ezra” is a meditation on his life. It begins with the famous lines “Grow old along with
me!/ The best is yet to be.”
Sources: Stanford Encyclopedia of Philosophy, wikipedia, and Encyclopedia Britannica.
learned medicine at the age of thirty, and was a practicing doctor as well as a scholar from that
time.
Ahmad apparently wrote extensively about mathematics. Details remain known about only
three of his texts, and only one of these, Fiqh al-hisāb (“Science of Calculation”), survives. This
was written during the reign of the fourth Almohad caliph (1199—1213), who was a patron of
education and science. In this book Ahmad considers a variety of problems involving permu-
tations and combinations, with and without repetition, including the problems of silk threads
and of words using the Arabic alphabet that is referred to in Example 4.2.7 and mentioned
again in Section 4.3. The method of reasoning he uses to deduce an identity involving binomial
coefficients may be the earliest known example of a combinatorial proof.
Abū-l’Abbās Ahmad ibn al-Bannā’ (1256—1321) was a student of al-Qādhī ash-Sharīf, who
in turn was a student of Ahmad’s.
Sources: Encyclopaedia of the History of Science, Technology, and Medicine in Non-Western
Cultures, Combinatorics: Ancient and Modern, and muslimheritage.com.
Michael Owen Albertson (1946—2009).
Michael Owen Albertson was an American mathematician, particularly known for (with Karen
Linda Collins (1959—)) introducing the distinguishing number of graphs. He was born in
Philadelphia and raised in Abington, Pennsylvania. He began his undergraduate work at Michi-
gan State University in 1964, and went on to complete a Ph.D at the University of Pennsylvania,
where his thesis supervisor was Herbert Wilf.
Albertson defended his Ph.D. thesis (entitled “Irreducibility and Coloring Problems”) in
1971, and shortly thereafter was hired to teach at Smith College in Northampton, Massachusetts.
Albertson worked and taught at Smith, while raising a family, for more than 35 years until his
untimely death in 2009. Albertson had 3 children. In 2004 Albertson was named the L. Clark
Seelye Professor of Mathematics at Smith College. He was married to Debra Lynn Boutin
(1957—) for the last 15 years of his life.
Albertson’s main area of research was graph theory. Over the course of his career he
published more than 70 research papers with 33 different collaborators, including both Boutin
and Collins. His work with Collins on the distinguishing number is discussed in Section 12.5.
He mentored and collaborated with many junior researchers and students; Collins first worked
with him during her undergraduate studies.
Sources: memorial article by Joan Hutchinson, obituary, the Math Genealogy Project, and
Smith College. Updated and confirmed through personal communication with Debra Boutin.
Kenneth Ira Appel (1932—2013).
Kenneth Ira Appel was an American algebraist with expertise in computers, famous for his 1976
computer-aided proof of the Four-Colour Theorem (with Wolfgang Haken (1928—)). Appel was
born into a Jewish family in Brooklyn (New York), and raised in Queens. He graduated with a
B.Sc. from Queens College in 1953. He then worked briefly as an actuary and spent two years
in the army, where he served in the state of Georgia as well as overseas in Germany. After
his time in the army, Appel studied at the University of Michigan under the supervision of
Roger Lyndon. He was awarded a Master’s in 1956. His Ph.D thesis (still at the University of
Michigan) was entitled “Two Investigations on the Borderline of Logic and Algebra”, and he
defended it in 1959.
During his studies Appel spent summers programming computers for Douglas Aircraft, and
after his doctorate he went to work for the federal government’s Institute for Defense Analyses
in Princeton, New Jersey, doing research in cryptography. He moved to Urbana, Illinois in
1961, where he joined the University of Illinois as a professor. It was there that he collaborated
with Haken on the Four-Colour Theorem, discussed in Section 15.3. Haken brought the idea of
the problem and the suggestion of using a computer to solve it, but had been convinced that
B. Biographical Briefs 247
this approach was not feasible. Appel had significant background in computing (having used
computers in algebraic research as well as in cryptography), and proposed that they attempt
this together.
Appel left the University of Illinois in 1993 to become chair of the mathematics department
at the University of New Hampshire, which brought him closer to his grandchildren. He retired
in 2003. During his career, Appel supervised at least five doctoral students of his own, one of
whom (John Koch) assisted in some of the work on the Four-Colour Theorem.
Appel had a lifelong interest in politics. He served on the Urbana City Council; was treasurer
of the Strafford County Democratic Party; and served on the Dover School Board for years until
his death. His work on the school board also related to an ongoing interest and involvement in
math education and outreach.
Appel was married with three children, two of whom became professors themselves (a
daughter in biology and a son in computer science at Princeton). He and his wife met in
graduate school, and were married after she obtained her Master’s and he finished his Ph.D.
Appel involved his children in checking calculations and computer output for the proof of the
Four-Colour Theorem; they found hundreds of errors, many of which they were able to fix
themselves.
Sources: New York Times obituary, St. Andrews’ math history web site, the Math Geneal-
ogy Project, University of Illinois, and wikipedia.
to students are: “It is better to learn several proofs of the same central theorem than to learn
more theorems,” and, encouraging students to be broad in their interests: “The only kind of
math I never used is the math I never learned.”
Babai has worked in combinatorics, group theory, the theory of algorithms, and complexity
theory, with special attention to the interactions among these fields. The quasipolynomial graph
isomorphism algorithm, which he discovered at the age of 65, is discussed in Section 11.4.
Babai has won numerous prizes and awards, including the Gödel prize (1993) and the Knuth
Prize (2015). He was elected a Fellow of the American Academy of Arts and Sciences in 2015,
and has been an invited speaker at the International Congress of Mathematicians three times
(once as a plenary speaker).
Babai’s native tongue is Hungarian. He is fluent in English and also conversant in German
and Russian.
In the 2008 episode “First Contact” of the tv series Stargate: Atlantis, the character Dr.
Radek Zelenka claims to have used Babai’s work in combinatorics to trace a subspace trans-
mission, but says that he cannot “dumb it down” for his superiors.
Sources: University of Chicago, American Academy of Arts and Sciences, the Math Geneal-
ogy Project, Gateworld, and wikipedia. Updated and confirmed through personal communica-
tion.
popular books with colourful accounts of mathematical problems and math history. The ongoing
popularity of his Men of Mathematics (which includes one woman) may be due in part to his
placing more weight on telling a good story than on strict accuracy. Critics describe Bell’s
accounts as inaccurate and fanciful, legends rather than histories (some use harsher terms).
Bell won the American Math Society (AMS)’s Bôcher Prize in 1921. He was appointed to
the Council of the AMS in 1924, and served as its vice-president beginning in 1926. He was
elected president of the Mathematical Association of America, a role he filled from 1931—1933.
Sources: St. Andrews’ math history web site, encyclopedia.com, the Math Genealogy
Project, The Last Problem, and wikipedia.
Bhāskara II (1114—1185).
Bhāskara was an Indian mathematician and astronomer from the 12th century whose works
contain the first surviving systematic use of the decimal system and introduce many principles
of calculus. He was born in Bijapur, India. He is known as Bhāskara II to distinguish him
from another mathematician and astronomer of the same name, from the 7th century. He is
also often known as Bhāskaracharya, meaning “Bhāskara the teacher”. His father Maheśvara
(a Brahman) was also a mathematician and astronomer/astrologer, and saw to his son’s early
training. As an adult, Bhāskara became the leader of an astronomical observatory in Ujjain.
This was the centre of mathematical thought in India at that time.
At the age of 36, Bhāskara wrote the work for which he is best known, the Siddhānta
Siromani (“Crown of treatises”). This is a four-part book that uses the decimal numbering
system. The first part, Līlāvatī (“The Beautiful”; according to a story written by Fyzi, who
translated this book into Persian in 1587, it is named for Bhāskara’s daughter) is about calcula-
tions, including combinations and permutations. It is in this part that the problems referenced
in Sections 3.1 (Example 3.1.6) and 4.2 appear. He did author other works as well. As was
traditional in India at the time, his books were all written in verse.
Many extremely important results first appeared in various parts of the Siddhānta Siromani.
Bhāskara explained a method for solving Pell’s equation (N x2 +1 = y 2 ) for a number of specific
values of N . This is a problem that European mathematicians struggled with centuries later,
though Archimedes had significant understanding of it much earlier than Bhāskara. He studied
trigonometry, and gave several results including the rule sin(a+b) = sin(a) cos(b)+cos(a) sin(b).
Though methods for finding solutions to quadratic equations geometrically were known before
this time, the general quadratic formula first appeared in his work. Bhāskara also developed
and explained many of the principles of differential calculus, in his study of the motion of
planets and their instantaneous velocities. He formulated some concepts of integral calculus
as well, for calculating the volume of a sphere (planet). This was more than 500 years before
the work of Leibniz and Newton. His work included one of the well-known visual proofs of the
Pythagorean Theorem. Despite all of these remarkable developments that appeared for the
first time in his work, Bhāskara didn’t get everything right; for example, he struggled with the
concept of division by zero, claiming that 0a/0 = a for any a.
The Indian Space Research Organisation named one of their satellites after Bhāskara.
Sources: St. Andrews’ math history web site, storyofmathematics.com, New World Ency-
clopedia, and wikipedia.
Anthony Bonato (1971—).
Anthony Bonato is an Italian-Canadian graph theorist who identifies as a gay man. In addition
to his research in graph theory, he is known for his popular writing about math. He graduated
with a B.Sc. from McMaster University in Hamilton, Ontario, in 1993. Bonato received a
Master’s degree (in 1994) and Ph.D. from the University of Waterloo. He worked under the
supervision of Ross Willard, and defended his thesis “Colourings, Generics, and Free Amalgams”
in 1998.
250 B. Biographical Briefs
After a post-doctoral position at Mount Allison University in New Brunswick, Bonato re-
turned to Ontario and in 1999 took a tenure-track faculty position at Wilfrid Laurier University
in Waterloo, Ontario. In 2008 he moved to a tenured faculty position at a university in Toronto
then known as Ryerson University. (Because of the role of its namesake Egerton Ryerson in
the genocidal residential school system into which Indigenous children were forced, pressure has
been mounting for the university to change its name.) Bonato also holds adjunct appointments
at Laurier and at Dalhousie University in Nova Scotia.
Bonato is open and vocal about his sexual orientation and advocates for the LGBTQ+
community in mathematics. He usually introduces himself as a “gay man and a mathematician”,
with the pronouns he/him/his. As Bonato has said, “the layers of our identity are critical to who
we are and how our work is received.” Bonato and his husband have been married since 2004.
He organised the “LGBTQ+ Math Day” events to raise the profile of queer mathematicians and
to encourage young people in math who identify as LGBTQ+. He has been actively involved
in committees to improve equity, diversity and inclusion in mathematics.
Bonato has over 130 publications, including four books on mathematics, with a fifth book
forthcoming in 2022. His research is highly regarded. He has served on Canada’s science
granting council (NSERC) selection committees, including chairing the pure math committee
and has been an invited speaker at more than 30 international conferences.
Bonato is passionate about mentoring, collaborating, and communicating mathematics.
He has collaborated with more than 100 different coauthors. One of his results is discussed in
Section 11.5. He has supervised 48 graduate students and post-doctoral fellows, including 7 PhD
students as of 2021. He has won awards for his research and graduate supervision. Bonato’s
book Limitless Minds is a collection of interviews with prominent mathematicians. He also
writes a blog, The Intrepid Mathematician, aimed at communicating about mathematics and
mathematicians to a broader audience, and has a very active presence on social media. In one
tweet, Bonato wrote: “You’re doing math right now without realizing it. Mathematicians are
people who realize it.”
Bonato’s debut young adult, science-fiction novel Patternss will be published in 2022 and
centres on a queer sixteen-year-old mathematician grappling with an alien invasion.
Sources: Ryerson University, The Intrepid Mathematician, LSE blogs, the Math Genealogy
Project, and twitter. Updated and confirmed through personal communication.
that increased when his request to be granted a sabbatical or to cut back to a half-time position
were denied. In 1994, he negotiated a temporary leave with reduced pay in order to seek work
in France. During this leave, Bondy applied for and was appointed to a position at Université
Lyon I, which was still a long commute from his family in Paris. According to documents, he was
subsequently dismissed from the University of Waterloo for a “substantial conflict of interest,”
apparently not having informed either Waterloo or Lyon that he was employed by both, and
drawing salary from both. The dismissal was appealed, but was upheld at arbitration. This
was a sad end to Bondy’s distinguished career at Waterloo, and led to Pál Erdős (1913—1996)
resigning his honorary degree, and to Chvátal resigning his adjunct appointment at Waterloo.
Bondy continued to work at Université Lyon I until his retirement in 2009. He is credited
by the Math Genealogy Project for supervising 12 doctoral students (about half of them at
Waterloo and half at Lyon), and published almost 100 papers during his career.
Since childhood, Bondy has been a keen amateur photographer. He began taking pho-
tographs more seriously in 1982 during a visit to Paris. Throughout the 1980s he exhibited his
photographs frequently at the Kitchener-Waterloo Art Gallery and elsewhere. After his retire-
ment in 2010 he founded Mind’s Eye, a non-profit association that runs the “Galerie Adrian
Bondy” in Paris. The goal of the association is to explore conceptual links between photography
and mathematics. Bondy is a regular exhibitor at the gallery.
Sources: wikipedia, Journal of Combinatorial Theory, Waterloo Gazette (via Wayback
Machine), the Math Genealogy Project, Letter from Chvátal, Letter from Erdős, and Mind’s
Eye. Updated and confirmed through personal communication.
Bose wanted a position as a professor, but did not have a Ph.D. He submitted some of
his published papers and was awarded a doctorate in 1947, examined by Fisher. After this he
spent a couple of years visiting the United States, taking positions as a visiting professor before
returning briefly to Calcutta in 1948. With job offers from Calcutta and a couple of American
universities to choose from, Bose joined the University of North Carolina at Chapel Hill as a
professor of statistics in 1949. In 1966 he was given the Kenan Chair there. He retired in 1971,
but then took a chair at Colorado State University of Fort Collins. He retired again in 1980,
was made a professor emeritus at Colorado State, and died in Colorado. Bose and his wife had
two children.
Among Bose’s more important discoveries were “BCH” codes. Together with his student
Dwijendra Kumar Ray-Chaudhuri (1933—) he discovered these independently, at about the
same time as their discovery by Alexis Hocquenghem in 1959. These codes are still used in
applications such as compact disc players, DVDs, and solid-state drives; the “B” in their name
is for Bose, and the “C” for Ray-Chaudhuri. Bose is also known for proving (with his student
Sharadchandra Shankar Shrikhande (1917—2020) and Ernest Tilden Parker (1926—1991)) that
pairs of orthogonal Latin squares of order n exist whenever n = 4k + 2 with k ≥ 2, disproving
a conjecture of Euler’s (as discussed in Section 16.2). This work earned them the nickname
of “Euler’s spoilers”. The techniques that Bose and his co-authors developed for disproving
Euler’s conjecture played a significant role in the proof by Richard Michael Wilson (1945—) of
Wilson’s Theorem. Other significant discoveries include Bose-Mesner algebras, as well as the
notions of partial geometry and strongly regular graphs. Bose published over 100 papers, and
supervised at least 30 doctoral students in the United States, in addition to his influence on
young mathematicians in India.
Among the honours Bose received were honorary degrees from the Indian Statistical Insti-
tute in 1974 and from Visva-Bharati University in 1979. In 1976 he was elected to the United
States National Academy of Sciences.
Bose spoke a number of languages including English, and liked to recite poetry in Arabic,
Bengali, Persian, Sanskrit, and Urdu. He never learned to drive; his wife did all the driving for
them. He was an enthusiastic gardener. Bose had an excellent sense of humour, and liked to
joke that, working modulo 2, “it is equally as good to give as to receive”!
Sources: wikipedia, St. Andrews’ math history web site, the Math Genealogy Project,
Indian Statistical Institute, Colorado State University, and Obituary in Journal of the Royal
Statistical Society.
Boutin was married to Michael Owen Albertson (1946—2009) for the last 15 years of his
life.
Sources: Hamilton College, Hamilton College, LinkedIn, and the Math Genealogy Project.
unmarried at the time of his birth. His parents were married in 1821 when Catalan was 7; his
father acknowledged him and he took his father’s surname of Catalan.
Catalan’s father was described as a jeweller; he made his living in a variety of ways. Catalan
briefly apprenticed as a jeweller at the age of 10. His family moved to Paris shortly thereafter,
in about 1825. By this time his father was an architect, and Catalan entered school to learn
this profession also.
At school, Catalan showed an aptitude for mathematics. Catalan passed the entrance
examinations for the École Polytechnique in 1833. He had strong political opinions but did not
take an active part in the many disturbances of the peace in Paris during this time. Nonetheless,
along with all of his fellow students he was dismissed from the school and had to apologise for
an “act of insubordination” before being readmitted. He graduated in 1835 and took a position
teaching in Châlons-sur-Marne. He also published a number of research papers over the next
few years.
Catalan wanted to return to Paris but was unsuccessful in applications for positions there.
Liouville advised him to obtain additional qualifications. Catalan took Liouville’s advice, and
obtained a double baccalaureate in 1839 and a doctorate in 1841. His advisor was Joseph
Liouville, and Catalan wrote two theses: “Attraction d’un ellipsoïde homogène sur un point
extérieur ou sur un point intérieur” (“Attraction of a homogeneous ellipsoid on an exterior point
or on an interior point”) in mechanics, and “Sur le mouvement des étoiles doubles” (“On the
movement of double stars”) in astronomy.
Catalan took a more prominent role in politics and political unrest during this period, and
this interfered with the advancement of his academic career. He took an active role in the
revolution of 1848 that led to the Second Republic, and sat in France’s Chamber of Deputies.
When Louis-Napoléon Bonaparte assumed absolute power in 1851, Catalan refused to swear
allegiance and lost the positions he still held. He continued to tutor and publish, but held no
permanent positions until 1865, when he was appointed chair of mathematics at the University
of Liège (Belgium). He held this position until his retirement in 1884, and remained in Liège
until his death in 1894.
In addition to coming up with the Catalan numbers (see Section 9.2), Catalan published
many important results in number theory, geometry, and combinatorics, and a surface that he
discovered is also named for him. Catalan formulated a famous conjecture in number theory
that was not proven until 2002.
Catalan was elected to many national and regional academies of science, which did not
include the French Academy despite several attempts. He was awarded the Knight’s Cross of
the Légion d’Honneur, the Cross of the Knight of the Order of Léopold, and was made an
Officer of the Order of Léopold in 1890. The Royal Academies for Science and the Arts of
Belgium has named a prize after him that is awarded every five years for important progress in
pure mathematics by a citizen of the European Union.
Sources: wikipedia, St. Andrews’ math history web site, wikipedia, and the Math Genealogy
Project.
(1950—), and received an M.A. in 2002 and her Ph.D. in 2003. Her thesis was entitled “Berge
Trigraphs and Their Applications”, and as discussed in Section 14.3, it resulted in the proof of
the Strong Perfect Graph Theorem.
Chudnovsky held a post-doctoral fellowship at the Clay Institute in Boston, Massachusetts
from 2003—2008, also returning to Princeton as a Veblen Research Instructor (with a year at
the Institute for Advanced Study) in 2003—2005, and then an Assistant Professor in 2005. She
moved to Columbia University in 2006, and held the Liu Family Professorship in Industrial
Engineering and Operations Research there in 2014. Chudnovsky returned to Princeton as a
professor in 2015.
Chudnovsky was married in 2011, and has a son born in 2013. She has appeared in com-
mercials for TurboTax and Comfortpedic (as herself, a brilliant mathematician). The TurboTax
commercial can be found on YouTube.
As a young, prominent female mathematician, Chudnovsky has been in great demand for
outreach and interviews as well as to speak at conferences. She is also a proud member of the
Jewish scientific community. She has taken all of this seriously, and has served as a model to
many. She has supervised 10 Ph.D. students and 6 post-docs as of 2021, as well as supervising
research by undergraduate and Master’s students. She has given the advice: “Don’t let your
self-doubt scare you too much. Just accept that everyone has their moments when they feel
like a complete misfit. Just keep pushing.”
Chudnovsky’s research is in structural graph theory. In addition to her proof of the Strong
Perfect Graph Theorem, some of her more important contributions include finding a polynomial-
time algorithm to identify perfect graphs, and determining the structure of claw-free graphs. In
2004 Chudnovsky was named in the “Brilliant 10” by Popular Science magazine, and in 2012 she
received a “genius award” from the MacArthur Foundation. She received the D.R. Fulkerson
Prize in 2009, jointly with George Neil Robertson (1938—), Seymour, and Robin Thomas
(1962—2020). She was an invited speaker at the International Congress of Mathematicians in
2014.
Sources: wikipedia, Princeton, Clay Institute, and the Intrepid Mathematician. Updated
and confirmed through personal communication.
In addition to Chvátal’s work on Hamilton cycles (which goes much further than the result
mentioned in Section 13.2), he also proved significant results relating to hypergraphs, algorith-
mic complexity, linear programming, optimisation, and perfect graphs. In addition, Chvátal
worked with David Applegate, Bob Bixby, and Bill Cook on the development of the record-
breaking computer code Concorde for solving the Travelling Salesman Problem. He found the
smallest triangle-free class-one graph in which every vertex has valency 4 (on 12 vertices), and
it is named for him.
In a tribute to Claude Berge, whose book introduced him to graph theory and with whom
he later developed a close friendship, Chvátal wrote that this experience “took me through
the looking glass to enchanted worlds where I found myself.” He has published more than 125
papers and 5 books. He supervised at least 12 doctoral students, and mentored many other
young researchers. His talent in writing extends beyond math: in 1971 he wrote a prize-winning
short story, Déjà Vu.
Sources: Concordia University, wikipedia, Vašek Chvátal: A Very Short Introduction, In
Praise of Claude Berge, and the Math Genealogy Project. Updated and confirmed through
personal communication.
Collins has taken an active role in the combinatorics and graph theory community in the
northeastern United States throughout her career, and is currently a co-organiser of the Dis-
crete Math Days in the Northeast. She is best known for her work with Albertson on graph
homomorphisms, and the distinguishing number of graphs (mentioned in Section 12.5) and her
work with Ann Trenk of Wellesley College on the distinguishing chromatic number of graphs.
She has published at least 30 articles and has supervised at least 6 Ph.D. students as well as
9 other graduate students as of 2021. She is the co-author with Trenk of a chapter on split
graphs in the book “Topics in Algorithmic Graph Theory”, which is part of the Encyclopedia
of Mathematics and its Applications.
Sources: Wesleyan University, wikipedia, the Wesleyan Argus, and the Math Genealogy
Project. Updated and confirmed through personal communication.
Although anti-Jewish laws prevented most students of Jewish descent from entering uni-
versity in Hungary at that time, Erdős won a national examination and was allowed to enrol
in 1930 at the age of 17, at the university of science in Budapest (now named for physicist
Loránd Eötvös). He obtained his doctorate there in 1934 (age 21), under Fourier analyst Lipót
(Leopold) Fejér, with a thesis entitled “Über die Primzahlen gewisser arithmetischer Reihen”
(“On the prime numbers in certain arithmetic progressions”). The situation in Hungary was
becoming untenable for people who had Jewish heritage, and Erdős managed to find a post-
doctoral fellowship at the University of Manchester, in England. He continued to visit Hungary
when he could. Following world events in 1938, he moved to the United States. Most of his
remaining close relatives were murdered during the Holocaust. His mother did survive, and he
spent time with her often after he became able to visit Hungary without fear of being unable
to leave. In fact, later in life at the age of 84, Erdős’s mother joined him in his travels. She
journeyed with him around the globe for the next 7 years until her death in Calgary, Canada
in 1971.
The first mention of Erdős in this book occurs with the Erdős-Szekeres Theorem. This
result appeared in the same paper as his work with Szekeres on the Happy Ending Problem
(see Section 14.2). Erdős was also jointly responsible with Alfréd Rényi (1921—1970) for one of
the random graph models discussed in Section 11.5. In related probabilistic work, the two also
showed that almost every graph has no nontrivial automorphisms, as mentioned in Section 12.5.
Erdős held some temporary appointments through the next sixty years. For the most
part, he lived as a professional itinerant scholar and collaborator. He travelled constantly,
with only a briefcase early on, though later he acquired a suitcase. His focus was entirely on
mathematics: many life skills such as cooking, driving, handling finances, and even tying his
own shoes he acquired late, or never. He visited people, enthusiastically talked mathematics,
and collaborated, right up to the day of his death in 1996. Erdős was welcomed around the
world for his kindness, generosity, and humour.
Erdős had remarkable insight and a breadth of knowledge that resulted in his making
significant contributions to a number of fields of mathematics, including combinatorics, number
theory, set theory, classical analysis, and probability. He also built foundations of entirely new
areas including Ramsey theory, transfinite combinatorics, probabilistic number theory, and
probabilistic combinatorics. It is no accident that his name comes up repeatedly in this book.
He cultivated his talent for asking interesting questions, and for finding people to solve them
with. His lack of official positions meant that most of his mentoring was either unofficial, or
came in the form of co-authorship. He had more than 500 coauthors, and published about
1500 research papers. It was this prolificacy that led to the idea of the “Erdős number” for
mathematicians: how many degrees of separation are there between your collaborators, and
Erdős? His co-authors have Erdős number 1; theirs have Erdős number 2, and so on. More
than 12,000 people have an Erdős number of 2, and more than 80,000 people have an Erdős
number of 5 (mine is 3).
Erdős had virtually no money. He lived very frugally aside from the cost of his travel itself
(he generally stayed with mathematicians), and was extraordinarily generous. He often offered
monetary prizes (anywhere from $25 to over $1000) for solutions to problems he posed, and gave
money away whenever he saw a need. He said, “I never wanted material possessions. There is
an old Greek saying that the wise man has nothing he cannot carry in his hands. If you have
something beautiful, you have to look out for it, so I would rather give it away.” Erdős had
many unusual philosophies and perspectives. He also had his own terminology for a variety of
things: for example, children were “epsilons”, as were budding mathematicians. Each time he
reunited with friends, he would ask, “Who are the new epsilons?” and would promptly invite
the gifted youngsters to lunch. Erdős met and mentored many mathematicians (Béla Bollobás,
B. Biographical Briefs 259
Lajos Pósa, Attila Máté, Noga Alon, and Imre Ruzsa to name just a few) while they were still
in their teens or even younger.
Erdős believed passionately in the beauty of mathematics, and liked to say that “the SF
has this transfinite Book that contains the best proofs of all mathematical theorems, proofs
that are elegant and perfect…. You don’t have to believe in God, but you should believe in
the Book.” The “SF” was Erdős’s joking way of referring to God as the “Supreme Fascist”, to
express his frustration over how closely The Book is guarded, and how few glimpses a mortal
is allowed. He believed that a mathematician’s goal in life should be to have some of these
glimpses.
Erdős was awarded the American Math Society’s Cole Prize in 1951, Hungary’s Kossuth
Prize in 1958, and the Wolf Prize from Israel in 1983/4. He received many honorary degrees.
An asteroid was named after him in 2021 (“Erdőspál”). A massive wallpainting entitled “Saints
Dancing” wraps around the interior of the rotunda of St. Gregory of Nyssa Episcopal Church
in San Francisco, showing about 90 saints. Erdős is one of these, dancing between Gandhi and
Luther.
Sources: St. Andrews’ math history web site, wikipedia, Math Association of America,
New York Times, University of California San Diego, University of Chicago, Huffington Post,
American Math Society, Education Resources Information Center, Purdue University, and the
Erdős Number Project. Additional information and clarification by personal communication
from Laci Babai.
Euclid (c.325BCE—c.265BCE).
Euclid was a mathematician from the 3rd century BCE, whose writings established mathematics
as a deductive science. There is little to say about his life, because little is known. In contrast
to other mathematicians who lived at that time and even earlier, there are no contemporary
biographies, nor even much in the way of references to him. He seems to have lived most of his
life in Alexandria, where he taught and wrote. There are a variety of stories about him, but
significant doubt as to the authenticity of any of them. It has even been suggested, not without
grounds, that “Euclid” may have been a pseudonym for a team of mathematicians. There is no
evidence as to who might have been part of such a team if that were true, and it seems most
likely that he was a real person. Whoever he was, he had many students and a school grew
from his teachings.
In addition to his most famous work, the Elements (mentioned in Section 18.3), remnants
of five works by Euclid survive to this day, and a number of other lost works are attributed
to him. The Elements consists of 13 books, and includes rigorous proofs from geometry and
number theory. Many of the results in the Elements were known prior to Euclid; practical
geometry had received much attention in Greek, Babylonian, and Egyptian culture, and Euclid
certainly draws heavily on work known to students of Plato’s Academy.
The main contributions of Euclid are the clarity of the writing, and the rigorous proof
methods that he insisted upon. Not only are these very well thought through, but this marked
a conceptual change in the way in which mathematics is studied and understood as a science.
Up to this time, historical mathematics (as studied in Egypt, India, China, and other ancient
cultures) was an empirical science like other sciences, full of observations and experimentation.
In Euclid’s Elements for the first time, mathematics was treated as a deductive science. This is
a distinction that still sets the study of mathematics apart from all other branches of intellectual
endeavour. Euclid was very careful to explicitly lay out the definitions, axioms, and postulates
on which his deductions relied, and to use only these in his proofs. He included as axioms
things that might seem obvious, such as: “Things equal to the same thing are also equal to
each other”. (There are some subtle and unmentioned assumptions in his work that were not
noticed for centuries.)
260 B. Biographical Briefs
The European Space Agency has been constructing a space telescope that has been named
Euclid in his honour.
Sources: wikipedia, St. Andrews’ math history web site, and worldhistory.org.
It would be far beyond the scope of this biographical sketch to even outline the most
important of Euler’s discoveries, but this book should make it clear that he had a fundamental
influence on combinatorics. The contributions discussed in this book begin with his solution to
the Königsberg bridge problem introduced in Section 11.1 and covered in detail in Section 13.1,
and also include Euler’s handshaking lemma, Euler’s Formula as covered in Section 15.2, and
initiating the study of Latin squares as discussed in Section 16.2. One of his most-read works is
the compilation of his Letters to a German Princess written on a variety of topics, in the role
Euler had been asked to fill as the princess’ tutor.
Euler has been commemorated on stamps in Germany, Russia, and Switzerland, and has
appeared on Swiss banknotes. In 1977, an asteroid that had been discovered in 1973 was named
“2002 Euler” in his honour. The Mathematical Association of America supports an electronic
archive with web pages devoted to each of Euler’s works, in addition to writings about him.
Sources: St. Andrews’ math history web site, wikipedia, wikipedia, biography.com, Story
of Mathematics, and Purdue University.
Despite his unacceptable beliefs, Fisher made huge contributions to the sciences of genetics
and statistics, and to design theory. (Fisher’s Inequality is stated and proved in Section 17.3.)
He unified Darwin’s theory of natural selection with Mendel’s discoveries about genetic inher-
itance. He laid down fundamental aspects of the theory of statistics. He received numerous
awards and honours, including being knighted in 1952, and being an invited speaker at the
International Congress of Mathematicians on two occasions. A minor planet, “21451 Fisher”,
was named for him.
Sources: St. Andrews’ math history web site, wikipedia, the Royal Society, and University
of Adelaide.
Martin Gardner (1914—2010).
Martin Gardner was an American writer, known particularly for his popular columns about
mathematics in the Scientific American. He was born in Tulsa, Oklahoma. Gardner enjoyed
math and physics, and initially intended to study physics at university. Then he had trouble
with calculus, and never took a course in math after high school. He graduated from the
University of Chicago in 1936 with a degree in philosophy. He held a variety of jobs over the
next 5 years, including reporting, media relations, and social work. During World War II, he
served in the Navy for 4 years.
After the war Gardner returned to the University of Chicago briefly for graduate work,
but did not complete a degree. From that time on he was a professional writer: sometimes an
editor, sometimes a columnist, and sometimes working freelance. For most of these years, he
lived in New York, though he moved to North Carolina in retirement. In 2004, several years
after the death of his wife, Gardner moved to Norman, Oklahoma where one of his sons lived.
He died there in 2010.
Gardner is best known for his column “Mathematical Games” in the Scientific American. He
also gained a notable reputation as a magician, and as a skeptic and debunker of pseudoscience.
He wrote not only about puzzles and games, but also traditional mathematical topics such as
knot theory, transfinite numbers, and the four-colour problem (as discussed in Section 15.3), in
addition to contemporary mathematical discoveries. In relation to his ability to write about even
deep mathematical topics in an accessible way, Gardner downplayed his own understanding,
saying, “If you are writing popularly about math, I think it’s good not to know too much math.”
He wrote almost 300 columns over the years, which have been collected and republished in book
form. He was very careful to give proper credit and attribution for the ideas he presented; it was
through Gardner’s columns that notables such as Penrose and the artist Escher first became
well-known.
Gardner wrote books, columns, reviews, and articles about many other topics also, including
magic, linguistics, and psychics. He was an authority on Lewis Carroll, and wrote annotated
editions of several of Carroll’s books as well as of a few other classics. Gardner also wrote
two novels and a number of short stories. At the age of 95, he wrote an autobiography that
appeared posthumously. In all, Gardner wrote or edited more than 100 books.
The asteroid “2587 Gardner” is named for him. The Mathematical Association of America
has established an annual lecture that carries his name.
Sources: wikipedia, Scientific American, martin-gardner.org, BBC, and American Math
Society.
Edgar Nelson Gilbert (1923—2013).
Edgar Nelson Gilbert was an American mathematician who spent his career doing research in
the areas of combinatorics and probability for Bell Labs. He was born in Woodhaven, New
York. In 1940 he began studying physics at Queen’s College of the City University of New
York, obtaining his B.Sc. in 1943. After a brief stint teaching math at the University of Illinois
in Urbana-Champaign, he moved to Massachusetts to study at the Massachusetts Institute of
264 B. Biographical Briefs
Technology (MIT). He obtained his Ph.D. in physics from MIT in 1948, under the supervision
of Norman Levinson. His thesis was entitled “Asymptotic Solution of Relaxation Oscillation
Problems”. While at MIT he met and married his wife; the couple had three children.
After completing his doctorate, Gilbert moved to Whippany, New Jersey, where he took
a job with Bell Laboratories. His arrival at Bell Labs was just 2 years after Richard Wesley
Hamming (1915—1998) began working there, so they were longtime colleagues. Hamming
described Gilbert as someone whose ideas he always found very stimulating. Gilbert worked at
Bell for 48 years, from 1948 until his retirement in 1996.
During his career, Gilbert made a number of interesting discoveries, chiefly in the areas of
combinatorics, optimisation, and probability. He is responsible for one of the models of random
graphs discussed in Section 11.5. His combinatorial work included coding theory (stemming
from Hamming’s discovery of error-correcting codes) as well as graph theory. Gilbert published
85 research papers.
Sources: wikipedia, Daily Record obituary, the Math Genealogy Project, transcription of
talk by Hamming, and prezi.com.
Hall’s influence as a mentor was also significant. He supervised at least 34 doctoral students.
One of the undergraduate students for whom he served as tutor was Alan Turing, with whom
he later worked at Bletchley Park. Hall’s opinion was highly influential when it came to making
decisions about young people who were seeking fellowships, and he favoured the adventurous.
One young person was turned down when Hall described him as “somewhat too reasonable”
while another was elected after an admiring comment on his “almost repellant originality”.
Hall was elected a Fellow of the Royal Society in 1951, and in 1961 was awarded the Sylvester
Medal. He also received the London Math Society’s Senior Berwick Prize in 1958, and the
Larmor Prize and De Morgan Medal in 1965. Hall was invited to speak at the International
Congress of Mathematicians in 1940 and again in 1950. He was unable to attend on either
occasion (due to the war in 1940 and for family reasons in 1950).
Sources: wikipedia, St. Andrews’ math history web site, the Math Genealogy Project, the
Royal Society, and the London Math Society.
Hamming acted as president for the Association for Computing Machinery (ACM) from
1958 to 1960. He earned many honours, beginning by winning the ACM’s Turing Award in
1968; he became a Fellow of the ACM in 1994. He became a Fellow of the Institute of Electrical
and Electronics Engineers (IEEE) in 1968, and won the IEEE’s Emanuel R. Piore Award
in 1979 and its Computer Society Pioneer Award in 1980. In 1980 Hamming was elected a
member of the National Academy of Engineering. He won the Harold Pender Award from the
University of Pennsylvania in 1981. Fittingly, he was named the first recipient of the IEEE’s
“Richard W. Hamming Medal” in 1988; this is an annual award (with a prize of $10,000) given
for “exceptional contributions to information sciences, systems, and technology”. Hamming
won the Rhein Foundation’s Basic Research Award in 1996. He was also given the Navy’s
Distinguished Public Service Award posthumously.
In addition to his foundational contributions to coding theory, Hamming made significant
advances in numerical analysis, numerical integration, and numerical filtering, and along with
Ruth Weiss developed one of the earliest programming languages. He also worked on many
other projects, and published more than 25 research papers. He became convinced that the
ways in which we teach mathematics need to change, and wrote at least 8 textbooks using
unconventional approaches.
Sources: wikipedia, St. Andrews’ math history web site, IEEE, National Academies Press,
and American Mathematical Monthly.
an inheritance that together with his income from the church sufficed to support the family.
Upon his retirement, Kirkman moved a few miles away to Bowdon, where he died in 1895. His
wife died just 10 days later.
Kirkman’s ministerial duties were light and he had plenty of time for mathematics, par-
ticularly after he gave up tutoring. His first publication came in 1846, and he continued to
work on math problems until his death. Kirkman was no mere dilettante; he made a number
of significant contributions to combinatorics (only some of which are mentioned in this book),
and also published work on geometry, group theory, and knot theory. Over the course of his
life he published more than 60 substantial papers in addition to many minor ones. His work
on Hamilton cycles is mentioned in Section 13.2, and his work in design theory is discussed in
Section 18.1.
Kirkman was elected a fellow of the Royal Society in 1857. The institute of Combinatorics
and its Applications awards a Kirkman medal annually, named in his honour.
Sources: wikipedia, St. Andrews’ math history web site, Lecture by Alexander MacFarlane,
and Bulletin of the London Math Society.
last child, a daughter, was born in 1954. Klein taught high school math and also tutored at
the University of Adelaide, while raising the children.
In 1964 the family moved to Sydney, where Szekeres had been offered a professorship at
the University of New South Wales. Klein became a lecturer in math at Macquarie University
in Sydney. After their retirement, in 1984 Klein and Szekeres established a weekly problem-
solving session as well as enrichment lessons for talented high school students, held at Mercy
College. Klein supplied geometry problems and attended these sessions weekly until 2002, when
it became too difficult for her. This program has expanded to about 30 groups across Australia
and New Zealand.
In 2004 Klein and Szekeres moved back to Adelaide. Not long thereafter, Klein had to move
into a nursing home, and Szekeres joined her there in late 2005. Seven weeks later, the two died
together, within an hour of each other, after almost 70 years of marriage.
In 1990 Macquarie University gave Klein an honorary doctorate. In 1993, she won the
B.H. Neumann Award from the Australian Mathematics Trust. This award is given for signifi-
cant contribution to teaching mathematical problem-solving in Australia.
Sources: wikipedia, Quanta Magazine, Sydney Morning Herald, Women and Math blog,
Australian Academy of Science, and Australian Math Society. Additional information and
clarification by personal communication from Laci Babai.
Tamás Kővári (1930—2010).
Tamás Kővári was a Hungarian-British analyst. He was born in Budapest, Hungary. In later
years he often used the anglicised version of his name (“Thomas”). He attended József Eötvös
College in Baja, Hungary, beginning in 1948. He graduated from Loránd Eötvös University in
Budapest and received his Ph.D. from the Hungarian Academy of Sciences. Kővári was also
married in Hungary; his wife had a degree in physics and math from Eötvös University.
In October 1956 there was an uprising in Hungary against the Communist rule and Soviet
occupation. It was quickly crushed by Soviet tanks. Before the borders were sealed, 200,000
people escaped the country. The refugees included Kővári and his wife. Eventually they reached
London, England, where Kővári became a lecturer and later Reader at the University of London,
from 1957 to his retirement in 1995. While working at the University of London, Kővári
learned that an English qualification would be useful to him. He completed a Ph.D. under the
supervision of Walter Hayman in 1961, with a thesis entitled, “On the Borel Exceptional Values
of Lacunary Integral Functions”.
Kővári and his wife had two children. The couple divorced in 1972, and Kővári produced
very little new mathematics after this time. Kővári enjoyed music, particularly classical and
disco. He also loved sweets, and was in a chocolate-tasting club.
It was in 1954, while still in Hungary, that Kővári’s joint paper with Sós and Turán was
published, giving an upper bound on the number of edges in a bipartite graph with bipartition
sets of given size, before it necessarily contains a particular complete bipartite subgraph. This is
probably Kővári’s best-known work, and is stated more precisely in Section 14.2. He published
more than 20 papers during his career; aside from this result in graph theory, all of his other
research related to functions of complex variables.
Sources: London Math Society obituary, Stanford University, My Journey Home: Life after
the Holocaust, and the Math Genealogy Project, as well as MathSciNet for a publication list.
Additional information and clarification by personal communication from Laci Babai.
Kazimierz Kuratowski (1896—1980).
Kazimierz Kuratowski was a Polish topologist, best known for his fundamental contribution to
graph theory, Kuratowski’s Theorem characterising planar graphs. He was born in Warsaw,
Poland. Poland at that time was partitioned among Russia, Prussia, and Austria, and Warsaw
was under the control of the czar of the Russian empire. Russia had turned the University
B. Biographical Briefs 273
of Warsaw into a Russian-language institution in 1869, and stopped permitting high school
students to study in Polish. Although Polish high schools were allowed by the time Kuratowski
was in high school, students attending such schools had to compete in examinations as external
candidates for places in universities. As a result, many went abroad for university.
Kuratowski wanted to become an engineer. He attended the University of Glasgow in
Scotland, which had a strong reputation in this area. Kuratowski began his studies there in
1913. After he returned home at the end of his first year, the outbreak of World War I made it
impossible for him to return to Scotland to continue his studies. One year later in 1915, Russia
withdrew from Warsaw. Germany took control, and changed the University of Warsaw back to
being a Polish-language university. Kuratowski was one of the first students when it reopened
in this form. At the end of World War I Poland became independent. Kuratowski graduated in
1919 and began doctoral work under Stefan Mazurkiewicz and Zygmunt Janiszewski, remaining
at the University of Warsaw. Although Janiszewski died in 1920 at the age of 31, of the “Spanish
flu” pandemic, Kuratowski was able to complete his Ph.D. in 1921.
Kuratowski moved to Lwów (now Lviv, Ukraine) in 1927, where he worked at the Technical
University of Lwów. He married in 1929. He maintained a home near Warsaw that he visited
each summer, and moved back to work at the University of Warsaw in 1934, having been offered
a newly-established chair. While maintaining an active research career, from this time forward
he also devoted significant effort to the development of mathematics in Poland.
In 1939, Nazi Germany invaded Poland. Many academics were killed or sent to concentra-
tion camps, and universities were closed. Kuratowski was reportedly of Jewish descent, and
apparently had some narrow escapes from the Gestapo, but managed to survive in Warsaw.
He also further risked his life to teach in one of the illegal universities that the Poles secretly
established. Of this time, he wrote: “The importance of clandestine education consisted among
others in keeping up the spirit of resistance, as well as optimism and confidence in the future,
which was so necessary in the conditions of occupation. The conditions of a scientist’s life at
that time were truly tragic. Most painful were the human losses.” He was reportedly completely
imperturbable in later life, saying that after what he had already lived through during the war,
nothing could ever upset him anymore.
After World War II education in Poland had to be rebuilt, and Kuratowski was at the centre
of the mathematical part of this work. He served as president of the Polish Math Society for
8 years immediately after the war. He became director of the Mathematical Institute of the
Polish Academy of Sciences in 1949, shortly after its establishment, and held this role for 19
years. He also served as a vice president of the Polish Academy of Sciences from 1957 to 1968,
and of the International Mathematics Union from 1963 to 1966.
Kuratowski’s research was primarily in topology and set theory, but he also discovered
one of the central results in graph theory, Kuratowski’s Theorem. The notation for complete
graphs derives from his name (as mentioned in Section 11.3). He produced more than 150
publications, and his mentoring was broad and very influential. Kuratowski was elected to a
number of national academies of science, and also received several honorary degrees. The Polish
Mathematical Society has established a prize that is named for him.
Sources: wikipedia, St. Andrews’ math history web site, the Math Genealogy Project,
Prominent Poles, and obituary in the Polish Review.
Herbert Ryser, was entitled “Rational g-circulants satisfying the matrix equation A2 = dI +λJ”.
He spent a year as as visiting assistant professor at the University of Calgary in Canada.
Lam moved to Montreal in 1975, where he took up a position at the computer science
department at Concordia University. He remained there until retirement, and is now an emeritus
professor there.
Lam determined that there is no projective plane of order 10 (equivalently, no affine plane
of order 10, and no set of 9 mutually orthogonal latin squares of order 10), as mentioned in
Section 16.2. In his expository paper “The Search for a Finite Projective Plane of Order 10”,
Lam wrote that his advisor Ryser had warned him against working on the projective plane
of order 10 as his thesis topic as it might not lead to a successful thesis. So it was not until
1980 that Lam began working on this problem. It took almost 10 years of theory, algorithm
development, letting the computers run, and patching issues before the result was complete in
1989. (Premature publicity came about on a couple of occasions before this.)
In 1992, Lam received the Lester Randolph Ford Award from the Mathematical Association
of America for his expository article. He received the Euler Medal in 2006 from the Institute
of Combinatorics and its Applications.
Sources: wikipedia, Concordia University, the Math Genealogy Project, and Mathematical
Association of America. Updated and confirmed through personal communication.
Myrvold moved to Waterloo for her Master’s degree. She began working in numerical
analysis, but fell in love with graph theory during a course she took from John Adrian Bondy
(1944—). She completed her master’s degree in combinatorics and optimization in 1984. Her
doctorate in computer science at Waterloo was under the supervision of Charles Colburn, and
her thesis was entitled “The Ally and Adversary Reconstruction Problems”. After completing
her Ph.D. in 1988, Myrvold took a position in computer science at the University of Victoria.
She was a professor there until her retirement in 2018, and is now a professor emeritus.
Myrvold has done research on graph theory, graph algorithms, network reliability, topologi-
cal graph theory, Latin squares, and chemical graph theory. She has more than 60 publications,
and had supervised 5 doctoral students as of 2021. The edge addition algorithm mentioned
in Section 15.1 that she developed with John M. Boyer (1968—) for either determining that a
graph is non-planar, or finding a planar embedding, is the state of the art for this problem.
Myrvold is married with 2 children. She fell in love with ice hockey at McGill and it became
a lifelong passion. Her hockey highlights include playing varsity hockey at McGill, competing in
the Western Shield and the BC Senior games, and playing with Wayne Gretzky at his Fantasy
hockey camp. She also is an ardent skier and loves dance fitness classes.
Sources: wikipedia, University of Victoria, the Math Genealogy Project, and LinkedIn.
Updated and confirmed through personal communication.
he is best known is disproving a conjecture by Pál Erdős (1913—1996) and Leo Moser about
tournaments.
Parker died in Urbana-Champaign, Illinois, either on December 31, 1990, or in 1991 (ac-
counts differ). A memorial fund providing fellowships for graduate students at the University
of Illinois was established in his name.
Sources: wikipedia, University of Illinois, the Math Genealogy Project, Family Search,
Bhāvanā mathematics magazine, and Mississippi State University.
for Pascal. A unit of atmospheric pressure, and a programming language have also been named
after him.
Sources: wikipedia, St. Andrews’ math history web site, MIT, University of California at
Berkeley, biography.com, and Stanford Encyclopedia of Philosophy.
and said: “When throughout life you have obtained honour and money for enjoying yourself,
what more can you ask for!”
Sources: wikipedia, St. Andrews’ math history web site, biographical article in Cryptologia,
and Julius Petersen Graph Theory Centennial volume.
David Angus Pike (1968—).
David Angus Pike is a Canadian combinatorist (specialising in graph theory and design theory)
who identifies as gay. He was born in 1968 and grew up in Ontario, Canada. He attended
the University of Waterloo, where he completed a joint degree in math and computer science.
As he was enrolled in the co-operative education programme, Pike held several jobs as a pro-
grammer, analyst, or trainer during his undergraduate studies, including stints at the Mutual
Life Assurance Company, the Department of National Defence, and McNeil Consumer Prod-
ucts Company. Pike continued to work at McNeil during the summers while completing his
Master’s degree at Auburn University in Alabama, which he finished in 1994.
Pike remained at Auburn University for his Ph.D. in Discrete Math, which he completed un-
der the supervision of Chris Rodger in 1996. His thesis was entitled “Hamilton Decompositions
of Graphs”. During his graduate studies, Pike came out as a gay man.
Pike was appointed to a tenure-track position at East Central University in Oklahoma in
1996. He worked there for 2 years before being offered a position in Canada, at Memorial
University of Newfoundland (MUN), in the Department of Mathematics and Statistics. He has
worked at MUN since 1998; since 2006 he has held a joint appointment in Computer Science.
In June 2018 he was named a University Research Professor.
Pike has more than 50 publications, and has supervised about 20 graduate students and
post-docs as of 2021, as well as mentoring many undergraduate students. His research includes
the work with Atif Aliyan Abueida (1966—) mentioned in Section 17.1. He received a teach-
ing award from MUN students in 2004, and was awarded the Hall Medal by the Institute of
Combinatorics and its Applications (ICA) for his research in 2007.
Pike has provided significant service to the Canadian mathematical community also. He
has served the Canadian science granting council (NSERC) for math, as both a member of the
grant evaluation group, and the scholarships and fellowships selection committee. Pike has held
many roles for the Canadian Math Society, of which he has been named a Fellow. These roles
include vice-president, and he was elected president in 2021. He has also been vice-president
of the ICA, and has served on both the scientific and equity advisory boards for the Banff
International Research Station.
In addition to his mathematical work, Pike is a keen genealogist and has been the president
of the Family History Society of Newfoundland and Labrador. He enjoys hiking and curling,
and serves on the board of directors for his local LGBTQ+ curling league.
Sources: Memorial University of Newfoundland, Institute of Combinatorics and its Appli-
cations, the Math Genealogy Project, and LinkedIn. Updated and confirmed through personal
communication.
Cheryl Elisabeth Praeger (1948—).
Cheryl Elisabeth Praeger is an Australian mathematician specialising in group theory, who has
led the way for women in math in Australia. She was born in 1948 in Toowoomba, Australia. Her
family moved several times during her childhood, whenever her father (who worked in a bank
for most of her childhood) was transferred. A career guidance counsellor tried to discourage her
from pursuing mathematics because she was a girl, but she persisted. Her parents had not been
able to participate in higher education themselves, but encouraged Praeger to do so. She began
her university studies at the University of Queensland, where she earned her bachelor’s degree
in 1969. Praeger then moved to England to study at Oxford University, where she received her
Master’s in 1972 and completed her D.Phil. in 1973 (though it was not awarded until 1974)
B. Biographical Briefs 279
under the supervision of Peter Neumann. Her thesis was entitled “On the Sylow Subgroups of
Primitive Permutation Groups”.
After completing her doctorate, Praeger was offered a three-year research fellowship at
Australian National University, during which time she also worked for one semester at the
University of Virginia in the USA. Praeger next moved to Western Australia in 1976, where
she accepted a short-term position. This turned into a permanent position that she held un-
til her retirement in 2017. She was the first female professor of math in Western Australia,
and the second in all of Australia. A photograph used in a newspaper story about the ap-
pointment shows her on a bicycle, pulling a modified trailer that holds her two young children
(both preschoolers). Praeger remains active as a professor emeritus, still conducting research,
supervision, and outreach.
Praeger has had a noteworthy career as a researcher, teacher, and mentor. Her research
is primarily in abstract algebra (more specifically, permutation groups), but her interests are
broad and she has studied actions of permutation groups on many types of combinatorial
structures, including codes, designs, and graphs. She has also worked on computational group
theory. It would be impossible in a brief sketch to indicate all of the areas to which Prager has
contributed, as she has authored more than 400 publications with more than 180 co-authors.
She served her university as department head, and as a dean and deputy dean at various times.
Praeger has supervised more than 30 Ph.D. students as of 2021, in addition to many post-docs,
undergraduate and Master’s students, and young researchers. Even beyond her direct mentoring
Praeger has served as an inspiration to many, particularly to young female mathematicians. The
Praeger-Xu graphs that bear her name are described in Section 12.5.
Praeger’s involvement in mathematics promotion and education has been enormous. She
has been a member of the Curriculum Development Council of the (Australian government’s)
Commonwealth Schools Commission, the (Australian) Prime Minister’s Science Council, and
the Australian Federation of University Women. She became the first female president of the
Australian Math Society in 1992. She chaired the committee that chose and trained Australia’s
team for the International Mathematical Olympiad (a high school competition) for about 20
years. She spent 8 years (2007—2014) on the executive of the International Mathematical
Union; 4 years (2013—2016) as a vice-president of the International Commission on Mathe-
matical Instruction; 4 years (2014—2018) as Foreign Secretary for the Australian Academy of
Science, and also served the Association of Academies and Societies of Sciences in Asia on its
executive committee and as chair of its Women in Science and Engineering Committee, for 6
years. Praeger also gives a lot of lectures on popular applications of mathematics at public
events and in schools on topics such as the relationships between weaving and mathematics.
She gives the advice: “There’s nothing so wonderful as working at something you’re passionate
about. Go for it, grasp all the opportunities you can.”
Along with this extraordinary record have come many honours. Praeger was elected a
Fellow of the Australian Academy of Science in 1996, and named Western Australian Scientist
of the Year in 2009. She was also made a Fellow of the American Math Society in 2012, and
an honorary member of the London Math Society in 2014. Praeger was inducted into the
Western Australian Science Hall of Fame in 2015. She has been awarded 6 honorary degrees,
at universities in Europe and Asia in addition to Australia. Her many medals include the
Centenary Medal (Australia); Moyal Medal (Macquarie University); Euler Medal (Institute
of Combinatorics and its Applications); Thomas Ranken Lyle Medal (Australian Academy of
Science); George Szekeres Medal (Australian Math Society); and the Ruby Payne-Scott Medal
(Australian Academy of Science). She was made a Member of the Order of Australia in 1999,
and then appointed a Companion of the Order in 2021. This is the highest civil honour available
from the Australian government, and it was awarded for “eminent service to mathematics, and
280 B. Biographical Briefs
“There are almost as many types of mathematician as there are types of human being. Among
them are technicians, there are artists, there are poets, there are dreamers…”.
Rado was also a very talented pianist, but chose to pursue mathematics on the grounds
that he believed that he could continue music as a hobby, while he couldn’t do that with math.
His wife was a professional-quality singer who also played the piano (they met when he was
seeking someone to play piano duets with), and they enjoyed performing together in public and
private recitals throughout their lives.
Sources: wikipedia, St. Andrews’ math history web site, University of Reading, the Math
Genealogy Project, Times obituary, and Royal Society.
Frank Plumpton Ramsey (1903—1930).
Frank Plumpton Ramsey was a British mathematician, philosopher, and economist. The work
he produced during his short life had a lasting influence on all of these fields. Within Math-
ematics, his influence is strongly felt in mathematical logic, combinatorics, and set theory.
Ramsey was born in Cambridge in 1903. His father, also a mathematician, was president of
Magdalene College there. After attending boarding school in Winchester, Ramsey returned to
the University of Cambridge, where he received his bachelor’s degree in mathematics in 1923.
Ramsey travelled to Vienna in 1924, seeking psychoanalysis for depression. He returned
to England and became a fellow of King’s College, Cambridge in October of that year. He
was married a year later, and had two children. In 1926 he became a lecturer at King’s
College. Ramsey had been diagnosed with jaundice and became increasingly ill late in 1929. He
underwent an operation in London early in 1930 to remove a suspected blockage. The operation
revealed no blockage, but showed that his liver and kidneys were in very bad condition. Ramsey
died in the hospital, shortly thereafter. The exact cause of his unexpected death is uncertain.
Ramsey’s mathematical research was in the area of logic. In math, he is best known for
the theorem that forms the basis of the subject now known as Ramsey theory (introduced in
Section 1.3 and discussed in more detail in Section 14.2). To him it was a lemma being used
for another purpose. Ironically, he was working toward a problem that is now known to be
undecidable, and a more direct proof has since been found for the special case that he was able
to prove using this lemma. So it has been said that “Ramsey’s enduring fame in mathematics
… rests on a theorem he didn’t need, proved in the course of trying to do something we now
know can’t be done!” This whole paper was only 8 pages long.
Although he was employed as a mathematician, only 3 of Ramsey’s publications appeared
in mathematical journals. Ramsey also published important work in philosophy and economics;
he studied with John Maynard Keynes at Cambridge and continued to work with him closely
through his brief career. Ramsey was regarded as a genius; many of his important ideas were
not fully appreciated for decades.
Sources: wikipedia, St. Andrews’ math history web site, Stanford Encyclopedia of Philos-
ophy, the New Yorker, Oxford University Press, and Times Literary Supplement.
Dwijendra Kumar Ray-Chaudhuri (1933—).
Dwijendra Kumar Ray-Chaudhuri (known as “Dijen”) is an Indian-American combinatorist who
has contributed to very important developments in both coding theory and design theory. Ray-
Chaudhuri studied at the prestigious Rajabazar Science College of the University of Calcutta
in India, where he received his M.Sc. in 1956. He went on to earn a Ph.D. in 1959 from the
University of North Carolina at Chapel Hill. His advisor was Raj Chandra Bose (1901—1987),
and his thesis was entitled “On the Application of the Geometry of Quadrics to the Construction
of Partially Balanced Incomplete Block Designs and Error Correcting Binary Codes.”
For about seven years after completing his dissertation, Ray-Chaudhuri served as a research
associate or consultant at a number of universities and private businesses, including Bell Labs,
IBM Research, Cornell Medical Center, and Sloan Kettering Institute. In 1966, he was hired
282 B. Biographical Briefs
at Ohio State University in Columbus, Ohio, where he spent the remainder of his career, and
remains a professor emeritus. Ray-Chaudhuri served two terms as chair of his department, and
was a visiting professor at a number of universities in Europe during stays there, as well as at
the Tata Institute in Mumbai.
Ray-Chaudhuri is most famous for his work in error-correcting codes and in designs. With
Bose, he discovered “BCH” codes independently, at about the same time as their discovery by
Alexis Hocquenghem in 1959. These codes are still used in applications such as compact disc
players, DVDs, and solid-state drives, and the “C” in their name is for Ray-Chaudhuri. With his
Ph.D. student Richard Michael Wilson (1945—) in 1968, he determined exactly when Kirkman
Triple Systems exist (see Theorem 18.1.11). During his career, Ray-Chaudhuri published over 80
papers, and supervised at least 33 doctoral students. He devoted significant effort and attention
to developing research in combinatorics at Ohio State University, hiring and mentoring young
researchers in addition to his own students.
Ray-Chaudhuri was a founding Fellow of the Institute of Combinatorics and its Applications
(ICA), and was awarded the ICA’s Euler Medal in 1999 for career achievements in combina-
torics. He was an invited speaker at the International Congress of Mathematicians in 1970, and
became a Fellow of the American Math Society in 2012. Ray-Chaudhuri is married with three
children.
Sources: wikipedia, Ohio State University, wikipedia, and the Math Genealogy Project, as
well as MathSciNet for a publication list.
sieve” method and used it to prove an approximate version of the famous Goldbach Conjec-
ture. He briefly held an appointment at Eötvös University, until he was appointed Professor
Extraordinary at the University of Debrecen in 1949. He held this role only until he became the
founding director of the Mathematics Research Institute of the Hungarian Academy of Sciences
in 1950. He continued to serve as its director until his death; it has since been renamed in
his honour. In 1952 he became a professor in the Department of Probability and Statistics
at Eötvös University. Rényi died of cancer in 1970 at the age of 48. His wife Kató had also
died tragically young, about 6 months previously. In the summer of 1969, shortly after Kató’s
passing and unaware of his own deadly disease, Rényi delivered a plenary lecture on his recent
joint work with his wife on “a theory of trees” at an international conference on combinatorics
in Balatonfüred, Hungary.
Rényi’s research was generally in the areas of number theory, graph theory, analysis, and
probability. Among his more than 200 publications, he wrote 32 joint papers with Erdős.
These included their seminal 1960 paper on “The evolution of random graphs” that created the
Erdős-Rényi model of random graph described in Section 11.5 and with it, an entirely new and
highly influential field of study. Their joint work also included the result showing that almost
all graphs are asymmetric, as mentioned in Section 12.5. Rényi also wrote a highly influential
textbook in probability theory. He was a charismatic teacher. Through teaching, advising, and
mentoring generations of mathematicians, he created a school of probabilists in Hungary, and
this area remains one of the strongest suits of mathematics in that country. During his career he
held visiting appointments at Stanford, Michigan State, the University of Michigan, Cambridge
University, the University of Erlangen, and the University of North Carolina. Among the
honours he received were the Kossuth Prize from the Hungarian government (twice).
Rényi used to say “A mathematician is a device for turning coffee into theorems,” which
Erdős loved to quote. Pál Turán (1910—1976) built on this joke by adding that weak coffee
is only good for a lemma. Rényi was popular as a raconteur, played the piano, and enjoyed
rowing, swimming, and skiing. He wrote a series of witty essays on mathematics in the form of
imaginary dialogues or exchanges of letters between historical mathematicians.
Sources: wikipedia, St. Andrews’ math history web site, Cambridge University obituary, the
Math Genealogy Project, and Project Euclid obituary. Additional information and clarification
by personal communication from Laci Babai.
Operations Research at an air force base near Montreal. Robertson also married during this
period; he and his wife have 2 children. While still a student he discovered the Robertson
graph, which has the fewest vertices among all graphs in which every vertex has 4 neighbours
and the smallest cycle has length 5.
Although the degree was not conferred until 1969, Robertson’s doctoral work was completed
in 1968 and he spent a year at McGill University, working as a postdoc with William Brown.
Immediately after completing his postdoc, Robertson was hired at Ohio State University, where
he remained throughout his career. While working there, he also acted as a consultant for Bell
from 1984 to 1996, and held a number of visiting positions, including at Princeton University
and Victoria University of Wellington, New Zealand. He was awarded the title of Distinguished
Professor of Mathematics and Physical Sciences at Ohio State in 2006, where he remains a
professor emeritus since his retirement in 2008. He maintained a workload of one-third time for
6 years after retirement, not all of it at Ohio State. During his career, Robertson supervised
at least 23 Ph.D. students, and published more than 80 papers. Robin Thomas (1962—2020)
worked with him as a postdoc.
Robertson’s research is in graph theory. His most significant work has been in the areas
of structural and topological graph theory. In a ground-breaking series of 22 papers dating
from 1983 to 2004, he and Paul Seymour (1950—) proved that any family of graphs that is
closed under minors can be characterised by a finite set of forbidden minors; this had been
conjectured by Klaus Wagner (1910—2000), and is discussed in Section 15.2. Robertson was
also an author (with Daniel Sanders, Seymour, and Thomas) of a new proof of the Four-Colour
Theorem (which still required computers but was significantly simpler than the original proof),
and (with Maria Chudnovsky (1977—), Seymour, and Thomas) of the proof of the Strong
Perfect Graph Theorem. Robertson’s work has been key to increasing the respect accorded to
research in graph theory by mathematicians in other disciplines.
Robertson won the American Math Society’s Fulkerson Prize on 3 occasions: in 1994, 2006,
and 2009. He won the Ohio State University Distinguished Scholar Award in 1997, and in
2002 the Waterloo Alumni Achievement Award. In 2004 he also won the Pólya Prize from the
Society for Industrial and Applied Math. Robertson was named a Fellow of the American Math
Society in 2013, and was elected an Honorary Fellow of the Institute of Combinatorics and its
Applications in 2018.
Sources: wikipedia, wikipedia, University of Waterloo, Institute of Combinatorics and its
Applications,and the Math Genealogy Project, as well as MathSciNet for a publication list.
Updated and confirmed through personal communication.
Sources: wikipedia, University of Western Australia, and the Math Genealogy Project.
Updated and confirmed through personal communication.
Al-Samaw’al ben Yahyā al-Maghribī (c.1130—c.1180).
Al-Samaw’al ben Yahyā al-Maghribī was a 12th-century mathematician and doctor from the
area that is now Iraq, whose writings include both mathematics and religion. He was born in
Baghdad, capital of the Abbasid Caliphate (now capital of Iraq), to a Jewish family; his father
was a Rabbi. Baghdad was the centre of scholarship in the Islamic world. Al-Samaw’al began
to study mathematics alongside medicine as a youth. After surpassing his teachers in math,
al-Samaw’al read all of the books he could find, and began to work out his own improvements
to them.
When he was 19, al-Samaw’al wrote al-Bahir fi’l-jabr (the “Brilliant in Algebra”). In
addition to including original material, it is valuable because it contains and builds on work by
al-Karaji which has not survived. Al-Bahir fi’l-jabr includes 4 parts. In the first part he defines
and uses the basic arithmetic operations of addition, subtraction, multiplication, and division,
on polynomials. He also describes methods for finding the roots of polynomials. The second
part is largely about solving quadratic equations. It also includes the binomial theorem, though
al-Samaw’al attributes this to al-Karaji. He also uses an inductive type of argument, though
it is not clear or well-developed and it would be a stretch to say that he fully understood the
principle of induction. The third part is about calculating with irrational numbers, and does
not contain much original material. The fourth and final part includes the problem described
in Example 3.2.9, in which (to be more precise) he asks for the values of 10 unknowns, given
the 210 equations that show the sums of any 6 of the variables.
After writing this treatise, al-Samaw’al travelled extensively through countries in the region
of Iraq. He practised medicine during his travels. In 1163, during his travels, he converted to
Islam but kept this a secret for 4 years because he was concerned about his father’s reaction.
In fact, when his father received the letter in which al-Samaw’al told him of his conversion, he
immediately set out to see his son. He died along the way.
Including his first book, al-Samaw’al is said to have written about 85 works; most of these
have not survived. Al-Bahir fi’l-jabr contains his only surviving mathematical writing of value.
His surviving works also include a book explaining the problems he saw with Judaism and
Christianity.
Sources: wikipedia, St. Andrews’ math history web site, Encyclopedia.com, and Columbia
University.
Issai Schur (1875—1941).
Issai Schur was a Russian-German mathematician of Jewish descent, best known for his work
in algebra, but whose important discoveries have impacted a number of fields including Ramsey
theory. He was born in Mogilev, which at the time was part of the Russian Empire (it is now in
Belarus). When he was 13, Schur moved to Libau (now Liepāja, Latvia) to live with his sister.
The local Jewish community spoke German, and Schur attended a German-language school.
In 1894 Schur moved to Germany to attend the University of Berlin. He completed all of
his studies there, finishing in 1901. His Ph.D. thesis, “Über eine Klasse von Matrizen, die sich
einer gegebenen Matrix zuordnen lassen” (“On a class of matrices which can be assigned to a
given matrix”), was written under the joint supervision of Ferdinand Frobenius and Lazarus
Fuchs.
Schur worked at the University of Berlin from 1903 to 1911, and then moved to the Uni-
versity of Bonn, where he worked until 1916. In 1916, Schur returned to the University of
Berlin. He was promoted to professor in 1919. In 1922, Schur was elected to the Prussian
Academy of Sciences. After the Nazis rose to power, anti-Jewish laws passed in Germany in
1933 required that Schur be suspended and barred from the university. Due to an outcry and
286 B. Biographical Briefs
a technicality (he was respected and popular in the community, and had held an appointment
prior to World War I, which made him qualify for an exemption under the law) Schur was given
a temporary dispensation to lecture in 1933—1935, and was in fact the last Jewish professor
to lose his position. Schur was invited to move to various universities in other countries during
this period, but he declined these offers. He continued to think of himself as a German and
was baffled by the Nazis’ inability to see anything but his Jewish heritage. However, he was
increasingly isolated and disrespected, and was ultimately fired in 1935. By the end of 1938 he
was pressured into resigning from the Prussian Academy of Sciences.
In 1938 Schur was summoned to an interview with the Gestapo. In his increasing isolation
and depression, he had told his wife that he would commit suicide if summoned by the Gestapo,
so she managed to send him out of town and go in his place. She was asked why they had not
left Germany. A Reich Flight Tax amounting to a quarter of their assets had to be paid if they
were to be allowed to leave. They were unable to raise enough money, because a substantial
portion of their assets were tied up in a mortgage on a house in Lithuania that at that time
could neither be sold nor used as collateral. The tax was ultimately paid; the source of the
money is not known, but the Schurs left Germany in 1939. After a brief stay with their daughter
in Bern, Switzerland, the Schurs moved to Palestine. Schur had to sell his collection of books
to the Institute for Advanced Study in Princeton in order to cover their living expenses in Tel
Aviv. Schur died there of a heart attack on his 66th birthday.
Schur’s research was mostly in the field of algebra; more specifically, group theory and rep-
resentation theory. Among his almost 90 papers he also published important results in number
theory, analysis, and Ramsey theory. There are numerous structures and results across these
fields that bear his name, including the theorem whose statement is given in Exercise 14.2.10.
Schur was extremely popular as a lecturer and mentor, and built a school of researchers who
worked with him and learned from him. These included the doctoral students he supervised
(there were at least 22 of these, and some sources credit him with 35), one of whom was Richard
Rado (1906—1989).
Sources: wikipedia, St. Andrews’ math history web site, the Math Genealogy Project,
Encyclopedia.com, and London Math Society.
Seymour’s influence on combinatorics has been immense. He began his research career
working on matroids, where he made some significant contributions before moving into graph
theory. He works primarily in the areas of structural and topological graph theory. His research
has been instrumental in significantly increasing the respect with which other mathematicians
view graph theory. In a ground-breaking series of 22 papers dating from 1983 to 2004, he and
Robertson proved that any family of graphs that is closed under minors can be characterised
by a finite set of forbidden minors; this had been conjectured by Klaus Wagner (1910—2000),
and is discussed in Section 15.2. Seymour was also an author of a new proof of the Four-Colour
Theorem (this still required computers but was significantly simpler than the original proof),
and of the proof of the Strong Perfect Graph Theorem. Seymour has over 250 publications.
He has supervised 11 doctoral students in addition to undergraduate and Master’s students as
of 2021. He is joint editor-in-chief of the Journal of Graph Theory. Seymour also holds two
patents.
Seymour has an impressive list of honours, as befits his illustrious career. He won the
American Math Society’s Fulkerson Prize on 4 occasions (on his own in 1979, and jointly in
1994, 2006, and 2009). He also won the Pólya Prize from the Society for Industrial and Applied
Math in 1983, and again (jointly with Robertson) in 2004. Seymour was awarded a Sloan
Fellowship in 1983, and the Ostrowski Prize in 2004. He holds honorary doctorates from the
University of Waterloo (2008) and the Technical University of Denmark (2013), and was given
the Commemorative Medal of Comenius University (Slovakia) in 2019.
Sources: wikipedia, Princeton University, the Math Genealogy Project, and University of
Waterloo. Updated and confirmed through personal communication.
In addition to Shrikhande’s status as one of “Euler’s Spoilers”, he also has a graph named
after him. He published more than 75 research papers, and was a mentor to many, although
there is no formal record of most of these relationships. The techniques that he and his co-
authors developed for disproving Euler’s conjecture played a significant role in the proof by
Richard Michael Wilson (1945—) of Wilson’s Theorem. He was a Fellow of the Indian National
Science Academy and the Indian Academy of Science. He was also a Fellow of the Institute
of Mathematical Statistics in the United States, and was named an Honorary Fellow of the
Institute for Combinatorics and its Applications in 1991.
Shrikhande was married with three children. One of his sons was a professor of mathematics
at Central Michigan University until his own retirement in 2015.
Sources: wikipedia, Institute of Mathematical Statistics, the Math Genealogy Project, Res-
onance, Institute for Combinatorics and its Applications,and News 18 (India).
initiated several new areas of research, including Ramsey-Turán theory and the extremal theory
of structured intersections. In the 2000s she joined a group of researchers led by László Lovász in
exploring graph limit theory; their joint paper appeared in 2012, when she was 82, in the Annals
of Math. Sós’s mentorship and influence have been profound. In 1965, she jointly founded a
weekly combinatorics seminar at the Mathematical Institute of the Hungarian Academy of
Sciences that has been running ever since. It serves as a forum for new results in combinatorics,
and often features the research of young mathematicians including undergraduate students.
Starting in the 1960s, she was also a key organiser of a long series of international conferences on
combinatorics held in Hungary; these allowed mathematicians from the Soviet bloc (including
Hungary) to interact with others worldwide, at a time when such opportunities were very
limited. One of her joint works with her husband is mentioned in Section 14.2.
Sós won the Tibor Szele Prize for research mentorship from the János Bolyai Math Society
in 1974, and the Academy Award of the Hungarian Academy of Sciences in 1983. She was
elected to the Hungarian Academy of Sciences as a corresponding member in 1985, and as an
ordinary member in 1990. She won Hungary’s Benedikt Otto Prize in 1994, and was elected
to the Austrian Academy of Sciences in 1995. Sós also won Hungary’s Széchenyi Prize in 1997,
the Cross of Merit in 2002, and the “My Country” award in 2007. She became a member of
the Academia Europaea (a pan-European Academy of scholarly inquiry) in 2013. Sós received
an honorary degree from the Hebrew University of Jerusalem in 2018.
Sources: wikipedia, St. Andrews’ math history web site, the Math Genealogy Project,
Gil Kalai’s blog, and Simons Foundation. Additional information and clarification by personal
communication from Laci Babai.
was unaware of Kirkman’s work. The fundamental design theory structure of Steiner systems
(see Section 18.2) also bear his name. Steiner published extensively, including more than 60
papers in Crelle’s journal alone (one of the first pure math journals that was not the proceed-
ings of an academy; it was established by a friend of Steiner’s). He also produced a number of
books.
Steiner apparently had an abrasive personality. He never married; he had many challenging
relationships with colleagues and students, and was described as being crude and blunt. He
gave nicknames to everyone, and these were never flattering. During his last decade, ill health
kept him in Switzerland for most of each year, and he only visited Berlin to give his lectures
each winter. He eventually became completely confined to his bed and was unable to continue
teaching. He died in Switzerland. He bequeathed one third of his estate to the Berlin Academy
for the establishment of a prize named after him.
Sources: wikipedia, St. Andrews’ math history web site, University of Evansville, Your
Dictionary, The Mathematical Intelligencer, and encyclopedia.com.
Sushruta (c.800BCE—c.700BCE).
Sushruta was a renowned Indian doctor from the 8th century BCE whose influence on medicine
(and surgery in particular) in India may have been as profound as that of Hippocrates on
western medicine, and for similar reasons. The work attributed to Sushruta in Section 4.1
(mentioned again in passing in Section 4.2) appears in a book called the Sushruta Samhita,
meaning the “Compendium of Sushruta”. Scholars have estimated the date of this work at
anywhere from 1000BCE to 500CE. It is likely that the core of the book dates from the early
end of this range, and that successive people (perhaps even doctors named Sushruta) added to
it over the years. We cannot be certain of the original date of any given piece of the work. The
book lists its author as Sushruta, and locates him in Varanasi, India.
There was a very eminent Indian doctor named Sushruta who lived sometime between
approximately 800BCE and approximately 700BCE. He is referred to as the “father of Indian
surgery” and the “father of plastic surgery” as the topics of surgery and plastic surgery are also
covered in the Sushruta Samhita. The original part of the manuscript is most likely attributable
to this doctor.
The Sushruta Samhita is a very important work in the history of medicine. The surviving
text includes 184 chapters describing illnesses, injuries, surgeries, medicines, and treatments.
Sushruta taught others, referred to as “Saushrutas”, who were required to undertake 6 years of
study and to take an oath (not the Hippocratic Oath, but with similar intent) to do no harm,
before being allowed to practice hands-on surgery under supervision.
Sources: wikipedia, Journal of Indian Philosophy, and wikipedia.
Tait was married in 1857, and had 7 children. He died in Edinburgh in 1901. Tait was a keen
golfer and also studied the mathematics and physics of golf. He had some significant disputes
with other researchers, which seem to have been based on clinging to his own preferences,
whether scientific (holding quaternions as superior to vectors) or patriotic (pro-British). Lord
Kelvin quoted Tait as having said that “nothing but science is worth living for,”. Kelvin added
that Tait seemed not to live by this maxim as he loved to read and had a terrific memory, which
allowed him to be ready with apposite quotations for many situations.
Tait was elected a Fellow of the Royal Society of Edinburgh shortly after moving back
to Scotland, and served as its general secretary from 1879 until his death in 1901. He won
both the Gunning Victoria Jubilee Prize and the Keith Prize (twice) from the Royal Society
of Edinburgh, and in 1866 received the Royal Medal of the Royal Society of London. He was
awarded honorary degrees by the University of Glasgow and the University of Ireland. Tait
was elected an honorary member of the scientific academies of Denmark, Holland, Ireland, and
Sweden. A road in Edinburgh and a chair in the department of physics at the University of
Edinburgh have been named for him.
Sources: wikipedia, St. Andrews’ math history web site, Clerk Maxwell Foundation, and
encyclopedia.com.
Larry Henry Thiel (1945—).
Larry Henry Thiel is an American-Canadian computer programmer and analyst who con-
tributed to the computer-assisted proof that there is no finite projective plane of order 10.
He was born in Trenton, New Jersey (in the United States). He received a bachelor’s degree
in mathematics from Michigan State University in 1967. He immigrated to Canada in 1968 to
work at the University of Alberta as a programmer/analyst.
Thiel moved to Montreal in 1973 to work as a programmer/analyst in the brand new
department of Computer Science at Sir George Williams University (which in 1974 merged
with Loyola College to form Concordia University). Over time, he was promoted and ended up
managing the technical staff and computing labs for the department. In this role, Thiel was
often called on to write and/or optimise code being used by researchers. He retired in 2000.
Thiel is a co-author on at least 15 papers to which he was asked to contribute with his
expertise in programming. Most notably, he was involved in proving the non-existence of a
projective plane of order 10, with Clement Wing Hong Lam (1949—) and Stan Swiercz (1955—
), as mentioned in Section 16.2. In his expository paper about this result, Lam says that Thiel
“has a reputation of making any computer program run faster.”
Thiel has 4 children, including a son who now teaches computer science at Concordia, and
with whom he sometimes collaborates.
Sources: Mathematical Association of America, Concordia University, Theorem of the Day,
MathSciNet, and Concordia University. Updated and confirmed through personal communica-
tion.
Robin Thomas (1962—2020).
Robin Thomas was a Czech-American mathematician, renowned for his work in proving (with
co-authors) tremendous results in graph theory including the Strong Perfect Graph Theorem.
He was born in Prague, Czechoslovakia, where he completed his education with a doctorate
from Charles University in 1985, under the supervision of Jaroslav Nešetřil. In 1987, while
Czechoslovakia was still under communist control, Thomas emigrated to the United States for
a postdoc at Ohio State University in Columbus, where he began to work with George Neil
Robertson (1938—). In 1989 Thomas began working at Georgia Institute of Technology in
Atlanta. He became a Regents’ Professor there in 2010, and remained there until his death.
Thomas was diagnosed with Amyotrophic Lateral Sclerosis (ALS, also known as Lou Gehrig’s
disease) in about 2008. He was confined to a wheelchair for most of the last decade of his life.
294 B. Biographical Briefs
He died in 2020 at the age of 57. Thomas was married with 3 children. His wife is a professor
at Georgia Tech whose research is in stochastic systems and computer simulation. He advised
students to “Follow your passion, value your education, and work hard. Don’t give up in the
face of hardship, and have fun.”
Thomas’ research interests were broad. He published in algebra, geometry, topology, and
theoretical computer science as well as in combinatorics. His best-known achievements, though,
lie in his outstanding work in structural graph theory, particularly his result on the Hadwiger
Conjecture with Robertson and Paul Seymour (1950—), and their work on the Strong Perfect
Graph Theorem, joined by Maria Chudnovsky (1977—). During his lifetime Thomas published
more than 100 research papers, and supervised at least 16 doctoral students (several others
were in progress when he died). His influence as a mentor was far broader, though; Thomas
served as the head of the Algorithms, Combinatorics and Optimization Ph.D. program and
kept a watchful eye on the progress of all of the students in that program. He maintained close
ties with Charles University in what had become the Czech Republic, and frequently invited
promising researchers to visit or complete a postdoc with him at Georgia Tech.
Thomas won the Fulkerson Prize twice: in 1994, and in 2009. He gave an invited talk at
the International Congress of Mathematicians in 2006. In 2011 Thomas received the Karel
Janeček Foundation Neuron Prize for Lifetime Achievement in Mathematics. He was named
a fellow of the American Math Society in 2012, and of the Society for Industrial and Applied
Mathematics in 2018. In 2016 he received the Class of 1934 Distinguished Professor Award at
Georgia Tech, and gave the commencement address to graduate students. After his death, a
graduate fellowship was established at Georgia Tech in his name.
Sources: wikipedia, Georgia Institute of Technology, Charles University, Charles University,
and the Math Genealogy Project. Updated and confirmed through personal communication
with Sigrun Andradöttir.
writing down large formulas as he went. During his time in labour camps, he discovered that
he could perform graph theory research in his head. Many of the problems that Turán came up
with in graph theory, as well as the solutions for some of them, came out of this terrible time.
He said, “I got my best ideas while pulling wires, because then I could be alone and nobody
noticed that I was thinking.” The full force of the Holocaust hit Hungary during the last year
of the war. Turán survived, but his three siblings (a sister and two brothers) were murdered.
Remarkable stories came out of Turán’s time in the labour camps. Some of these are
told beautifully in his own words in the final source listed below, in an effort to illustrate
“the enchantment and help [graph theory] gave me in the most difficult times of my life”. I
summarise them here. Turán’s initial task at labour camp involved carrying railway ties. The
officer overseeing this work happened to hear one of Turán’s companions call him by name; this
officer was an engineer with an interest in math. In an amazing coincidence, as a civilian the
officer worked as a proofreader in a publishing house of the Hungarian Academy of Sciences,
and had been involved in the production of some of Turán’s papers. This officer reassigned
Turán to a lighter duty: directing crews to the proper piles of logs. This lighter work freed
Turán’s mind and he was able to consider (and ultimately solve) a problem that had occurred
to him earlier in the year, as he mulled over the mathematical ramifications of some items in a
letter he had received from his friend Szekeres, then a refugee in Shanghai.
In 1944 Turán was in a labour camp outside Budapest, working at a brick factory. Small
wheeled trucks carried the bricks from the kilns along tracks to the storage yards; every kiln was
connected by rail to every yard. Where the rails crossed, the trucks often jumped the tracks
and spilled their loads, which caused problems for the workers. In this context, Turán began
to wonder: in a complete bipartite graph (as this system represented), what is the minimum
number of edge-crossings? Turán considered this and solved some related extremal problems,
but not the general case of this one. Even later in 1944, while expecting at any day to be sent to
the gas chambers, Turán kept up his spirits by trying to find bounds on a problem very similar
to the Ramsey numbers: given n, what is the largest value M (n) such that any 2-edge-colouring
of Kn (using red and blue, say) must contain either a red or a blue KM (n) ? One of his results
in Ramsey theory is mentioned in Section 14.2.
After the war, in 1945 Turán was given a position at the science university in Budapest. He
was promoted to the Chair of Algebra and Number Theory there in 1949. In 1952 he remarried,
to Vera Sós (1930—); they had two children, one of whom also became a mathematician. In
1955 Turán was named head of the complex function theory department in the Mathematical
Institute of the Hungarian Academy of Sciences.
Turán died at the age of 66. He had been ill from leukemia for about 6 years, but Sós
concealed the diagnosis from him as she felt that the knowledge would only depress and limit
him. Turán once referred to his research work as “building my pyramid”: developing his claim
to immortality.
Turán’s most significant research is likely his work in analytic number theory. He developed
the power sum method, which has seen many uses over the years. He worked on many problems
related to the Riemann Hypothesis; Erdős jokingly refers to Turán as a “heretic” for not be-
lieving in the Riemann Hypothesis. In graph theory he was the founder of what is now known
as extremal graph theory: finding largest or smallest graphs that have certain properties, or
bounding various characteristics of such graphs. This is now a major area of research, and it
came out of a result Turán proved in his mind while performing forced labour. Turán produced
more than 200 publications, and mentored generations of Hungarian mathematicians.
Turán was elected to the Hungarian Academy of Sciences in 1948, initially as an associate
member, and then as a regular member in 1952. He was awarded Hungary’s Kossuth Prize in
1948 and again in 1952. He served the János Bolyai Math Society in a variety of ways, including
by acting as its president from 1963 to 1966. In 1975 he was awarded the Szele Prize for research
296 B. Biographical Briefs
mentorship by the János Bolyai Math Society. He was elected a fellow of the American Math
Society, the Austrian Math Society, and the Polish Math Society.
Sources: wikipedia, St. Andrews’ math history web site, Acta Arithmetica, Yivo Ency-
clopedia of Jews in Eastern Europe, the Math Genealogy Project, encyclopedia.com, Simons
Foundation, and Journal of Graph Theory. Additional information and clarification by personal
communication from Laci Babai.
Sources: wikipedia, American Math Society, Quanta Magazine, ESPN, MIT, Chicago Tri-
bune, Sports Illustrated, and MIT.
Varāhamihira (499—587).
Varāhamihira was a 6th-century Indian mathematician, astronomer, and astrologer. He is also
referred to as Varāha or Mihira. He was born in India; the exact place of his birth is unknown.
One of his books says that he was educated at Kapitthaka, but it is not certain what this is now
called, or where it is. What is known is that he worked at Ujjain; it was already an important
mathematical centre, and he increased its prominence. There is a story that he used astrology
to predict the death of the prince, and was given the emblem of the boar (varāha) in recognition
of his wisdom, which led to his being known as Varāhamihira instead of Mihira.
One of Varāhamihira’s most notable works is the Brhatsambitā (the “Great Compilation”),
which covers topics including architecture, astronomy, weather, mathematics, perfumes, and
more. The book has 106 chapters. It is in this work that he discussed the problem described
in Example 3.2.6. He wrote that at least some of his work was a summary of previous results
in works that have not survived. The mathematical content of the Brhatsambitā includes ver-
sions of the arithmetic triangle, formulas for computing binomial coefficients, and trigonometric
identities.
Varāhamihira also wrote some other books on astronomy and astrology; his most famous
work is the Pancasiddhantika (“Five Astronomical Canons”), which describes five books (by
previous sages) that are no longer in existence. He knew Greek, and was aware of Greek
scientific understanding as well as Indian and Babylonian knowledge.
Sources: wikipedia, St. Andrews’ math history web site, the Free Press, and Sanskriti
magazine.
Vadim Georgievich Vizing (1937—2017).
Vadim Geogievich Vizing was a pioneering graph theorist in the Soviet Union, best known for
Vizing’s Theorem. This is the decisive result on the chromatic index of graphs that now appears
in many textbooks, including the one by Bondy and Murty referenced in the biographical
sketch of John Adrian Bondy (1944—). He was born in Kiev, USSR (now Kyiv, Ukraine).
As his mother was partly German, in 1947 (after World War II) the family was forced by the
Stalin government to move to Siberia. Beginning in 1954, Vizing studied math at Tomsk State
University in Siberia, graduating in 1959. He then moved to Moscow to work on his Ph.D. at
the Steklov Institute of Mathematics. He was working in the area of function approximation,
which he did not enjoy.
After being refused permission to switch topics, Vizing left Moscow in 1962 without com-
pleting his graduate work. He returned to Novosibirsk in Siberia, and worked at the Siberian
branch of the Soviet Academy of Sciences in nearby Akademgorodok (one of the premier re-
search centres in the Soviet Union) from 1962 to 1968, studying graph theory. He earned his
doctorate there in 1966. A.A. Zykov acted as a mentor to him.
It was during his doctoral studies that Vizing published the result for which he is best
known: that the edges of a graph can be coloured with at most ∆ + 1 colours, where ∆ is the
maximum number of neighbours of any vertex. This is described in Section 14.1. The paper
was written in Russian; the theorem is now considered essential content in graph theory courses.
Vizing also introduced the much-studied idea of list colouring, in which the permitted colours
for a vertex have to come from a predetermined list (each vertex has its own list). He posed the
conjecture that the vertices and edges of a graph can be coloured with at most ∆ + 2 colours
so that no pair of adjacent or incident objects has the same colour. This problem remains open
to this day.
Vizing wanted to move back to Ukraine where it would be less cold. He was not given
permission to return to Kiev. He worked in a number of small towns, and in 1974 was offered
298 B. Biographical Briefs
a position at the Academy for Food Technology in Odessa, where he remained for the rest of
his career. In 1976 Vizing switched his research interests to scheduling problems, and only
returned to the study of graph theory in 1995. He had retired by 2000, while continuing to
pursue research. Vizing published more than 50 papers.
Vizing was unable to travel much outside of the Soviet Union during his career, as the So-
viet government did not allow him to accept the invitations he received prior to the Perestroika
reforms of the late 1980s. Vizing’s pension was the equivalent of just $70USD/month; remark-
ably, he said that the additional $45USD/month he received from a European Union research
grant enabled him to travel and meet colleagues. (Despite the effects of inflation, these numbers
are as unimaginably low as they seem.) A world-class mathematician, the highest recognition
Vizing received was the “Great Silver Medal of the Institute of Mathematics of the Siberian
Department of the Russian Academy of Sciences”.
Sources: wikipedia, European Math Society, the Math Genealogy Project, and MathSciNet.
Additional information and clarification by personal communication from Laci Babai.
Sources: wikipedia, Festcolloquium for Wagner, the Math Genealogy Project, and Memorial
article in Results in Mathematics.
Jake Wellens (1992—).
Jake Wellens is an American combinatorist still in the early stages of his career. He was born
in Philadelphia, Pennsylvania (in the United States) in 1992. During high school he enjoyed
competing in math competitions. He moved to California for university, attending the California
Institute of Technology beginning in 2011 and graduating in 2015.
Wellens moved back east to Massachusetts, enrolling in the Ph.D. program at the Mas-
sachusetts Institute of Technology (MIT). He worked under the supervision of Henry Cohn,
and graduated in 2020 during the global pandemic. His thesis was entitled “Assorted results
in boolean function complexity, uniform sampling and clique partitions of graphs”. It was at
MIT that he met John Cameron Urschel (1991—) and they collaborated on several projects,
including their work on the difficulty of testing whether or not a graph is k-planar mentioned
in Section 15.1.
Sources: MIT, Main Line Times, and CalTech. Updated and confirmed through personal
communication.
Richard Michael Wilson (1945—).
Richard Michael Wilson is an outstanding American design theorist best known for his impres-
sive proofs establishing the existence of certain kinds of designs. He was born in Gary, Indiana
(in the United States). He completed his bachelor’s degree at Indiana University, graduating in
1966. He then moved to Columbus, Ohio, where he received a Master’s degree from Ohio State
University in 1968. He remained at Ohio State University to complete his doctorate in 1969
under the supervision of Dwijendra Kumar Ray-Chaudhuri (1933—). His thesis was entitled
“An Existence Theory for Pairwise Balanced Designs”.
After completing his Ph.D., Wilson stayed in Columbus, immediately taking a position at
Ohio State University. He worked his way up through the ranks there, becoming a professor
in 1974. In 1980 he moved to Pasadena, California, where he accepted a job at the California
Institute of Technology (CalTech). Wilson remained there until his retirement in 2014, and is
now a professor emeritus at CalTech.
Among Wilson’s many enormous contributions to combinatorics, here are just a few that
are particularly relevant to the material in this book. During his graduate studies and in
collaboration with Ray-Chaudhuri, Wilson determined exactly when Kirkman Triple Systems
exist (see Theorem 18.1.11). Subsequently, in 1974 Wilson proved Wilson’s Theorem, that
BIBDs exist whenever v is sufficiently large and the natural divisibility conditions are satisfied,
as discussed in Section 17.2. Wilson also produced the best known lower bounds for the number
of mutually orthogonal Latin squares of order n. Wilson published more than 60 papers during
his career. He had supervised at least 29 doctoral students as of 2021, including Gary McGuire
(1967—). He is also a co-author of a graduate-level introductory textbook in combinatorics.
In 1975, Wilson won the Pólya Prize from the Society for Industrial and Applied Math.
He held a research fellowship from 1975 to 1977, and was the Sherman Fairchild Distinguished
Scholar at CalTech in the winter of 1976. He has held visiting appointments at the University of
London, the University of Illinois at Chicago, and the University of Minnesota, and an adjunct
appointment at the University of Waterloo from 1982 to 1987.
In the late 1970s Wilson developed an interest in historical flutes. He collects, studies,
and performs on original European flutes from the 18th and 19th centuries, as well as on
replicas from these periods or earlier. He jointly wrote a book that has been published, on flute
performance in London in about 1830. His interest has broadened to traditional flutes from
around the world, which he also collects and performs on, sometimes at poetry-readings (his
wife is a poet).
300 B. Biographical Briefs
Sources: wikipedia, Wilson’s c.v., the Math Genealogy Project, and Designs, Codes, and
Cryptography.
Wesley Stoker Barker Woolhouse (1809—1893).
Wesley Stoker Barker Woolhouse was a 19th century British actuary and editor, whose writings
included mathematics, music, and actuarial science. He was born in North Shields, England,
in 1809. When he was 13 he won a prize for math offered by The Ladies’ Diary that was open
to all ages. Woolhouse spent most of his career as an actuary, but also had interests in music,
steam engines, and other diverse fields. He was active in publishing through much of his life,
including both books and periodicals.
Woolhouse published a number of papers, problems, and solutions to problems over the next
years, making his name known in mathematical circles. He was made deputy superintendent
of the Nautical Almanac’s office from 1830 to 1837, where he published tables and papers on
astronomy. After a difference of opinion with his superior, he left the Almanac, and in 1839
he took a position as actuary of the International Loan fund. At one point in his career he
was asked by Lord Ashley to calculate the distance walked by factory workers who had to retie
threads when they broke, for the purposes of motivating a reform bill limiting the working day
to 10 hours. Using probability, Woolhouse estimated the distance at 30 miles per day.
In 1841 the Ladies’ Diary and the Gentleman’s Diary were succeeded by the Lady’s and
Gentleman’s Diary, and Woolhouse became the editor in 1844. He held this post until 1865;
this annual periodical itself only lasted until 1871, so he was the editor for most of its existence.
It was in this publication that (in his first year as editor) Woolhouse included the problem (see
Section 18.1) that inspired Reverend Thomas Penyngton Kirkman (1806—1895) in his work on
designs, and Kirkman’s schoolgirl problem also appeared in the Diary in 1850.
During his lifetime, Woolhouse wrote and published books on subjects as diverse as ge-
ometry, musical theory, mortality in the Indian Army (this was an actuarial investigation),
calculus, and coins and calendars. He co-founded the English Institute of Actuaries in 1848,
and played a significant role in the development of actuarial science and the actuarial profession
in England. Woolhouse also enjoyed needlework, and amused himself by calculating the exact
length of thread he would need for various projects.
Sources: wikipedia, Journal of the Institute of Actuaries, wikipedia, and Monthly Notices
of the Royal Astronomical Society.
Ming-Yao Xu (1941—).
Ming-Yao Xu is a contemporary Chinese mathematician who is responsible for the formation
of two significant schools of mathematical research in China. He was born in Tianjin, China,
during World War II (part of the period known in China as the War of Resistance Against
Japan). During the war years the family traveled through the south of China evading Japanese
attacks, settling in Peking in 1945. The Chinese Communist Revolution was still ongoing,
and from 1945 to 1949 the Kuomintang (Nationalist Party) controlled Peking; the Chinese
Communist Party captured the city in 1949.
His wartime experiences made Xu a strong supporter of the Communist Party. He joined
the Communist Youth League in 1956 and was elected as a leader of the League at his school.
Xu enrolled in Peking University in 1959. His university years fell between periods of sig-
nificant political movements in China, but life was not calm. Xu expressed his own opinions
on politics and came under criticism from his classmates twice. Besides these political contro-
versies, chaotic “teaching reform” efforts at the university during the time Xu was there made
it difficult to follow prerequisites through anything like a standard curriculum. As a result it
took Xu almost 6 years to complete his bachelor’s degree; he graduated in 1965. Despite the
chaos, Xu studied hard. His teacher Shisun Ding became a close mentor and led him to study
group theory. Ding was later president of Peking University (1984—1989).
B. Biographical Briefs 301
After completing university, Xu was assigned to work in the Tangshan District. His time in
Tangshan coincided very closely with the 10 years of the tumultuous Cultural Revolution. For
almost all of this period, Xu was officially assigned to teach at the Tangshan Number 5 Middle
School, but the schools worked abnormally during this period and were even closed for the first
few years. During these years, Xu was often assigned to manual labour including as a purchaser
for the school cafeteria; in the Tangshan Steel Plant; and in the Kailuan Coal Mine. In 1976, Xu
escaped the worst of the deadly Tangshan earthquake (7.8 on the Richter scale) as he happened
to be visiting Beijing. On his return he found that his bed had been split in two and the floor
had collapsed. Toward the end of this time China’s restrictions on publishing mathematical
research lightened; Xu’s first paper (based on his undergraduate thesis) was published in 1976.
At this time there was a shortage of people in higher education in China. Peking University
wanted Xu to return to teach, but the Tangshan Education Bureau refused to release him.
Eventually Xu got around this by passing the postgraduate entrance examination. Xu returned
to Peking University in 1978 at the age of 37 as a graduate student. He worked under the
supervision of Xiaofu Duan (also known as Hsio-Fu Tuan) and Efang Wang, and finished his
graduate studies in 1980, immediately beginning to teach.
During his 24 years at Peking University, Xu built around himself a school of Chinese
researchers working on groups, and on group interactions with graphs and with maps. He
also developed expertise in computational group theory. Xu’s efforts included writing a new
graduate textbook on group theory; organising a seminar; and building relationships with inter-
national experts. Chinese researchers had been largely isolated from the international research
community for many years, so building international relations was a challenge. Xu organised
international conferences, but also travelled extensively in order to build these relationships,
which he then used to develop opportunities for his students. He made long visits to Australia
in 1985, 1987, and 1989; during the first of these he visited Cheryl Elisabeth Praeger (1948—)
and they discovered the Praeger-Xu graphs described in Section 12.5. Xu also visited Canada
in 1991 and 1992; Slovenia in 1995; and South Korea in 1999. In 1993 Xu began to supervise
his own doctoral students for the first time; in the 11 years between then and his retirement
from Peking University, Xu supervised 13 Ph.D. students.
In 2003, just as Xu was preparing to retire from Peking University, he accepted an oppor-
tunity to become the first Distinguished Professor at Shanxi Normal University. Here too he
developed a school of research. This time the focuses were on p-groups and computational group
theory. Again, one of his first steps was to write a graduate-level textbook. After establishing
this school of research, Xu retired again in 2010.
Xu enjoys music, and takes pleasure in reading literature and history. In his leisure time he
has independently conducted an extensive study of modern Chinese history, with a particular
focus on the political, cultural, and ideological history of China between 1957 and 1976. He
has published about 10 scholarly articles in journals that focus on these topics. Xu is married;
his daughter Jing Xu is an associate professor of math at Capital Normal University, having
completed her doctorate under the supervision of Praeger.
Xu has written more than 90 mathematical research papers, principally in the areas of group
theory and group actions on graphs. Several of his papers introduced important concepts that
were subsequently studied extensively by other researchers. Groups and group actions on graphs
are now major areas of mathematical research in China, and most Chinese researchers in these
fields owe something to Xu, whether it is for his textbooks, the international relationships he
established, or mentorship (direct or indirect). Xu has won the Science and Technology Progress
Award from the Ministry of Education in China.
Sources: personal communications, Amazon, and MathSciNet. Most of the content of this
biography comes from material shared by Shaofei Du, Xu’s first Ph.D. student, from an article
in preparation for the occasion of Xu’s 80th birthday.
302 B. Biographical Briefs
Solutions to
selected exercises
For the reader’s convenience, solutions are given with full work shown as well as a final
numerical solution. Typically the final numerical solution would not be expected, but makes it
easier to verify an answer that has been reached using a different method.
consisting entirely of digits (10 choices for the digit in each of the 8 positions). Similarly, if
there are 9 characters, then there are 109 passwords consisting entirely of digits. In total, there
are 108 + 109 = 1, 100, 000, 000 passwords with these constraints.
To
( )find the
( )coefficient of a2)b3 c2 d4 , we must take r = 2 and s = 2. This
( )( ( gives
)( )us the term
5 2 3 6 2 4 5 6 2 3 2 4 5 6
a b c d = 2 3 2 4
a b c d . Thus, the coefficient of a b c d is = 10 · 15 =
2 2 2 2 2 2
150.
4.1.3.1 When counting the number of subsets of an n-set, we saw that there is a bijection
between that number and the number of binary strings of length n: identify each element of
the set with a position in the string, and put a 0 in that position if the element is not in the
subset, and a 1 if it is.
Analogously, we can find a bijection between the number of these structures and the number
of ternary strings of length n (strings containing 0, 1, or 2 in each position). Identify each
element of the set with a position in the string, put a 0 in that position if the element is not in
the structure, a 1 if it occurs once, and a 2 if it occurs twice. Thus, we can form 3n structures
from the set {1, . . . , n}: there are 3 choices for each of the n entries in the ternary string.
4.1.3.3 We identify each of the ten Olympic contenders with a crib, and each of the three dolls
with one of the three medals. If the doll corresponding to the gold medal goes into crib i, this
corresponds to the competitor corresponding to crib i winning the gold medal. Similarly, if
the doll corresponding to the silver medal goes into crib j, this is equivalent to the contender
corresponding to crib j winning the silver medal; and the doll corresponding to bronze going
into crib k is equivalent to the contender corresponding to crib k winning the bronze medal.
4.2.10.2 COMBINATORIAL PROOF. The problem: We use the problem given to us in the
hint, so will be counting the number of ways to start with n dogs, determine r who will enter
a competition and k of those who will be finalists.
308 C. Solutions to selected exercises
Counting method (1: ) From the n dogs, we first choose the r who will enter the competition.
n
This can be done in ways. For each of these ways, we can choose k of the r competitors
(r ) ( )( )
r n r
to become finalists in ways. Thus, there are a total of ways to choose the dogs.
k r k
(Counting
) method 2: From the n dogs, choose k who will be the finalists. This can be done
n
in ways. For each of these ways, we can look at the remaining n − k dogs and choose r − k
k ( )
n−k
to be the competitors who will not be finalists, in ways. Thus, there are a total of
( )( ) r−k
n n−k
ways to choose the dogs.
k r−k
Conclusion: Since both ( of these
)( )solutions
( )(count the) answer to the same problem, the answers
n r n n−k
must be equal, so we have = . ■
r k k r−k
4.2.10.3 COMBINATORIAL PROOF. The problem: We will count the number of ways to
choose a random sample of n people from a class of n men and n women.
Counting method(1: ) From the 2n total people, choose n of them for the random sample.
2n
This can be done in ways.
n
Counting method 2: Let r represent the number of men who will be in the sample. Notice
that r may have any value from 0 up to n. We divide the problem into these n + 1 cases, and
take the sum of( all
) of the answers. In each case, we can choose the r men for the sample from
n
the n men, in ways. For each of these ways, from the n women, we choose r who will not
r
( )n − r will be in the sample, for a total of r + n − r = n
be part of the sample (so the remaining
n
people in the sample). There are ways to do this. Thus the total number of ways of
r
( )2
n
choosing r men and n − r women for the sample is . Adding up the solutions for all of
r
∑n ( )2
n
the cases, we obtain a final answer of .
r
r=0
Conclusion: Since both of these solutions count the answer to the same problem, the answers
∑n ( )2 ( )
n 2n
must be equal, so we have = . ■
r n
r=0
5.1.5.3 Since the judges must choose at least one project from each age group, this is equivalent
to a problem in which they are choosing only six projects to advance, with no restrictions
(( ))
3
on how they choose them. They can choose six projects from three categories in =
( ) ( ) 6
3+6−1 8
= = 28 ways.
6 6
Solutions to Exercise 5.1.6:
5.1.6.1 COMBINATORIAL PROOF. The problem: We will count the number of ways of
choosing k items from a menu that has n different entries (including mac and cheese), in two
ways. (( ))
n
Counting method 1: By definition, the answer to this is .
k
Counting method 2: We divide our count into two cases, according to whether or not we
choose any orders of mac and cheese. If we do not choose any mac and cheese, then ((we must
))
n−1
choose our k items from the other n − 1 entries on the menu. We can do this in
k
ways. If we do choose at least one order of mac and cheese, then we must choose the other k − 1
items from amongst the n entries on the ((menu)) (with mac and cheese still being an option for
n
additional choices). We can do this in ways. By the sum rule, the total number of
(( ))k − 1(( ))
n−1 n
ways of making our selection is + .
k k−1
Conclusion:
(( ))Since ((both of
))these
((methods))are counting the same thing, the answers must be
n n−1 n
equal, so = + . ■
k k k−1
310 C. Solutions to selected exercises
If k ≥ 1, then
(k + 1)k ≥ (k + 1)1 = k + 1
and we are done. If k = 0, then (k + 1)! = 1! = 1 = k + 1 and again the inequality is satisfied.
This completes the proof of the inductive step.
By the Principle of Mathematical Induction, n! ≥ n for every n ≥ 0. ■
1 − xk+1
1 + · · · + xk = .
1−x
Now we must deduce that
1 − xk+2
1 + · · · + xk+1 = .
1−x
We have
1 + · · · + xk+1 = (1 + · · · + xk ) + xk+1 .
1 − xk+1
Applying our inductive hypothesis, this is + xk+1 . Adding this up over a common
1−x
denominator of 1 − x gives
1 − xn+1
1 + · · · + xn =
1−x
for every n ≥ 1. ■
(x + x2 + x3 + x4 + x5 + x6 )5 .
We can rewrite this as
x5 (1 + x + x2 + x3 + x4 + x5 )5 .
Finding the coefficient of x11 in this expression is equivalent to finding the coefficient of x6 in
( )5
2 3 4 5 5 1 − x6
(1 + x + x + x + x + x ) = .
1−x
Using the Binomial Theorem and substituting y = −x6 , we see that
( ) ( ) ( ) ( )
5 5 5 5
(1 − x ) = (−x ) +
6 5 6 0 6 1
(−x ) + 6 2
(−x ) + 6 3
(−x ) + (−x6 )4 + (−x6 )5
1 2 3 4
= 1 − 5x6 + 10x12 − 10x18 + 5x24 − x30 .
C. Solutions to selected exercises 313
The function we’re interested in is the product of this with (1 − x)−5 , and we are looking for
the coefficient of x6 . The only ways of getting an x6 term from this product are by taking the
x0 term above and multiplying it by the x6 term from (1 − x)−5 , or by taking the x6 term above
and multiplying it by the x0 term from (1 − x)−5 .
Using the Generalised Binomial Theorem (and substituting y = −x), the coefficient of x0
in (1 − x)−5 is
( ) ( )
0 −5 0 0 5+0−1
(−1) = (−1) (−1) = 1.
0 0
Similarly, the coefficient of x6 in (1 − x)−5 is
( ) ( ) ( )
6 −5 6 6 5+6−1 10
(−1) = (−1) (−1) = = 210.
6 6 6
Thus, the number of ways in which Trent can roll ( a) total of 11 on his five dice is the
10
11
coefficient of x in our generating function, which is − 5 = 205. The probability of this
6
happening is 205 divided by the total number of outcomes of his roll, which is 65 = 7776, so
205/7776, or about 2.5%.
8.2.3.2 To use the method of partial fractions, we first factor the denominator:
Now, write
2+x 2+x A B
f (x) = = = +
2x2 + x − 1 (2x − 1)(x + 1) 2x − 1 x + 1
A(x + 1) + B(2x − 1) (A − B) + (A + 2B)x
= = .
(2x − 1)(x + 1) 2x2 + x − 1
A − B = 2, A + 2B = 1.
Subtracting the second equation from the first tells us that −3B = 1, so B = −1/3. Then the
first equation tells us that A = 2 − (1/3) = 5/3. So we have
C(x) = c0 + c1 x + c2 x2 + c3 x3 + c4 x4 + · · ·
xC(x) = c0 x + c1 x2 + c2 x3 + c3 x4 + · · ·
x2 C(x) = c0 x2 + c1 x3 + c2 x4 + · · ·
so
(1 − x − 2x2 )C(x) = C(x) − xC(x) − 2x2 C(x)
∞
∑
= c0 + (c1 − c0 )x + (cn − cn−1 − 2cn−2 )xn
n=2
= c0 + (c1 − c0 )x,
since (by the recurrence relation) we have cn − cn−1 − 2cn−2 = 0 for n ≥ 2. Therefore
c0 + (c1 − c0 )x
C(x) = .
1 − x − 2x2
Since c0 = 2 and c1 = 0, this means
2 + (0 − 2)x 2 − 2x
C(x) = = .
1 − x − 2x 2 (1 + x)(1 − 2x)
We now use partial fractions. Write
2 − 2x A B A(1 − 2x) + B(1 + x) (A + B) + (B − 2A)x
= + = = .
(1 + x)(1 − 2x) 1 + x 1 − 2x (1 + x)(1 − 2x) (1 + x)(1 − 2x)
Equating the coefficients in the numerators yields the equations
2 = A + B, −2 = B − 2A.
Subtracting the second equation from the first tells us that
B = 2A − 2 = 2(4/3) − 2 = 2/3.
So
( ) ( )
2 − 2x A B 4/3 2/3 4 1 2 1
C(x) = = + = + = + .
(1 + x)(1 − 2x) 1 + x 1 − 2x 1 + x 1 − 2x 3 1+x 3 1 − 2x
From the generalized binomial theorem, we know:
1
• The coefficient of xn in = (1 + x)−1 is
1+x
( ) ( ) ( )
−1 n 1+n−1 n n
= (−1) = (−1) = (−1)n .
n n n
316 C. Solutions to selected exercises
1
• The coefficient of xn in = (1 − 2x)−1 is
1 − 2x
( ) ( ) ( )
−1 n n 1+n−1 n 2n n
(−2) = (−1) (−2) = (−1) 2n = 2n .
n n n
4 2
Therefore cn , the coefficient of xn in C(x), is (−1)n + · 2n .
3 3
∞
∑
8.3.3.3 Let E(x) = en xn be the generating function of {en }. Then
n=0
E(x) = e0 + e1 x + e2 x2 + e3 x3 + e4 x4 + · · ·
xE(x) = e0 x + e1 x2 + e2 x3 + e3 x4 + · · ·
1
= 1 + x + x2 + x3 + x4 + · · ·
1−x
so
2 1
(1 − 3x)E(x) + = E(x) − 3xE(x) + 2 ·
1−x 1−x
∞
∑
= (e0 + 2) + (en − 3en−1 + 2)xn
n=1
= (e0 + 2),
(2 + 2)(1 − x) − 2 2 − 4x
E(x) = = .
(1 − 3x)(1 − x) (1 − 3x)(1 − x)
We now use partial fractions. Write
2 − 4x A B A(1 − x) + B(1 − 3x) (A + B) − (A + 3B)x
= + = = .
(1 − 3x)(1 − x) 1 − 3x 1 − x (1 − 3x)(1 − x) (1 − 3x)(1 − x)
Equating the coefficients in the numerators yields the equations
2 = A + B, −4 = −(A + 3B).
Adding the two equations tells us that 2 − 4 = (A + B) − (A + 3B) = −2B, so B = 1. Then
the first equation tells us that A = 2 − B = 2 − 1 = 1. So
2 − 4x A B 1 1
E(x) = = + = + .
(1 − 3x)(1 − x) 1 − 3x 1 − x 1 − 3x 1 − x
1
From the generalized binomial theorem, we know that the coefficient of xn in is 3n ,
1 − 3x
1
and the coefficient of xn in is 1. Therefore en , the coefficient of xn in E(x), is 3n + 1.
1−x
C. Solutions to selected exercises 317
D4 = 3(D3 + D2 ) = 3(2 + 1) = 9,
and
∑
k ∑
k
ck+1 = ci c(k+1)−i−1 = ci ck−i .
i=0 i=0
Using the inductive hypothesis, we have cj > 0 for every j such that 0 ≤ j ≤ k. Putting these
together gives that ck+1 is a sum of k + 1 terms where each term has the form ci ck−i with
0 ≤ i ≤ k. Since 0 ≤ k − i ≤ k, we see that ci > 0 and ck−i > 0 so that ci ck−i > 0. Hence
∑
k
ck+1 = ci ck−i > 0.
i=0
This completes the proof of the inductive step.
By the Principle of Mathematical Induction, cn > 0 for every n ≥ 0. ■
9.3.6.3 If bi = (i + 1)!/2 then the expanded exponential generating function for this sequence is
∞
∑ ∞
∑ ∞
∑
bi xi (i + 1)!xi
= = (i + 1)xi /2.
i! 2i!
i=0 i=0 i=0
This is
∞
(∞ )
1∑ 1 ∑ 1
(i + 1)xi = (i + 1)xi = .
2 2 2(1 − x)2
i=0 i=0
n1 + n2 − m + 1 = 15 + 23 − 2 + 1 = 37
people are approached, the artist will have enough people to carry their art in the parade.
so
|F ∩ I ∩ G| = |F ∩ I| − |F ∩ I ∩ G| = 66 − 48 = 18.
10.2.8.3 The number of integers between 1 and 60 that are divisible by 2 is 60/2 = 30. Call
the set of these integers A. The number of integers between 1 and 60 that are divisible by 3
is 60/3 = 20. Call the set of these integers B. The number of integers between 1 and 60 that
is divisible by 5 is 60/5 = 12. Call the set of these integers C. Then |A ∩ B| is the number of
integers between 1 and 60 that are divisible by 2 and 3; that is, the number that are divisible
by 6. This is 60/6 = 10. Similarly, |A ∩ C| is the number of integers between 1 and 60 that
are divisible by 2 and 5; that is, the number that are divisible by 10. This is 60/10 = 6. Also,
|B ∩ C| is the number of integers between 1 and 60 that are divisible by 3 and 5; that is, the
number that are divisible by 15. This is 60/15 = 4. Finally, |A∩B ∩C| is the number of integers
between 1 and 60 that are divisible by 2, 3, and 5; that is, the number that are divisible by 30.
This is 60/30 = 2.
We have been asked for |A ∪ B ∪ C|. Using inclusion-exclusion, we see that the answer is
30 + 20 + 12 − 10 − 6 − 4 + 2 = 44.
11.2.11.1
• The only edge incident with a is e1 , so the valency of a is 1.
• The only edge incident with b is e2 , so the valency of b is 1.
• The edges incident with c are e1 , e3 , and e4 , so the valency of c is 3.
• The edges incident with e are e4 , e5 , and e6 , and e appears twice as an endvertex of
e6 , so altogether e appears 4 times as the endvertex of some edge. Thus, the valency
of e is 4.
• The edges incident with e are e4 , e5 , and e6 , so the valency of e is 3.
Since e6 = {e, e} is a loop, the graph is not simple. There is no isolated vertex, because no
vertex has valency 0. The only neighbour of a is c, and the only edge incident with a is e1 .
11.2.11.3
• The edges incident with a are e1 and e2 , so the valency of a is 2.
• The edges incident with b are e1 and e3 , so the valency of b is 2.
• The edges incident with c are e2 and e3 , so the valency of c is 2.
• No edges are incident with d, so the valency of d is 0.
There are no loops or multiple edges, so the graph is simple. The graph does have an isolated
vertex, namely, d (because the valency of d is 0). The neighbours of a are b and c, and the
edges incident with a are e1 and e2 , as was already mentioned above.
320 C. Solutions to selected exercises
(This principle was pointed out in the proof of Proposition 11.4.4.3.) The only vertex of
valency 1 in H is z, so this implies that φ(c) = z.
Now, since d ∼ c, we must have φ(d) ∼ φ(c). Since φ(c) = z, and the only neighbour of z
is y, this implies φ(d) = y. So
( )
dH (y) = dH φ(d) = dG (d).
However, dH (y) = 2 and dG (d) = 3, so dH (y) ̸= dG (d). This is a contradiction.
11.4.7.3 There is no vertex of valency 0 in G1 , but A is a vertex of valency 0 in G2 . Therefore
G1 and G2 do not have the same degree sequence, so they are not isomorphic.
Base case: n = 1. Let G be a digraph with no loops or multiarcs, and with only one
−
vertex v1 . Then there are no arcs in G, so |A(G)| = 0 = d+ G (v1 ) = dG (v1 ). So the desired
conclusion is true when n = 1.
Inductive step: Assume that n ≥ 1, the formula holds for every digraph with n vertices that
has no loops or multiarcs, and G is a digraph with n + 1 vertices that has no loops or multiarcs.
Pick an arbitrary vertex u of G. Let
• N + be the set of outneighbours of u, and N − the set of inneighbours of u,
• s = |N + | = d+
G (u) be the number of arcs that begin at u,
−
• t = |N − | = dG (u) be the number of arcs that end at u, and
• G′ be the digraph obtained from G by deleting u and its s + t incident arcs.
Note that:
• V (G′ ) = V (G) ∖ {u}, so G′ has n vertices.
• |A(G′ )| = |A(G)| − s − t.
322 C. Solutions to selected exercises
12.1.6.3 Beginning at the top and working clockwise, label the vertices of the digraph a, b, c,
d, and e. Then:
• a has outvalency 2 and invalency 1;
• b has outvalency 2 and invalency 2;
• c has outvalency 1 and invalency 2;
• d has outvalency 2 and invalency 2;
• e has outvalency 1 and invalency 1.
c. (a, b, c, b) is neither a path nor a cycle. It is not a path because the vertices are not all
distinct. (Namely, the vertex b occurs twice.) It is not a cycle, because the first vertex
(namely, a) is not the same as the final vertex (namely, b).
12.4.6.1 PROOF. Let T be a tree, and let v be a leaf of T . Consider T \{v}. Certainly it cannot
have any cycles, since T has no cycles. Let x and y be arbitrary vertices of T \ {v}. Since T is
connected, there is an x − y walk in T , so by Proposition 12.3.4, there is an x − y path in T .
Since v is a leaf of T , if an x − y walk uses the vertex v then the neighbour of v would have to
come both before and after v in the walk, since v has only one neighbour, so such a walk would
not be a path. Thus, the x − y path cannot use the vertex v, so it is still a path in T \ {v}.
Since x and y were arbitrary vertices, this shows that T \ {v} is connected. This completes the
proof. ■
13.1.6.1.a This graph has Euler tours, because it is connected and all vertices have even valency.
One Euler tour is (d, f, g, j, a, d, e, i, h, b, f, c, b, i, d). The following figure numbers the vertices
1, 2, 3, . . . in the order they are visited.
5 10,13
4 12
8,14 1,6,15
9 7
3 2,11
324 C. Solutions to selected exercises
f c
e d
b. The closure of this graph is K6 . We can easily see from this that the graph does have a
Hamilton cycle. (To see that the closure is K6 , observe that every vertex of the graph
has valency at least 2. Thus, the two vertices of valency 4 can be joined to each of their
non-neighbours. After doing so, every vertex has valency at least 3, so every vertex
can be joined to every other vertex.)
13.2.12.3 Let G be the graph that has been shown here. Using the notation of Theorem 13.2.2,
let S = {a, f }. Then |S| = 2, but G \ S has 3 connected components: {b, e}, {c, h}, and {d, g}.
Since 3 > 2, G cannot have a Hamilton cycle.
14.1.18.2 PROOF. The proof is by contradiction: suppose n is odd, and the cycle
Cn = (v0 , v1 , . . . , vn = v0 )
is class one. Since every vertex of Cn has valency two, this means that the graph has a proper
edge-colouring that uses only 2 colours. Let us call the colours red and blue.
Assume, without loss of generality, that the edge v0 v1 is red. The edge v1 v2 cannot be the
same colour as v0 v1 (because they are both incident to v1 ), so v1 v2 must be blue. The edge
v2 v3 cannot be the same colour as v1 v2 (because they are both incident to v2 ), so v2 v3 must be
red. Continuing in this way, we see (by induction on k) that vk vk+1 is red whenever k is even,
and it is blue whenever k is odd. (That is, the two colours must alternate red, blue, red, blue,
red, blue,… as we go around the cycle.)
In particular, since n is odd, we know that n − 1 is even, so this means that the edge
vn−1 vn is red. However, we have vn = v0 so the edges vn−1 vn and v0 v1 are both incident to the
vertex v0 ), so they cannot be the same colour. The contradicts the fact that both edges are
red. ■
R(3, 11) ≤ R(3 − 1, 11) + R(3, 11 − 1) = R(2, 11) + R(3, 10) ≤ 11 + 42 = 53.
So 40 ≤ R(3, 11) ≤ 53.
If on the other hand no edge of the induced subgraph has been coloured with colour i, then
the induced subgraph is a Kn whose edges have been coloured with the remaining c colours.
By hypothesis, every such colouring has a monochromatic triangle. This completes the proof.
■
However, R(2, 2, 3) = 3. This is because if any edges are dotted or dashed, then there is a
dotted or dashed K2 ; if no edges are dotted or dashed, then every edge is solid, so there is a
solid K3 .
14.2.9.2 We will show that R(2, 4) = 4. We are looking for the smallest value of n such that
every edge-colouring of Kn with dashed or solid lines has either a dashed K2 or a solid K4 . The
following colouring shows that R(2, 4) > 3;
However, in K4 if any edge is dashed, then there is a dashed K2 , while if no edges are
dashed, then there is a solid K4 .
14.3.14.4 The fact that G contains a subgraph isomorphic to Ki implies that χ(G) ≥ i. The
fact that ∆(G) ≤ j implies that
χ(G) ≤ ∆(G) + 1 ≤ j + 1.
So 4 ≤ i ≤ χ(G) ≤ j + 1 ≤ 7. If we also know that G is connected and is neither a complete
graph nor a cycle of odd length, then χ(G) ≤ ∆(G) ≤ j, so 4 ≤ i ≤ χ(G) ≤ j ≤ 6 in this case.
C. Solutions to selected exercises 327
15.1.16.3 We show a planar embedding of the graph, the planar embedding with the dual graph
shown in grey, and the dual graph.
b b
e f e f
c a c a
d d
|E(H)| = |E(G)| − 1
328 C. Solutions to selected exercises
|F (H)| = |F (G)| − 1 = k
since the edge e being part of a cycle must separate two faces of G, which are united into one
face of H. Furthermore, since e was in a cycle and G has two connected components, by an
argument similar to that given in Proposition 12.3.9 H has two connected components, and
H has a planar embedding induced by the planar embedding of G. Therefore our inductive
hypothesis applies to H, so
15.2.10.4 The value for |V | − |E| + |F | on a torus is 0. For example, consider the graph on 5
vertices consisting of two cycles of length 3 that meet at a vertex. Draw this graph on a torus so
that one cycle goes through the hole in the middle, and one cycle goes around the outside edge
of the torus. This embedding has one face, since the first cycle cuts the torus into something
resembling a cylinder, and the second cuts the cylinder into a rectangle. There are 5 vertices
and 6 edges, so |V | − |E| + |F | = 5 − 6 + 1 = 0, as claimed.
15.3.8.1 First, notice that since G is cubic, every vertex has valency 3, which is odd. Therefore,
by Corollary 11.3.12, G must have an even number of vertices.
This means that the number of vertices in the Hamilton cycle, and the number of edges
in the Hamilton cycle (which are equal) are both even. Thus, we can colour the edges of the
Hamilton cycle with 2 colours, say blue and red, alternating between the two colours all the
way around the cycle.
Since the graph is cubic, each vertex is now incident to exactly one edge that has not yet
been coloured. Therefore, we can colour all of the remaining edges with a single colour — green,
say. Thus, we have properly 3-edge-coloured G. Since ∆(G) = 3, this means that G is a class
one graph.
15.3.8.2 We use the letters R, G, B, and Y to represent the four colours. The exterior face
(which appears grey in the picture) will be assigned the colour B.
R Y R Y
Y G R B G
R
R Y G
C. Solutions to selected exercises 329
16.1.3.1 PROOF. Let L be an n×n Latin square whose entries come from a set N of cardinality
n, and let L′ be the result of exchanging row i with row j.
Let k ∈ {1, . . . , n} be arbitrary, and consider column k of L′ . Its entries are exactly the
same as the entries of column k of L, except that the ith entry has been exchanged with the jth
entry. Since every element of N appears exactly once in column k of L, it also appears exactly
once in column k of L′ (although possibly in a different position). Since k was arbitrary, every
element of N appears exactly once in each column of L′ .
Now consider row k of L′ . If k ̸= i, j, then this row is exactly the same as row k of L. Since
every element of N appears exactly once in row k of L, it also appears exactly once (and in the
same position even) in row k of L′ . If k = i or k = j, then row k of L′ is the same as some other
row (the jth or ith row, respectively) of L. Since every element of N appears exactly once in
that row of L, it also appears exactly once in row k of L′ .
Thus, L′ satisfies the definition of a Latin square. ■
1 3 4 2 1 3 4 2 1 3 4 2
2 1 3 4 3 1 2 4 3 1 2 4
.
4 2 1 3 2 4 1 3 4 2 1 3
3 4 2 1 4 2 3 1 2 4 3 1
16.2.9.2 As explained in the first paragraph of the proof of Theorem 16.2.4, we may assume the
first row is 1, 2, 3, 4.
Now, we use the idea that is explained in the second paragraph of the proof of Theo-
rem 16.2.4. For any position in a row after the first row, the entry in our new Latin square
cannot be the same as the entry in this position of either of the two given squares (because, for
any j, the ordered pair (j, j) has already appeared in the top row of the given square and our
new square), and it also cannot be the same as the entry in the first row of the column. This
eliminates three possibilities for the entry in this position, so there is only one possibility left.
Putting this remaining entry into each position yields the following Latin square, which must
be the one that was requested:
1 2 3 4
2 1 4 3
3 4 1 2
4 3 2 1
330 C. Solutions to selected exercises
16.2.9.3
1 2 3 4 5 6 7 8
3 4 1 2 7 8 5 6
5 6 7 8 1 2 3 4
7 8 5 6 3 4 1 2
4 3 2 1 8 7 6 5
2 1 4 3 6 5 8 7
8 7 6 5 4 3 2 1
6 5 8 7 2 1 4 3
λ(v − 1) 3(16 − 1)
r= = = 9,
k−1 6−1
C. Solutions to selected exercises 331
17.2.7.3 The set {1, 3, 7} gives the differences ±2, ±4, and ±6, while the set {1, 6, 13} gives the
differences ±5, ±7, and ±12. So we need to find two sets that contain the differences ±1, ±3,
±8, ±9, ±10, and ±11. The sets {1, 2, 11} and {1, 4, 12} work.
v = 16, k = 6, and λ = 1 .
Then
v−1 16 − 1
λ =1· =3
k−1 6−1
and
v(v − 1) 16(16 − 1) 16 · 15
λ =1· = =8
k(k − 1) 6(6 − 1) 6·5
are integers, so the conditions in Theorem 17.1.9 are satisfied.
From the formula r(k − 1) = λ(v − 1), we see that
λ(v − 1) 1 · (16 − 1)
r= = = 3.
k−1 6−1
Then, from the formula bk = vr, we have
vr 16 · 3
b= = = 8.
k 6
Therefore b = 8 < 16 = v, so Fisher’s Inequality is not satisfied.
Since Fisher’s Inequality is not satisfied, there is no BIBD with these parameters.
332 C. Solutions to selected exercises
17.3.2.2 It is shown just before the proof of Fisher’s Inequality that Fisher’s Inequality is
equivalent to λ(v − 1) ≥ k(k − 1). Since λ = 1 and k = 20, this means
1 · (v − 1) ≥ 20(20 − 1) = 380,
so v ≥ 380 + 1 = 381. Therefore, v must be at least 381 to satisfy Fisher’s Inequality.
Since
v−1 381 − 1 380
λ =1· = = 20
k−1 20 − 1 19
and
1 8 2 9 3 10 4 11 5 12 6 13 7.
Then the second sentence of the proof of Lemma 18.1.4 tells us that the rest of the rows are
obtained by shifting to the left. So the Latin square is
1 8 2 9 3 10 4 11 5 12 6 13 7
8 2 9 3 10 4 11 5 12 6 13 7 1
2 9 3 10 4 11 5 12 6 13 7 1 8
9 3 10 4 11 5 12 6 13 7 1 8 2
3 10 4 11 5 12 6 13 7 1 8 2 9
10 4 11 5 12 6 13 7 1 8 2 9 3
4 11 5 12 6 13 7 1 8 2 9 3 10
11 5 12 6 13 7 1 8 2 9 3 10 4
5 12 6 13 7 1 8 2 9 3 10 4 11
12 6 13 7 1 8 2 9 3 10 4 11 5
6 13 7 1 8 2 9 3 10 4 11 5 12
13 7 1 8 2 9 3 10 4 11 5 12 6
7 1 8 2 9 3 10 4 11 5 12 6 13
one w-girl; the other 30 have either two u-girls with a v-girl, two v-girls with a w-girl, or two
w-girls with a u-girl.
A Kirkman system requires us to divide the blocks into 7 groups of 5 blocks such that each
girl appears exactly once in each group of blocks. Since there should be 7 groups of 5 blocks,
but there are only 5 blocks that have a u-girl, a v-girl, and a w-girl, there must be at least one
group of blocks (in fact, at least two) that has no block consisting of a u-girl, a v-girl, and a
w-girl.
Consider such a group of 5 blocks. We must have all 5 of the u-girls. If no block contained
more than one u-girl, then in order to get all 5 u-girls we would have to choose only blocks
that have two w-girls and a u-girl. However, this would mean that we had 10 w-girls and no
v-girls, which is not allowed. So we must choose at least one block that has two u-girls and a
v-girl. Repeating the same argument with v or w taking the place of u, we see that we must
also choose at least one block that has two v-girls and a w-girl, and at least one block that has
two w-girls and a u-girl. Since we are only choosing 5 blocks but there are these three classes
of blocks, there must be some class of blocks of which we only choose one.
Without loss of generality, suppose that we only choose one of the blocks that has two
u-girls and a w-girl. In order to have all 5 of the u-girls, we must choose three blocks that have
two w-girls and a u-girl. But this means that we have six w-girls, which is not allowed.
Therefore, there is no way to partition the blocks of this design into seven groups of five
blocks so that every girl appears exactly once in each group.
15 · 14 · · · (16 − t)
k(k − 1) · · · (k + 1 − t)
is an integer. ( ) ( )
k−1 14 (k − 1)! 14!
Furthermore, we have divides , so that divides . In other
t−1 t−1 (k − t)! (15 − t)!
words,
14 · 13
When k = 13 this gives y = . Since k divides 15y and k is coprime to 15,
(15 − t)(14 − t)
y 14
we must have k divides y. But then = is an integer. Since t < k = 13, we
13 (15 − t)(14 − t)
have 14 − t ≥ 2, but no two consecutive integers each of which is at least 2 are both divisors of
14, a contradiction. Thus k = 13 cannot arise.
When k = 12, this gives
14 · 13 · 12
y= .
(15 − t)(14 − t)(13 − t)
Now k dividing 15y implies that
15 · 14 · 13
(15 − t)(14 − t)(13 − t)
is an integer. Since the numerator is not a multiple of 22 , the denominator cannot be either,
leaving only the possibilities t = 4, 8. Since the numerator is not a multiple of 32 , the denom-
inator cannot be either, which eliminates t = 4. When t = 8, the numerator of y is not a
multiple of 5, but the denominator is, so this is also impossible. Thus k = 12 cannot arise.
When k = 11 this gives
14 · 13 · 12 · 11
y= .
(15 − t)(14 − t)(13 − t)(12 − t)
Since k divides 15y and k is coprime to 15, we must have k divides y. But then
y 14 · 13 · 12
=
11 (15 − t)(14 − t)(13 − t)(12 − t)
is an integer. Since the numerator is not a multiple of 5, the four consecutive numbers that are
the factors of the denominator must be 6 through 9 (since t ≥ 2, they cannot be 11 through
14, and since t < 11 they cannot be 1 through 4). Thus, we must have t = 6. But then the
numerator is not divisible by 32 , while the denominator is divisible by 33 , contradicting y/11
being an integer. Thus k = 11 is not possible.
When k = 10, this gives
14 · 13 · 12 · 11 · 10
y= .
(15 − t)(14 − t)(13 − t)(12 − t)(11 − t)
Now k dividing 15y implies that
15 · 14 · 13 · 12 · 11
(15 − t)(14 − t)(13 − t)(12 − t)(11 − t)
is an integer. Since the numerator is not a multiple of 24 , the denominator cannot be either.
In particular, 8 cannot be one of the factors that appears in the denominator (since some
other even factor would appear with it), nor can 2, 4, and 6 all be factors that appear in the
denominator. Also, the numerator is not divisible by 33 , so we cannot have 11 − t = 9. This
leaves t = 8 as the only possibility. However, the numerator of y is not divisible by 32 , so t = 8
is also not possible. Thus k = 10 is not possible.
When k = 9, we see that
14 · 13 · 12 · 11 · 10 · 9
y= .
(15 − t)(14 − t)(13 − t)(12 − t)(11 − t)(10 − t)
C. Solutions to selected exercises 335
The denominator includes 3, 6, 9, and 12, so is divisible by 35 , but the numerator is not. Thus,
k = 4 is not possible.
If k = 3 then 2 ≤ t < k implies t = 2. We know these parameters are possible, as these are
the parameters of a Steiner triple system.
Thus, the only possible values of k and t ≥ 2 for which nontrivial t-designs might exist with
v = 15 and λ = 1 are k = 5 and t = 4: a 4 − (15, 5, 1) design, or k = 3 and t = 2: a (15, 3, 1)
Steiner triple system.
( ) ( )
6−i 16 − i
18.2.7.3 If a 3 − (16, 6, 1) design exists then we have divides for 0 ≤ i ≤ 2.
( ) ( ) 3−i 3−i
6 16
With i = 0 this gives = 20 divides = 560, which is true. With i = 1, we have
( ) ( ) 3 3
5 15
= 10 divides = 105, which is not true. Therefore such a design is not possible.
2 2
18.3.9.1 PROOF. Let L, M , and N be lines of an affine plane such that L is parallel to both
M and N ; that is, no point lies on both L and M or on both L and N . Let p be an arbitrary
point on M . Since L and M are parallel, p does not lie on L. By the parallel postulate, there
is a unique line through p that is parallel to L; this line is M . Therefore N cannot contain p.
Since our choice of p on M was arbitrary, no point of M can also lie on N , so M and N are
parallel. ■
18.3.9.3 A finite affine plane of order 19 has 192 = 361 points, and 19(19 + 1) = 380 lines.
18.3.9.5 Without colours it is difficult to effectively draw this plane so that the parallel classes
can be clearly seen. We will use solid vertical lines; solid horizontal lines; dashed lines; dotted
lines; solid grey lines; and dotted grey lines to represent the six parallel classes of lines, but
some of these may be difficult to distinguish. Note that the lines that are neither vertical nor
horizontal will “turn corners” or zig-zag to join their sets of 5 points.
C. Solutions to selected exercises 337
We obtain the following 4 MOLS of order 5 from this affine plane, by using the vertical
and horizontal lines to create the coordinates. To make things easier to see, we will have the
positions in the Latin squares correspond visually to the positions in the 5 by 5 array of points
that we have drawn, so the top-left entry in the Latin squares will come from the top-left point
of the array, etc. We will number the lines in each parallel class so as to ensure that the entries
in the top row of each square are 1, 2, 3, 4, and 5, in that order. The first square corresponds
to the dashed lines; the second to the dotted lines; the third to the solid grey lines, and the
fourth to the dashed grey lines.
1 2 3 4 5 1 2 3 4 5 1 2 3 4 5 1 2 3 4 5
2 3 4 5 1 5 1 2 3 4 3 4 5 1 2 4 5 1 2 3
3 4 5 1 2 4 5 1 2 3 5 1 2 3 4 2 3 4 5 1
4 5 1 2 3 3 4 5 1 2 2 3 4 5 1 5 1 2 3 4
5 1 2 3 4 2 3 4 5 1 4 5 1 2 3 3 4 5 1 2
19.2.6.4 PROOF. Let x, y, and z be words of the same length. Suppose that d(x, z) = k, so
that x and z differ in k positions. Suppose that d(x, y) = i, so y differs from x in i positions. If
i ≥ k then since d(y, z) ≥ 0 by Exercise 19.2.6.1, we have d(x, z) ≤ d(x, y) + d(y, z). Otherwise,
there must be some list of at least k − i positions in which x differs from z but does not differ
from y. In each of these positions, since y has the same entry as x, y must have a different entry
than z. Therefore d(y, z) ≥ k − i. Now d(x, y) + d(y, z) ≥ i + k − i = k = d(x, z), completing
the proof. ■
List of Notation
Symbol Description Page
n!
(n ) n factorial 20
((rn)) n choose r 23
(r n ) n multichoose r 41
r1 ,...,rm n choose r1 and . . . and rm 43
(IH) Inductive Hypothesis 50
V set of vertices of a graph 104
E set of edges of a graph 104
E(G) edge set of the graph G 104
V (G) vertex set of the graph G 104
u∼v u is adjacent to v 105
uv the edge between vertices u and v 105
val(v) valency of v 105
deg(v) valency (degree) of v 105
d(v) valency (degree) of v 105
dG (v) valency (degree) of v in G 105
G \ {v} G with vertex v deleted 107
G\S G with the set S of vertices deleted 107
G \ {e} G with edge e deleted 107
Kn complete graph on n vertices 108
Gc complement of G 109
φ : G 1 → G2 φ is a map from the vertices of G1 to the vertices of G2 111
(in this course, always an isomorphism)
G1 ∼= G2 G1 is isomorphic to G2 111
Pn path of length n 123
Cn cycle of length n 124
δ minimum valency 139
∆ maximum valency 139
δ(G) minimum valency of G 139
∆(G) maximum valency of G 139
χ′ (G) chromatic index of G 144
χ′ chromatic index 144
Km,n complete bipartite graph 146
c(v) number of colours used on edges incident with v 147
R(n1 , . . . , nc ) Ramsey number 151
(Continued on next page)
341
342 D. List of Notation