классики (Ричард Фейнман, Юрий Манин, Поль Бенев [Paul Benioff], Дэвид Дойч [David Deutsch]) – моделирование квантовых систем. Почему же эта задача не по плечу даже современным суперкомпьютерам?
Юрий Ожигов: Больше всего мы ждем от КК не ускорения задач криптографии, а решения задач моделирования в ядерной физике, энергетике, материаловедении, нанотехнологиях. Это океан проблем, к которым очень трудно подступиться.
Да, мы и с обычными алгоритмами добиваемся неплохих результатов в физике, в том числе в моделировании квантовых систем. Думаю, возможности классических суперкомпьютеров пока использованы в этой области лишь на несколько процентов. Тем не менее на классической машине смоделировать в полном объеме квантовое поведение сколько-нибудь значительного набора частиц просто невозможно, если следовать стандартному (гильбертову) формализму для многих тел.
Представьте себе электрон в трехмерном пространстве. По каждому пространственному измерению надо учитывать хотя бы сто положений. Это уже миллион точек – на один электрон. Если в системе два электрона – потребуется миллион миллионов точек. Это уже тяжело даже для суперкомпьютера. Но что такое два электрона? Всего лишь атом гелия, и то без учета движения ядра, которое ведь тоже ведет себя как квантовый объект. Даже задача моделирования атома водорода очень сложна, если ее решать со всеми подробностями – как говорят физики, «из первых принципов». Ну а для атома лития такой способ решения задачи сегодня просто безнадежен. Что уж говорить о действительно сложных молекулах – белках, ДНК.
В настоящее время нет симуляторов химических реакций, учитывающих квантовые эффекты, – а это принципиальное ограничение. В существующих моделях взаимодействия атомов и молекул фактически рассматривается совокупность шариков на пружинках, и коэффициенты упругости пружинок вычисляются с помощью неких квантовых расчетов. Квантовая механика входит в такое моделирование лишь через эти коэффициенты. Но ведь в реальности даже простейшая молекула аммиака, три атома водорода и один атом азота, обладает сложным квантовым поведением. Это вовсе не пирамидка, как ее часто изображают. Атом азота находится в двух квантовых состояниях одновременно, причем он как бы постоянно туннелирует туда и обратно сквозь тройку атомов водорода. Именно на таком поведении молекулы основан так называемый аммиачный мазер. Все это без квантовой физики смоделировать невозможно.
Не сводится ли моделирование квантовых систем на квантовом компьютере к тому, что мы просто создаем где-то «под микроскопом» точно такую же систему и начинаем за нею наблюдать?
Юрий Ожигов: Конечно, нет. При моделировании на КК мы разбиваем естественную квантовую эволюцию на элементарные операции, их выполняют стандартные квантовые гейты. Доказано, что любая задача моделирования молекул или атомов допускает такое представление, а значит, ее можно решить на КК.
Но, повторяю, создание такого КК – фундаментальная проблема физики. Она тесно связана и с математическим формализмом, и с алгоритмами. Например, в моей недавней работе рассмотрена модификация аппарата квантовой теории на основе теории алгоритмов (arXiv:quant-ph/0604055). Эти исследования только начинаются, но есть надежда, что на их основе удастся построить эффективные алгоритмы для моделирования квантовых задач на обычных компьютерах. К тому же есть все основания считать, что алгоритмы – вообще более подходящий формализм для квантовой физики, чем традиционные анализ и алгебра. Что же касается компьютеров квантовых, то для них пока найдено очень мало алгоритмов, которые были бы эффективнее своих классических аналогов. Более того, есть теоремы (в том числе и мои), показывающие, что подавляющее большинство классических алгоритмов невозможно ускорить на КК (о своих результатах в этом направлении я рассказывал еще на первой конференции НАСА по квантовому компьютингу в Палм-Спрингс в 1998 году). Но это не повод для пессимизма – уже обнаруженные квантовые алгоритмы открывают очень заманчивые перспективы.
Юрий Ожигов сразу предупредил меня, что бо’льшая часть работы, ведущейся в нашей стране по квантовым компьютерам, носит теоретический характер. Однако интереснее всего было узнать, что же делается в другой, меньшей части. Оказалось, что во ФТИАНе развиваются сразу несколько направлений исследований по квантовому харду.
Начнем с квантовой томографии – технологии точного определения квантового состояния системы.
Юрий Богданов: По квантовой томографии мы ведем совместную работу с группой Сергея Кулика из МГУ. Классический объект мы можем рассматривать с разных сторон, не разрушая его. Квантовое же состояние при однократном измерении разрушается. Поэтому надо уметь приготавливать ансамбль квантовых объектов, каждый из которых находится в одном и том же квантовом состоянии. Проведя измерения на ансамбле, можно очень точно установить, в каком квантовом состоянии находился каждый его представитель. Когда мы разрабатываем кубиты, то должны быть уверены, что можем привести их именно в то состояние, которое необходимо для выполнения квантового алгоритма.
Квантовая система существует в квантовом состоянии до тех пор, пока мы на нее не смотрим. А как только мы посмотрели (провели измерение), она схлопывается в одно из очень небольшого числа наблюдаемых состояний. Но вы говорите, что можете точно измерить как раз то состояние, которое мы не можем непосредственно наблюдать?
Юрий Богданов: Именно так. Вот пример. Предположим, мы измеряем проекцию спина электрона на вертикальную ось. Мы всегда получим одно из двух чисел: 1/2 или –1/2. Но по совокупности измерений, проводимых над ансамблем одинаково приготовленных электронов, мы можем восстановить их настоящее квантовое состояние – в данном случае два комплексных числа. При работе с фотонами мы конструируем трех-четырехуровневое состояние и с высокой точностью восстанавливаем четыре комплексных числа, которые его описывают (если уж совсем строго, мы восстанавливаем не само квантовое состояние, а его матрицу плотности, но в данном случае сути дела это не меняет).
То есть квантовые алгоритмы требуют манипуляций с кубитами в комплексном пространстве с большой точностью, и как раз это вы и делаете с помощью квантовой томографии?
Юрий Богданов: Совершенно верно. Есть общая теорема, которая гласит, что для квантовых вычислений существует универсальный набор логических элементов (гейтов, вентилей). Чтобы сделать любое квантовое вычисление, достаточно научиться произвольным образом манипулировать с одним кубитом, а также уметь выполнять одну из двух канонических операций с двумя кубитами (например, C-NOT, «контролируемое НЕ»). Для реализации любого алгоритма остается только убедиться, что мы можем с необходимой точностью выполнять эти элементарные операции.
О квантовом компьютинге «КТ» писала не раз, впервые – в теме «Игра в кубики» (#224, 1997 г.). Напомним основные принципы квантового вычисления. Квантовый компьютер (КК) – система так называемых кубитов (qubits, квантовых битов), квантовых объектов, при измерении переходящих в одно из двух базовых состояний, 0 или 1 (впрочем, теоретики, а теперь уже и экспериментаторы иногда работают с кутритами и куквартами, имеющими соответственно три или четыре базовых состояния). В процессе квантового вычисления кубиты находятся в «квантовом состоянии», образуя физическую систему, живущую по парадоксальным законам квантовой теории, – например, частицы (или другие объекты, реализующие кубиты) иногда ведут себя как единое целое, даже если никакого взаимодействия между ними нет, в этих случаях говорят о «запутанном» (entangled) состоянии системы. КК в соответствии с заданной программой управляет динамикой этого роя кубитов и оперирует не нулями и единицами, как обычный компьютер, а векторами с комплексными координатами в пространстве колоссальной размерности. Когда нужное состояние системы достигнуто (точнее, мы думаем, что оно достигнуто, – проверить это, не разрушив квантовое единство, невозможно), производится измерение, которое переводит кубиты в базовые состояния. Полученная строка привычных нулей и единиц дает ответ (правда, лишь с определенной вероятностью, которую теоретически можно сделать очень высокой).
Жгучий интерес к КК был стимулирован открытием в середине 1990-х годов нескольких алгоритмов, позволяющих (тоже теоретически; в области КК пока что почти все делается теоретически) за разумное время решать на таком устройстве безнадежные для классического компьютера задачи. Питер Шор (Peter