Царица наук EN

Часть VIII · Основания Глава 51 из 60

Логика и множества

Пятьдесят глав мы говорили «для любого», «существует», «следовательно» и «множество», не заглядывая в грамматику. Выучим её на острове, где одни жители всегда говорят правду, а другие всегда лгут.

1–2 курс 55 минут

Опирается на: 50 · Цепи Маркова и информация

Вы научитесь

  • строить таблицы истинности и проверять, равносильны ли две формулы
  • правильно отрицать утверждения с кванторами, в том числе определение предела
  • узнавать виды доказательств: контрапозицию, от противного, индукцию, построение и контрпример
  • отличать инъекцию, сюръекцию и биекцию и разбивать множество на классы эквивалентности
  • объяснить парадокс Рассела и зачем математике понадобились аксиомы ZFC

Пятьдесят глав подряд мы доказывали теоремы и ни разу не спросили, что значит само это слово. Мы писали «для любого $\varepsilon > 0$ найдётся $\delta$», «множество значений», «бесконечно много простых», «следовательно», а прошлая глава мерила информацию ответами «да» или «нет». Всё это работало так, как работает родной язык: им пользуются, не открывая грамматики.

Но у родного языка есть привычки, которые математике не годятся. «Чай или кофе?» в самолёте предлагает одно из двух, а в объявлении «скидка студентам или пенсионерам» студент-пенсионер скидки не лишится. «Все студенты сдали» иногда значит «почти все». Языку математики нужно, чтобы у каждой фразы был ровно один смысл, а про каждое рассуждение можно было проверить, правильно ли оно. Его грамматику мы и выучим, а упражняться будем на острове, который придумал американский логик и фокусник Рэймонд Смаллиан в книге «Как же называется эта книга?» (1978).

Остров рыцарей и лжецов

На острове живут жители двух типов. Рыцари всегда говорят правду, лжецы всегда лгут. Снаружи их не отличить. Вы встречаете двоих, $A$ и $B$, и $A$ говорит: «Хотя бы один из нас лжец». Кто есть кто?

Переберём случаи. Пусть $A$ лжец. Тогда его слова ложны, то есть лжецов среди них нет и оба рыцари, включая самого $A$. Противоречие: $A$ не может быть одновременно лжецом и рыцарем. Значит, $A$ рыцарь. Тогда его слова правдивы, и лжец среди двоих есть. Раз это не $A$, то это $B$. Ответ: $A$ рыцарь, $B$ лжец.

Мы перебрали возможные миры и отбросили тот, что противоречит сам себе, — обе главные операции этой главы. Слова островитянина либо истинны, либо ложны, и тип жителя обязан совпадать с истинностью его слов.

Высказывание — предложение, которое либо истинно, либо ложно, и ровно одно из двух. «Семь — простое число» — истинное высказывание, «$2 + 2 = 5$» — ложное. «Каждое чётное число больше двух — сумма двух простых» — тоже высказывание, хотя никто пока не знает, истинное ли (гипотеза Гольдбаха). А вот «Который час?» и «$x > 3$» — не высказывания: первое ничего не утверждает, второе станет истинным или ложным, только когда скажут, чему равно $x$.

Коснитесь жителя, чтобы назначить ему тип, и проверьте догадку. Кнопка «Перебрать все миры» покажет все варианты разом: зелёная галочка — слова жителя совпадают с его типом. Во вкладке «Свой остров» соберите головоломку сами и посмотрите, сколько у неё решений.

На острове есть фраза, которую не может произнести никто: «Я лжец». Рыцарь, сказав её, солгал бы, а лжец сказал бы правду. Такие фразы не истинны и не ложны, и в мир высказываний их не пускают. Запомним эту фразу: в конце главы она вернётся и едва не разрушит всю математику.

Жителей трое. $A$ говорит: «Мы все лжецы». $B$ говорит: «Ровно один из нас рыцарь». $C$ молчит. Сколько среди них рыцарей?

$A$ не может быть рыцарем: тогда его слова «мы все лжецы» были бы правдой, и он оказался бы лжецом. Значит, $A$ лжец, его слова ложны, и хотя бы один рыцарь среди троих есть. Если бы $B$ был лжецом, рыцарем был бы только $C$ — ровно один, и слова $B$ оказались бы правдой. Противоречие, значит, $B$ рыцарь, и рыцарь среди троих ровно один: $C$ лжец. Ответ: один рыцарь. Проверьте в виджете, собрав этот остров во вкладке «Свой остров».

Урок первый: не, и, или

Из простых высказываний складывают сложные с помощью слов-связок, которые логики договорились понимать строго и записывать значками. Отрицание $\lnot A$ («не $A$») истинно, когда $A$ ложно. Конъюнкция $A \land B$ («$A$ и $B$») истинна, когда истинны оба. Дизъюнкция $A \lor B$ («$A$ или $B$») истинна, когда истинно хотя бы одно из двух, в том числе когда оба. Это «или» из объявления о скидке, а не из самолёта; для «ровно одного из двух» есть отдельная связка, исключающее «или» $A \oplus B$.

Истинность сложного высказывания зависит только от истинности частей, поэтому связку целиком описывает таблица всех сочетаний. Истину обозначим буквой И, ложь — буквой Л.

$A$$B$$\lnot A$$A \land B$$A \lor B$$A \oplus B$
ИИЛИИЛ
ИЛЛЛИИ
ЛИИЛИИ
ЛЛИЛЛЛ

Таблица истинности формулы — список всех наборов значений её переменных с значением формулы на каждом наборе. У формулы с $n$ переменными $2^n$ строк: каждая переменная независимо от других бывает И или Л. Две формулы равносильны, если их таблицы совпадают; пишут $F \equiv G$. Формулу, истинную в каждой строке своей таблицы, называют тавтологией.

