Структура реальности
Шрифт:
Терминология
Репликатор – сущность, побуждающая определенные среды к копированию репликатора.
Ген – молекулярный репликатор. Жизнь на Земле основана на генах, которые являются цепочками ДНК (в случае некоторых вирусов – РНК).
Мем – идея, которая является репликатором, например, шутка или научная теория.
Ниша – нишей репликатора является набор всех возможных сред, в которых репликатор вызывает свою собственную репликацию. Ниша организма – это набор всех возможных сред, в которых организм может жить и размножаться, а также всех возможных образов его жизни.
Адаптация – степень адаптации репликатора к нише – это степень, в которой он вызывает репликацию себя в этой нише. В более общей формулировке сущность адаптирована к своей нише в такой степени, в какой она воплощает знание, побуждающее эту нишу сохранять это знание.
Резюме
Кажется, что научный прогресс со времен Галилея отвергал древнюю идею
Эта прямая связь между теорией эволюции и квантовой теорией, на мой взгляд, – одна из самых поразительных и неожиданных из множества связей, которые существуют между четырьмя основными нитями. Другая подобная связь – существование самостоятельной квантовой теории вычислений, лежащей в основе существующей теории вычислений. Эта связь – тема следующей главы.
9. Квантовые компьютеры
Для любого, кто не знаком с этим предметом, квантовые вычисления звучит как название новой технологии, возможно, самой новейшей в знаменитом ряду, включающем механические вычисления, вычисления на полупроводниковых транзисторах электроники и на кремниевых чипах и т. д. Причем даже существующие компьютерные технологии основываются на микроскопических квантово-механических процессах. (Конечно, все физические процессы являются квантово-механическими, но здесь я имею в виду только те, для которых классическая – т. е. неквантовая – физика дает очень неточные предсказания.) Если тенденция ко все более быстрым и все более компактным компьютерам сохранится, эта технология будет становиться все более «квантово-механической» просто потому, что квантово-механические эффекты доминируют во всех достаточно малых системах. Но если бы дело было только в этом, квантовые вычисления вряд ли могли бы фигурировать в любом фундаментальном объяснении структуры реальности, поскольку в них не было бы ничего фундаментально нового. Все современные компьютеры, какие бы квантово-механические процессы они ни использовали, – всего лишь различные технологические исполнения одной и той же классической идеи универсальной машины Тьюринга. Именно поэтому все существующие компьютеры имеют, в сущности, один и тот же репертуар вычислений: отличие состоит только в скорости, объеме памяти и устройствах ввода-вывода. Можно сказать, что даже самый непритязательный современный домашний компьютер можно запрограммировать для решения любой задачи или воспроизведения любой среды, которую могут сгенерировать наши самые мощные компьютеры, при условии установки на него дополнительной памяти, достаточно долгом времени обработки и подключении аппаратуры, подходящей для демонстрации результатов работы.
Квантовые вычисления – это нечто большее, чем просто более быстрая и миниатюрная технология реализации машины Тьюринга. Квантовый компьютер – это машина, которая использует уникальные квантово-механические эффекты, в особенности интерференцию, для выполнения совершенно новых видов вычислений, которые даже в принципе было бы невозможны выполнить ни на одной машине Тьюринга, а, следовательно, и ни на каком классическом компьютере. Таким образом, квантовые вычисления – это не что иное, как принципиально новый способ покорения природы.
Позвольте мне конкретизировать это заявление. Самыми первыми изобретениями для покорения природы были инструменты, приводимые в действие силой человеческих мускулов. Они радикально изменили условия жизни наших предков, но страдали от ограничения, которое заключалось в том, что они требовали постоянного внимания и усилий человека во время их использования. Дальнейшее развитие технологии позволило преодолеть это ограничение: люди сумели приручить некоторых животных и растения, обратив биологические адаптации этих организмов на пользу человеку. Урожай рос, а сторожевые собаки охраняли дом, пока их владельцы спали. Еще один новый вид технологии появился, когда люди начали не просто использовать существующие адаптации (и существующие небиологические явления, например, огонь), а создали совершенно новые для мира адаптации в виде керамики, кирпичей, колес, металлических изделий и машин. Чтобы сделать это, они должны были поразмыслить над законами природы, управляющими Вселенной, и понять их, включая, как я уже объяснил, не только ее поверхностные аспекты, но и лежащую в основе структуру реальности. Последовали тысячи лет развития технологий этого типа, позволивших овладеть некоторыми материалами, а также физическими силами и энергиями. В XX веке, когда изобретение компьютеров позволило осуществить сложную обработку информации вне человеческого мозга, к этому списку добавилась информация. Квантовые вычисления, которые сейчас находятся в зачаточном состоянии, – качественно новый этап этого движения. Это будет первая технология, которая позволит выполнять полезные задачи при участии параллельных вселенных. Квантовый компьютер сможет распределить составляющие сложной задачи между множеством параллельных
Я уже говорил о важности универсальности вычислений – о том, что один физически возможный компьютер может, при наличии достаточного времени и памяти, выполнить любое вычисление, доступное любому другому физически возможному компьютеру. Законы физики, как мы их сейчас понимаем, признают универсальность вычислений. Но для того, чтобы универсальность была полезной или важной в общей схеме вещей, сказанного мною недостаточно. Приведенное определение просто означает, что в конечном итоге универсальный компьютер сможет сделать то, что может сделать любой другой компьютер. Другими словами, он универсален при наличии достаточного времени. А что делать, если времени недостаточно? Представьте себе универсальный компьютер, который мог бы выполнить только одно вычислительное действие за всю жизнь Вселенной. Его универсальность по-прежнему оставалась бы глубоким свойством реальности? Вероятно, нет. Обобщая, можно раскритиковать такое узкое понятие универсальности, поскольку оно признает задачу входящей в репертуар компьютера без учета физических ресурсов, которые придется израсходовать компьютеру на выполнение этой задачи. Так, например, мы рассматривали пользователя виртуальной реальности, готового к остановке мозга на миллиарды лет, пока компьютер вычисляет, какую анимацию показывать дальше. Такое отношение вполне уместно при обсуждении пределов виртуальной реальности. Но когда мы говорим о ее полезности, или, что даже более важно, фундаментальной роли, которую она играет в структуре реальности, нам следует быть более разборчивыми. Эволюция никогда бы не произошла, если бы задача воспроизведения определенных свойств самых первых, простейших сред обитания не была легкорешаемой (т. е. вычислимой в течение разумного периода времени) при использовании в качестве компьютеров легкодоступных молекул. Точно так же никогда не началось бы развитие науки и техники, если бы для изобретения каменного инструмента понадобились тысячи лет размышлений. Более того, то, что было истиной в самом начале, остается абсолютным условием прогресса на каждом этапе. Универсальность вычислений была бы бесполезна для генов независимо от количества содержащегося в них знания, если бы воссоздание организма не было легкорешаемой задачей – скажем, если бы один репродуктивный цикл занимал миллиарды лет.
Таким образом, факт существования сложных организмов и непрерывного ряда постепенно совершенствующихся изобретений и научных теорий (таких как механика Галилея, механика Ньютона, механика Эйнштейна, квантовая механика) говорит кое-что еще о том, какого рода универсальность вычислений существует в реальности. Он говорит нам, что действительные законы физики, по крайней мере, до сих пор, поддаются последовательной аппроксимации с помощью теорий, дающих все лучшие объяснения и предсказания, и что задача открытия каждой теории при наличии предыдущей является вычислительно разрешимой на базе ранее открытых законов и ранее созданных технологий. Структура реальности должна быть (и была) многоуровневой для легкого доступа к самой себе. Подобным образом, если рассматривать саму эволюцию как вычисление, этот факт говорит нам, что существовало достаточно много жизнеспособных организмов, закодированных с помощью ДНК, что позволило организмам с более высокой степенью адаптации быть вычисленными (т. е. проэволюционировать), используя ресурсы, предоставленные их предками с меньшей степенью адаптации. Таким образом, мы можем сделать вывод, что законы физики не только предписывают свою собственную постижимость через принцип Тьюринга, но и гарантируют, что соответствующие эволюционные процессы, такие как жизнь и мышление, не являются слишком затратными по времени и требуют не слишком много ресурсов иного рода, чтобы произойти в реальности.
Итак, законы физики не только позволяют (или, как я обосновал, требуют) существование жизни и мышления, но требуют от них эффективности, в некотором определенном смысле. Для выражения этого чрезвычайно важного свойства реальности современный анализ универсальности обычно исходит из возможности существования компьютеров, универсальных даже в более строгом смысле, чем того требует сам принцип Тьюринга: универсальные генераторы виртуальной реальности не только возможны, но их можно построить так, что они не потребуют непрактично больших ресурсов для воспроизведения простых аспектов реальности. В дальнейшем, говоря об универсальности, я буду иметь в виду именно такую универсальность, если не сказано иного.
Насколько эффективно можно воспроизвести те или иные аспекты реальности? Другими словами, какие вычисления можно практически выполнить за данное время и при данных возможностях? Это основной вопрос теории вычислительной сложности, которая, как я уже сказал, занимается изучением ресурсов, необходимых для решения вычислительных задач. Теория сложности еще не объединена в достаточной степени с физикой, чтобы дать многие ответы в количественном виде. Однако она достигла немалого успеха в важном деле грубого различия вычислительных задач на легко- и труднорешаемые. Общий подход лучше всего проиллюстрировать на примере. Рассмотрим задачу умножения двух достаточно больших чисел, скажем, 4 220 851 и 2 594 209. Многие из нас помнят тот метод умножения, которому мы научились в детстве. Он включает умножение каждой цифры одного числа поочередно на каждую цифру другого, сдвиг промежуточных результатов и их сложение. Этот стандартный алгоритм позволяет получить окончательный ответ, в данном случае – 10 949 769 651 859. Вероятно, многие не захотят признать, что эта утомительная процедура делает умножение «легкой» задачей хоть в каком-то обыденном смысле этого слова. (В действительности существуют более эффективные методы умножения больших чисел, но этот весьма нагляден.) Однако с точки зрения теории сложности, которая имеет дело с трудными задачами, решаемыми компьютерами, не подверженными скуке и почти никогда не ошибающимися, этот метод определенно попадает в категорию «легких».