представлений шахматных позиций, оценок возможных продолжений, решений о выборе конкретных продолжений и так далее. Таким образом, программа А может корректировать относительную ценность фигур по ходу партии, лучше оценивать шахматные позиции либо раньше или позже прерывать определенные изыскания. Она не “думает то же самое”, что и программа Б, она “думает лучше, а ее мысли сложнее”. (Само собой, она лишь вроде как думает. В отличие от человека она не наделена сознанием.)
Пожалуй, случай будет показательнее, если одна из программ не будет побеждать всегда. Допустим, программа А почти всегда побеждает программу Б и при этом оценивает ходы, используя другой набор принципов. В таком случае закономерность окажется еще любопытнее. Чтобы исследовать этот каузальный вопрос, нам нужно будет изучить историю тысячи разных игр, выявляя прочие закономерности. Без сомнения, их найдется много. Некоторые из них будут характерны для шахмат в принципе (например, высокая вероятность поражения программы Б в любой партии, где программе Б недостает одной ладьи), а некоторые будут специфичны для программ А и Б как конкретных шахматистов (например, склонность Б слишком рано вводить в игру ферзя). Мы выявим также стандартные закономерности шахматной стратегии, например тот факт, что, когда время программы Б истекает, она начинает исследовать оставшиеся узлы дерева игры не так внимательно, как исследует их в такой же позиции при наличии большего количества времени. Иными словами, мы обнаружим множество пояснительных закономерностей – как не допускающих исключений (в нашей серии из тысячи игр), так и статистических.
Такие различимые шахматные закономерности сразу бросаются в глаза на фоне торжества детерминизма, которое с позиции микрокаузальности представляется весьма монотонным. Со своей позиции мы наблюдаем за напряженным поединком двух шахматных программ, но при взгляде через “микроскоп” (при наблюдении за инструкциями и данными, проходящими через ЦПУ компьютера) увидим единственный детерминистический автоматон, работающий единственным доступным ему способом. Предугадать его шаги не составляет труда – достаточно изучить, в каком именно состоянии пребывает его генератор псевдослучайных чисел, а также проанализировать структуру программы и данные. В его будущем нет “настоящих” разветвлений и развилок: все “выборы”, совершаемые программами А и Б, заранее предопределены состоянием компьютера и его памяти. Казалось бы, в таком мире по-настоящему возможным нельзя считать ничего, за исключением того, что на самом деле происходит. Допустим, например, что над программой А в момент времени t нависает зловещая матовая сеть (гарантированная победа, распознать которую порой непросто), но все меняется, когда у программы Б заканчивается время и она прерывает свой поиск важного хода чуть раньше, чем необходимо. Получается, что эта матовая сеть не должна была возникнуть. (Если у нас возникают сомнения, мы можем доказать это, проведя точно такой же турнир в другой день. На том же этапе серии у программы Б снова закончится время, из-за чего ей снова придется прервать свои поиски ровно в тот же момент.)
Что же это значит? Неужели в этом модельном мире ничего нельзя предотвратить и ничего нельзя избежать? Неужели в нем нет ни нападений, ни защит, ни упущенных возможностей, ни пикировок истинной субъектности, ни подлинных возможностей? Следует признать, что наши шахматные программы, подобно насекомым и рыбам, слишком просты в качестве агентов, чтобы быть подходящими кандидатами на обладание морально значимой свободой воли, но детерминизм их мира не лишает их разноплановых талантов и способностей пользоваться имеющимися возможностями. Если мы хотим понять, что происходит в таком мире, мы можем – и должны – обсудить, как их осознанный выбор приводит к изменению обстоятельств, а также что они могут и не могут делать. Если мы хотим выявить каузальные закономерности, чтобы объяснить повторяющиеся мотивы, замеченные нами в тысяче партий, нам нужно всерьез рассмотреть позицию, в соответствии с которой в этом мире действуют два агента, А и Б, пытающиеся обыграть друг друга в шахматы.
Допустим, мы настроим турнирную программу таким образом, что при каждой победе А будет звенеть колокольчик, а при каждой победе Б – раздаваться гудок. Когда мы запустим марафон, наблюдатель, не знающий ничего о программе, заметит, что колокольчик звенит довольно часто, а гудок не раздается почти никогда. Наблюдателю захочется узнать, чем объясняется эта закономерность. Закономерность побед А над Б можно выявить и описать, не принимая интенциональную установку, но она все равно потребует объяснения. Единственным – и верным – объяснением может быть тот факт, что генерируемые А “убеждения” о том, что сделает Б, если… оказываются лучше, чем генерируемые Б “убеждения” о том, что сделает А, если… В таком случае, чтобы найти объяснение, необходимо принять интенциональную установку (см. главы 33 и 42, где приводятся примеры других каузальных связей, которые не поддаются объяснению, пока вы не принимаете интенциональную установку).
Пока все идет хорошо, но эти “решения” и “выборы” кажутся лишь вроде как решениями и выборами. Такое впечатление, что им недостает чего-то, что свойственно подлинной свободе выбора: возможности поступить иначе. Но давайте внимательнее изучим конкретный пример, ведь внешность бывает обманчива. Для этого добавим в нашу турнирную программу третью шахматную программу, программу В. Допустим, программа В лучше программ А и Б и побеждает их почти всегда. Также допустим, что первые двенадцать ходов в паре таких партий в точности повторяются и программа В выигрывает обе партии, побеждая и программу А, и программу Б, но после двенадцатого хода партии идут не совсем одинаково. По завершении партий эксперты приходят к выводу, что программа В с большой вероятностью проиграла бы, если бы 12-м ходом, последним общим ходом обеих партий, программа А или программа Б провела бы рокировку. Рокировка 12-м ходом давала ключ к победе, который не заметила ни программа А, ни программа Б.
Пожимая плечами, разработчик программы А говорит: “Программа А могла бы провести рокировку”. Разработчик программы Б добавляет: “Моя программа, программа Б, тоже могла бы провести рокировку”. Но разработчик программы А прав, а разработчик программы Б ошибается! Как такое может быть? Турнирная программа Т детерминистична, и если мы снова сыграем те же партии в точно том же самом состоянии, ни программа А, ни программа Б не проведет рокировку! Разве разработчик программы А не заблуждается? Не обязательно. Что мы пытаемся выяснить, когда спрашиваем, могла ли программа А поступить иначе? Снова и снова рассматривая в точности такой же случай, мы не получим никакой информации, но рассматривая похожие случаи, мы увидим более полную картину. Если мы выясним, что во многих подобных обстоятельствах в других партиях программа А все же продолжает процесс оценки, замечает плюсы подобных ходов и совершает их, это подтвердит убежденность разработчика, что программа А могла бы провести рокировку.
Как минимум, мы можем обнаружить, что переключение единственного бита в генераторе (псевдо) случайных чисел заставило бы программу А провести рокировку. Допустим, разработчик программы А проанализирует фактическое исполнение программы и выяснит, что в этом случае программа А перестала “думать” на мгновение раньше нужного. (Любая шахматная программа, какой бы прекрасной она ни была, вынуждена в какой-то момент принудительно прерывать свои поиски.) Программа А рассматривала возможность рокировки и начала анализировать ее исход, но время поджимало, а потому программа А обратилась к своему генератору случайных чисел, то есть, по сути, подбросила монетку, и выбрала ход, который сочла лучшим на тот момент – и этим ходом стала не рокировка. Но если бы псевдослучайным числом стала единица, а не ноль, программа А подумала бы над своим ходом немного дольше и в итоге провела бы рокировку. “Просто переключите один бит в случайном числе – и программа А победит!” – заявляет разработчик. Мы же скажем, что в таком случае просчет программы А с рокировкой оказался непредвиденным результатом неудачного обращения к генератору случайных чисел.
Когда мы обратимся к разработчику программы Б, он не сможет подобным образом подтвердить свое заявление, что программа Б могла бы провести рокировку. Программа Б действительно “знает”, что рокировка в сложившейся ситуации допустима, и, возможно, даже некоторое время “рассматривала” возможность рокировки, но выбрать рокировку в этом случае даже не собиралась. Рокировка была для нее сложным ходом – одним из тех ходов, которые в газетных шахматных задачах помечают символом “!”, – и выходила далеко за пределы ограниченных аналитических способностей программы Б. Итак, у нас есть полностью детерминистический мир – программа Т, – в котором программа А могла провести рокировку, а программа Б провести ее не могла. Разница между программами А и Б реальна и объяснима – это разница в компетентности или способностях. Можно сформулировать это очевидно парадоксальным образом:
Программа А могла провести рокировку в момент времени t, но во вселенной в момент времени t рокировки произойти не могло.
Что дает нам право так описывать ситуацию? Все просто: если мы считаем программу А отделенной от ее непосредственной среды – куда входит и генератор случайных чисел, – то не предопределено, проведет ли программа А рокировку. Это зависит от того, что, строго говоря, находится за пределами программы А. В момент времени t вселенная пребывала в таком состоянии, которое не допускало проведение рокировки программой А, но программа А в этом “не виновата”. Программа Б, напротив, провести рокировку не могла, потому что рокировка была не в ее природе. Чтобы предст