Значок $\equiv$ не связка внутри формулы, а наше утверждение о двух формулах. Простейшая тавтология — $A \lor \lnot A$, закон исключённого третьего: любое высказывание истинно или ложно. Второй знаменитый закон отвечает на вопрос, который возникает в любом споре: что значит, что человек неправ, если он сказал «или»?

Для любых высказываний $A$ и $B$

«Неверно, что хотя бы одно из двух». Отрицание «или». «Оба неверны». Отрицание «или» — это «и» отрицаний. «Неверно, что оба». Отрицание «и». «Хотя бы одно неверно». Отрицание «и» — это «или» отрицаний. Пример: «неверно, что число делится на $2$ или на $3$» означает «число не делится ни на $2$, ни на $3$». От $1$ до $12$ таких чисел четыре: $1, 5, 7, 11$. А «неверно, что число делится и на $2$, и на $3$» — всего лишь «не делится на $2$ или не делится на $3$», и таких чисел от $1$ до $12$ десять: все, кроме $6$ и $12$.

Хитрость в том, что таблица истинности конечна: проверив четыре строки, мы проверили все возможные случаи сразу.

Выпишем все четыре сочетания значений $A$ и $B$. Других не бывает: каждое высказывание либо истинно, либо ложно. В каждой строке найдём $A \lor B$: ложь только в последней, где ложны оба. Отрицание переворачивает столбец: $\lnot(A \lor B)$ истинно только в последней строке. Теперь правая часть. Конъюнкция $\lnot A \land \lnot B$ истинна, когда истинны $\lnot A$ и $\lnot B$, то есть когда ложны и $A$, и $B$. Это снова только последняя строка. Столбцы совпадают во всех четырёх строках. Значит, $\lnot(A \lor B) \equiv \lnot A \land \lnot B$ — первый закон доказан. Второй закон выведем из первого, не рисуя новой таблицы. Первый закон верен для любых высказываний, в том числе для $\lnot A$ и $\lnot B$: $\lnot(\lnot A \lor \lnot B) \equiv \lnot\lnot A \land \lnot\lnot B \equiv A \land B$, ведь двойное отрицание возвращает исходное значение. Равносильные формулы и после отрицания остаются равносильными, поэтому $\lnot A \lor \lnot B \equiv \lnot(A \land B)$.

Проверка таблицей совершенно механическая, и её лучше поручить машине. Наберите две формулы: виджет построит таблицы, скажет, равносильны ли формулы, а если нет — покажет строку, где они расходятся.

Формулы набираются клавишами под полем или с клавиатуры: & — «и», | — «или», ! — «не», -> — «следует». Справа — та же формула кругами Эйлера: каждая область — одна строка таблицы. Коснитесь строки или области.

Круги рядом с таблицей не украшение. У двух кругов ровно четыре области — внутри обоих, только в первом, только во втором, снаружи, — как четыре строки таблицы, а у трёх кругов областей восемь, как строк у формулы с тремя переменными. Это совпадение пригодится, когда дойдём до множеств.

Урок второй: если…, то…

Самая коварная связка — «если…, то…». Возьмём обещание: «Если завтра пойдёт дождь, я возьму зонт». Когда его нарушат? Только если дождь пошёл, а зонта нет. Если дождя нет, обещание ничего не требовало, и нарушить его нельзя, что бы человек ни сделал с зонтом.

Импликация $A \to B$ («если $A$, то $B$», «из $A$ следует $B$») ложна только в одной строке таблицы: когда $A$ истинно, а $B$ ложно. $A$ называют посылкой, $B$ — заключением. Говорят ещё: $A$ — достаточное условие для $B$, а $B$ — необходимое условие для $A$.

Посылка: «пойдёт дождь». Пока она ложна, импликация истинна при любом заключении. Заключение: «я возьму зонт». Если оно истинно, импликация истинна при любой посылке. Отрицание посылки. Импликация утверждает ровно одно: не бывает так, чтобы посылка выполнилась, а заключение нет. Пример: «если $n$ делится на $4$, то $n$ чётно». При $n = 8$ посылка и заключение истинны; при $n = 6$ посылка ложна, заключение истинно; при $n = 7$ ложны оба. Во всех трёх случаях импликация истинна. Опровергнуть её могло бы только число, которое делится на $4$ и нечётно, а таких нет.

Строки с ложной посылкой сбивают с толку сильнее всего: «если $2 + 2 = 5$, то Луна сделана из сыра» — истинное высказывание. Логики говорят: из лжи следует что угодно. По известной байке, Бертрана Рассела однажды попросили доказать, что из $2 + 2 = 5$ следует, что он римский папа. Рассел ответил: отнимем по три от обеих частей и получим $1 = 2$; папа и я — двое, значит, мы с папой — один человек. Именно поэтому противоречие в теории — катастрофа: если в ней доказаны и $C$, и $\lnot C$, то в ней доказуемо любое утверждение.

Поменяв посылку и заключение местами, получают обратное утверждение $B \to A$. Оно может быть верным, а может и не быть: «если число делится на $4$, оно чётно» верно, а «если число чётно, оно делится на $4$» — нет, контрпример $6$. Зато у каждой импликации есть близнец, который равносилен ей всегда.

$A \to B \equiv \lnot B \to \lnot A$. А обратное утверждение $B \to A$ исходному, вообще говоря, не равносильно.

Снова четыре строки. Ищем, где каждая импликация ложна: у импликации такая строка всего одна.

