# Combinatorics

### Related subjects Mathematics

**Combinatorics** is a branch of pure mathematics concerning the study of discrete (and usually finite) objects. It is related to many other areas of mathematics, such as algebra, probability theory, ergodic theory and geometry, as well as to applied subjects in computer science and statistical physics. Aspects of combinatorics include "counting" the objects satisfying certain criteria (* enumerative combinatorics*), deciding when the criteria can be met, and constructing and analyzing objects meeting the criteria (as in * combinatorial designs and matroid theory*), finding "largest", "smallest", or "optimal" objects (* extremal combinatorics* and * combinatorial optimization*), and finding algebraic structures these objects may have (* algebraic combinatorics*).

Combinatorics is as much about problem solving as theory building, though it has developed powerful theoretical methods, especially since the later twentieth century (see the page List of combinatorics topics for details of the more recent development of the subject). One of the oldest and most accessible parts of combinatorics is graph theory, which also has numerous natural connections to other areas.

There are many combinatorial patterns and theorems related to the structure of combinatoric sets. These often focus on a partition or ordered partition of a set. See the List of partition topics for an expanded list of related topics or the List of combinatorics topics for a more general listing. Some of the more notable results are highlighted below.

An example of a simple combinatorial question is the following: What is the number of possible orderings of a deck of 52 distinct playing cards? The answer is 52! (52 factorial), which is equal to about 8.0658 × 10^{67}.

Another example of a more difficult problem: Given a certain number *n* of people, is it possible to assign them to sets so that each person is in at least one set, each pair of people is in exactly one set together, every two sets have exactly one person in common, and no set contains everyone, all but one person, or exactly one person? The answer depends on *n*. See "Design theory" below.

Combinatorics is used frequently in computer science to obtain estimates on the number of elements of certain sets. A mathematician who studies combinatorics is often referred to as a *combinatorialist* or *combinatorist*.

## History of Combinatorics

## Earliest uses

- The earliest books about combinatorics are from India. A Jainist text, the Bhagabati Sutra, had the first mention of a combinatorics problem; it asked how many ways one could take six tastes one, two, or three tastes at a time. The Bhagabati Sutra was written around 300 BC, and thus was the first book to mention the choice function . The next ideas of Combinatorics came from Pingala, who was interested in prosody. Specifically, he wanted to know how many ways a six syllable meter could be made from short and long notes. He wrote this problem in the Chanda sutra (also Chandahsutra) in the second century BC . In addition, he also found the number of meters that had n long notes and k short notes, which is equivalent to finding the binomial coefficients.

- The ideas of the Bhagabati were generalized by the Indian mathematician Mahariva in 850 AD, and Pingala's work on prosody was expanded by Bhaskara and Hemacandra in 1100 AD. Bhaskara was the first known person to find the generalized choice function, although Brahmagupta may have known earlier. Hemacandra asked how many meters existed of a certain length if a long note was considered to be twice as long as a short note, which is equivalent to finding the Fibonacci numbers.

- While India was the first nation to publish results on Combinatorics, there were discoveries by other nations on similar topics. The earliest known connection to Combinatorics comes from the Rhind papyrus, problem 79, for the implementation of a geometric series. The next milestone is held by the I Ching. The book is about what different hexagrams mean, and to do this they needed to know how many possible hexagrams there were. Since each hexagram is a permutation with repetitions of six lines, where each line can be one of two states, solid or dashed, combinatorics yields the result that their are 2
^{6}= 64 hexagrams. A monk also may have counted the number of configurations to a game similar to Go around 700 AD. Although China had relatively few advancements in enumerative combinatorics, they solved a combinatorial design problem, the magic square, around 100 AD.

- In Greece, Plutarch wrote that the Xenocrates discovered the number of different syllables possible in the Greek language. This, however, is unlikely because this is one of the few mentions of Combinatorics in Greece. The number they found, also seems too round to be more than a guess. .

- Magic squares remained an interest of China, and they began to generalize their original 3×3 square between 900 and 1300 AD. China corresponded with the Middle East about this problem in the 13th century. The Middle East also learned about binomial coefficients from Indian work, and found the connection to polynomial expansion.

## Combinatorics in the West

- Combinatorics came to Europe in the 13th century through two mathematicians, Leonardo Fibonacci and Jordanus de Nemore. Fibonacci's Liber Abaci introduced many of the Arabian and Indian ideas to Europe, including that of the Fibonacci numbers. Jordanus was the first person to arrange the Binomial coefficient's in a triangle, as he did in proposition 70 of
*De Arithmetica*. This was also done in the Middle East in 1265, and China around 1300. Today, this triangle is known as Pascal's triangle.

