# König's lemma

König's lemma or König's infinity lemma is a theorem in graph theory due to Dénes Kőnig (1936).[1] It gives a sufficient condition for an infinite graph to have an infinitely long path. The computability aspects of this theorem have been thoroughly investigated by researchers in mathematical logic, especially in computability theory. This theorem also has important roles in constructive mathematics and proof theory.

## Statement of the lemma

If G is a connected graph with infinitely many vertices such that every vertex has finite degree (that is, each vertex is adjacent to only finitely many other vertices) then G contains an infinitely long simple path, that is, a path with no repeated vertices.

A common special case of this is that every tree that contains infinitely many vertices, each having finite degree, has at least one infinite simple path.

Note that the vertex degrees must be finite, but need not be uniformly bounded: it is possible to have one vertex of degree 10, another of degree 100, a third of degree 1000, and so on.

### Proof

For the proof, assume that the graph consists of infinitely many vertices $v_i$ and is connected.

Start with any vertex v1. Every one of the infinitely many vertices of G can be reached from v1 with a simple path, and each such path must start with one of the finitely many vertices adjacent to v1. There must be one of those adjacent vertices through which infinitely many vertices can be reached without going through v1. If there were not, then the entire graph would be the union of finitely many finite sets, and thus finite, contradicting the assumption that the graph is infinite. We may thus pick one of these vertices and call it v2.

Now infinitely many vertices of G can be reached from v2 with a simple path which doesn't use the vertex v1. Each such path must start with one of the finitely many vertices adjacent to v2. So an argument similar to the one above shows that there must be one of those adjacent vertices through which infinitely many vertices can be reached; pick one and call it v3.

Continuing in this fashion, an infinite simple path can be constructed by mathematical induction. At each step, the induction hypothesis states that there are infinitely many nodes reachable by a simple path from a particular node $v_i$ that does not go through one of a finite set of vertices. The induction argument is that one of the vertices adjacent to $v_i$ satisfies the induction hypothesis, even when $v_i$ is added to the finite set.

The result of this induction argument is that for all n it is possible to choose a vertex vn as the construction describes. The set of vertices chosen in the construction is then a chain in the graph, because each one was chosen to be adjacent to the previous one, and the construction guarantees that the same vertex is never chosen twice.

This proof is not generally considered to be constructive, because at each step it uses a proof by contradiction to establish that there exists an adjacent vertex from which infinitely many other vertices can be reached. Facts about the computational aspects of the lemma suggest that no proof can be given that would be considered constructive by the main schools of constructive mathematics.

## Computability aspects

The computability aspects of König's lemma have been thoroughly investigated. The form of König's lemma most convenient for this purpose is the one which states that any infinite finitely branching subtree of $\omega^{<\omega}\,$ has an infinite path. Here $\omega$ denotes the set of natural numbers and $\omega^{<\omega}\,$ the canonical tree of all finite sequences of natural numbers, ordered by extension. Each finite sequence can be identified with a partial function from $\omega$ to itself, and each infinite path can be identified with a total function. This allows for an analysis using the techniques of computability theory.

A subtree of $\omega^{<\omega}\,$ in which each sequence has only finitely many immediate extensions (that is, the tree has finite degree when viewed as a graph) is called finitely branching. Not every infinite subtree of $\omega^{<\omega}\,$ has an infinite path, but König's lemma shows that any finitely branching subtree must have such a path.

For any subtree T of $\omega^{<\omega}\,$ the notation Ext(T) denotes the set of nodes of T through which there is an infinite path. Even when T is computable the set Ext(T) may not be computable. Every subtree T of $\omega^{<\omega}\,$ that has a path has a path computable from Ext(T).

It is known that there are non-finitely branching computable subtrees of $\omega^{<\omega}\,$ that have no arithmetical path, and indeed no hyperarithmetical path.[2] However, every computable subtree of $\omega^{<\omega}\,$ with a path must have a path computable from Kleene's O, the canonical $\Pi^1_1$ complete set. This is because the set Ext(T) is always $\Sigma^1_1$ (see analytical hierarchy) when T is computable.

A finer analysis has been conducted for computably bounded trees. A subtree of $\omega^{<\omega}\,$ is called computably bounded or recursively bounded if there is a computable function f from $\omega$ to $\omega$ such that for all n there is no sequence in the tree whose nth element is larger than f(n). Thus f gives a bound for how “wide” the tree is. The following basis theorems apply to infinite, computably bounded, computable subtrees of $\omega^{< \omega}\,$.

• Any such tree has a path computable from $0'$, the canonical Turing complete set that can decide the halting problem.
• Any such tree has a path that is low. This is known as the low basis theorem.
• Any such tree has a path that is hyperimmune free. This means that any function computable from the path is dominated by a computable function.
• For any noncomputable subset X of $\omega$ the tree has a path that does not compute X.

A weak form of König's lemma which states that every infinite binary tree has an infinite branch is used to define the subsystem WKL0 of second-order arithmetic. This subsystem has an important role in reverse mathematics. Here a binary tree is one in which every term of every sequence in the tree is 0 or 1, which is to say the tree is computably bounded via the constant function 2. The full form of König's lemma is not provable in WKL0, but is equivalent to the stronger subsystem ACA0.

## Relationship to constructive mathematics and compactness

The fan theorem of L. E. J. Brouwer (1927) is, from a classical point of view, the contrapositive of a form of König's lemma. A subset S of $\{0,1\}^{<\omega}\,$ is called a bar if any function from $\omega$ to the set $\{0,1\}$ has some initial segment in S. A bar is detachable if every sequence is either in the bar or not in the bar (this assumption is required because the theorem is ordinarily considered in situations where the law of the excluded middle is not assumed). A bar is uniform if there is some number N so that any function from $\omega$ to $\{0,1\}$ has an initial segment in the bar of length no more than $N$. Brouwer's fan theorem says that any detachable bar is uniform.

This can be proven in a classical setting by considering the bar as an open covering of the compact topological space $\{0,1\}^\omega$. Each sequence in the bar represents a basic open set of this space, and these basic open sets cover the space by assumption. By compactness, this cover has a finite subcover. The N of the fan theorem can be taken to be the length of the longest sequence whose basic open set is in the finite subcover. This topological proof can be used in classical mathematics to show that the following form of König's lemma holds: for any natural number k, any infinite subtree of the tree $\{0,\ldots,k\}^{<\omega}\,$ has an infinite path.

## Relationship with the axiom of choice

König's lemma may be considered to be a choice principle; the first proof above illustrates the relationship between the lemma and the Axiom of dependent choice. At each step of the induction, a vertex with a particular property must be selected. Although it is proved that at least one appropriate vertex exists, if there is more than one suitable vertex there may be no canonical choice.

If the graph is countable, the vertices are well-ordered and one can canonically choose the smallest suitable vertex. In this case, König's lemma is provable in second-order arithmetic with arithmetical comprehension, and, a fortiori, in ZF set theory (without choice).

König's lemma is essentially the restriction of the axiom of dependent choice to entire relations R such that for each x there are only finitely many z such that xRz. Although the axiom of choice is, in general, stronger than the principle of dependent choice, this restriction of dependent choice is equivalent to a restriction of the axiom of choice. In particular, when the branching at each node is done on a finite subset of an arbitrary set not assumed to be countable, the form of König's lemma that says "Every infinite finitely branching tree has an infinite path" is equivalent to the principle that every countable set of finite sets has a choice function.[3] This form of the axiom of choice (and hence of König's lemma) is not provable in ZF set theory.