Выпишем четыре сочетания значений $A$ и $B$. $A \to B$ ложна только там, где $A$ истинно, а $B$ ложно, — во второй строке. $\lnot B \to \lnot A$ ложна только там, где истинно $\lnot B$ и ложно $\lnot A$, то есть $B$ ложно, а $A$ истинно. Это та же вторая строка. Столбцы совпадают во всех строках, значит, $A \to B \equiv \lnot B \to \lnot A$. Для сравнения — обратное утверждение $B \to A$. Оно ложно в третьей строке, где $B$ истинно, а $A$ ложно, а во второй истинно. Столбцы расходятся, и из $A \to B$ вывести $B \to A$ нельзя.

Смысл закона понятен и без таблицы. «Если идёт дождь, асфальт мокрый» и «если асфальт сухой, дождя нет» говорят одно и то же. А «если асфальт мокрый, идёт дождь» — уже другое: асфальт могла полить поливальная машина.

Кажется, тут невозможно ошибиться. В 1966 году английский психолог Питер Уэйсон проверил это на четырёх карточках. Сыграйте сами, прежде чем читать дальше.

Отметьте карточки, которые обязательно нужно перевернуть, и нажмите «Проверить». Потом решите ту же задачу во вкладке «В баре».

Правило «если на одной стороне гласная, то на другой чётное число» — импликация $P \to Q$, и нарушить её может только карточка, где $P$ истинно, а $Q$ ложно. Переворачивать надо $E$ (вдруг за ней нечётное) и $7$ (вдруг за ней гласная). У карточки $K$ посылка ложна, у карточки $4$ заключение уже истинно, и оборот ничего не решает. Большинство выбирает $E$ и $4$ или одну $E$; правильный ответ в разных опытах дают порядка одного человека из десяти. Посылку мы проверяем, а про контрапозицию «если нечётное, то не гласная» забываем.

Правило бара «если пьёт пиво, то старше восемнадцати» устроено так же: проверять надо пиво и шестнадцатилетнего. Здесь в опытах правильно отвечает большинство — искать нарушителей мы привыкли в жизни. Логика в двух вкладках одна, а интуиция разная, и математике нужна логика, которая не зависит от того, о чём речь.

Импликации в обе стороны дают эквивалентность $A \leftrightarrow B \equiv (A \to B) \land (B \to A)$: «$A$ тогда и только тогда, когда $B$», «$A$ необходимо и достаточно для $B$». Так связаны житель острова и его слова: если $X$ — «$X$ рыцарь», а $S$ — сказанное, то $X \leftrightarrow S$. Вся головоломка острова — конъюнкция таких эквивалентностей, и виджет выше решал её таблицей.

Урок третий: все и некоторые

Связок не хватает, чтобы записать самое обычное математическое утверждение: «квадрат любого числа неотрицателен». Здесь говорится не про одно высказывание, а про бесконечно много: $0^2 \ge 0$, $1^2 \ge 0$, $(-2{,}5)^2 \ge 0$, …

Предикат — утверждение с переменной, $P(x)$: оно становится высказыванием, когда вместо $x$ подставят конкретное значение. Кванторы превращают предикат в высказывание сразу обо всех значениях: $\forall x\ P(x)$ («для любого $x$ верно $P(x)$») и $\exists x\ P(x)$ («существует $x$, для которого верно $P(x)$»). Под квантором обычно указывают, откуда берут $x$: $\forall x \in \mathbb R\ \ x^2 \ge 0$.

Значок $\exists$ — повёрнутая буква E, от слова «существует» (exists); его ввёл Джузеппе Пеано в 1897 году. Значок $\forall$ — перевёрнутая A (all) — появился только в 1935-м, у Герхарда Генцена. Кванторы кажутся простыми словами, пока их не два. Пусть $R(s, z)$ означает «студент $s$ решил задачу $z$». Фраза $\forall z\ \exists s\ R(s, z)$ читается «каждую задачу кто-нибудь решил», а $\exists s\ \forall z\ R(s, z)$ — «кто-то решил все задачи». Разница только в порядке значков, а смысл разный: во второй фразе один студент на всех, в первой у каждой задачи может быть свой. Из второй первая следует, обратно — нет.

Понимание кванторов лучше всего проверять игрой. Утверждение с кванторами — партия двух игроков: Доказывающий ходит за $\exists$ и выбирает подходящий объект, Опровергающий ходит за $\forall$ и выбирает самый неудобный. Утверждение истинно, если у Доказывающего есть выигрышная стратегия, — так истину объясняют в игровой семантике, которую развивал финский логик Яакко Хинтикка.

Отмечайте в таблице, кто какую задачу решил: четыре утверждения справа сразу меняют цвет. Потом выберите утверждение и сыграйте против компьютера за любую сторону. Сумеете выиграть за ту сторону, которая неправа?

В партии за $\forall z\ \exists s$ Доказывающий выбирает студента, уже зная задачу, и его выбор может от задачи зависеть. В партии за $\exists s\ \forall z$ он выбирает вслепую, одного студента против любой задачи. Так же было в игре со Скептиком из главы о пределах: мы называли $N$, уже услышав $\varepsilon$.

Как отрицать утверждения с кванторами? «Не все лебеди белые» означает «есть лебедь, который не белый». Европейцы веками считали лебедей белыми, пока в конце XVII века голландские моряки не увидели в Австралии чёрных, и одного чёрного лебедя хватило.

«Неверно, что $P$ выполнено для всех $x$». «Есть $x$, для которого $P$ не выполнено»: контрпример. «Неверно, что найдётся $x$ со свойством $P$». «Ни один $x$ этим свойством не обладает». Пример: «$n^2 + n + 41$ — простое при всех натуральных $n$» опровергается одним $n = 40$: $40^2 + 40 + 41 = 41^2$ (глава 0). А «существует чётное простое число больше двух» опровергается только доказательством для всех: любое чётное число больше двух делится на $2$ и на себя, то есть составное.

