Hilbert's paradox of the Grand Hotel (colloquial: Infinite Hotel Paradox or 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 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.
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 their 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. In general, assume that k guests seek a room. We can apply the same procedure and move every guest from room n to room n + k. In a similar manner, if k guests wished to leave the hotel, every guest moves from room n to room n − k.
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 (2 times n), 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 , and their coach number to be , and the numbers and are then fed into the two arguments of the pairing function.
Prime powers method
Empty the odd numbered rooms by sending the guest in room to room , then put the first coach's load in rooms , the second coach's load in rooms ; for coach number we use the rooms where is the th odd prime number. This solution leaves certain rooms empty (which may or may not be useful to the hotel); specifically, all odd numbers that are not prime powers, such as 15 or 847, will no longer be occupied. (So, strictly speaking, this shows that the number of arrivals is less than or equal to the number of vacancies created. It is easier to show, by an independent means, that the number of arrivals is also greater than or equal to the number of vacancies, and thus that they are equal, than to modify the algorithm to an exact fit.) (The algorithm works equally well if one interchanges and , but whichever choice is made, it must be applied uniformly throughout.)
Prime factorization method
You can put each person of a certain seat and coach into room (presuming c=0 for the people already in the hotel, 1 for the first coach, etc. ...). Because every number has a unique prime factorization, it's easy to see all people will have a room, while no two people will end up in the same room. For example, the person in room 2592 () was sitting in on the 4th coach, on the 5th seat. Like the prime powers method, this solution leaves certain rooms empty.
This method can also easily be expanded for infinite nights, infinite entrances, etc. ... ( )
Interleaving method
For each passenger, compare the lengths of and as written in any positional numeral system, such as decimal. (Treat each hotel resident as being in coach #0.) If either number is shorter, add leading zeroes to it until both values have the same number of digits. Interleave the digits to produce a room number: its digits will be [first digit of coach number]-[first digit of seat number]-[second digit of coach number]-[second digit of seat number]-etc. The hotel (coach #0) guest in room number 1729 moves to room 01070209 (i.e., room 1,070,209). The passenger on seat 1234 of coach 789 goes to room 01728394 (i.e., room 1,728,394).
Unlike the prime powers solution, this one fills the hotel completely, and we can reconstruct 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 coach number consists of the odd-numbered digits and the seat 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 , or the th triangular number. Those in a coach will be in room , or the triangular number plus . In this way all the rooms will be filled by one, and only one, guest.
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 . is countable since is countable, hence we may enumerate its elements . Now if , assign the th guest of the th coach to the th room (consider the guests already in the hotel as guests of the th coach). Thus we have a function assigning each person to a room; furthermore, this assignment does not skip over any rooms.
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 ( , with the ferry).
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 guest's 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.
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, 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.
References in fiction
- BBC Learning Zone repeatedly screened a 1996 one-off educational docudrama Hotel Hilbert set in the hotel as seen through the eyes of a young female guest Fiona Knight, her name a pun on finite. The programme was designed to educate viewers about the concept of infinity.
- The novel White Light by mathematician/science fiction writer Rudy Rucker includes a hotel based on Hilbert's paradox, and where the protagonist of the story meets Georg Cantor.
- Stephen Baxter's science fiction novel Transcendent has a brief discussion on the nature of infinity, with an explanation based on the paradox, modified to use soldiers rather than hotels.
- Geoffrey A. Landis' Nebula Award-winning short story "Ripples in the Dirac Sea" uses the Hilbert hotel as an explanation of why an infinitely-full Dirac sea can nevertheless still accept particles.
- In Peter Høeg's novel Miss Smilla's Feeling for Snow, the titular heroine reflects that it is admirable for the hotel's manager and guests to go to all that trouble so that the latecomer can have his own room and some privacy.
- In Ivar Ekeland's novel for children, The Cat in Numberland, a "Mr. Hilbert" and his wife run an infinite hotel for all the integers. The story progresses through the triangular method for the rationals.
- In Will Wiles's novel The Way Inn, about an infinitely large motel, the villain's name is Hilbert.
- In Reginald Hill's novel "The Stranger House" the character Sam refers to the Hilbert Hotel paradox.
- The short story by Naum Ya. Vilenkin The Extraordinary Hotel (often erroneously attributed to Stanislaw Lem) shows the way in which Hilbert's Grand Hotel may be reshuffled when infinite new hosts arrive.
- The comic book saga The Tempest from the League of Extraordinary Gentlemen series by Alan Moore and Kevin O'Neill shows a villain called Infinity. In the story it is suggested that the villain goes to the hotel based on Hilbert's paradox. Georg Cantor is mentioned as well.