
Три логика заходят в «Бар логики».
Официант: Вы все хотите пива?
Первый логик: Я не знаю.
Второй логик: Я не знаю.
Третий логик: Да.
Уморительно! … Вы поняли шутку?
Объяснять шутки, конечно, редко бывает смешно, но все же позвольте мне это сделать. Вся соль шутки заключается в эпистемической логике — логике знания. Дело в том, что официант спросил, хотят ли пива все трое. Поэтому логики отвечали не только за себя, но и исходя из того, что им было известно о желании остальных выпить пива. Поскольку первый логик ответил: «Я не знаю», он, очевидно, сам хотел пива, но не знал, хотят ли его все остальные. Если бы он сам не хотел пива, то просто ответил бы «нет», поскольку тогда он знал бы, что пива хотят не все. Но ответить «да» лишь потому, что он сам хотел пива, тоже было бы неправильно: он ничего не знал о желаниях остальных, а вопрос состоял в том, хотят ли пива все.
Аналогичным образом мы можем заключить, что второй логик тоже хочет пива, поскольку в противном случае он ответил бы «нет». Однако он не знает, хочет ли пива третий логик. Наконец, третий логик, рассуждая точно так же, как только что рассуждали мы, понимает, что первые двое хотят пива. А поскольку он, очевидно, и сам хочет пива, то отвечает: «Да», ведь теперь он знает, что пива хотят все трое.
В этой главе мы рассмотрим целую серию занимательных задач по эпистемической логике, многие из которых приведут нас к более глубоким и серьезным вопросам этой области.
Задача о двух генералах
Начнем с классической задачи эпистемической логики, известной как задача о двух генералах. Два генерала красной армии вместе со своими войсками расположились на горах по обе стороны долины.

Они хотят согласовать совместную атаку на синюю армию, находящуюся в долине, но рельеф разделяет их, поэтому точные детали и время нападения необходимо согласовать заранее. Если оба генерала атакуют одновременно, они победят; но если кто‑то из них промедлит или пойдет в атаку один, поражение потерпят оба. При этом каналы связи между ними ненадежны и пользоваться ими трудно.
Первый красный генерал отправляет посыльного через опасную долину, занятую синей армией:
Атакуем на рассвете. Согласен?
Сообщение дошло! Второй красный генерал отвечает:
Да, на рассвете! Пожалуйста, подтверди получение.
Подтверждение необходимо, поскольку иначе второй генерал может опасаться, что первый решит, будто исходное сообщение до него не дошло. Поэтому первый генерал подтверждает:
Твое сообщение получил! К атаке на рассвете готов… при условии, что мы будем знать, что и ты получил это сообщение.
Но и это подтверждение требует подтверждения. Иначе первый генерал не будет знать, что второй получил необходимое подтверждение, а значит, отменит план. Поэтому второй красный генерал сообщает, что действительно получил его:
Получил! Значит, атакуем наверняка, как только будем знать, что ты получил это сообщение.
И так далее, снова и снова. Вопреки опасности отважным посыльным каждый раз удается добраться до места. Однако на каждом этапе генералам требуется подтверждение того, что их сообщение было получено, чтобы они могли знать, что другой генерал действительно будет действовать по плану. Иначе у них оставались бы основания опасаться, что придется атаковать в одиночку, а это чрезвычайно опасно.
Сколько подтверждений будет достаточно? Смогут ли два генерала когда‑нибудь обрести полную уверенность в согласованности своего совместного плана?
Отступление
Покажем, что на самом деле два генерала никогда не смогут обрести полную уверенность, сколько бы сообщений они ни отправили. Очевидно, первое сообщение требует подтверждения, если они хотят быть полностью уверены в согласованности плана: иначе первый генерал не может знать даже того, что второй генерал вообще узнал о плане. Столь же очевидно, что ответ на это сообщение тоже требует подтверждения, поскольку иначе второй генерал будет опасаться, что его ответ не дошел. В таком случае он заключит, что у первого генерала нет оснований считать свое исходное сообщение полученным, а значит, тот откажется от плана.
Аналогично, если после отправки n сообщений ни один из генералов еще не уверен в успехе согласования, то они не могут обрести такую уверенность и после отправки n + 1 сообщений. Дело в том, что последнее сообщение уже не получит подтверждения, а значит, уверенность должна возникнуть независимо от того, дошло это последнее сообщение или нет. Но тогда его вообще не было необходимости отправлять — с точки зрения состоявшегося обмена информацией результат был бы тем же самым. Следовательно, генералы должны были обрести уверенность уже после n сообщений, что противоречит нашему предположению. Таким образом, по индукции никакого конечного числа сообщений недостаточно.
Есть и несколько иной способ рассуждать. Предположим противное: существует некоторое конечное число сообщений, которого достаточно, чтобы генералы были уверены, что достигли согласия относительно плана совместной атаки. Пусть n — наименьшее такое число. Тогда, в частности, после обмена этими n сообщениями генералы должны обрести полную уверенность в достигнутом согласии. Но последнее сообщение уже не получит подтверждения о доставке, поэтому генералы должны были бы обрести эту уверенность независимо от того, дошло последнее сообщение или нет. А значит, последнее сообщение можно было вообще не отправлять, поскольку с точки зрения коммуникации потерянное сообщение ничем не отличается от сообщения, которое вовсе не было отправлено. Следовательно, для достижения полной уверенности генералам на самом деле достаточно n — 1 сообщений. Но это противоречит тому, что n было определено как наименьшее достаточное число сообщений.
Получаем неожиданный вывод: никакое конечное число сообщений, которыми генералы обмениваются туда и обратно, не может гарантировать им обладание всей информацией, необходимой для полной уверенности в согласованности плана совместной атаки.
Взаимное знание и общее знание
Предположим, что все мы знаем: в большом ящике в передней части аудитории находится опасный крокодил. Никто из нас не решится открыть ящик, поскольку тогда крокодил вырвется наружу и начнется хаос.