Идея: квантор всеобщности — это длинное «и», квантор существования — длинное «или», и всё сводится к законам де Моргана.

Если $x$ пробегает конечное множество $\{x_1, \dots, x_n\}$, то $\forall x\ P(x)$ означает ровно $P(x_1) \land P(x_2) \land \dots \land P(x_n)$, а $\exists x\ P(x)$ означает $P(x_1) \lor \dots \lor P(x_n)$. По закону де Моргана, применённому несколько раз, отрицание конъюнкции есть дизъюнкция отрицаний: $\lnot(P(x_1) \land \dots \land P(x_n)) \equiv \lnot P(x_1) \lor \dots \lor \lnot P(x_n)$, а это и есть $\exists x\ \lnot P(x)$.

Для бесконечного множества длинной формулы не выпишешь, но рассуждение то же. Высказывание $\forall x\ P(x)$ ложно ровно тогда, когда $P(x)$ истинно не при всех $x$, то есть когда хотя бы при одном $x$ оно ложно — а это значит, что истинно $\exists x\ \lnot P(x)$. Второй закон получается из первого так же, как второй закон де Моргана из первого: применим первый к предикату $\lnot P$ и отбросим двойное отрицание, $\lnot\,\forall x\ \lnot P(x) \equiv \exists x\ P(x)$, а затем отрицаем обе части.

Отсюда механическое правило: чтобы отрицать цепочку кванторов, каждый $\forall$ меняют на $\exists$, каждый $\exists$ на $\forall$, а утверждение в конце отрицают. Одна тонкость: условие, прикреплённое к переменной, как в $\forall \varepsilon > 0$, при отрицании остаётся на месте. Запись $\forall \varepsilon > 0\ \ Q$ — сокращение для $\forall \varepsilon\ (\varepsilon > 0 \to Q)$, и её отрицание по закону для импликации $\lnot(A \to B) \equiv A \land \lnot B$ есть $\exists \varepsilon\ (\varepsilon > 0 \land \lnot Q)$, то есть $\exists \varepsilon > 0\ \ \lnot Q$.

Теперь можно честно сказать, что значит «последовательность не стремится к $a$». Определение из главы 25 и его отрицание:

$$a_n \to a:\quad \forall \varepsilon > 0\ \ \exists N\ \ \forall n > N\quad |a_n - a| < \varepsilon;$$ $$a_n \not\to a:\quad \exists \varepsilon > 0\ \ \forall N\ \ \exists n > N\quad |a_n - a| \ge \varepsilon.$$

Вторая строка — готовая стратегия Скептика: один допуск $\varepsilon$, и после любого номера $N$ найдётся член вне полосы. Для $(-1)^n$ и $a = 1$ годится $\varepsilon = 1$: после любого $N$ встретится нечётный $n$, а там $|a_n - 1| = 2 \ge 1$. В главе 25 этот ход мы нашли догадкой, теперь его выдаёт правило.

Функция $f$ непрерывна в точке $a$, если $\forall \varepsilon > 0\ \exists \delta > 0\ \forall x$: из $|x - a| < \delta$ следует $|f(x) - f(a)| < \varepsilon$. Что значит, что $f$ в точке $a$ разрывна?

Меняем $\forall \varepsilon$ на $\exists \varepsilon$, $\exists \delta$ на $\forall \delta$, $\forall x$ на $\exists x$ и отрицаем импликацию: $\lnot(A \to B) \equiv A \land \lnot B$. Получилась стратегия Скептика: он называет один допуск, и в любом окошке вокруг $a$, даже самом узком, находит точку, где значение отскочило от $f(a)$ хотя бы на $\varepsilon$. Так ведёт себя знак $\operatorname{sgn} x$ в нуле: годится $\varepsilon = \frac12$.

Урок четвёртый: грамматика доказательства

В главе 0 доказательство было названо цепочкой шагов, каждый из которых по правилам логики следует из предыдущих. Теперь правила можно назвать. Формально доказательство — конечная последовательность высказываний, каждое из которых либо аксиома, либо уже доказанная теорема, либо допущение, либо получено из предыдущих по правилу вывода. Главное правило вывода знали ещё древнегреческие стоики: из $A$ и $A \to B$ следует $B$. Его называют modus ponens, а его законность видна из таблицы: формула $\bigl(A \land (A \to B)\bigr) \to B$ — тавтология. Такую последовательность может проверить машина, не понимающая смысла слов; программы вроде Lean и Coq так и проверяют доказательства больших теорем (глава 60). Люди пишут короче, но ход их доказательств подчиняется нескольким схемам, и каждая схема — тавтология.

С обратной стороны

Иногда из $A$ трудно вывести $B$, а из $\lnot B$ вывести $\lnot A$ легко. По закону контрапозиции это одно и то же.

Если $a$ и $b$ — положительные числа и $ab > 100$, то $a > 10$ или $b > 10$.

Напрямую непонятно, с какой стороны зайти. Докажем контрапозицию: если заключение ложно, то ложна и посылка.

Отрицание заключения «$a > 10$ или $b > 10$» по закону де Моргана — «$a \le 10$ и $b \le 10$». Отложим от угла квадрата $10 \times 10$ прямоугольник со сторонами $a$ и $b$. Раз обе стороны не длиннее десяти, его противоположный угол лежит внутри квадрата или на его границе. Весь прямоугольник помещается в квадрат: он заполняет угол квадрата, от которого отложен. Часть фигуры не больше целого, поэтому $ab \le 10 \cdot 10 = 100$. Без картинки: $ab \le 10b \le 10 \cdot 10$, потому что при положительных множителях неравенства можно умножать. Мы доказали $\lnot B \to \lnot A$: если $a \le 10$ и $b \le 10$, то $ab \le 100$. По закону контрапозиции это равносильно исходному утверждению.

