Светлый фон
вроде как

Пожимая плечами, разработчик программы А говорит: “Программа А могла бы провести рокировку”. Разработчик программы Б добавляет: “Моя программа, программа Б, тоже могла бы провести рокировку”. Но разработчик программы А прав, а разработчик программы Б ошибается! Как такое может быть? Турнирная программа Т детерминистична, и если мы снова сыграем те же партии в точно том же самом состоянии, ни программа А, ни программа Б не проведет рокировку! Разве разработчик программы А не заблуждается? Не обязательно. Что мы пытаемся выяснить, когда спрашиваем, могла ли программа А поступить иначе? Снова и снова рассматривая в точности такой же случай, мы не получим никакой информации, но рассматривая похожие случаи, мы увидим более полную картину. Если мы выясним, что во многих подобных обстоятельствах в других партиях программа А все же продолжает процесс оценки, замечает плюсы подобных ходов и совершает их, это подтвердит убежденность разработчика, что программа А могла бы провести рокировку.

Но разработчик программы А прав, а разработчик программы Б ошибается! точно в точности похожие продолжает

Как минимум, мы можем обнаружить, что переключение единственного бита в генераторе (псевдо) случайных чисел заставило бы программу А провести рокировку. Допустим, разработчик программы А проанализирует фактическое исполнение программы и выяснит, что в этом случае программа А перестала “думать” на мгновение раньше нужного. (Любая шахматная программа, какой бы прекрасной она ни была, вынуждена в какой-то момент принудительно прерывать свои поиски.) Программа А рассматривала возможность рокировки и начала анализировать ее исход, но время поджимало, а потому программа А обратилась к своему генератору случайных чисел, то есть, по сути, подбросила монетку, и выбрала ход, который сочла лучшим на тот момент – и этим ходом стала не рокировка. Но если бы псевдослучайным числом стала единица, а не ноль, программа А подумала бы над своим ходом немного дольше и в итоге провела бы рокировку. “Просто переключите один бит в случайном числе – и программа А победит!” – заявляет разработчик. Мы же скажем, что в таком случае просчет программы А с рокировкой оказался непредвиденным результатом неудачного обращения к генератору случайных чисел.

Когда мы обратимся к разработчику программы Б, он не сможет подобным образом подтвердить свое заявление, что программа Б могла бы провести рокировку. Программа Б действительно “знает”, что рокировка в сложившейся ситуации допустима, и, возможно, даже некоторое время “рассматривала” возможность рокировки, но выбрать рокировку в этом случае даже не собиралась. Рокировка была для нее сложным ходом – одним из тех ходов, которые в газетных шахматных задачах помечают символом “!”, – и выходила далеко за пределы ограниченных аналитических способностей программы Б. Итак, у нас есть полностью детерминистический мир – программа Т, – в котором программа А могла провести рокировку, а программа Б провести ее не могла. Разница между программами А и Б реальна и объяснима – это разница в компетентности или способностях. Можно сформулировать это очевидно парадоксальным образом: