Hilbert's paradox of the Grand Hotel, or simply Hilbert's Hotel, is a thought experiment which illustrates a counterintuitive property of infinite sets. It is demonstrated that a fully occupied hotel with infinitely many rooms may still accommodate additional guests, even infinitely many of them, and that this process may be repeated infinitely often. The idea was introduced by David Hilbert in a 1924 lecture "Über das Unendliche" reprinted in (Hilbert 2013, p.730) and was popularized through George Gamow's 1947 book One Two Three... Infinity.
Contents
- The paradox
- Finitely many new guests
- Infinitely many new guests
- Infinitely many coaches with infinitely many guests each
- Prime powers method
- Prime factorization method
- Interleaving method
- Triangular number method
- Arbitrary enumeration method
- Further layers of infinity
- Infinite layers of nesting
- Analysis
- References
The paradox
Consider a hypothetical hotel with a countably infinite number of rooms, all of which are occupied. One might be tempted to think that the hotel would not be able to accommodate any newly arriving guests, as would be the case with a finite number of rooms, where the pigeonhole principle would apply.
Finitely many new guests
Suppose a new guest arrives and wishes to be accommodated in the hotel. We can (simultaneously) move the guest currently in room 1 to room 2, the guest currently in room 2 to room 3, and so on, moving every guest from his current room n to room n+1. After this, room 1 is empty and the new guest can be moved into that room. By repeating this procedure, it is possible to make room for any finite number of new guests.
Infinitely many new guests
It is also possible to accommodate a countably infinite number of new guests: just move the person occupying room 1 to room 2, the guest occupying room 2 to room 4, and, in general, the guest occupying room n to room 2n, and all the odd-numbered rooms (which are countably infinite) will be free for the new guests.
Infinitely many coaches with infinitely many guests each
It is possible to accommodate countably infinitely many coachloads of countably infinite passengers each, by several different methods. Most methods depend on the seats in the coaches being already numbered (or use the axiom of countable choice). In general any pairing function can be used to solve this problem. For each of these methods, consider a passenger's seat number on a coach to be
Prime powers method
Empty the odd numbered rooms by sending the guest in room
Prime factorization method
You can put each person of a certain seat
This method can also easily be expanded for infinite nights, infinite entrances, etc. ... (
Interleaving method
For each passenger, compare the lengths of
Unlike the prime powers solution, this one fills the hotel completely, and we can extrapolate a guest's original coach and seat by reversing the interleaving process. First add a leading zero if the room has an odd number of digits. Then de-interleave the number into two numbers: the seat number consists of the odd-numbered digits and the coach number is the even-numbered ones. Of course, the original encoding is arbitrary, and the roles of the two numbers can be reversed (seat-odd and coach-even), so long as it is applied consistently.
Triangular number method
Those already in the hotel will be moved to room
This pairing function can be demonstrated visually by structuring the hotel as a one-room-deep, infinitely tall pyramid. The pyramid's topmost row is a single room: room 1; its second row is rooms 2 and 3; and so on. The column formed by the set of rightmost rooms will correspond to the triangular numbers. Once they are filled (by the hotel's redistributed occupants), the remaining empty rooms form the shape of a pyramid exactly identical to the original shape. Thus, the process can be repeated for each infinite set. Doing this one at a time for each coach would require an infinite number of steps, but by using the prior formulas, a guest can determine what his room "will be" once his coach has been reached in the process, and can simply go there immediately.
Arbitrary enumeration method
Let
Further layers of infinity
Suppose the hotel is next to an ocean, and an infinite number of car ferries arrive, each bearing an infinite number of coaches, each with an infinite number of passengers. This is a situation involving three "levels" of infinity, and it can be solved by extensions of any of the previous solutions.
The prime factorization method can be applied by adding a new prime number for every additional layer of infinity (
The prime power solution can be applied with further exponentiation of prime numbers, resulting in very large room numbers even given small inputs. For example, the passenger in the second seat of the third bus on the second ferry (address 2-3-2) would raise the 2nd odd prime (5) to 49, which is the result of the 3rd odd prime (7) being raised to the power of his seat number (2). This room number would have over thirty decimal digits.
The interleaving method can be used with three interleaved "strands" instead of two. The passenger with the address 2-3-2 would go to room 232, while the one with the address 4935-198-82217 would go to room #008,402,912,391,587 (the leading zeroes can be removed).
Anticipating the possibility of any number of layers of infinite guests, the hotel may wish to assign rooms such that no guest will need to move, no matter how many guests arrive afterward. One solution is to convert each arrival's address into a binary number in which ones are used as separators at the start of each layer, while a number within a given layer (such as a guests' coach number) is represented with that many zeroes. Thus, a guest with the prior address 2-5-1-3-1 (five infinite layers) would go to room 10010000010100010 (decimal 295458).
As an added step in this process, one zero can be removed from each section of the number; in this example, the guest's new room is 101000011001 (decimal 2585). This ensures that every room could be filled by a hypothetical guest. If no infinite sets of guests arrive, then only rooms that are a power of two will be occupied.
Infinite layers of nesting
Although a room can be found for any finite number of nested infinities of people, the same is not always true for an infinite number of layers, even if a finite number of elements exists at each layer. For example, suppose some people arrive in a set of spaceships which are nested in accordance to the following rules: the smallest ships, each 100 cubic meters in volume, contain ten people. After this, every ship (of any size) is grouped with nine other ships of the same size, inside a mothership exactly 100 times the volume of each of its ten daughter ships. All ships of the same size are isomorphic to one another; for example, each 1,000,000-cubic-meter ship contains exactly ten 10,000-cubic-meter ships, each of which contains exactly ten 100-cubic-meter ships, each containing ten people. This extends upward infinitely, so that there is no "largest ship".
A given passenger's address in this system would be infinite in length, corresponding to a decimal form of one of the real numbers ranging from 0 (address 0-0-0...) to 1 (address 9-9-9...). Exactly one guest would have the address corresponding to one-sixth (1-6-6-6...), for example, and another to the value of pi minus three (1-4-1-5...). (Real numbers that have terminating decimal expansions, like 3/8 = .375, actually correspond to two passengers, one with an address ending in an infinite string of zeroes, the other ending in an infinite string of nines. For example, 3/8 = .375000... = .374999... corresponds both to the passenger with address 3-7-5-0-0-0... and to the passenger with address 3-7-4-9-9-9... .) The set of real numbers, and the set of guests in this example, is uncountably infinite. Because no one-to-one pairing can be made between countable and uncountable sets, rooms at the hotel cannot be made for all of these guests, although any countably infinite subset of them can still be accommodated — for example, the set of guests whose addresses terminate in an infinitely repeating sequence, corresponding to a rational number.
If this variant is modified in certain ways, then the set of people is countable again. For example, suppose there were a largest ship, directly containing a finite (or countably infinite) number of both ships and people, and each of these ships in turn contained both ships and people, and so forth. This time, any given person is a finite number of levels "down" from the top, and thus can be identified with a unique finite address. The set of people is countable again, even if the total number of layers is infinite, because we do not have to consider an "infinitieth layer" in either direction.
Analysis
Hilbert's paradox is a veridical paradox: it leads to a counter-intuitive result that is provably true. The statements "there is a guest to every room" and "no more guests can be accommodated" are not equivalent when there are infinitely many rooms.
Initially, this state of affairs might seem to be counter-intuitive. The properties of "infinite collections of things" are quite different from those of "finite collections of things". The paradox of Hilbert's Grand Hotel can be understood by using Cantor's theory of transfinite numbers. Thus, while in an ordinary (finite) hotel with more than one room, the number of odd-numbered rooms is obviously smaller than the total number of rooms. However, in Hilbert's aptly named Grand Hotel, the quantity of odd-numbered rooms is not smaller than the total "number" of rooms. In mathematical terms, the cardinality of the subset containing the odd-numbered rooms is the same as the cardinality of the set of all rooms. Indeed, infinite sets are characterized as sets that have proper subsets of the same cardinality. For countable sets (sets with the same cardinality as the natural numbers) this cardinality is
Rephrased, for any countably infinite set, there exists a bijective function which maps the countably infinite set to the set of natural numbers, even if the countably infinite set contains the natural numbers. For example, the set of rational numbers—those numbers which can be written as a quotient of integers—contains the natural numbers as a subset, but is no bigger than the set of natural numbers since the rationals are countable: there is a bijection from the naturals to the rationals.