От противного

От противного: предполагаем $\lnot A$ и выводим противоречие $C \land \lnot C$; формула $(\lnot A \to (C \land \lnot C)) \to A$ — тавтология. Так доказаны иррациональность $\sqrt2$ (глава 6) и бесконечность ряда простых (глава 3). Вот пример ещё короче.

Число $\log_2 3$ иррационально.

Идея: дробь превратила бы логарифм в равенство двух целых чисел разной чётности.

Предположим противное: $\log_2 3 = \frac pq$ с натуральными $p$ и $q$ (логарифм положителен, потому что $3 > 1$). По определению логарифма (глава 12) это значит $2^{p/q} = 3$. Возведём обе части в степень $q$: $2^p = 3^q$. Слева произведение двоек, чётное число, ведь $p \ge 1$. Справа произведение троек, нечётное. Чётное число не равно нечётному — противоречие. Значит, предположение неверно, и $\log_2 3$ — не дробь.

По цепочке

Математическая индукция из главы 13 тоже схема: $\bigl(P(1) \land \forall k\ (P(k) \to P(k + 1))\bigr) \to \forall n\ P(n)$. Её строгость лучше всего видна на доказательстве, которое ею притворяется.

«Докажем, что все лошади одной масти. Утверждение $P(n)$: в любом табуне из $n$ лошадей все одной масти. База: $P(1)$ верно. Шаг: возьмём табун из $k + 1$ лошади. Без последней лошади остаётся табун из $k$ — они одной масти; без первой — тоже $k$, тоже одной масти. Лошади в середине входят в оба табуна, значит, масть у всех одна». Где ошибка?

В табуне из двух лошадей «лошадей в середине» нет: без последней остаётся первая, без первой — последняя, и общих лошадей у двух табунов нет. Шаг обязан работать при каждом $k$, а при $k = 1$ он ломается, и цепочка костяшек рвётся на второй. Пример приписывают Дьёрдю Пойа.

Предъявить или доказать, что есть

Утверждение «существует $x$ со свойством $P$» проще всего доказать построением, предъявив такой $x$. Но иногда существование удаётся доказать, не показав объекта.

Существуют иррациональные числа $a$ и $b$, для которых $a^b$ рационально.

Идея: разобрать два случая, в одном из которых ответ готов, а в другом получается из первого.

Рассмотрим число $\sqrt2^{\sqrt2}$. Оно либо рационально, либо нет: закон исключённого третьего. Если рационально, годятся $a = b = \sqrt2$ — оба иррациональны (глава 6). Если иррационально, возьмём $a = \sqrt2^{\sqrt2}$ и $b = \sqrt2$. Тогда по правилу $(x^u)^v = x^{uv}$ для положительного $x$ получаем $a^b = \sqrt2^{\sqrt2 \cdot \sqrt2} = \sqrt2^{\,2} = 2$ — рациональное число. В обоих случаях нужная пара нашлась.

Доказательство безупречно, но какая из двух пар работает, оно не говорит. Такие доказательства называют неконструктивными; интуиционисты, часть логиков XX века, их не признавали. Здесь ответ, впрочем, известен: по теореме Гельфонда — Шнайдера (1934) число $\sqrt2^{\sqrt2}$ трансцендентно, так что работает второй случай. А есть и совсем простой конструктивный пример: $\sqrt2^{\log_2 9} = 2^{\frac12\log_2 9} = 2^{\log_2 3} = 3$, где $\log_2 9$ иррационален по той же причине, что и $\log_2 3$.

Одним примером

Последняя схема — опровержение. Раз $\lnot\,\forall x\ P(x) \equiv \exists x\ \lnot P(x)$, утверждение «для всех» опровергает один контрпример. А утверждение «существует» примером не опровергнешь: его отрицание начинается с «для всех» и требует доказательства. С этой асимметрии начинался курс.

Урок пятый: множества

До сих пор мы учили глаголы и союзы. Пора заняться существительными: математик почти всегда говорит о многих объектах сразу — «все корни уравнения», «точки окружности», «чётные числа».

Под множеством мы понимаем любое объединение в одно целое определённых, вполне различимых объектов нашего созерцания или мышления, которые называются элементами множества.

Георг Кантор, «К обоснованию учения о трансфинитных множествах», 1895. Перевод вольный

Множество в математике — первичное понятие: его не определяют через другие, а описывают правилами обращения. Главное правило: множество полностью определяется своими элементами. Запись $x \in A$ читают «$x$ принадлежит $A$», $x \notin A$ — «не принадлежит». Множества $A$ и $B$ равны, если у них одни и те же элементы. $A$ — подмножество $B$, пишут $A \subset B$, если каждый элемент $A$ принадлежит $B$; в части учебников пишут $A \subseteq B$, оставляя $\subset$ для подмножества, не совпадающего со всем $B$. Множество без элементов называют пустым и обозначают $\varnothing$.

Задают множество либо списком, $\{2, 3, 5, 7\}$, либо свойством: $\{x \in \mathbb R \mid x^2 < 2\}$ — все действительные $x$, для которых $x^2 < 2$, то есть интервал $(-\sqrt2;\ \sqrt2)$. Порядок и повторы в списке не важны: $\{1, 2, 2\} = \{2, 1\}$, у них одни и те же элементы.

Пустое множество — подмножество любого $A$: условие $\forall x\ (x \in \varnothing \to x \in A)$ выполнено, потому что посылка $x \in \varnothing$ всегда ложна, а из лжи следует что угодно. И пустое множество одно: у двух пустых множеств одни и те же элементы — никаких.

