Double counting (proof technique)


In combinatorics, double counting, also called counting in two ways, is a combinatorial proof technique for showing that two expressions are equal by demonstrating that they are two ways of counting the size of one set. In this technique, which call “one of the most important tools in combinatorics,” one describes a finite set X from two perspectives leading to two distinct expressions for the size of the set. Since both expressions equal the size of the same set, they equal each other.

Examples

Multiplication (of natural numbers) commutes

This is a simple example of double counting, often used when teaching multiplication to young children. In this context, multiplication of natural numbers is introduced as repeated addition, and is then shown to be commutative by counting, in two different ways, a number of items arranged in a rectangular grid. Suppose the grid has rows and columns. We first count the items by summing rows of items each, then a second time by summing columns of items each, thus showing that, for these particular values of and,. While not a proof, it clearly shows that multiplication commutes, for any example we choose.

Forming committees

One example of the double counting method counts the number of ways in which a committee can be formed from n people, allowing any number of the people to be part of the committee. That is, one counts the number of subsets that an n-element set may have. One method for forming a committee is to ask each person to choose whether or not to join it. Each person has two choices – yes or no – and these choices are independent of those of the other people. Therefore there are 2 × 2 ×... × 2 = 2n possibilities. Alternatively, one may observe that the size of the committee must be some number between 0 and n. For each possible size k, the number of ways in which a committee of k people can be formed from n people is the binomial coefficient
Therefore the total number of possible committees is the sum of binomial coefficients over k = 0, 1, 2,... n. Equating the two expressions gives the identity
a special case of the binomial theorem. A similar double counting method can be used to prove the more general identity
.

Handshaking lemma

Another theorem that is commonly proven with a double counting argument states that every undirected graph contains an even number of vertices of odd degree. That is, the number of vertices that have an odd number of incident edges must be even. In more colloquial terms, in a party of people some of whom shake hands, an even number of people must have shaken an odd number of other people's hands; for this reason, the result is known as the handshaking lemma.
To prove this by double counting, let d be the degree of vertex v. The number of vertex-edge incidences in the graph may be counted in two different ways: by summing the degrees of the vertices, or by counting two incidences for every edge. Therefore
where e is the number of edges. The sum of the degrees of the vertices is therefore an even number, which could not happen if an odd number of the vertices had odd degree. This fact, with this proof, appears in the 1736 paper of Leonhard Euler on the Seven Bridges of Königsberg that first began the study of graph theory.

Counting trees

What is the number Tn of different trees that can be formed from a set of n distinct vertices? Cayley's formula gives the answer. list four proofs of this fact; they write of the fourth, a double counting proof due to Jim Pitman, that it is “the most beautiful of them all.”
Pitman's proof counts in two different ways the number of different sequences of directed edges that can be added to an empty graph on n vertices to form from it a rooted tree. One way to form such a sequence is to start with one of the Tn possible unrooted trees, choose one of its n vertices as root, and choose one of the possible sequences in which to add its edges. Therefore, the total number of sequences that can be formed in this way is.
Another way to count these edge sequences is to consider adding the edges one by one to an empty graph, and to count the number of choices available at each step. If one has added a collection of edges already, so that the graph formed by these edges is a rooted forest with k trees, there are choices for the next edge to add: its starting vertex can be any one of the n vertices of the graph, and its ending vertex can be any one of the roots other than the root of the tree containing the starting vertex. Therefore, if one multiplies together the number of choices from the first step, the second step, etc., the total number of choices is
Equating these two formulas for the number of edge sequences results in Cayley's formula:
and
As Aigner and Ziegler describe, the formula and the proof can be generalized to count the number of rooted forests with k trees, for any k.

Additional examples