§ 8. Алфавиты и буквы. Слова и строки. Взаимно однозначные соответствия и мощность. Диагональный метод
В математике любой конечный список знаков принято называть алфавитом. Не предполагается, что эти знаки что-нибудь означают. Иногда говорят не о знаках, а о символах, но опять-таки не предполагая, что они что-либо символизируют. (Честнее было бы говорить не о знаках или символах, а о закорючках, но это уж как-то слишком ненаучно.) Члены алфавита называются буквами.
Первый математический алфавит, который узнаёт школьник, – это алфавит десятичных цифр с буквами 0, 1, 2, 3, 4, 5, 6, 7, 8, 9. А вот алфавит римских цифр: I, V, X, L, C, D, M.
Конечная последовательность идущих друг за другом букв алфавита называется словом в этом алфавите. Например, «ъЪрйрьоь» есть слово в русском алфавите. Пример показывает, что далеко не всякое слово в русском алфавите является русским словом, т. е. словом русского языка.
Слова также называют строками. Содержание этих терминов одинаковое, а различаются они сферами употребления: термин «слово» чаще употребляют те, кто занимается теоретическими изысканиями, тогда как термин «строка» употребителен в более прикладной среде, в частности в информатике. Мы будем использовать оба термина.
Количество букв в слове (строке) именуют его (её) длиной. Так, длина приведённого выше слова в русском алфавите есть 8.
Пример 31. Если алфавит состоит из одной буквы, то число слов длины n равно 1.
Пример 32. Доказать, что если алфавит состоит из двух букв, то число слов длины n равно 2n.
Каждое слово длины n получается приписыванием одной из двух букв алфавита к слову длины n – 1. Стало быть, при удлинении слова на одну букву количество слов удваивается. А количество слов длины 1 есть два.
В примере 32 мы начали с двух слов длины 1. А могли бы начать и с одного слова длины 0, вовсе не содержащего букв. Такое слово называется пустым и обозначается заглавной греческой буквой «лямбда» (Λ).
Рассмотрим множество {a; b; c} из трёх элементов: a, b и c. Напомним, что для того, чтобы получить имя множества, достаточно заключить в фигурные скобки список имён его элементов, разделив их имена запятой или точкой с запятой (последнее удобнее). Найдём все части, или подмножества, нашего множества. Во-первых, три одноэлементные части: {a}, {b}, {c}. Во-вторых, три двухэлементные части: {b; c}, {a; c}, {a; b}. В-третьих (поскольку всякое множество считается частью самого себя), трёхэлементную часть {a; b; c}. Наконец, пустое множество Ø, не содержащее ни одного элемента и считающееся частью любого множества. Всего частей оказалось 8.
Пример 33. Сколько частей у множества, содержащего n элементов?
Пронумеруем элементы числами от 1 до n. Каждой части отнесём строку длины n из плюсов и минусов, образованную по следующему правилу: если элемент с номером k принадлежит нашей части, на k-м месте строки ставим плюс; если же k-й элемент не принадлежит рассматриваемой части, на k-м месте строки ставим минус. Заметим, что не только каждой части множества соответствует ровно одна строка, но и каждой строке длины n, составленной из плюсов и минусов, соответствует ровно одна часть.
Мы получили то, что называется взаимно однозначным соответствием между двумя множествами – в данном случае между множеством частей и множеством строк.
В общем случае взаимно однозначным соответствием между множествами X и Y называется такое соответствие между ними, когда каждому элементу из X соответствует ровно один элемент из Y и каждый элемент из Y соответствует ровно одному элементу из X. Если между двумя множествами имеет место взаимно однозначное соответствие, то количества элементов в обоих множествах совпадают.
Собственно, количество элементов – это и есть то общее свойство, что несут в себе все те множества, между которыми можно установить взаимно однозначные соответствия. Невозможность такого соответствия между множествами X и Y означает различие количеств элементов, содержащихся в этих множествах.
Это математическое уточнение интуитивного понятия количества элементов множества, основанное на понятии взаимно однозначного соответствия, принадлежит одному из величайших математиков XIX в., создателю теории множеств, без которой немыслима современная математика, немецкому учёному Георгу Кантору. Кантор, в частности, первым обнаружил, что бесконечные множества могут содержать различные количества элементов.
В математике количество элементов множества принято называть его мощностью.
Таким образом, выражения:
1. Два множества имеют одинаковое количество элементов;
2. Два множества равноколичественны;
3. Два множества имеют одинаковую мощность;
4. Два множества равномощны;
5. Между двумя множествами можно установить взаимно однозначное соответствие
синонимичны. Они несут в себе одинаковый смысл.
Очевиден следующий принцип транзитивности:
если два множества равномощны третьему, то они равномощны друг другу.
(Предлагаем читателю в качестве упражнения самостоятельно сформулировать принцип транзитивности в терминах взаимно однозначных соответствий.)
Но вернёмся к примеру 33.
В силу только что сказанного частей нашего подмножества столько же, сколько цепочек плюсов и минусов длины n, а число таких цепочек, как показано в примере 32, есть 2n.
Пример 34. Пусть в алфавите s букв. Сколько в этом алфавите слов длины n?
Рассуждаем как в примере 32. Удлинение на одну букву приводит к увеличению количества слов в s раз. Начиная со слов длины 0, количество коих есть 1, приходим к выводу, что количество слов длины n равно sn.
Пример 35. Дан список из n слов длины n в каком-то алфавите. Как указать слово в том же алфавите, не входящее в заданный список?
Решение проиллюстрируем на частном случае. В качестве алфавита возьмём двухбуквенный алфавит {0; 1}, а список такой: 00100100100; 01011011010; 10011011001; 01111011101; 11001010110; 11111111111; 11010001000; 11001000100; 00000000000; 10101010101; 01010101010. Расположим слова списка одно под другим, так чтобы получилась квадратная таблица:
По идущей от верхнего левого угла диагонали этой квадратной таблицы стоит слово 01011100000. Поменяв в нём все цифры, получим 10100011111, что отличается от всех строк (а заодно и всех столбцов). В самом деле, это слово не может совпасть ни с пятой, скажем, строкой, потому что на пятом месте в этом слове стоит ноль, тогда как в пятой строке на пятом месте стоит единица, ни с десятой строкой, где на десятом месте в этом слове стоит единица, а в десятой строке на этом месте стоит ноль, и вообще ни с одной из строк таблицы.
Изложенный метод иногда называют диагональным, или методом канторовской диагонали. В 1891 г. он впервые был применён в статье Кантора. Это было сделано для доказательства того, что натуральный ряд N и множество Ω всех бесконечных двоичных (т. е. составленных из ноля и единицы) последовательностей обладают различными количествами элементов. Диагональный метод успешно используется при доказательстве некоторых важнейших теорем математики.
Пример 36 (Кантор). Доказать, что множества Ω и N имеют различное количество элементов.
Для этого мы должны установить невозможность взаимно однозначного соответствия между указанными множествами. Рассуждаем от противного. Пусть такое соответствие возможно. Тогда бесконечные двоичные последовательности, из которых состоит множество Ω, можно занумеровать натуральными числами: первая, вторая, третья и т. д. Расположим эти последовательности друг под другом. Возможный вариант такого расположения показан ниже.
Естественно возникает бесконечная диагональная последовательность: в ней на первом месте стоит первый член первой последовательности, на втором – второй член второй последовательности, …, на сотом – сотый член сотой последовательности и т. д. Для показанного варианта диагональная последовательность будет иметь вид 0101110000… Меняем в ней все члены и получаем бесконечную последовательность 1010001111 …, которая отсутствует в нашем перечне в силу причин, изложенных в примере 35. Стало быть, наше предположение, что мы пронумеровали все двоичные бесконечные последовательности, оказалось ложным.