- Pascal's contribution to the triangle that bears his name comes from his work on formal proofs about it, in addition to his connection between it and probability. Together with Leibniz and his ideas about partitions in the 17th century, they are considered the founders of modern combinatorics.

- Both Pascal and Leibniz understood that algebra and combinatorics corresponded (aka, binomial expansion was equivalent to the choice function.) This was expanded by De Moivre, who found the expansion of a multinomial. De Moivre also found the formula for derangements using the principle of inclusion-exclusion, a method different from Nikolaus Bernouli, who had found them previously. He managed to approximate the binomial coefficients and factorial. Finally, he found a closed form for the Fibonacci numbers by inventing generating functions.

- In the 18th century, Euler worked on problems of combinatorics. In addition to working on several problems of probability which link to combinatorics, he worked on the knights tour, Graeco-Latin square, Eulerian numbers, and others. He also invented graph theory by solving the Seven Bridges of Königsberg problem, which also lead to the formation of topology. Finally, he broke ground with partitions by the use of generating functions.

## Enumerative combinatorics

Counting the number of ways that certain patterns can be formed is the central problem of enumerative combinatorics. Two examples of this type of problem are counting combinations and counting permutations (as discussed in the previous section). More generally, given an infinite collection of finite sets {*S*_{i}} indexed by the natural numbers, enumerative combinatorics seeks to describe a *counting function* which counts the number of objects in *S*_{n} for each *n*. Although counting the number of elements in a set is a rather broad mathematical problem, many of the problems that arise in applications have a relatively simple combinatorial description.

The simplest such functions are * closed formulas*, which can be expressed as a composition of elementary functions such as factorials, powers, and so on. For instance, as shown below, the number of different possible orderings of a deck of *n* cards is *f*(*n*) = *n*!. Often, no closed form is initially available. In these cases, we frequently first derive a recurrence relation, then solve the recurrence to arrive at the desired closed form.

Finally, *f*(*n*) may be expressed by a formal power series, called its * generating function*, which is most commonly either the ordinary generating function

or the exponential generating function

Often, a complicated closed formula yields little insight into the behaviour of the counting function as the number of counted objects grows. In these cases, a simple asymptotic approximation may be preferable. A function *g*(*n*) is an asymptotic approximation to *f*(*n*) if as infinity. In this case, we write .

Once determined, the generating function may allow one to extract all the information given by the previous approaches. In addition, the various natural operations on generating functions such as addition, multiplication, differentiation, etc., have a combinatorial significance; this allows one to extend results from one combinatorial problem in order to solve others.

## Permutations with repetitions

When the order matters, and an object can be chosen more than once, the number of permutations is

where *n* is the number of objects from which you can choose and *r* is the number to be chosen.

For example, if you have the letters A, B, C, and D and you wish to discover the number of ways to arrange them in three letter patterns ( trigrams)

- order matters (e.g., A-B is different from B-A, both are included as possibilities)
- an object can be chosen more than once (A-A possible)

you find that there are 4^{3} or 64 ways. This is because for the first slot you can choose any of the four values, for the second slot you can choose any of the four, and for the final slot you can choose any of the four letters. Multiplying them together gives the total.

## Permutations without repetitions

When the order matters and each object can be chosen only once, then the number of permutations is

- where
*n*is the number of objects from which you can choose,*r*is the number to be chosen and "!" is the standard symbol meaning factorial.

For example, if you have five people and are going to choose three out of these, you will have 5!/(5 − 3)! = 60 permutations.

Note that if *n* = *r* (meaning the number of chosen elements is equal to the number of elements to choose from; five people and pick all five) then the formula becomes

where 0! = 1.

For example, if you have the same five people and you want to find out how many ways you may arrange them, it would be 5! or 5 × 4 × 3 × 2 × 1 = 120 ways. The reason for this is that you can choose from 5 for the initial slot, then you are left with only 4 to choose from for the second slot etc. Multiplying them together gives the total of 120.

## Combinations without repetitions

When the order does not matter and each object can be chosen only once, the number of combinations is the binomial coefficient:

where *n* is the number of objects from which you can choose and *k* is the number to be chosen.

For example, if you have ten numbers and wish to choose 5 you would have 10!/(5!(10 − 5)!) = 252 ways to choose. The binomial coefficient is also used to calculate the number of permutations in a lottery.

## Combinations with repetitions

When the order does not matter and an object can be chosen more than once, then the number of combinations is

where *n* is the number of objects from which you can choose and *k* is the number to be chosen.

For example, if you have ten types of donuts (*n*) on a menu to choose from and you want three donuts (*k*) there are (10 + 3 − 1)! / 3!(10 − 1)! = 220 ways to choose (see also multiset).

## Fibonacci numbers