У нас есть взаимное знание — каждый из нас по отдельности знает, что в ящике находится крокодил. Однако знать это не совсем то же самое, что знать, что все остальные тоже об этом знают. Мы наверняка вели бы себя иначе, если бы не знали, что всем остальным известно о крокодиле. Например, мы могли бы опасаться, что кто‑нибудь из любопытства откроет ящик, не подозревая об опасности или не осознавая ее.
Поэтому благоразумный человек, скорее всего, во всеуслышание объявил бы, что в ящике находится опасный крокодил. Цель такого публичного объявления состояла бы в том, чтобы создать состояние общего знания об опасности — состояние, при котором мы не только все знаем, что в ящике находится крокодил, но и знаем, что все мы это знаем, и знаем, что все мы знаем, что все мы это знаем, и так далее.
Два генерала аналогичным образом пытаются — но безуспешно — достичь состояния общего знания относительно своего плана. После того как первое сообщение успешно доставлено, оба знают о плане, но этого недостаточно, поскольку первый генерал должен знать, что второй генерал знает план. Но и этого недостаточно, поскольку второй генерал должен знать, что первый генерал знает, что второй генерал знает план. По сути, мы показали, что никакого конечного числа повторений конструкции «я знаю, что ты знаешь, что…» недостаточно для возникновения общего знания.
Попробуем дать этому несколько более формальное описание. Будем говорить, что группа индивидов находится в состоянии общего знания некоторого высказывания , если каждый индивид знает
, каждый индивид знает, что каждый индивид знает
, каждый индивид знает, что каждый индивид знает, что каждый индивид знает
, и так далее для любого конечного числа таких итераций. Будем записывать
, чтобы обозначить, что индивид
знает
. В такой записи знание рассматривается как разновидность необходимости, поскольку знание обладает многими свойствами, подчиняющимися тем же логическим принципам, которые выполняются и для других понятий необходимости.
В этих обозначениях утверждение, что каждый индивид знает , записывается так:
Утверждение, что каждый индивид знает, что каждый индивид знает , записывается так:
И так далее. Состояние общего знания достигается, когда выполняются все конечные итерации:
Таким образом, состояние общего знания формально описывается этой бесконечной схемой утверждений.
Задача о двух родителях
Рассмотрим современную вариацию задачи о двух генералах, с которой мне самому довелось столкнуться. Когда мои дети были младше, моя жена обычно забирала нашу дочь Гипатию из ее школы, а я забирал нашего сына Горацио из его школы, расположенной в другом районе. Однажды из‑за других дел нам было удобнее поменяться. Поэтому я написал жене по электронной почте:
«Сегодня я заберу Гипатию, а ты забери Горацио. Пожалуйста, подтверди. Если не подтвердишь, действуем как обычно».
Она ответила мне сообщением:
«Давай! Дай мне знать, что ты получил это сообщение, чтобы я точно знала, что мы договорились».
Тогда я оставил ей голосовое сообщение:
«Хорошо, договорились поменяться… при условии, что я буду знать, что ты получила это сообщение».
А она ответила мне в личных сообщениях:
«Сообщение получила. Договорились! Но дай мне знать, что ты получил это сообщение, чтобы я могла рассчитывать на тебя».
И так далее.
Как и в задаче о двух генералах, казалось, что ни на одном этапе нашего разговора мы не могли с уверенностью знать, что у другого человека есть вся необходимая информация, позволяющая рассчитывать на то, что он действительно выполнит свою часть договоренности. Нельзя быть уверенным, что другой человек действительно прочитает электронное письмо или сообщение, и отправка такого сообщения порой может быть столь же ненадежной, как отправка конного гонца через опасную долину, занятую противником.
Очевидно, первое сообщение требовало подтверждения, а ответ на него требовал собственного подтверждения, иначе жена не могла бы знать, что я получил ее подтверждение. Затем и этот ответ требовал подтверждения, и так далее до бесконечности, в точности как и прежде.
В конце концов, несмотря на все наши сообщения, мы оба поступили логично: отказались от идеи поменяться и просто забрали каждый того ребенка, которого обычно забирали, из его обычной школы.
Протоколы интернет‑коммуникации
Эти задачи могут показаться нелепыми или искусственными, но я постараюсь убедить вас, что это не так. Дело в том, что, по сути, те же самые проблемы возникают при разработке протоколов обмена данными в интернете. Например, когда вы нажимаете на ссылку на веб‑странице, ваш компьютер должен связаться с другими компьютерами так, чтобы они могли согласованно отправлять и получать информацию. Когда следует начать передачу видеопотока? Каким образом должна быть завершена финансовая транзакция? Ваш компьютер должен быть готов принять информацию именно в тот момент, когда другой компьютер ее отправит, и по своей сути такая коммуникация в важных отношениях сталкивается с теми же проблемами, что и задача о двух генералах. Доказательство невозможности для задачи о двух генералах показывает, что не существует протокола, который решал бы эту проблему безупречно, поэтому приходится использовать компромиссные протоколы, работающие при неполной уверенности в успешной координации. И иногда, как мы все прекрасно знаем, такие совместные операции действительно завершаются неудачей.
Приводят ли публичные объявления к общему знанию?
Ранее мы упоминали возможность достичь общего знания с помощью публичного объявления. Когда кто‑то во всеуслышание объявляет: «В ящике находится опасный крокодил», кажется, что мы все знаем не только сам этот факт, но и то, что все остальные его знают, а также то, что все знают, что все его знают, и так далее. Философы нередко рассматривают публичные объявления как средство достижения состояния общего знания.
Но действительно ли это так? На практике реальные публичные объявления, конечно, зачастую вовсе не обладают таким свойством. Нечеткое объявление в шумном метро может понять меньше половины пассажиров. Но даже если его поймут все, из этого еще не следует, что они узнают, что информацию знают все, поскольку некоторые из них вполне обоснованно могут полагать, что другие могли ее не расслышать или не понять.
Но даже в случае совершенно ясного публичного объявления, как я утверждаю, у нас все равно могут оставаться разумные сомнения в том, что все слушали внимательно, а значит, мы не сможем все знать, что все знают сообщенную информацию. И даже если ни у кого на самом деле таких сомнений не возникло, для достижения общего знания нам всем необходимо было бы знать, что ни у кого таких сомнений нет. Иначе мы не знали бы, что все знают, что все знают эту информацию. Но получаем ли мы такое знание благодаря самому публичному объявлению? Чтобы я знал, что все знают, что все знают эту информацию, мне пришлось бы знать, что никто не заметил ничего необычного, что могло бы дать ему основания думать, будто какой‑то конкретный человек не слушал объявление. Насколько мне известно, кто‑то мог заметить человека, который во время объявления сидел с закрытыми глазами, и заподозрить, что тот мог его пропустить. Сам я никого с закрытыми глазами не видел, но действительно ли я знаю, что никто другой такого человека не видел? Думаю, что нет. Даже если я слушал предельно внимательно, и даже если на самом деле все слушали предельно внимательно, могу ли я действительно знать, что каждый был достаточно внимателен, чтобы знать, что все знают, что все знают эту информацию? Думаю, что нет. А когда речь заходит о знании того, что все знают, что все знают, что все знают эту информацию, неопределенность становится еще больше.
На мой взгляд, одного лишь публичного объявления, даже совершенно ясного и очевидным образом услышанного всеми, в общем случае недостаточно, чтобы достичь этих более высоких уровней итеративного знания о знании, которые фигурируют в нашем формальном определении общего знания. Поэтому я не думаю, что общее знание можно получить настолько легко, просто воспользовавшись системой публичного оповещения. На мой взгляд, публичные объявления, как правило, не позволяют достичь полноценного общего знания.
Более того, я утверждаю, что достичь общего знания по‑настоящему трудно даже тогда, когда два человека разговаривают непосредственно друг с другом. Представьте, что мы с женой не обмениваемся сообщениями, а разговариваем по телефону или даже лично, лицом к лицу. Разве при нашей попытке скоординировать действия не возникает та же самая проблема? Я предложил бы поменяться обязанностями по тому, кто кого забирает из школы, а она согласилась бы. Но ей необходимо было бы знать, что я понял ее согласие, поэтому мне пришлось бы каким‑то образом это подтвердить, например кивком. Затем мне нужно было бы знать, что она заметила мой кивок, и так далее до бесконечности. Достигаем ли мы в действительности такого бесконечно итерированного знания о подтверждении? Думаю, что нет. Как тогда вообще возможна коммуникация, позволяющая координировать действия? Могут ли два генерала достичь необходимой согласованности действий, даже если разговаривают лицом к лицу?
Один из ответов, конечно, состоит в том, что в действительности мы никогда не достигаем идеального состояния общего знания, а довольствуемся частичным знанием. Мы можем обменяться подтверждениями лишь несколько раз или, в особенно важных случаях, повторить подтверждение еще несколько раз, после чего просто действовать, опираясь на полученное приближение к общему знанию. В большинстве ситуаций такого уровня знания вполне достаточно для наших целей.
ссылка на оригинал статьи https://habr.com/ru/articles/1074536/