Когда мы говорим о множестве из пяти хлебов и множестве из пяти рыб, ясно, что их можно легко связать между собой: каждый хлеб соединить с одной рыбой, а каждую рыбу — с одним хлебом. Такое точное сопоставление математики называют взаимно однозначным отображением, или биекцией. Мы также можем построить взаимно однозначные отображения между пятью хлебами и пятью кувшинами масла, или пятью американскими президентами, или пятью поп-звездами в бой-бенде. Все эти множества из пяти элементов можно связать между собой. Если мы хотим использовать теорию множеств для описания числа 5, какое из множеств нужно брать? Фреге понимал, что ни одно из этих множеств не может считаться особенным. Он заявил, что нет веских причин выбрать пять американских президентов вместо пяти хлебов или любого другого набора из пяти элементов. В интересах дипломатии он объявил, что число 5 — все такие множества, вместе взятые. Иными словами, это множество всех пятиэлементных множеств!
При таком формалистическом подходе можно обнаружить и ноль. Это множество всех множеств, в которых ничего нет. Что такое множество, в котором ничего нет? Существует только одно такое — пустое! Идея выглядит вполне последовательной. Например, мы могли бы определить пустое множество как множество квадратных чисел, которые одновременно являются простыми, или множество собак, которые при этом являются кошками.
Фреге начал разрабатывать основы арифметики с помощью такого нового теоретико-множественного языка, но, когда в печать отправился второй том его труда, в доме ученого взорвалась бомба. Она имела вид письма от британского философа, логика и математика Бертрана Рассела. Как всегда бывало у Рассела, письмо оказалось блестящим и уничтожило работу Фреге одним взрывом[100]. Идея Фреге предполагала, что всегда можно говорить о множестве всех множеств, обладающих определенным свойством. Вот почему ему было удобно использовать множество всех множеств с пятью элементами, чтобы представлять число 5, или множество всех множеств с десятью элементами, чтобы представлять число 10. Но такое бесцеремонное определение больших множеств чревато опасностью. Рассел спросил: «Как насчет множества всех множеств, которые не содержат самих себя?»
Чтобы показать вам, к чему клонит Рассел, расскажу о моем знакомом парикмахере по имени Джузеппе. Он зарабатывает на жизнь тем, что бреет всех мужчин, которые не бреют себя сами. Когда я узнал об этом, я задался вопросом: кто бреет Джузеппе? Может, он бреет себя сам? Нет, этого не может быть, потому что он бреет только тех мужчин, которые не бреются сами. Следовательно, он не бреет себя сам. Но этого тоже не может быть: если он не бреется сам, то его должен брить Джузеппе.
Но ведь он же и есть Джузеппе!
Вопрос Рассела к Фреге был заряжен весьма похожим динамитом[101]. Несмотря на ущерб, который он нанес теории Фреге, Рассел попытался воскресить некоторые из его идей, чтобы избежать парадокса. Он по-прежнему думал о числах примерно так же: собирая воедино множества заданного размера. Он просто не мог идентифицировать эти наборы как самостоятельные множества. Оказывается, существует гораздо более простой и экономичный способ думать о натуральных числах, используя множества, и он опирается на единственное число — ноль.
Какое множество мы должны отождествить с нулем? Это мы уже выяснили. Очевидный выбор — пустое множество, то есть множество, в котором нет элементов. Полезно думать о нем в терминах пустого ящика. Если мы хотим сгенерировать другие числа, нам нужны ящики, которые не будут пустыми. Чтобы получить число 1, нам надо поместить в ящик один объект. Какой именно? Ну на этом этапе у нас есть только ноль и пустые ящики. Таким образом, мы можем поместить в наш ящик пустой ящик и назвать все это «один». На теоретико-множественном языке мы говорим, что один — это множество, содержащее только пустое множество. А что такое два? Ящик для этого числа должен содержать два разных объекта. Но так случилось, что у нас как раз есть два объекта — это ящики, которые мы отождествили с нулем и единицей. Остается поместить их в следующий ящик и назвать всю конструкцию «два». Иными словами, два — это множество, содержащее множества, соответствующие нулю и единице.
Построение натуральных чисел: ноль — пустое множество, изображенное в виде пустого ящика; один — ящик, содержащий пустой ящик, то есть ноль; два — ящик, содержащий ноль и один; и т. д.