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 van Lint & Wilson (2001) call "one of the most important tools in combinatorics",[1] one describes a finite set from two perspectives leading to two distinct expressions for the size of the set.
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.
One example of the double counting method counts the number of ways in which a committee can be formed from
One method for forming a committee is to ask each person to choose whether or not to join it.
Alternatively, one may observe that the size of the committee must be some number between 0 and
Therefore the total number of possible committees is the sum of binomial coefficients over
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[2]
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.
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.
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.
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.
of different trees that can be formed from a set of
Aigner & Ziegler (1998) 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.
"[3] 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
vertices to form from it a rooted tree.
The directed edges point away from the root.
One way to form such a sequence is to start with one of the
possible unrooted trees, choose one of its
Therefore, the total number of sequences that can be formed in this way is
[3] 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.
choices for the next edge to add: its starting vertex can be any one of the
vertices of the graph, and its ending vertex can be any one of the
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:
As Aigner and Ziegler describe, the formula and the proof can be generalized to count the number of rooted forests with