Из множеств $A$ и $B$ делают новые. Объединение $A \cup B$ — элементы, которые лежат в $A$ или в $B$. Пересечение $A \cap B$ — элементы, которые лежат и в $A$, и в $B$. Разность $A \setminus B$ — элементы $A$, не лежащие в $B$. Если все рассматриваемые множества лежат внутри одного объемлющего $U$, то дополнение $A^{c} = U \setminus A$ — элементы $U$, не лежащие в $A$.

Операции над множествами — связки логики в новом платье: $x \in A \cup B$ означает $x \in A \lor x \in B$, пересечение — «и», дополнение — «не». Каждый закон логики сразу даёт закон для множеств, а круги Эйлера — таблица истинности, нарисованная на плоскости.

$(A \cup B)^{c} = A^{c} \cap B^{c}$ и $(A \cap B)^{c} = A^{c} \cup B^{c}$.

Нарисуем обе части первого закона и убедимся, что закрашено одно и то же. Каждая из четырёх областей рисунка — строка таблицы из урока первого.

Внутри объемлющего прямоугольника $U$ — два круга, $A$ и $B$. Они делят $U$ на четыре области: в обоих кругах, только в $A$, только в $B$, вне обоих. Объединение $A \cup B$ — три области из четырёх, всё, что попало хотя бы в один круг. Его дополнение $(A \cup B)^{c}$ — оставшаяся четвёртая область, снаружи обоих кругов. Теперь правая часть. $A^{c}$ — всё вне круга $A$; заштрихуем его наклонными линиями. $B^{c}$ — всё вне круга $B$; заштрихуем его в другую сторону. Пересечение $A^{c} \cap B^{c}$ — там, где штриховки перекрещиваются: вне обоих кругов. Это та же область, что и на третьем шаге. Области совпали при любом расположении кругов — двигайте центры, проверьте, что и у кругов без общих точек всё сходится. На языке элементов: $x \in (A \cup B)^{c} \iff \lnot(x \in A \lor x \in B) \iff (x \notin A) \land (x \notin B) \iff x \in A^{c} \cap B^{c}$ по первому закону де Моргана для высказываний. Второй закон получается так же из второго.

Сколько строк таблицы истинности формулы $A \lor B \lor C \lor D$ содержат И? Иными словами, на сколько областей из шестнадцати ложится объединение четырёх множеств общего положения?

Всего строк $2^4 = 16$. Дизъюнкция ложна только там, где ложны все четыре переменные, — это одна строка. Остальные $16 - 1 = 15$ строк дают И.

Урок шестой: функция — это множество пар

В главе 9 функция была правилом: каждому $x$ сопоставляется ровно одно $y$. Но что такое «правило»? Теория множеств отвечает неожиданно: функцию можно отождествить с её графиком.

Декартово произведение $A \times B$ — множество всех упорядоченных пар $(a, b)$ с $a \in A$ и $b \in B$; плоскость с координатами — это $\mathbb R \times \mathbb R$. Отображение $f\colon A \to B$ — подмножество $f \subset A \times B$, в котором для каждого $a \in A$ есть ровно одна пара $(a, b)$. Этот единственный $b$ обозначают $f(a)$. Слово «функция» обычно оставляют для отображений, значения которых — числа.

Никакого «правила» в определении нет: отображение — список пар, в котором каждый элемент $A$ стоит первым ровно один раз, и формулой его задавать не обязательно. Три главных свойства отображений — про стрелки, которые ведут из $A$ в $B$.

Отображение $f\colon A \to B$ называют инъекцией, если разные элементы оно переводит в разные: из $a \ne a'$ следует $f(a) \ne f(a')$. Сюръекцией — если в каждый $b \in B$ ведёт хотя бы одна стрелка: $\forall b \in B\ \exists a \in A\ \ f(a) = b$. Биекцией, или взаимно однозначным соответствием, — если оно и то и другое: в каждый элемент $B$ ведёт ровно одна стрелка.

Коснитесь точки слева, потом точки справа — появится стрелка; повторное касание её убирает. Меняйте размеры множеств. Попробуйте построить инъекцию из пяти точек в четыре.

Инъекцию из пяти точек в четыре построить не удастся: это принцип Дирихле, пять кроликов в четырёх клетках. Биекция бывает только между множествами одного размера, и только биекцию можно пройти в обратную сторону.

У отображения $f\colon A \to B$ есть обратное $g\colon B \to A$, то есть $g(f(a)) = a$ для всех $a \in A$ и $f(g(b)) = b$ для всех $b \in B$, тогда и только тогда, когда $f$ — биекция.

Идея: обратное отображение — это те же пары, прочитанные справа налево, и они образуют отображение ровно тогда, когда в каждую точку $B$ ведёт одна стрелка.

Пусть обратное $g$ есть. Если $f(a) = f(a')$, применим к обеим частям $g$: $a = g(f(a)) = g(f(a')) = a'$, значит, $f$ — инъекция. Для любого $b \in B$ элемент $a = g(b)$ переходит в $f(g(b)) = b$, значит, $f$ — сюръекция. Обратно, пусть $f$ — биекция. Перевернём каждую пару $(a, b)$ из $f$ и получим множество пар $g \subset B \times A$. Для каждого $b$ в $g$ есть хотя бы одна пара $(b, a)$, потому что $f$ сюръективно, и не больше одной, потому что $f$ инъективно. Значит, $g$ — отображение, и по построению $g(f(a)) = a$ и $f(g(b)) = b$.

Если $A$ и $B$ конечны и в них поровну элементов, то отображение $f\colon A \to B$ инъективно тогда и только тогда, когда сюръективно.

Идея: посчитать, сколько точек $B$ задето стрелками.

