Please note this article currently goes into technical detail quite quickly. For a slightly gentler introduction see Ramsey theory.


Ramsey's theorem is a mathematical theorem in Ramsey theory. It states for any pair of positive integers (r,s) there exists an integer R(r,s) such that for any complete graph on R(r,s) vertices whose edges are coloured red or blue, there exists either a monochromatic complete subgraph on r vertices which is entirely blue or a monochromatic complete subgraph on s vertices which is entirely red.

An extension of this theorem applies to any finite number of colours, rather than just two. More precisely, the theorem states that for any given number of colors c, and any given integers n1,...,nc, there is a number, R(n1, ..., nc; c), such that if the edges of a complete graph of order R(n1, ..., nc; c) are colored with c different colors, then for some i between 1 and c, it must contain a complete subgraph of order ni whose edges are all color i. The special case above has c = 2 (and n1 = r and n2 = s).

Example: R(3,3;2) is 6

Suppose the edges of a complete graph on 6 vertices are coloured red and blue. Pick a vertex v. There are 5 edges incident to v and so (by the pigeonhole principle) at least 3 of them must be the same colour. Without losing generality we can assume at least 3 of these edges, connecting to vertices r, s and t, are blue. (If not, exchange red and blue in what follows.) If any of the edges (r, s), (r, t), (s, t) are also blue then we have an entirely blue triangle. If not, then those three edges are all red and we have with an entirely red triangle. Since this argument works for any colouring any K6 contains a monchromatic K3 and therefore that R(3,3;2) ≤ 6.

An alternate proof works by double counting. It goes as follows. Count the number of ordered triples of vertices x, y, z such that the edge (xy) is red and the edge (yz) is blue. Firstly, any given vertex will be the middle of either 0×5=0, 1×4=4 or 2×3=6 such triples. Therefore there are at most 6×6=36 such triples. Secondly, for any non-monochromatic triangle (xyz), there exists precisely two such triples. Therefore there are at most 18 non-monochromatic triangles. Therefore there are at least 2 monochromatic triangles.

Conversely, it is possible to 2-colour a K5 without creating any monochromatic K3, showing that R(3,3;2) > 5. The unique coloring is:

Thus R(3,3;2) = 6

Proof of the theorem

We prove the theorem for the 2 colour case, by induction on r+s. It is clear from the pigeonhole principle that for all n, R(n,1) = R(1,n) = n. This starts the induction. We prove that R(r,s) exists by finding an explicit bound for it. By the inductive hypothesis R(r−1,s) and R(r,s−1) exist.

Claim: R(r,s) ≤ R(r−1,s) + R(r,s−1): Consider a complete graph on R(r−1,s) + R(r,s−1)vertices. Pick a vertex v from the graph and consider two subgraphs M and N where a vertex w is in M if and only if (v, w) is blue and is in N otherwise.

Now either |M| ≥ R(r −1,s) or |N| ≥ R(r,s −1), again by the pigeonhole principle. In the former case if M has a red Ks then so does the original graph and we are finished. Otherwise M has a blue Kr-1 and so M union {v} has blue Kr by definition of M. The latter case is analogous.

Thus the claim is true and we have completed the proof for 2 colours. We now prove the result for the general case of c colours. The proof is again by induction, this time on the number of colours c. We have the result for c=1 (trivially) and for c=2 (above). Now let c>2.

Claim: R(n1,...,nc;c)R(n1,...,nc−2,R(nc-1,nc;2);c−1)

Proof: The right-hand side of the inequality exists by inductive hypothesis. Consider a graph on this many vertices and colour it with c colours. Now 'go colour-blind' and pretend that c−1 and c are the same colour. Thus the graph is now (c−1)-coloured. By the inductive hypothesis, it contains either a Kni monochromatically coloured with colour i for some 1 ≤ i ≤ (c-2) or a KR(nc−1,nc;2)-coloured in the 'blurred colour'. In the former case we are finished. In the latter case, we recover our sight again and see from the definition of R(nc−1,nc;2) we must have either a (c−1)-monochrome Knc−1 or a c-monochrome Knc''. In either case the proof is complete.

Ramsey numbers

The numbers R(r,s) in Ramsey's theorem (and their extensions to more than two colours) are known as Ramsey numbers. An upper bound for R(r,s) can be extracted from the proof of the theorem, and other arguments give lower bounds. However, there is a vast gap between the tightest lower bounds and the tightest upper bounds. Consequently, there are very few numbers r and s for which we know the exact value of R(r,s). Note that computing lower bounds for R(r,s) usually requires exhibiting a graph on with no blue Kr and no red Ks. Searching all colourings of a graph Kn becomes computationally extremely difficult as n increases.

At the time of writing, even the exact value of R(5,5) is unknown, although it is known to lie between 43 and 49 (inclusive), and, barring a breakthrough in theory, it is probably the case that the exact value of R(6,6) will remain unknown forever.

Extensions of the theorem

The theorem can also be extended to hypergraphs. An m-hypergraph is a graph whose "edges" are sets of m vertices - in a normal graph an edge is a set of 2 vertices. The full statement of Ramsey's theorem for hypergraphs is that for any integers m and c, and any integers n1,...,nc, there is an integer R(n1,...,nc;c,m) such that if the hyperedges of a complete m-hypergraph of order R(n1,...,nc;c,m) are colored with c different colors, then for some i between 1 and c, the hypergraph must contain a complete sub-m-hypergraph of order ni whose hyperedges are all color i. This theorem is usually proved by induction on m, the 'hyper-ness' of the graph. The base case for the proof is m=2, which is exactly the theorem above.

Infinite Ramsey theory

A further result, also commonly called Ramsey's theorem, applies to infinite graphs. In a context where finite graphs are also being discussed it is often called the "Infinite Ramsey theorem". As intuition provided by the pictoral representation of a graph is diminished when moving from finite to infinite graphs, theorems in this area are usually phrased in set-theoretic terminology.

The theorem: Let X be some countably infinite set and colour the elements of X(n) (the subsets of X of size n) in c different colours. Then there exists some infinite subset M of X such that the size n subsets of M all have the same colour.

Proof: The proof is given for c=2. It is easy to prove the theorem for an arbitrary number of colours using a 'colour-blindness' argument as above. The proof is by induction on 'n', the size of the subsets. For n=1,the statement is equivalent to saying that if you split an infinite set into two sets, one of them is infinite. This is evident. Assuming the theorem is true for nr, we prove it for n=r+1. Given a 2-colouring of the (r+1)-element subsets of infinite set X, choose element a0 of X (note that in the statement of the theorem we insisted that X was countably infinite, if X were a general infinite set we would require the axiom of choice to make this choice) and let Y = X\\a0. We then induce a 2-colouring of the r-element subsets of Y, by just adding a0 to each r-element subset (to get an (r+1)-element subset of X. By the induction hypothesis, there exists an infinite subset Y1 within Y such that every r-element subset of Y is coloured the same colour in the induced colouring. Therefore we have chosen an element a0 and a subset Y1 such that every (r+1)-element subset of X consisting of a0 and r elements of Y1 has the same colour. Continuing in this we can choose a1 from Y1 and subset Y2 of Y1 with the same properties. We end with a sequence {a0,a1,a2,...} such that the colour of each (r+1)-element subset (ai(1),ai(2),...,ai(r+1)) with i(1)<i(2)<...<i(r+1) depends only on the value of i(1). Further, there are infinitely many values of i(n) such that this colour will be the same. Take these ai(n)'s to get the desired monochromatic set.

Infinite version implies the finite

Standard compactness arguments show that the infinite version of the theorem implies the finite version.

Could give an inline version here?

External Links