Let *f*(*n*) be the number of distinct subsets of the set that do not contain two consecutive integers. When *n* = 4, we have the sets {}, {1}, {2}, {3}, {4}, {1,3}, {1,4}, {2,4}, so *f*(4) = 8. We count the desired subsets of *S*(*n*) by separately counting those subsets that contain element *n* and those that do not. If a subset contains *n*, then it does not contain element *n* − 1. So there are exactly *f*(*n* − 2) of the desired subsets that contain element *n*. The number of subsets that do not contain *n* is simply *f*(*n* − 1). Adding these numbers together, we get the recurrence relation:

where *f*(1) = 2 and *f*(2) = 3.

As early as 1202, Leonardo Fibonacci studied these numbers. They are now called Fibonacci numbers; in particular, *f*(*n*) is known as the *n* + 2nd Fibonacci number. Although the recurrence relation allows us to compute every Fibonacci number, the computation is inefficient. However, by using standard techniques to solve recurrence relations, we can reach the closed form solution:

where , the golden ratio.

In the above example, an asymptotic approximation to *f*(*n*) is:

as *n* becomes large.

## Structural combinatorics

## Graph theory

Graphs are basic objects in combinatorics. The questions range from counting (e.g. the number of graphs on *n* vertices with *k* edges) to structural (e.g. which graphs contain Hamiltonian cycles).

## Design theory

A simple result in the block design area of combinatorics is that the problem of forming sets, described in the introduction, has a solution only if *n* has the form *q*^{2} + *q* + 1. It is less simple to prove that a solution exists if *q* is a prime power. It is conjectured that these are the *only* solutions. It has been further shown that if a solution exists for *q* congruent to 1 or 2 mod 4, then *q* is a sum of two square numbers. This last result, the Bruck-Ryser theorem, is proved by a combination of constructive methods based on finite fields and an application of quadratic forms.

When such a structure does exist, it is called a finite projective plane; thus showing how finite geometry and combinatorics intersect.

## Matroid theory

Matroid theory abstracts part of geometry. It studies the properties of sets (usually, finite sets) of vectors in a vector space that do not depend on the particular coefficients in a linear dependence relation. Not only the structure but also enumerative properties belong to matroid theory.

For instance, given a set of *n* vectors in Euclidean space, what is the largest number of planes they can generate? Answer: the binomial coefficient

Is there a set that generates exactly one less plane? (No, in almost all cases.) These are extremal questions in geometry, as discussed below.

## Extremal and probabilistic combinatorics

Many extremal questions deal with set systems. A simple example is the following: what is the largest number of subsets of an *n*-element set one can have, if no two of the subsets are disjoint? Answer: half the total number of subsets. Proof: Call the *n*-element set *S*. Between any subset *T* and its complement *S* − *T*, at most one can be chosen. This proves the maximum number of chosen subsets is not greater than half the number of subsets. To show one can attain half the number, pick one element *x* of *S* and choose all the subsets that contain *x*.

A more difficult problem is to characterize the extremal solutions; in this case, to show that no other choice of subsets can attain the maximum number while satisfying the requirement.

Often it is too hard even to find the extremal answer *f*(*n*) exactly and one can only give an asymptotic estimate.

## Ramsey theory

Ramsey theory is a celebrated part of extremal combinatorics. It states that any sufficiently large random configuration will contain some sort of order.

Frank P. Ramsey proved that for every integer *k* there is an integer *n*, such that every graph on *n* vertices either contains a clique or an independent set of size *k*. This is a special case of Ramsey's theorem. For example, given any group of six people, it is always the case that one can find three people out of this group that either all know each other or all do not know each other. The key to the proof in this case is the Pigeonhole Principle: *either A knows three of the remaining people, or A does not know three of the remaining people.*

Here is a simple proof: Take any one of the six people, call him A. Either A knows three of the remaining people, or A does not know three of the remaining people. Assume the former (the proof is identical if we assume the latter). Let the three people that A knows be B, C, and D. Now either two people from {B,C,D} know each other (in which case we have a group of three people who know each other - these two plus A) or none of B,C,D know each other (in which case we have a group of three people who do not know each other - B,C,D). QED.

## Extremal combinatorics

The types of questions addressed in this case are about the largest possible graph which satisfies certain properties. For example, the largest triangle-free graph on *2n* vertices is a complete bipartite graph *K _{n,n}*.

## Probabilistic combinatorics

Here the questions are of the following type: what is the probability of a certain graph property for a random graph (within a certain class) E.g. what is the average number of triangles in a random graph?

## Geometric combinatorics

Geometric combinatorics is related to convex and discrete geometry. It asks, e.g. how many faces of each dimension can a convex polytope have. Metric properties of polytopes play an important role as well, e.g. the Cauchy theorem on rigidity of convex polytopes. Special polytopes are also considered, such as permutohedron, associahedron and Birkhoff polytope.