В статье Шеннона в первую очередь удивляет подход автора, который перекликается с подходом пионеров термодинамики XIX века. Подобно Джеймсу Клерку Максвеллу, Людвигу Больцману и Джозайе Уилларду Гиббсу, Шеннон отталкивался от принципов статистики. Он показал, что те же законы вероятности, которые объясняют поведение теплового потока, объясняют и поведение потока информации.
Задача связи, начинает Шеннон, заключается в “восстановлении (точном или приближенном) в данной точке сигнала, отправленного в другой”
[25]. Но затем он делает неожиданный шаг и заявляет, что для количественного измерения информации необходимо не принимать в расчет ее смысл. “Эти семантические аспекты связи не имеют отношения к инженерной задаче”, — отмечает Шеннон. Сначала такой подход кажется холодным и обреченным на провал, однако на самом деле оказывается освобождающим. Он делает теорию Шеннона универсальной: отделив смысл от сообщения, он нашел способ измерить размер всех возможных сообщений. В сфере теплоты весьма удобна температурная шкала Томсона, которая не зависит от того, температура какого вещества измеряется. Так, мы можем достоверно заявить, что температура бруска железа, стакана воды и кочана капусты составляет 300 кельвинов. Шеннон аналогичным образом показывает нам, как можно оценить информационный размер фрагмента текста, картины и генома.
Далее Шеннон делает еще одно важное допущение и говорит, что вся информация зашифрована. Единственное различие между двумя людьми, использующими систему вроде SIGSALY, и двумя людьми, говорящими на обычном английском языке, заключается в том, что в первом случае лишь собеседники знают, как именно шифруется сообщение, а во втором сообщение шифруется английскими звуками, смысл которых известен всем, кто владеет английским языком. Это может показаться очевидным — я просто говорю, что, прежде чем понимать язык, необходимо его освоить, — но это важно для рассуждений Шеннона, которые основаны на том, что коммуникация между людьми возможна лишь после определения принципа шифрования сообщений.
И здесь Шеннон предложил блестящую идею. Он заявил, что любое сообщение можно передать в качестве ответов “да” или “нет” на последовательность вопросов, сформулированных соответствующим образом. Исключений не существует. Любую единицу информации можно передать в расширенной версии игры в “Двадцать вопросов”, в которой первый игрок загадывает известного человека, а второй должен угадать, кого загадали, задав первому двадцать вопросов, предполагающих ответ “да” или “нет”.
Шеннон показал, что если увеличить лимит вопросов и позволить игроку спрашивать и дальше, то игрок всегда сумеет найти ответ.
Чтобы понять, как это работает, представьте, что Боб хочет передать просьбу о помощи Алисе, используя вопросы с ответами “да” или “нет”. (Специалисты по теории информации часто используют имена Алиса и Боб для обозначения отправителей и получателей информации.) Чтобы добиться реалистичности, скажем, что Боб может вступать в контакт с Алисой лишь одним способом — включая и выключая фонарик.
Допустим, Алиса и Боб умеют читать по-английски и одинаково представляют себе стандартную алфавитную последовательность от a до z. Перед каждым из них лежит такой список: abcdefghijklmnopqrstuvwxyz.
Алиса и Боб принимают следующие правила: в определенное время, скажем в 13:00, Боб либо включает фонарик, либо оставляет его выключенным. Ровно секунду спустя он делает то же самое. Он продолжает передачу с секундными интервалами, пока не завершит сообщение. Алиса записывает то, что видит в каждый секундный интервал. Если она видит вспышку, то ставит единицу (1), если не видит — ноль (0).
Кроме того, Алиса и Боб договариваются, что каждые 1 и о, отправляемые Бобом, служат ответом на один и тот же вопрос, предполагающий ответ “да” или “нет”: “Находится ли передаваемая тобою буква в левой половине алфавитного списка?”
Боб и Алиса принимают 1 за ответ “да”, а 0 — за ответ “нет”. Если Алиса видит 1, то отбрасывает правую половину списка. Если она видит 0, то отбрасывает левую. Увидев вторую 1 или 0, она снова делит буквенный список пополам. Она продолжает “уполовинивание списка”, пока у нее не останется лишь одна буква — та самая, которую хотел передать ей Боб.
Таким образом, чтобы передать слово help (“помоги”), Боб начинает с 1.
Алиса отбрасывает правую половину алфавита, и у нее остается последовательность abcdefghijklm.
Боб передает 0.
Теперь Алиса отбрасывает левую половину буквенной последовательности abcdefghijklm, и у нее остается ghijklm.
(По договоренности, если в списке нечетное количество букв, то делить его всегда следует таким образом, чтобы левая половина оказывалась на одну букву короче правой.)
Боб передает 1.
Алиса отбрасывает правую половину ghijklm, и у нее остается ghi.
Боб передает 0.
Алиса отбрасывает леву 10 половину ghi, и у нее остается hi. Боб передает 1.
Алиса отбрасывает правую половину Аг, и у нее остается h.
Алиса успешно получает первую букву сообщения Боба, А, которая зашифрована последовательностью 10101. Затем Алиса возвращается к полному алфавиту и дешифрует вторую букву сообщения.
По этому методу букве е соответствует последовательность 11010, букве I — 10001, а буквер — oiioo. Слово help шифруется таким образом: 10101, 11010, 10001, 01100.
Алиса и Боб зашифровали слово help ответами “да” или “нет” на двадцать вопросов, переданных с помощью световых сигналов. В такой системе любую букву английского алфавита можно передать в форме ответа “да” или “нет” на пять вопросов. Ответ 1 или 0 на каждый подобный вопрос Шеннон назвал “битом” информации. Следовательно, в нашем коде информационный размер каждой буквы английского алфавита составляет пять битов.
Возможно, читателям известно, что словом “бит” также обозначается одна цифра в двоичном числе. Таким образом, число 2 можно представить как “двухбитовое число” 10, число 3 — как 11, число 4 — как 100 и так далее. Биты Шеннона отличаются. Это просто ответы “да” или “нет” на вопросы, и их задача заключается в том, чтобы представить информацию в количественном выражении путем подсчета числа вопросов, необходимых для передачи сообщения. Если вернуться к тому, как Боб передал слово help Алисе, окажется, что важнее всего нам количество потребовавшихся битов. Конкретное значение каждого из битов было лишь артефактом условий, установленных Алисой и Бобом.
Можно ли считать такое преобразование сообщения в последовательность битов “да” или “нет” объективной мерой его размера? Шеннон хотел найти такой способ измерять информацию, который стал бы универсальным и независимым от метода шифрования. Для этого он отметил, что размер единицы информации должен соответствовать наименьшему числу битов, необходимых для шифрования сообщения. Можно ли использовать менее двадцати битов, чтобы передать сообщение helpl Ответ да, если принять во внимание тот факт, что одни буквы в любом написанном на английском языке тексте встречаются гораздо чаще других. В приведенном примере Алиса и Боб считали вероятность появления каждой из букв одинаковой, но в настоящем англоязычном тексте дело обстоит иначе. Шеннон продемонстрировал, что необходимо учитывать эту статистическую закономерность.