Пусть в $A$ и $B$ по $n$ элементов. Образ $f(A) = \{f(a) \mid a \in A\}$ — подмножество $B$. Если $f$ инъективно, у $n$ разных элементов $A$ разные образы, и в $f(A)$ ровно $n$ элементов. Подмножество из $n$ элементов в множестве из $n$ элементов — всё множество, значит, $f(A) = B$ и $f$ сюръективно. Если же $f$ не инъективно, два элемента $A$ попали в одну точку, и образов меньше $n$: $f(A) \ne B$, и $f$ не сюръективно. По закону контрапозиции это и есть вторая половина утверждения.

Для бесконечных множеств это неверно, и здесь начинается следующая глава. Отображение $n \mapsto n + 1$ из $\mathbb N$ в $\mathbb N$ инъективно, но в единицу не ведёт ни одна стрелка. А $n \mapsto \lceil n/2 \rceil$ (половина, округлённая вверх) задевает каждое натуральное число, но единицу получает дважды, из $1$ и из $2$.

Сколько существует сюръекций из множества $\{1, 2, 3\}$ в множество $\{a, b\}$?

Всего отображений $2^3 = 8$: каждый из трёх элементов независимо выбирает $a$ или $b$ (правило произведения). Не сюръективны только два из них: все в $a$ и все в $b$. Остаётся $8 - 2 = 6$. Инъекций среди них нет ни одной: трём элементам не хватит двух разных образов.

Урок седьмой: равные по-разному

Дроби $\frac12$, $\frac24$ и $\frac36$ записаны по-разному, а число одно (глава 5). Часы показывают одно и то же в 3 часа ночи и в 15 часов. Приём один: объекты объявляют «одинаковыми», если они совпадают в чём-то важном, и работают с целыми группами.

Отношение на множестве $A$ — подмножество $R \subset A \times A$; вместо $(a, b) \in R$ пишут $a \sim b$. Отношение называют отношением эквивалентности, если оно рефлексивно ($a \sim a$ для всех $a$), симметрично (из $a \sim b$ следует $b \sim a$) и транзитивно (из $a \sim b$ и $b \sim c$ следует $a \sim c$). Класс эквивалентности элемента $a$ — множество $[a] = \{x \in A \mid x \sim a\}$ всех элементов, эквивалентных ему.

«Иметь одинаковый остаток при делении на $12$» — отношение эквивалентности на целых числах. «Делить» — нет: $2$ делит $4$, но $4$ не делит $2$, симметрии нет. «Отличаться меньше чем на единицу» — тоже нет: $0 \sim 0{,}6$ и $0{,}6 \sim 1{,}2$, но $0$ и $1{,}2$ отличаются больше чем на единицу, транзитивность нарушена. Эквивалентность же режет множество на куски без остатка и без наложений.

Классы отношения эквивалентности на множестве $A$ покрывают всё $A$, и любые два класса либо совпадают, либо не пересекаются.

Идея: если у двух классов нашёлся общий элемент, транзитивность проведёт через него мостик от любого элемента одного класса к любому элементу другого.

Каждый элемент $a$ лежит в своём классе $[a]$, потому что $a \sim a$ (рефлексивность), так что классы покрывают $A$. Пусть классы $[a]$ и $[b]$ имеют общий элемент $c$: $c \sim a$ и $c \sim b$. Возьмём любой $x \in [a]$, то есть $x \sim a$. По симметрии $a \sim c$, по транзитивности $x \sim c$, а с $c \sim b$ ещё раз по транзитивности $x \sim b$, то есть $x \in [b]$. Значит, $[a] \subset [b]$. Поменяв $a$ и $b$ ролями, получим $[b] \subset [a]$, и классы совпадают.

Теперь можно сказать, что такое остаток и что такое дробь, не произнося слов «одно и то же, записанное по-разному». Классы целых чисел по модулю $n$ — это элементы $\mathbb Z_n$ из главы об остатках: $\mathbb Z_{12}$ — двенадцать классов, цифры на циферблате. А положительное рациональное число — класс пар натуральных чисел по отношению $(p, q) \sim (p', q') \iff pq' = p'q$: пары $(1, 2)$, $(2, 4)$, $(3, 6)$, … образуют один класс, и этот класс и есть $\frac12$. На клетчатой плоскости каждый класс лежит на луче из начала координат — рисунок, который понадобится в следующей главе.

Сколько существует различных отношений эквивалентности на множестве $\{a, b, c\}$?

По теореме о разбиении отношение эквивалентности — то же, что разбиение множества на классы: зная классы, мы знаем, кто кому эквивалентен, и наоборот. Разбиений множества из трёх элементов пять: все в одном классе; каждый в своём; и три способа выделить пару — $\{a, b\}\{c\}$, $\{a, c\}\{b\}$, $\{b, c\}\{a\}$. Ответ: $5$.

Урок восьмой: слово, которое ломает словарь

Кантор разрешил называть множеством «любое объединение» объектов. Возьмём это всерьёз. Множество всех множеств, если оно есть, само множество и потому лежит в себе. Множество всех чашек не чашка и в себе не лежит. Соберём вместе все множества, которые не лежат сами в себе:

$$R = \{x \mid x \notin x\}.$$

Множества $R$ всех множеств, не содержащих себя в качестве элемента, не существует.

Это разговор островитянина, который сказал «я лжец». Спросим про само $R$: лежит ли оно в себе?

Предположим, что $R$ существует. Про любое множество можно спросить, лежит ли оно в $R$, — и про само $R$ тоже. По закону исключённого третьего либо $R \in R$, либо $R \notin R$. Пусть $R \in R$. В $R$ лежат только множества, не содержащие себя, значит, $R \notin R$. Противоречие. Пусть $R \notin R$. Тогда $R$ — множество, не содержащее себя, а все такие множества по определению лежат в $R$. Значит, $R \in R$. Снова противоречие. Оба случая невозможны, и других нет. Значит, предположение неверно: такого множества нет. Короче: определение $R$ даёт $R \in R \leftrightarrow R \notin R$, а высказывание вида $A \leftrightarrow \lnot A$ ложно в каждой строке таблицы.

Бертран Рассел нашёл это противоречие в 1901 году; Эрнст Цермело в Гёттингене натолкнулся на него чуть раньше, но не опубликовал. В июне 1902 года Рассел написал о нём Готлобу Фреге, который заканчивал второй том «Основных законов арифметики» — попытки вывести всю арифметику из логики. Аксиомы Фреге разрешали собрать в множество всё, что обладает каким-нибудь свойством, и множество $R$ у него существовало. Том вышел в 1903 году с послесловием:

Едва ли с учёным может случиться что-нибудь хуже: работа закончена, а одна из опор всего здания пошатнулась.

Готлоб Фреге, «Основные законы арифметики», т. II, 1903. Перевод вольный

В популярной версии, которую пересказывал и сам Рассел, парадокс звучит так: деревенский брадобрей бреет тех и только тех жителей, кто не бреется сам. Бреет ли он себя? Оба ответа невозможны, но вывод прост: такого брадобрея не бывает. С множествами вывод тот же, а кризис в том, что прежние правила разрешали такое множество построить.

Выход нашёл тот же Цермело. В 1908 году он предложил аксиомы, по которым множество нельзя собрать «из всего на свете», а можно только вырезать из уже существующего.

Для любого множества $A$ и любого свойства $P$ существует множество $\{x \in A \mid P(x)\}$ всех элементов $A$, обладающих свойством $P$.

Не существует множества $V$, элементами которого были бы все множества.

Идея: если бы $V$ было, аксиома выделения вырезала бы из него множество Рассела.

Предположим, что $V$ существует. По аксиоме выделения со свойством $P(x)$: «$x \notin x$» существует множество $R = \{x \in V \mid x \notin x\}$. Все множества лежат в $V$, поэтому $R$ состоит в точности из всех множеств, не содержащих себя. По теореме о парадоксе Рассела такого множества нет. Противоречие, и $V$ не существует.

Свой ход в споре с парадоксом аксиома выделения делает скромно: противоречивое множество не запрещено, его просто не из чего построить. Сегодня основой математики служит система ZFC: аксиомы Цермело, дополненные в 1922 году Абрахамом Френкелем и Туральфом Сколемом. Буква C в названии напоминает, что среди них есть аксиома выбора (choice) — её часто рассматривают отдельно от остальных. Вот все девять аксиом обзорно, словами:

АксиомаЧто разрешает или утверждает
объёмностимножества с одними и теми же элементами равны
парыиз $a$ и $b$ можно составить множество $\{a, b\}$
объединенияэлементы элементов множества можно ссыпать в одно множество
степенивсе подмножества множества $A$ образуют множество
выделенияиз множества можно вырезать элементы с данным свойством
подстановкиобраз множества при отображении, заданном формулой, — тоже множество
бесконечностисуществует бесконечное множество, в котором помещаются все натуральные числа
регулярностицепочка $\dots \in x_3 \in x_2 \in x_1$ не может спускаться бесконечно; в частности, $x \notin x$
выбораиз каждого множества семейства непустых множеств можно выбрать по элементу

Удивительно, что почти всей математике больше ничего не нужно. Числа тоже строятся из множеств: Джон фон Нейман в 1923 году предложил считать нулём пустое множество, единицей — $\{\varnothing\}$, двойкой — $\{\varnothing, \{\varnothing\}\}$ и вообще $n + 1 = n \cup \{n\}$. Здесь удобно начинать натуральный ряд с нуля; в российской школьной традиции ноль к натуральным числам не относят, и это вопрос договорённости, а не истины. Принцип индукции, который Пеано в 1889 году объявил аксиомой арифметики, в ZFC становится теоремой. Из пар натуральных чисел строятся целые и дроби (урок седьмой), из дробей — действительные числа, из них — функции, пространства, вероятности. Весь этот курс вырастает из девяти строк таблицы.

Экзамен на острове

Грамматику учат не только чтением, но и упражнениями. В тренажёре три уровня: посчитать строки таблицы истинности, выбрать правильное отрицание утверждения с кванторами и разобраться с жителями острова.

Куда дальше

Для конечных множеств мы доказали: если в $A$ и $B$ поровну элементов, то инъекция из $A$ в $B$ обязательно биекция. Для натуральных чисел это неверно: сдвиг $n \mapsto n + 1$ переводит $\mathbb N$ в его собственную часть $\{2, 3, 4, \dots\}$ взаимно однозначно. Выходит, у бесконечного множества столько же элементов, сколько у его части? Галилей заметил это ещё в 1638 году — квадратов $1, 4, 9, 16, \dots$ столько же, сколько всех натуральных чисел, — и решил, что слова «больше» и «меньше» к бесконечностям неприменимы. Георг Кантор решил иначе: считать множества одинаковыми по размеру, если между ними есть биекция, и посмотреть, что получится. Получилось, что бесконечности бывают разные. Можно ли сравнить натуральные числа с точками отрезка, и существует ли самая большая бесконечность, — спорят три собеседника в следующей главе.

В этой главе

  1. Остров рыцарей и лжецов
  2. Урок первый: не, и, или
  3. Урок второй: если…, то…
  4. Урок третий: все и некоторые
  5. Урок четвёртый: грамматика доказательства
  6. Урок пятый: множества
  7. Урок шестой: функция — это множество пар
  8. Урок седьмой: равные по-разному
  9. Урок восьмой: слово, которое ломает словарь
  10. Экзамен на острове
  11. Куда дальше

Главы курса