|
|
File
managers and best utilites |
Реферат: Квантовые компьютеры. Квантовые компьютеры реферат
Реферат Квантовый компьютерскачатьРеферат на тему: План: Введение- 1 Теория
- 1.1 Кубиты
- 1.2 Вычисление
- 1.3 Алгоритмы
- 1.4 Квантовая телепортация
- 2 Применение квантовых компьютеров
- 2.1 Специфика применения
- 2.2 Приложения к криптографии
- 3 Физические реализации квантовых компьютеров
- 4 Пример реализации операции CNOT на зарядовых состояниях электрона в квантовых точках
- 5 Примечания
Литература Введение 3 кубита квантового регистра против 3 битов обычного Квантовый компьютер — вычислительное устройство, работающее на основе квантовой механики. Квантовый компьютер принципиально отличается от классических компьютеров, работающих на основе классической механики. Полномасштабный квантовый компьютер является пока гипотетическим устройством, сама возможность построения которого связана с серьезным развитием квантовой теории в области многих частиц и сложных экспериментов; эта работа лежит на переднем крае современной физики. Ограниченные (до 10 кубитов) квантовые компьютеры уже построены; элементы квантовых компьютеров могут применяться для повышения эффективности вычислений уже на существующей приборной базе. Идея построения квантового компьютера была предложена в 1980 году советским математиком Ю.И. Маниным, который во введении (с. 15) к книге "Вычислимое и невычислимое"[1] выдвинул идею квантовых автоматов. Эту идею поддержали физики, в частности, П. Бениоф и Нобелевский лауреат Р. Фейнман). Необходимость в квантовом компьютере возникает тогда, когда мы пытаемся исследовать методами физики сложные многочастичные системы, подобные биологическим. Пространство квантовых состояний таких систем растет как экспонента от числа n составляющих их реальных частиц, что делает невозможным моделирование их поведения на классических компьютерах уже для n = 10. Поэтому Фейнман и предложил построение квантового компьютера. Квантовый компьютер использует для вычисления не обычные (классические) алгоритмы, а процессы квантовой природы, так называемые квантовые алгоритмы, использующие квантовомеханические эффекты, такие как квантовый параллелизм и квантовая запутанность. Если классический процессор в каждый момент может находиться ровно в одном из состояний , (обозначения Дирака) то квантовый процессор в каждый момент находится одновременно во всех этих базисных состояниях, при этом в каждом состоянии — со своей комплексной амплитудой λj. Это квантовое состояние называется «квантовой суперпозицией» данных классических состояний и обозначается как Базисные состояния могут иметь и более сложный вид. Тогда квантовую суперпозицию можно проиллюстрировать, например, так: "Вообразите атом, который мог бы подвергнуться радиоактивному распаду в определённый промежуток времени. Или не мог бы. Мы можем ожидать, что у этого атома есть только два возможных состояния: «распад» и «не распад», /…/ но в квантовой механике у атома может быть некое объединённое состояние — «распада — не распада», то есть ни то, ни другое, а как бы между. Вот это состояние и называется «суперпозицией»[2]. Квантовое состояние может изменяться во времени двумя принципиально различными путями: - Унитарная квантовая операция (квантовый вентиль (англ. quantum gate), в дальнейшем просто операция).
- Измерение (наблюдение).
Если классические состояния есть пространственные положения группы электронов в квантовых точках, управляемых внешним полем V то унитарная операция есть решение уравнения Шредингера для этого потенциала. Измерение есть случайная величина, принимающая значения с вероятностями | λj | 2 соответственно. В этом состоит квантово-механическое правило Борна (англ.). Измерение есть единственная возможность получения информации о квантовом состоянии, так как значения λj нам непосредственно не доступны. Измерение квантового состояния не может быть сведено к унитарной шредингеровской эволюции, так как, в отличие от последней, оно необратимо. При измерении происходит так называемый коллапс волновой функции , физическая природа которого до конца не ясна. Спонтанные вредоносные измерения состояния в ходе вычисления ведут к декогерентности, то есть отклонению от унитарной эволюции, что является главным препятствием при построении квантового компьютера (см. Физические реализации квантовых компьютеров). Квантовое вычисление есть контролируемая классическим управляющим компьютером последовательность унитарных операций простого вида (над одним, двумя или тремя кубитами). В конце вычисления состояние квантового процессора измеряется, что и дает искомый результат вычисления. Содержание понятия «квантовый параллелизм» в вычислении может быть раскрыто так: «Данные в процессе вычислений представляют собой квантовую информацию, которая по окончании процесса преобразуется в классическую путём измерения конечного состояния квантового регистра. Выигрыш в квантовых алгоритмах достигается за счёт того, что при применении одной квантовой операции большое число коэффициентов суперпозиции квантовых состояний, которые в виртуальной форме содержат классическую информацию, преобразуется одновременно»[3]. 1. Теория 1.1. Кубиты Идея квантовых вычислений, впервые высказанная Ю. И. Маниным[1][4][нет в источнике] и Р. Фейнманом[5], состоит в том, что квантовая система из L двухуровневых квантовых элементов (квантовых битов, кубитов) имеет 2L линейно независимых состояний, а значит, вследствие принципа квантовой суперпозиции, пространством состояний такого квантового регистра является 2L-мерное гильбертово пространство. Операция в квантовых вычислениях соответствует повороту вектора состояния регистра в этом пространстве. Таким образом, квантовое вычислительное устройство размером L кубит фактически задействует одновременно 2L классических состояний. Физическими системами, реализующими кубиты, могут быть любые объекты, имеющие два квантовых состояния: поляризационные состояния фотонов, электронные состояния изолированных атомов или ионов, спиновые состояния ядер атомов, и т.д. Один классический бит может находиться в одном и только в одном из состояний или . Квантовый бит, называемый кубитом, находится в состоянии , так что |a|² и |b|² — вероятности получить 0 или 1 соответственно при измерении этого состояния; ; |a|² + |b|² = 1. Сразу после измерения кубит переходит в базовое квантовое состояние, соответствующее классическому результату. Пример: Имеется кубит в квантовом состоянии В этом случае, вероятность получить при измерении 0 | составляет | (4/5)²=16/25 | = 64 %, | 1 | | (-3/5)²=9/25 | = 36 %. | В данном случае, при измерении мы получили 0 с 64 % вероятностью. В результате измерения кубит переходит в новое квантовое состояние , то есть, при следующем измерении этого кубита мы получим 0 со стопроцентной вероятностью (предполагается, что по умолчанию унитарная операция тождественна; в реальных системах это не всегда так). Приведем для объяснения два примера из квантовой механики: 1) фотон находится в состоянии суперпозиции двух поляризаций. Это состояние есть вектор в двумерной плоскости, систему координат в которой можно представлять как две перпендикулярные оси, так что a и b есть проекции на эти оси; измерение раз и навсегда коллапсирует состояние фотона в одно из состояний или , причем вероятность коллапса равна квадрату соответствующей проекции. Полная вероятность получается по теореме Пифагора. Перейдем к системе из двух кубитов. Измерение каждого из них может дать 0 или 1. Поэтому у системы есть 4 классических состояния: 00, 01, 10 и 11. Аналогичные им базовые квантовые состояния: . И наконец, общее квантовое состояние системы имеет вид . Теперь |a|² — вероятность измерить 00 и т. д. Отметим, что |a|²+|b|²+|c|²+|d|²=1 как полная вероятность. Если мы измерим только первый кубит квантовой системы, находящейся в состоянии , у нас получится: - С вероятностью p0 = | a | 2 + | b | 2 первый кубит перейдет в состояние а второй — в состояние , а
- С вероятностью p1 = | c | 2 + | d | 2 первый кубит перейдет в состояние а второй — в состояние .
В первом случае измерение даст состояние , во втором — состояние Мы снова видим, что результат такого измерения невозможно записать как вектор в гильбертовом пространстве состояний. Такое состояние, в котором участвует наше незнание о том, какой же результат получится на первом кубите, называют смешанным состоянием. В нашем случае такое смешанное состояние называют проекцией исходного состояния на второй кубит, и записывают в виде матрицы плотности вида где матрица плотности состояния определяется как . В общем случае системы из L кубитов, у неё 2L классических состояний (00000…(L-нулей), …00001(L-цифр), … , 11111…(L-единиц)), каждое из которых может быть измерено с вероятностями 0—100 %. Таким образом, одна операция над группой кубитов затрагивает все значения, которые она может принимать, в отличие от классического бита. Это и обеспечивает беспрецедентный параллелизм вычислений. 1.2. Вычисление Упрощённая схема вычисления на квантовом компьютере выглядит так: берется система кубитов, на которой записывается начальное состояние. Затем состояние системы или её подсистем изменяется посредством унитарных преобразований, выполняющих те или иные логические операции. В конце измеряется значение, и это результат работы компьютера. Роль проводов классического компьютера играют кубиты, а роль логических блоков классического компьютера играют унитарные преобразования. Такая концепция квантового процессора и кванотовых логических вентилей была предложена в 1989 году Д. Дейчем. Также Д. Дейч в 1995 году нашёл универсальный логический блок, с помощью которого можно выполнять любые квантовые вычисления. Оказывается, что для построения любого вычисления достаточно двух базовых операций. Квантовая система дает результат, только с некоторой вероятностью являющийся правильным. Но за счет небольшого увеличения операций в алгоритме можно сколь угодно приблизить вероятность получения правильного результата к единице. С помощью базовых квантовых операций можно симулировать работу обычных логических элементов, из которых сделаны обычные компьютеры. Поэтому любую задачу, которая решена сейчас, квантовый компьютер решит, и почти за такое же время. Следовательно, новая схема вычислений будет не слабее нынешней. Чем же квантовый компьютер лучше классического? Большая часть современных ЭВМ работают по такой же схеме: n бит памяти хранят состояние и каждый такт времени изменяются процессором. В квантовом случае система из n кубитов находится в состоянии, являющимся суперпозицией всех базовых состояний, поэтому изменение системы касается всех 2n базовых состояний одновременно. Теоретически новая схема может работать намного (в экспоненциальное число раз) быстрее классической. Практически (квантовый) алгоритм Гровера поиска в базе данных показывает квадратичный прирост мощности против классических алгоритмов 1.3. Алгоритмы Главная статья Квантовый алгоритм - Алгоритм Гровера позволяет найти решение уравнения за время .
- Алгоритм Шора позволяет разложить натуральное число n на простые множители за полиномиальное от log(n) время.
- Алгоритм Залки — Визнера позволяет моделировать унитарную эволюцию квантовой системы системы n частиц за почти линейное время с использованием O(n) кубит.
- Алгоритм Дойча — Джоза позволяет «за одно вычисление» определить, является ли функция двоичной переменной f(n) постоянной (f1(n) = 0, f2(n) = 1 независимо от n) или «сбалансированной» (f3(0) = 0, f3(1) = 1; f4(0) = 1, f4(1) = 0).
Было показано, что не для всякого алгоритма возможно «квантовое ускорение». Более того, возможность получения квантового ускорения для произвольного классического алгоритма является большой редкостью [6]. 1.4. Квантовая телепортация Алгоритм телепортации реализует точный перенос состояния одного кубита (или системы) на другой. В простейшей схеме используются 4 кубита: источник, приёмник и два вспомогательных. Отметим, что в результате работы алгоритма первоначальное состояние источника разрушится — это пример действия общего принципа невозможности клонирования — невозможно создать точную копию квантового состояния, не разрушив оригинал. На самом деле, довольно легко создать одинаковые состояния на кубитах. К примеру, измерив 3 кубита, мы переведем каждый из них в базовые состояния (0 или 1) и хотя бы на двух из них они совпадут. Не получится скопировать произвольное состояние, и телепортация — замена этой операции. Телепортация позволяет передавать квантовое состояние системы с помощью обычных классических каналов связи. Таким образом, можно, в частности, получить связанное состояние системы, состоящей из подсистем, удаленных на большое расстояние. 2. Применение квантовых компьютеров 2.1. Специфика применения Может показаться, что квантовый компьютер — это разновидность аналоговой вычислительной машины. Но это не так: по своей сути это цифровое устройство, но с аналоговой природой. Основные проблемы, связанные с созданием и применением квантовых компьютеров: - необходимо обеспечить высокую точность измерений;
- внешние воздействия могут разрушить квантовую систему или внести в неё искажения.
2.2. Приложения к криптографии Благодаря огромной скорости разложения на простые множители, квантовый компьютер позволит расшифровывать сообщения, зашифрованные при помощи популярного асимметричного криптографического алгоритма RSA. До сих пор этот алгоритм считается сравнительно надёжным, так как эффективный способ разложения чисел на простые множители для классического компьютера в настоящее время неизвестен. Для того, например, чтобы получить доступ к кредитной карте, нужно разложить на два простых множителя число длиной в сотни цифр. Даже для самых быстрых современных компьютеров выполнение этой задачи заняло больше бы времени, чем возраст Вселенной, в сотни раз. Благодаря алгоритму Шора эта задача становится вполне осуществимой, если квантовый компьютер будет построен. Применение идей квантовой механики уже открыли новую эпоху в области криптографии, так как методы квантовой криптографии открывают новые возможности в области передачи сообщений[7]. Прототипы систем подобного рода находятся на стадии разработки[8]. 3. Физические реализации квантовых компьютеров Построение квантового компьютера в виде реального физического прибора является фундаментальной задачей физики XXI века. В настоящее время построены только ограниченные его варианты (в пределах 10 кубит). Вопрос о том, до какой степени возможно масштабирование такого устройства, является предметом новой интенсивно развивающейся области — многочастичной квантовой механики. Центральным здесь является вопрос о природе декогерентности (точнее, о коллапсе волновой функции), который пока остается открытым. Различные трактовки этого процесса можно найти в книгах [9], [10], [11]. 3.1. История На рубеже 21 века во многих научных лабораториях были созданы однокубитные квантовые процессоры (по существу, управляемые двухуровневые системы, о которых можно было предполагать возможность масштабирования на много кубитов). Очень скоро был реализован жидкостной ЯМР — квантовый компьютер (до 7 кубит, IBM, И. Чанг)[источник?]. В 2005 году группой Ю. Пашкина (NEC, Япония) был построен двухкубитый квантовый процессор на сверхпроводящих элементах[источник?]. Примерно в это время до десятка кубит было сделано на ионах в ловушках Пауля (Д. Винланд, П. Золлер, Р. Блатт)[источник?]. В России разработкой вопросов физической реализации квантового компьютера занимается ряд исследовательских групп, ядро которых составляет школа академика К. А. Валиева: Физико-технологический институт РАН (лаборатория ФКК), МГУ (ф-т ВМК, кафедра КИ, физический ф-т, кафедра КЭ), МФТИ, МИФИ, МИЭТ, КГУ, ЯрГУ, а также ряд сотрудников институтов РАН (ИТФ, ИФТТ и др.) и вузов [источник?]. Главные технологии для квантового компьютера: - Твердотельные квантовые точки на полупроводниках: в качестве логических кубитов используются либо зарядовые состояния (нахождение или отсутствие электрона в определенной точке) либо направление электронного и/или ядерного спина в данной квантовой точке. Управление через внешние потенциалы или лазерным импульсом.
- Сверхпроводящие элементы (джозефсоновские переходы, сквиды и др.). В качестве логических кубитов используются присутствие/отсутствие куперовской пары в определенной пространственной области. Управление: внешний потенциал/магнитный поток.
- Ионы в вакуумных ловушках Пауля (или атомы в оптических ловушках). В качестве логических кубитов используются основное/возбужденное состояния внешнего электрона в ионе. Управление: классические лазерные импульсы вдоль оси ловушки или направленные на индивидуальные ионы + колебательные моды ионного ансамбля.
- Смешанные технологии: использование заранее приготовленных запутанных состояний фотонов для управления атомными ансамблями или для как элементы управления классическими вычислительными сетями.
В ноябре 2009 года физикам из Национального института стандартов и технологий в США впервые удалось собрать программируемый квантовый компьютер, состоящий из двух кубит[12]. 4. Пример реализации операции CNOT на зарядовых состояниях электрона в квантовых точках Один кубит можно представить в виде электрона в двух ямном потенциале, так что означает нахождение его в левой яме, а — в правой. Это называется кубит на зарядовых состояниях. Общий вид квантового состояния такого электрона: . Зависимость его от времени есть зависимость от времени амплитуд ; она задается уравнением Шредингера вида где гамильтониан H имеет в силу одинакового вида ям и эрмитовости вид для некоторой константы a, так что вектор есть собственный вектор этого гамильтониана с собственным значением 0 (так называемое основное состояние), а — собственный вектор со значением 2a (первое возбужденное состояние). Никаких других собственных состояний (с определенным значением энергии) здесь нет, так как наша задача двумерная. Поскольку каждое состояние переходит за время t в состояние , то для реализации операции NOT (перехода и наоборот достаточно просто подождать время t = πh / 2a. То есть гейт NOT дается просто естественной квантовой эволюцией нашего кубита при условии, что внешний потенциал задает двух ямную структуру; это делается с помощью технологии квантовых точек. Для реализации CNOT надо расположить два кубита (то есть две пары ям) перпендикулярно друг другу, и в каждой из них расположить по отдельному электрону. Тогда константа a для первой (управляемой) пары ям будет зависеть от того, в каком состоянии находится электрон во второй (управляющей) паре ям: если ближе к первой, a будет больше, если дальше — меньше. Поэтому состояние электрона во второй паре определяет время совершения NOT в первой яме, что позволяет снова выбрать нужную длительность времени для производства операции CNOT. Эта схема очень приблизительная и идеализирована; реальные схемы сложнее и их реализация представляет вызов экспериментальной физике. 4.1. Заявление D-Wave Канадская компания D-Wave заявила в феврале 2007 года о создании образца квантового компьютера, состоящего из 16 кубит (устройство получило название Orion[13]). Информация об этом устройстве не отвечала требованиям достоверного научного сообщения, поэтому новость не получила научного признания. Более того, дальнейшие планы компании — создать уже в ближайшем будущем 1024-кубитный компьютер — вызвали скепсис у членов экспертного сообщества[14]. В ноябре 2007 года та же компания D-Wave продемонстрировала работу образца 28-кубитного компьютера (устройство получило название Leda) онлайн на конференции, посвященной суперкомпьютерам[15]. Данная демонстрация также вызвала скепсис. В январе 2008 года компания привлекла 17 млн долларов США от международных инвесторов на поддержание своей деятельности — англ. product development, operations and business development activity.[16] В декабре 2008 года компания организовала проект распределенных вычислений AQUA@home (Adiabatic QUantum Algorithms) [17], в котором тестируются алгоритмы, оптимизирующие вычисления на адиабатических сверхпроводящих квантовых компьютерах D-Wave. 8 декабря 2009 года на конференции NIPS (англ.) научный сотрудник Google Hartmut Neven (англ.) продемонстрировал на компьютере D-Wave работу программы распознавания образов.[18] Более подробно о компании D-Wave Systems Inc., проводящихся в ней исследованиях и последних результатах можно узнать в блоге сооснователя компании Geordie Rose.[19] 11 мая 2011 года представлен компьютер D-Wave One, созданный на базе 128-кубитного процессора. [20] 5. Примечания - ↑ 12 Ю.И. Манин Вычислимое и невычислимое. М., Советское радио, 1980, Введение, с. 15
- Quantum entanglement - www.quantumlah.org/content/view/40/60/
- Холево, А. КВАНТОВАЯ ИНФОРМАТИКА: ПРОШЛОЕ, НАСТОЯЩЕЕ, БУДУЩЕЕ // В МИРЕ НАУКИ. — июль 2008. — № 7 - www.sciam.ru/2008/7/inform.shtml
- Пространство свободы — Журнал «Компьютерра» - www.computerra.ru/offline/2001/379/6780/
- Feynman, R.P. Simulating physics with computers // International Journal of Theoretical Physics. — 1982. — V. 21. — Number 6. — P. 467—488 [1] - www.springerlink.com/content/t2x8115127841630/
- Ozhigov Y. Quantum Computers Speed Up Classical with Probability Zero // Chaos Solitons and Fractals, 10 (1999) 1707—1714 [2] - xxx.lanl.gov/PS_cache/quant-ph/pdf/9803/9803064v1.pdf
- Валиев, К. А. Квантовая информатика: компьютеры, связь и криптография // Вестник российской академии наук. — 2000. — Том 70. — № 8. — С. 688—695 - vivovoco.rsl.ru/VV/JOURNAL/VRAN/QUBIT/QUBIT.HTM
- Созданы прототипы квантовых компьютеров - www.lenta.ru/news/2007/09/14/shor
- Р. Пенроуз, Путь к Реальности [3] - burnlib.com/x/r-penrouz-put-k-real-nosti-ili-zakony-upravlyayushie-vselennoiy/
- X.Бройер, Ф.Петруччионе, Теория открытых квантовых систем [4] - books.marketdigest.ru/offer_5470824o.html
- Ю. И. Ожигов, Конструктивная физика [5] - www.rcd.ru/details/1292
- First universal programmable quantum computer unveiled - www.newscientist.com/article/dn18154-first-universal-programmable-quantum-computer-unveiled.html
- D-Wave Orion: первый квантовый компьютер - www.thg.ru/cpu/d-wave_orion/index.html
- D-Wave восхитила журналистов и возмутила ученых - offline.computerra.ru/2007/677/310169/
- Сайт компании D-Wave - www.dwavesys.com/index.php?mact=News,cntnt01,detail,0&cntnt01articleid=9&cntnt01origid=15&cntnt01returnid=21
- D-Wave Systems: News, 31.01.2008 - www.dwavesys.com/index.php?mact=News,cntnt01,detail,0&cntnt01articleid=10&cntnt01returnid=21
- Сайт AQUA@home - aqua.dwavesys.com/
- Google: Machine Learning with Quantum Algorithms - googleresearch.blogspot.com/2009/12/machine-learning-with-quantum.html (англ.)
- D-Wave Systems: rose.blog - dwave.wordpress.com/ (англ.)
- D-Wave Systems: official site - www.dwavesys.com/en/products-services.html/ (англ.)
Литература 7.1. Статьи - Опенов Л.А. Спиновые логические вентили на основе квантовых точек // Соросовский образовательный журнал, 2000, т. 6, № 3, с. 93-98;
- G. Brassard, I. Chuang, S. Lloyd, C. Monroe. Quantum computing - www.pnas.org/content/95/19/11032.full // PNAS. — 1998. — Vol. 95. — P. 11032—11033.
- Килин С. Я. Квантовая информация - ufn.ru/ru/articles/1999/5/b/ // УФН. — 1999. — Т. 169. — C. 507—527.
- Валиев К. А. Квантовые компьютеры: можно ли их сделать «большими»? - ufn.ru/ru/articles/1999/6/i/ // УФН. — 1999. — Т. 169. — C. 691—694.
- A. M. Steane, E. G. Rieffel. Beyond Bits: The Future of Quantum Information Processing - www.fxpal.com/?p=abstract&abstractID=50 // IEEE Computer. — January 2000. — P. 38—45.
- Kilin S.Ya. Quanta and information // Progress in optics. — 2001. — Vol. 42. — P. 1-90.
- Валиев К. А. Квантовые компьютеры и квантовые вычисления - ufn.ru/ru/articles/2005/1/a // УФН. — 2005. — Т. 175. — C. 3—39.
- T. D. Ladd, F. Jelezko, R. Laflamme, Y. Nakamura, C. Monroe, J. L. O’Brien. Quantum Computing - arxiv.org/abs/1009.2267 // Nature. — 2010. — Vol. 464. — P. 45—53.
7.1.2. Книги - Дойч Д. Структура реальности. - Ижевск НИЦ "Регулярная и хаотическая динамика", 2001, 400 с.
- Квантовые вычисления за и против - books.prometey.org/download/15288.html / Под ред. Садовничего В. А.
- Квантовый компьютер и квантовые вычисления - books.prometey.org/download/15289.html / Под ред. Садовничего В. А.
- Валиев К. А., Кокин А. А. компьютеры: надежды и реальность. - proklondike.com/var/books/Other/Valiev_Kokin_-_Kvantovie_komputeri.rar Квантовые — М.—Ижевск: Регулярная и хаотическая динамика, 2004. — 320 с. ISBN 5-93972-024-2
- Китаев А., Шень А., Вялый М. Классические и квантовые вычисления
- Ожигов Ю. И. Квантовые вычисления. - qi.cs.msu.su/ru/library/ozhigov.pdf
- Ожигов Ю. И. Конструктивная физика. - www.rcd.ru/details/1292
wreferat.baza-referat.ru Реферат: Квантовые компьютеры | МИНИСТЕРСТВО ОБЩЕГО И ПРОФЕССИОНАЛЬНОГО ОБРАЗОВАНИЯ РФ АСТРАХАНСКИЙ ГОСУДАРСТВЕННЫЙ ПЕДАГОГИЧЕСКИЙ УНИВЕРСИТЕТ кафедра теоретической физики РЕФЕРАТ на тему: «Квантовые компьютеры» Выполнил: студент 154 группы ФМФ Безниско Евгений. Руководитель: к.ф.-м.н., доцент Джалмухамбетов А.У. Астрахань – 2000 г. Предпосылки создания квантовых компьютеров. Уже сейчас существует множество систем, в работе которых квантовые эффекты играют существенную роль. Одним из наиболее известных примеров может служить лазер: поле его излучения порождается квантово-механическими событиями - спонтанным и индуцированным излучением света. Другим важным примером таких систем являются современные микросхемы - непрерывное ужесточение проектных норм приводит к тому, что квантовые эффекты начинают играть в их поведении существенную роль. В диодах Ганна возникают осцилляции электронных токов, в полупроводниках образуются слоистые структуры: электроны или дырки в различных запертых состояниях могут хранить информацию, а один или несколько электронов могут быть заперты в так называемых квантовых ямах. Сейчас ведутся разработки нового класса квантовых устройств - квантовых компьютеров. Идея квантового компьютера возникла так. Все началось в 1982 году, когда Фейнман написал очень интересную статью [1], в которой рассмотрел два вопроса. Он подошел к процессу вычисления как физик: есть чисто логические ограничения на то, что можно вычислить (можно придумать задачу, для которой вообще нет алгоритма, можно придумать задачу, для которой любой алгоритм будет долго работать). А есть ли ограничения физические? Вот есть закон сохранения энергии - вечный двигатель невозможен; а есть ли какое-нибудь физическое ограничение на функционирование компьютера, которое накладывает некие запреты на реализуемость алгоритмов? И Фейнман показал, что термодинамических ограничений, типа второго начала термодинамики, нет. Если мы будем уменьшать потери энергии, шумы, то мы можем сделать сколь угодно длинные вычисления со сколь угодно малыми затратами энергии. Это означает, что вычисления можно сделать обратимым образом - потому что в необратимых процессах энтропия возрастает. Собственно, Фейнмана это и заинтересовало: ведь реальное вычисление на реальном компьютере необратимо. И полученный им результат состоит в том, что можно так переделать любое вычисление - без особой потери эффективности, - чтобы оно стало обратимым. Те вычисления, которые делаются «просто так», конечно, необратимы, но «рост необратимости» пренебрежимо мал по сравнению, скажем, с шумами в современном компьютере. То есть необратимость - это тонкий эффект; тут вопрос не практический а принципиальный: если представить себе, что технология дойдет до такого уровня, что этот эффект станет существенным, то можно так перестроить вычисления, чтобы добиться обратимости. И в этой же работе Фейнман обратил внимание на то, что если у нас имеется устройство квантовое , то есть подчиняющееся законам квантовой механики, то его вычислительные возможности совершенно не обязательно должны совпадать с возможностями обычного устройства. Возникают некоторые дополнительные возможности. Но пока непонятно, позволяют они получить какой-то выигрыш или нет. Фактически, он и поставил своей статьей такой вопрос. Кстати, Ю.И. Манин в конце семидесятых годов написал две популярные книжки по логике - «Вычислимое и невычислимое» и «Доказуемое и недоказуемое», и в одной из них есть сюжет про квантовые автоматы, где он говорит о некоторых кардинальных отличиях этих автоматов от классических [2]. В середине восьмидесятых годов появились работы Дойча (D. Deutsch), Бернстайна и Вазирани (Е. Bernstein, U. Vazirani), Яo (A. Уао). В них были построены формальные модели квантового компьютера - например, квантовая машина Тьюринга [3-6]. Следующий этап - статья Шора (Р.W. Shor) 1994 года [7],вызвавшая лавинообразный рост числа публикаций о квантовых вычислениях. Шор построил квантовый (то есть реализуемый на квантовом компьютере) алгоритм факторизации (разложения целых чисел на множители - используется в том числе для вскрытия зашифрованных сообщений). Все известные алгоритмы для обычного компьютера- экспоненциальные (время их работы растет как экспонента от числа знаков в записи факторизуемого числа). Факторизация 129-разрядного числа потребовала 500 MIPS-лет, или восемь месяцев непрерывной работы системы из 1600 рабочих станций, объединенных через Интернет.А при числе разрядов порядка 300 это время существенно превзойдет возраст Вселенной- даже если работать одновременно на всех существующих в мире машинах. Считается (хотя это и не доказано!), что быстрого алгоритма решения этой задачи не существует. Более того, гарантией надежности большинства существующих шифров является именно сложность решения задачи факторизации или одной из родственных ей теоретико-числовых задач, например - дискретного логарифма. И вдруг выясняется, что на квантовом компьютере эта задача имеет всего лишь кубическую сложность! Перед квантовым компьютером классические банковские, военные и другие шифры мгновенно теряют всякую ценность. Короче говоря, работа Шора показала, что вся эта изысканная академическая деятельность непосредственно касается такой первобытной стихии, какденьги. После этого и началась настоящая популярность... Впрочем, выясняется, что не только классическая, но и квантовая криптография (наука о шифровании сообщений) часто не способна противостоять квантовой криптоаналитике (науке о расшифровке). Некоторые важные криптографические протоколы, такие как «подбрасывание монеты по телефону», рушатся при переходе к квантовым вычислениям. Точнее, гарантией их надежности является отныне не сложность тех или иных алгоритмов, а сложность задачи создания квантового компьютера. Таким образом возникает новая отрасль вычислений – квантовые вычисления. Квантовые вычисления (КВ) - это, как можно догадаться, вычисления на квантовом компьютере. Квантовых компьютеров на свете пока нет. Более того, до сих пор неясно, когда появятся практически полезные конструкции и появятся ли вообще. Тем не менее, квантовые вычисления - предмет, чрезвычайно модный сейчас в математике и физике, как теоретической, так и экспериментальной, и занимается им довольно много людей. Судя по всему, именно интерес стимулировал первопроходцев - Ричарда Фейнмана, написавшего пионерскую работу,в которой ставился вопрос о вычислительных возможностях устройств на квантовых элементах;ДэвидаДойча, формализовавшего этот вопрос в рамках современной теории вычислений; и Питера Шора, придумавшего первый нетривиальный квантовый алгоритм. Типы квантовых компьютеров. Строго говоря, можно выделить два типа квантовых компьютеров. И те, и другие основаны на квантовых явлениях, только разного порядка. Представителями первого типа являются, например, компьютеры, в основе которых лежит квантование магнитного потока на нарушениях сверхпроводимости - Джозефсоновских переходах. На эффекте Джозефсона уже сейчас делают линейные усилители, аналого-цифровые преобразователи, СКВИДы и корреляторы. Известен проект создания RISC-процессора на RSFQ-логике (Rapid Single Flux Quantum). Эта же элементная база используется в проекте создания петафлопного (1015 оп./с) компьютера. Экспериментально достигнута тактовая частота 370 ГГц, которая в перспективе может быть доведена до 700 ГГц. Однако время расфазировки волновых функций в этих устройствах сопоставимо со временем переключения отдельных вентилей, и фактически на новых, квантовых принципах реализуется уже привычная нам элементная база - триггеры, регистры и другие логические элементы. Другой тип квантовых компьютеров, называемых еще квантовыми когерентными компьютерами, требует поддержания когерентности волновых функций используемых кубитов втечение всего времени вычислений - от начала и до конца (кубитом может быть любая квантомеханическая система с двумя выделенными энергетическими уровнями). В результате, для некоторых задач вычислительная мощность когерентных квантовыхкомпьютеров пропорциональна 2N , где N - число кубитов в компьютере. Именно последний тип устройств имеется в виду, когда говорят о квантовых компьютерах. Математические основы функционирования квантовых компьютеров. Классический компьютер состоит, грубо говоря, из некоторого числа битов, с которыми можно выполнять арифметические операции. Основным элементом квантового компьютера (КК) являются квантовые биты, или кубиты (от Quantum Bit, qubit). Обычный бит - это классическая система, у которой есть только два возможных состояния. Можно сказать, что пространство состояний бита - это множество из двух элементов, например, из нуля и единицы. Кубит же - это квантовая система с двумя возможными состояниями. Имеется ряд примеров таких квантовых систем: электрон, у которого спин может быть равен либо +1/2 либо –1/2, атомы в кристаллической решетке при некоторых условиях. Но, поскольку система квантовая, ее пространство состояний будет несравненно богаче. Математическикубит - это двумерное комплексное пространство. В такой системе можно выполнятьунитарные преобразования пространства состояний системы. С точки зрения геометрии такие преобразования - прямой аналог вращении и симметрий обычного трехмерного пространства. Согласно принципу суперпозиции вы можете складывать состояния, вычитать их, умножать на комплексные числа. Эти состояния образуют фазовые пространства. При объединении двух систем полученное фазовое пространство будет их тензорным произведением. Эволюция системы в фазовом пространстве описывается унитарными преобразованиями фазового пространства. Так вот, в квантовом компьютере аналогичная ситуация. Он тоже работает с нулями и единицами. Но его функциональные элементы реализуют действия прямо в фазовом пространстве некоторой квантовой системы - при помощи унитарных преобразований этого пространства. Конечно, унитарные преобразования не могут быть произвольными - они должны удовлетворять некоторым естественным ограничениям. Например, в случае обычной логики достаточно иметь три операции: конъюнкция, дизъюнкция, отрицание. Все можно реализовать, используя только эти три операции. Точно так же и в квантовом случае есть некоторый набор операторов, действующих только на три бита, с помощью которых можно все реализовать. Там есть даже более тонкие результаты: можно ограничиться классическими операторами на нескольких битах, а квантовые операторы будут действовать только на один бит. То есть классический набор операций {конъюнкция, дизъюнкция, отрицание} можно заменить на такой: {конъюнкция, дизъюнкция, квантовое отрицание}, где квантовое отрицание - это произвольное унитарное преобразование одного кубита. Фазовое пространство КК есть тензорное произведение кубитов. Если в каждом кубите фиксирован базис (он будет состоять из двух векторов), то фазовое пространство - это комплексное линейное пространство, базис которого индексирован словами из нулей и единиц. Таким способом двоичное слово на входе определяет базисный вектор. Итак, вход - двоичное слово, определяющее один из базисных векторов. Сам же алгоритм - предписанная последовательность элементарных операторов. Применяем эту последовательность к вектору на входе, в результате получаем некоторый вектор на выходе. Так вот, согласно квантовой механике (КМ), пока система эволюционирует под действием наших унитарных операторов, мы не можем сказать, в каком именно классическом состоянии она находится. То есть она находится в каком-то квантовом состоянии, но измеряем-то мы, когда общаемся с системой, все равно какие-то классические значения. Как это понимается в КМ? В фазовом пространстве фиксируется некоторый базис, и вектор состояния разлагается по этому базису. Это математическая формализация процедуры измерения в КМ. То есть если мы имеем дело с системой, у которой «то ли спин влево, то ли спин вправо», и если мы все-таки посмотрим, какой спин, то мы получим одно из двух в любом случае. А вот вероятности того, что мы получим тот или другой результат, - это как раз квадраты модуля коэффициентов разложения. КМ утверждает, что точно предсказать результат измерения нельзя, но вероятности возможных результатов вычислить можно. Вероятность возникает в процессе измерения. А пока система живет, для нас существенно, что там есть сам этот вектор. Другими словами, существенно, что система «находится одновременно во всех возможных состояниях». Как пишут многие авторы популярных введений в KB, возникает совершенно чудовищный параллелизм вычислении: к примеру, в случае нашей системы из двух кубитов мы как бы оперируем одновременно со всеми возможными ее состояниями: 00, 01, 11, 10. Чтобы интерпретировать ответ, надо заранее условиться, что какой-то бит - допустим, первый - это бит ответа. Пусть алгоритм проработал, у нас получился какой-то вектор, не обязательно базисный. Тогда мы можем сказать, что первый бит с некоторой вероятностью равен 1. И требование к алгоритму такое: если ответ «да», то вероятность того, что первый бит равен 1, должна быть больше двух третей. А если ответ «нет», вероятность того, что будет ноль, должна быть тоже больше двух третей. Задачи, реализуемые на КВ. Известно два примера нетривиальных задач, в которых KB дают радикальный выигрыш. Первый из них - задача разложения целых чисел на простые множители и, как следствие, вычисления дискретного логарифма (ДЛ). Дальше речь пойдет именно о ДЛ. Пусть у нас есть поле вычетов по модулю простого числа. В нем есть первообразные корни - такие вычеты, чьи степени порождают все ненулевые элементы. Если задан такой корень и задана степень, то возвести в степень можно быстро (например, сначала возводим в квадрат, потом получаем четвертую степень, и т. д.) Дискретный логарифм - это обратная задача. Дан первообразный корень и какой-то элемент поля; найти, в какую степень нужно возвести этот корень, чтобы получить данный элемент. Вот эта задача уже считается сложной. Настолько сложной, что ряд современных криптографических систем основан на том предположении, что вычислить ДЛ за приемлемое время невозможно, если модуль - достаточно большое простое число. Так вот, для дискретного логарифма есть эффективный квантовый алгоритм. Его придумал Шор в конце 1994 года. После его статьи и начался взрыв публикаций по КВ. Независимо от него, Алексей Китаев из ИТФ им. Ландау построил квантовый алгоритм для этой и некоторых более общих задач [8]. Идеи у них были разные. Шор использовал примерно такую идею, она существенно квантовая: рассмотрим базис в фазовом пространстве. Он состоит из классических состояний. Но в линейном пространстве много базисов. Мы можем найти некий оператор, который эффективно строит другой базис; мы можем к нему перейти, сделать там какие-то вычисления, вернуться обратно и получить нечто совершенно отличное от того, что мы имели бы в классическом базисе. Одна из возможностей использовать квантовость состоит в том, что мы строим какой-то странный базис, в нем что-то делаем, возвращаемся обратно и интерпретируем результат. Шор именно эту идею и реализовал. Причем преобразование оказалось такое, которое и в физике, и в математике имеет принципиальное значение - дискретное преобразование Фурье. Его можно представить в виде тензорного произведения операторов, которые действуют на каждый из кубитов такой матрицей: Китаев придумал примерно следующее. Есть некоторая ячейка - основной регистр, где мы записываем наши данные нулями и единицами. И еще есть один управляющий кубит. Мы работаем так: у нас реализована процедура умножения на первообразный корень, на квадрат первообразного корня, и т. д. Управляющий кубит переводим в некоторое смешанное состояние, дальше строим такой оператор, который, в зависимости оттого, ноль или единица в этом управляющем кубите, либо применяет умножение к нашему основному регистру, либо не применяет. А потом кубит опять возвращаем в смешанное состояние. Оказывается, что это эффективный способ проделать некоторое измерение. То есть Китаев заметил, что одна из вещей, которые мы можем эффективно делать на квантовом компьютере, - это имитировать процесс квантового измерения. В данной задаче из результатов этих измерений эффективно извлекается ответ. Сам процесс вычислений, происходит так: мы все время умножаем одну и ту же ячейку на некие константы, результаты измерений записываем, а потом производим своего рода обработку результатов эксперимента - уже чисто классическими вычислениями. Вся квантовая часть заключается в том, что где-то рядом с нашим регистром находится в некоем смешанном состоянии коррелированный с ним кубит, и мы его периодически наблюдаем. Для вычисления ДЛ числа, записанного N битами, нужно потратить N 3 единиц времени. Вполне реализуемо - на КК, естественно. Но здесь надо заметить, что никто пока не доказал, что не существует столь же быстрого алгоритма для вычисления ДЛ на обычной машине. Вторая задача предложена Гровером (L. Grover) [9].Рассмотрим базу данных, содержащую 2 N записей. Мы хотим найти ровно одну запись. Имеется некая процедура определения того, нужную запись мы взяли или нет. Записи не упорядочены. С какой скоростью мы можем решить эту задачу на обычном компьютере? В худшем случае нам придется перебрать все 2 N записей - это очевидно. Оказывается, что на КК достаточно числа запросов порядка корня из числа записей – 2 N/2 . Интересная задача - создание оптимальных микросхем. Пусть есть функция, которую нужно реализовать микросхемой, и эта функция задана программой, использующей полиномиально ограниченную память. Построение нужной микросхемы с минимальным числом функциональных элементов - задача PSPACE. Поэтому появление устройств, эффективно решающих PSPACE-задачи, позволило бы единообразно проектировать оптимальные по своим показателям вычислительные устройства обычного типа. Кроме того, в PSPACE попадает большинство задач «искусственного интеллекта»: машинное обучение, распознавание образов и т.д. Так вот, точно установлено, что KB находятся где-то между обычными вероятностными вычислениями и PSPACE. Если все же окажется, что KB можно эффективно реализовать на классических вероятностных машинах, не будет смысла в физической реализации квантовых машин. Если же выяснится, что при помощи KB можно эффективно решать те или иные PSPACE-задачи, то физическая реализация КК откроет принципиально новые возможности. Есть еще одна область применения КК, где заведомо возможен радикальный выигрыш у существующих технологий. Это моделирование самих квантовых систем. Давайте посмотрим на такой вопрос: как можно эволюцию квантовой системы изучать на обычном компьютере? Это постоянно делается, так как это задача важна для химии, молекулярной биологии, физики и т.п. Но, за счет экспоненциального роста размерности при тензорном произведении, для моделирования десяти спинов вам нужно оперировать с тысячемерным пространством, сто спинов - это уже конец. А если вспомнить, что в молекуле белка десятки тысяч атомов, то... Там, правда, не всюду существенно именно квантовое моделирование, но в целом ясно, что есть очень серьезные препятствия для моделирования квантовых систем на классических компьютерах. Так что если создать вычислительное устройство, которое ведет себя квантовым образом, то по крайней мере один важный класс задач на нем есть смысл решать - можно моделировать реальные квантовые системы, возникающие в физике, химии, биологии. Проблемы создания КК. Когда начался бум вокруг квантовых вычислений, физики высказывались об этом более чем скептически. Модель квантовых вычислений не противоречит законам природы, но это еще не значит, что ее можно реализовать. К примеру, можно вспомнить создание атомного оружия и управляемый термояд. А если говорить о КК, надо отметить одну очень серьезную проблему. Дело в том, что любая физическая реализация будет приближенной. Во-первых, мы не сможем сделать прибор, который будет давать нам произвольный вектор фазового пространства. Во-вторых, работа любого устройства подвержена всяческим случайным ошибкам. А уж в квантовой системе - пролетит какой-нибудь фотон, провзаимодействует с одним из спинов, и все поменяется. Поэтому сразу возник вопрос, можно ли, хотя бы в принципе, организовать вычисления на ненадежных квантовых элементах, чтобы результат получался со сколь угодно большой достоверностью. Такая задача для обычных компьютеров решается просто - например, за счет введения дополнительных битов. В случае КК эта проблема гораздо глубже. То место, где возникает новое качество KB по сравнению с обычными вычислениями, - это как раз сцепленные состояния - линейные комбинации базисных векторов фазового пространства. У вас есть биты, но они не сами по себе живут в каких-то состояниях - это был бы просто вероятностный компьютер (компьютер, дающий тот или иной ответ с определенной вероятностью), - а они находятся в некоем смешанном состоянии, причем согласованно-смешанном. Из-за этого в КК нельзя, например, просто взять и скопировать один бит в другой! Обычная интуиция из теории алгоритмов здесь неприменима. Так что проблема надежности довольно сложна, даже на уровне чистой теории. Те люди, которые активно занимаются KB, активно ее решали и добились успеха: доказано, что, как и в классике, можно делать вычисления на элементах с заданной надежностью сколь угодно точно. Это реализовано с помощью некоего аналога кодов, исправляющих ошибки. Что касается технической стороны появляются сообщения, что создаются реальные квантовые системы с небольшим числом битов - с двумя, скажем. Экспериментальные, в железе, так сказать. Так что эксперименты есть, но пока очень далекие от реальности. Два бита - это и для классического и для квантового компьютера слишком мало! Чтобы моделировать молекулу белка, нужно порядка ста тысяч кубитов. Для ДЛ, чтобы вскрывать шифры, достаточно примерно тысячи кубитов. Задача эта возникла слишком недавно, и не исключено, что она потребует каких-то фундаментальных исследований в самой физике. Поэтому в обозримом будущем ожидать появления квантовых компьютеров не приходится. Но можно ожидать распространения через не очень долгое время квантовых криптографических систем. Квантовая криптография позволяет обмениваться сообщениями так, что враг, если попытается подслушать, сможет разве что разрушить ваше сообщение. То есть оно не дойдет до адресата, но перехватить его в принципе будет нельзя. Подобные системы, которые уже реализованы, используют световод. Универсальный КК здесь не нужен. Нужно специализированное квантовое устройство, способное выполнять только небольшой набор операций, - своего рода квантовый кодек. Физической системе, реализующей квантовый компьютер, можно предъявить пять требований: 1. Система должна состоять из точно известного числа частиц. 2. Должна быть возможность привести систему в точно известное начальное состояние. 3. Степень изоляции от внешней среды должна быть очень высока. 4. Надо уметь менять состояние системы согласно заданной последовательности унитарных преобразований ее фазового пространства. 5. Необходимо иметь возможность выполнять «сильные измерения» состояния системы (то есть такие, которые переводят ее в одно из чистых состояний). Из этих пяти задач наиболее трудными считаются третья и четвертая. От того, насколько точно они решаются, зависит точность выполнения операций. Пятая задача тоже весьма неприятна, так как измерить состояние отдельной частицы нелегко. Физические основы организации КК. Итак, что же это за тайное оружие такое - КК? Остроумная идея заключается в использовании для хранения, передачи и обработки информации существенно квантовых свойств вещества. В основном такие свойства проявляют объекты микромира: элементарные частицы, атомы, молекулы и небольшие сгустки молекул, так называемые кластеры. (Хотя, конечно, и в жизни макромира квантовая механика играет важную роль. В частности, только с ее помощью можно объяснить такое явление, как ферромагнетизм.) Одним из квантовых свойств вещества является то, что некоторые величины при измерении (наблюдении) могут принимать значения лишь из заранее определенного дискретного набора. Такой величиной, например, является проекция собственного момента импульса, или, иначе говоря, спина элементарной частицы, на любую заданную ось. Например, у электрона возможно только два значения проекции: +1/2 или –1/2 . Таким образом, количество информации, необходимое для сообщения о проекции, равно одному биту. Записав в классическую однобитную ячейку памяти определенное значение, мы именно его оттуда и прочтем, если не произойдет какой-нибудь ошибки. Классической ячейкой может послужить и спин электрона. Однако квантовая механика позволяет записать в проекции спина больше информации, чем в классике. Для описания поведения квантовых систем было введено понятие волновой функции. Существуют волновые функции, называемые собственными для какой-то конкретной измеряемой величины. В состоянии, описываемом собственной функцией, значение этой величины может быть точно предсказано до ее измерения. Именно с такими состояниями работает обычная память. Квантовая же система может находиться и в состоянии с волновой функцией, равной линейной комбинации собственных функции, соответствующих каждому из возможных значений (назовем здесь такие состояния сложными). В сложном состоянии результат измерения величины не может быть предсказан заранее. Заранее известно только, с какой вероятностью мы получим то или иное значение. В отличие от обычного компьютера, в квантовом для представления данных используются такие ячейки памяти, которые могут находиться в сложном состоянии. В нашем примере мы определили бы, что спин электрона с определенной вероятностью смотрит вверх и вниз, то есть можно сказать, что в кубит записаны сразу и 0, и 1. Количество информации, содержащееся в такой ячейке, и саму ячейку называют квантовым битом, или, сокращенно, кубитом. Согласитесь, ячейки в сложных состояниях весьма необычны для классической теории информации. Каждому возможному значению величины, представленной кубитом, соответствует вероятность, с которой это значение может быть получено при чтении. Эта вероятность равна квадрату модуля коэффициента, с которым собственная функция этого значения входит в линейную комбинацию. Именно вероятность и является информацией, записанной в кубит. Квантовую механику не случайно называют иногда волновой механикой. Дело в том, что квантово-механические волновые функции ведут себя подобно световой или какой-либо другой волне. И для волновых функций, благодаря их способности интерферировать, также может быть введено понятие когерентности. Именно это свойство используется в когерентном квантовом компьютере. Набор кубитов представляется когерентными волновыми функциями. Оказывается, что существует вполне определенный класс воздействий на квантовую систему, называемый унитарными преобразованиями, при которых не теряется записанная в кубит информация и не нарушается когерентность волновых функций кубитов. Унитарные преобразования обратимы - по результату можно восстановить исходные данные. После прохождения через квантовый процессор, использующий унитарные преобразования, волновые функции кубитов заставляют интерферировать друг с другом, наблюдая получающуюся картину и судя по ней о результате вычисления. Из-за того, что для представления информации используются кубиты, в которых записано сразу оба значения - и 0 , и 1 , в процессе вычислений происходит параллельная обработка сразу всех возможных вариантов комбинаций битов в процессорном слове. Таким образом, в КК реализуется естественный параллелизм, недоступный классическим компьютерам. За счет возможности параллельной работы с большим числом вариантов, в идеале равным 2 N (где N - число кубитов), квантовому компьютеру необходимо гораздо меньше времени для решения определенного класса задач. К ним относятся, например, задача разложения числа на простые множители или поиск в большой базе данных. Для когерентного компьютера уже предложены алгоритмы, использующие его уникальные свойства. Кроме того, предполагается использовать КК для моделирования квантовых систем, что трудно или вообще невозможно сделать на обычных компьютерах из-за нехватки мощности или по принципиальным соображениям. Все существующие на сегодняшний день обычные компьютеры, даже с параллельной обработкой информации на многих процессорах, могут быть смоделированы так называемым клеточным автоматом Тьюринга. Это существенно детерминированная и дискретная машина. С возникновением и обсуждением идей квантовых вычислений стала активно развиваться квантовая теория информации и, в частности, теория квантовых клеточных автоматов - ККА. Квантовый клеточный автомат является обобщением автомата Тьюринга для КК. Сформулирована гипотеза, гласящая, что каждая конечным образом реализуемая физическая система может быть достаточно хорошо смоделирована универсальной моделью квантовой вычислительной машины, использующей ограниченное количество ресурсов. Для одного из предложенных типов ККА теоретически уже доказано, что он подходит для такого моделирования и не противоречит квантовой теории. Пытаясь осуществить свой замысел, ученые упираются в проблему сохранения когерентности волновых функций кубитов, так как потеря когерентности хотя бы одним из кубитов разрушила бы интерференционную картину. В настоящее время основные усилия экспериментальных рабочих групп направлены на увеличение отношения времени сохранения когерентности ко времени, затрачиваемому на одну операцию (это отношение определяет число операций, которые можно успеть провести над кубитами). Главной причиной потери когерентности является связь состояний, используемых для кубитов, со степенями свободы, не участвующими в вычислениях. Например, при передаче энергии электрона в возбужденном атоме в поступательное движение всего атома. Мешает и взаимодействие с окружающей средой, например, с соседними атомами материала компьютера или магнитным полем Земли, но это не такая важная проблема. Вообще, любое воздействие на когерентную квантовую систему, которое принципиально позволяет получить информацию о каких-либо кубитах системы, разрушает их когерентность. Потеря когерентности может произойти и без обмена энергией с окружающей средой. Воздействием, нарушающим когерентность, в частности, является и проверка когерентности. При коррекции ошибок возникает своего рода замкнутый круг: для того чтобы обнаружить потерю когерентности, нужно получить информацию о кубитах, а это, в свою очередь, также нарушает когерентность. В качестве выхода предложено много специальных методов коррекции, представляющих также и большой теоретический интерес. Все они построены на избыточном кодировании. Если в области передачи информации уже созданы реально работающие системы и до коммерческих продуктов осталось лишь несколько шагов, то коммерческая реализация квантового когерентного процессора - дело будущего. К настоящему времени КК научился вычислять сумму 1+1 ! Это большое достижение, если учесть, что в виде результата он выдает именно 2 , а не 3 и не 0 . Кроме того, не следует забывать, что и первые обычные компьютеры были не особенно мощны. Сейчас ведется работа над двумя различными архитектурами процессоров: типа клеточного автомата и в виде сети логических элементов. Пока не известно о каких-либо принципиальных преимуществах одной архитектуры перед другой. Как функциональная основа для логических элементов квантового процессора более или менее успешно используется целый ряд физических явлений. Среди них - взаимодействие одиночных поляризованных фотонов или лазерного излучения с веществом или отдельными атомами, квантовые точки, ядерный магнитный резонанс и - наиболее многообещающий - объемный спиновый резонанс. Процессор, построенный на последнем принципе, в шутку называют «компьютером в чашке кофе» - из-за того, что в нем работают молекулы жидкости при комнатной температуре и атмосферном давлении. Кроме этих эффектов есть довольно хорошо развитая технология логических элементов и ячеек памяти на джозефсоновских переходах, которую можно при соответствующих условиях приспособить под когерентный процессор. Теорию, описывающую явления, лежащие в основе первого типа логических ячеек, называют квантовой электродинамикой в полости или резонаторе. Кубиты хранятся в основных и возбужденных состояниях атомов, расположенных некоторым образом на равных расстояниях в оптическом резонаторе. Для каждого атома используется отдельный лазер, приводящий его в определенное состояние с помощью короткого импульса. Взаимовлияние атомных состояний происходит посредством обмена фотонов в резонаторе. Основными причинами разрушения когерентности здесь служат спонтанное излучение и выход фотонов за пределы резонатора. В элементах на основе ионов в линейных ловушках кубиты хранятся в виде внутренних состояний пойманных ионов. Для управления логикой и для манипулирования отдельными кубитами также используются лазеры. Унитарные преобразования осуществляются возбуждением коллективных квантованных движений ионов. Источниками некогерентности является спонтанный распад состояний ионов в другие внутренние состояния и релаксация в колебательные степени свободы. Сильно отличается от двух предыдущих «компьютер в чашке кофе». Благодаря достоинствам данного метода этот компьютер является наиболее реальным претендентом на то, чтобы достигнуть разрядности 10 бит в ближайшее время. В компьютере на коллективном спиновом резонансе работают молекулы обычных жидкостей (без всяких квантовых вывертов типа сверхтекучести). В качестве кубитов используется ориентация ядерных спинов. Работа логических ячеек и запись кубитов осуществляется радиочастотными электромагнитными импульсами со специально подобранными частотой и формой. В принципе, прибор похож на обычные приборы ядерного магнитного резонанса (ЯМР) и использует аналогичную аппаратуру. Жизнеспособность этого подхода обеспечивается, с одной стороны, очень слабой связью ядерных спинов с окружением и, потому, большим временем сохранения когерентности (до тысяч секунд). Эта связь ослаблена из-за экранирования ядерных спинов спинами электронов из оболочек атомов. С другой стороны, можно получить сильный выходной сигнал, так как для вычислений параллельно используется большое количество молекул. «Не так уж сложно измерить спин четвертого ядра у какого-то типа молекул, если у вас имеется около числа Авогадро (~1023 ) таких молекул», - говорит Ди Винченцо (Di Vincenzo), один из исследователей. Для определения результата непрерывно контролируют излучение всего ансамбля. Такое измерение не приводит к потере когерентности в компьютере, как было бы в случае использования только одной молекулы. Ядерные спины в молекулах жидкости при комнатной температуре хаотически разупорядочены, их направления равномерно распределены от 0 до 4p. Проблема записи и считывания кажется непреодолимой из-за этого хаоса. При воздействии магнитного поля спины начинают ориентироваться по полю. После снятия поля через небольшое время система снова приходит к термодинамическому равновесию, и в среднем лишь около миллионной доли всех спинов остается в состоянии с ориентацией по направлению поля. Однако благодаря тому, что среднее значение сигнала от хаотически направленных спинов равно нулю, на этом фоне можно выделить довольно слабый сигнал от «правильных» спинов. Вот в этих-то молекулах с правильными ядерными спинами и размещают кубиты. Для коррекции ошибок при записи N кубитов используют2N или больше спинов. Например, дляN =1 выбираются такие жидкости, где какие-то два спина ядер в одной молекуле после определенного воздействия полем могут быть ориентированны только одинаково. Тогда по направлению второго спина при снятии результата обработки можно отсеять нужные молекулы, никак не влияя на первый спин. Как уже было сказано, обработка битов осуществляется радиоимпульсами. Основным логическим элементом является управляемый инвертор. Из-за спин-спинового взаимодействия резонансная частота, при которой происходит опрокидывание одного спина, зависит от направления другого. Что касается квантовой передачи данных, к настоящему времени экспериментально реализованы системы обмена секретной информацией по незащищенному от несанкционированного доступа каналу. Они основаны на фундаментальном постулате квантовой механики о невозможности измерения состояния без оказания влияния на него. Подслушивающий всегда изменяет состояние кубитов, которые он подслушал, и это может быть зафиксировано связывающимися сторонами. Данная система защиты информации абсолютно надежна, так как способов обойти законы квантовой механики пока еще никто не выдумал. Вместо заключения… Пока квантовым компьютерам по плечу только наиболее простые задачи - например, они уже умеют складывать 1 и 1, получая в результате 2. Было также запланировано взятие другого важного рубежа - факторизации числа 15, его предстоит разложить на простые множители - 3 и 5. А там, глядишь, дойдет дело и до более серьезных задач. Опытные образцы сейчас содержат менее десяти квантовых битов. По мнению Нейла Гершенфельда (Nell Gershenfeld), участвовавшего в создании одной из первых действующих моделей квантового компьютера, необходимо объединить не менее 50-100 кубитов, чтобы решать полезные с практической точки зрения задачи. Интересно, что добавление каждого следующего кубита в квантовый компьютер на эффекте объемного спинового резонанса требует увеличения чувствительности аппаратуры в два раза. Десять дополнительных кубитов, таким образом, потребуютувеличения чувствительности в 1000 раз, или на 60 дБ. Двадцать - в миллион раз, или на 120 дБ... He исключено, что в информационном обществе появление квантового компьютера сыграет ту же роль, что в свое время, в индустриальном, - изобретение атомной бомбы. Действительно, если последняя является средством «уничтожения материи», то первый может стать средством «уничтожения информации» - ведь очень часто то, что известно всем, не нужно никому. Литература, содержащая основную информацию о КК. 1. Feynman R. Int. J. Theor. Phys. 21, 1982. 2. Манин Ю.И. Вычислимое и невычислимое. - М.: Советское радио, 1980. 3. Feynman R. Quantum mechanical computers. // Optics News, February 1985, 11, p.11. 4. Deutsch D. Quantum theory, the Church-Turing principle and the universal quantum computer. - Proc. R. Soc. London A 400, 97, 1985. 5. Deutsch D. Quantum computational networks. - Proc. R. Soc. London A 425, 73, 1989. 6. Yao А. С.-С. Quantum circuit complexity. //Proceedings of the 34th Annual Symposium on the Foundations of Computer Science, IEEE Computer Society Press, Los Alamitos, CA, 1993, p. 352. 7. Shor P.W. Algorithms for Quantum Computation: Discrete log and Factoring. // Proceedings of the 35th Annual Symposium on the Foundations of Computer Science, edited by S. Goldwasser, IEEE Computer Society Press, Los Alamitos, CA, 1994, p.124. 8. Китаев A.Ю. Квантовые вычисления: алгоритмы и исправление ошибок. //Успехи математических наук. 9. Grover L. Afast quantum mechanical algorithm for database search. //Proceedings of the 28th Annual ACM Symposium on Theory of Computing, 1996, pp. 212-219. 10. Kitaev A.Yu. Quantum measurements and the Abelian stabilizer problem. - LANL e-print quant-ph/9511026, http://xxx.lanl.gov. 11. Shor P.W. Fault-Tolerant Quantum Computation. - LANL e-print quant-ph/9005011, http://xxx.lanl.gov. 12. Bennett С.Н., Bernstein E., Brassard G., Vazirany U. Strengths and Weaknesses of Quantum Computing. - LANL e-print quant-ph/9701001, http://xxx.lanl.gov, to appear in SIAM J. On Computing. | www.yurii.ru
Реферат: Квантовые компьютеры
МИНИСТЕРСТВО ОБЩЕГО И ПРОФЕССИОНАЛЬНОГО ОБРАЗОВАНИЯ РФ АСТРАХАНСКИЙ ГОСУДАРСТВЕННЫЙ ПЕДАГОГИЧЕСКИЙ УНИВЕРСИТЕТ кафедра теоретической физики РЕФЕРАТ на тему: «Квантовые компьютеры» Выполнил: студент 154 группы ФМФ Безниско Евгений. Руководитель: к.ф.-м.н., доцент Джалмухамбетов А.У. Астрахань – 2000 г. Предпосылки создания квантовых компьютеров. Уже сейчас существует множество систем, в работе которых квантовые эффекты играют существенную роль. Одним из наиболее известных примеров может служить лазер: поле его излучения порождается квантово-механическими событиями - спонтанным и индуцированным излучением света. Другим важным примером таких систем являются современные микросхемы - непрерывное ужесточение проектных норм приводит к тому, что квантовые эффекты начинают играть в их поведении существенную роль. В диодах Ганна возникают осцилляции электронных токов, в полупроводниках образуются слоистые структуры: электроны или дырки в различных запертых состояниях могут хранить информацию, а один или несколько электронов могут быть заперты в так называемых квантовых ямах. Сейчас ведутся разработки нового класса квантовых устройств - квантовых компьютеров. Идея квантового компьютера возникла так. Все началось в 1982 году, когда Фейнман написал очень интересную статью [1], в которой рассмотрел два вопроса. Он подошел к процессу вычисления как физик: есть чисто логические ограничения на то, что можно вычислить (можно придумать задачу, для которой вообще нет алгоритма, можно придумать задачу, для которой любой алгоритм будет долго работать). А есть ли ограничения физические? Вот есть закон сохранения энергии - вечный двигатель невозможен; а есть ли какое-нибудь физическое ограничение на функционирование компьютера, которое накладывает некие запреты на реализуемость алгоритмов? И Фейнман показал, что термодинамических ограничений, типа второго начала термодинамики, нет. Если мы будем уменьшать потери энергии, шумы, то мы можем сделать сколь угодно длинные вычисления со сколь угодно малыми затратами энергии. Это означает, что вычисления можно сделать обратимым образом-потому что в необратимых процессах энтропия возрастает. Собственно, Фейнмана это и заинтересовало: ведь реальное вычисление на реальном компьютере необратимо. И полученный им результат состоит в том, что можно так переделать любое вычисление - без особой потери эффективности, - чтобы оно стало обратимым. Те вычисления, которые делаются «просто так», конечно, необратимы, но «рост необратимости» пренебрежимо мал по сравнению, скажем, с шумами в современном компьютере. То есть необратимость - это тонкий эффект; тут вопрос не практический а принципиальный: если представить себе, что технология дойдет до такого уровня, что этот эффект станет существенным, то можно так перестроить вычисления, чтобы добиться обратимости. И в этой же работе Фейнман обратил внимание на то, что если у нас имеется устройствоквантовое, то есть подчиняющееся законам квантовой механики, то его вычислительные возможности совершенно не обязательно должны совпадать с возможностями обычного устройства. Возникают некоторые дополнительные возможности. Но пока непонятно, позволяют они получить какой-то выигрыш или нет. Фактически, он и поставил своей статьей такой вопрос. Кстати, Ю.И. Манин в конце семидесятых годов написал две популярные книжки по логике - «Вычислимое и невычислимое» и «Доказуемое и недоказуемое», и в одной из них есть сюжет про квантовые автоматы, где он говорит о некоторых кардинальных отличиях этих автоматов от классических [2]. В середине восьмидесятых годов появились работы Дойча (D. Deutsch), Бернстайна и Вазирани (Е. Bernstein, U. Vazirani), Яo (A. Уао). В них были построены формальные модели квантового компьютера - например, квантовая машина Тьюринга [3-6]. Следующий этап - статья Шора (Р.W. Shor) 1994 года [7],вызвавшая лавинообразный рост числа публикаций о квантовых вычислениях. Шор построил квантовый (то есть реализуемый на квантовом компьютере) алгоритм факторизации (разложения целых чисел на множители - используется в том числе для вскрытия зашифрованных сообщений). Все известные алгоритмы для обычного компьютера- экспоненциальные (время их работы растет как экспонента от числа знаков в записи факторизуемого числа). Факторизация 129-разрядного числа потребовала 500 MIPS-лет, или восемь месяцев непрерывной работы системы из 1600 рабочих станций, объединенных через Интернет.А при числе разрядов порядка 300 это время существенно превзойдет возраст Вселенной- даже если работать одновременно на всех существующих в мире машинах. Считается (хотя это и не доказано!), что быстрого алгоритма решения этой задачи не существует. Более того, гарантией надежности большинства существующих шифров является именно сложность решения задачи факторизации или одной из родственных ей теоретико-числовых задач, например - дискретного логарифма. И вдруг выясняется, что на квантовом компьютере эта задача имеет всего лишь кубическую сложность! Перед квантовым компьютером классические банковские, военные и другие шифры мгновенно теряют всякую ценность. Короче говоря, работа Шора показала, что вся эта изысканная академическая деятельность непосредственно касается такой первобытной стихии, какденьги. После этого и началась настоящая популярность... Впрочем, выясняется, что не только классическая, но и квантовая криптография (наука о шифровании сообщений) часто не способна противостоять квантовой криптоаналитике (науке о расшифровке). Некоторые важные криптографические протоколы, такие как «подбрасывание монеты по телефону», рушатся при переходе к квантовым вычислениям. Точнее, гарантией их надежности является отныне не сложность тех или иных алгоритмов, а сложность задачи создания квантового компьютера. Таким образом возникает новая отрасль вычислений – квантовые вычисления.Квантовые вычисления(КВ) - это, как можно догадаться, вычисления на квантовом компьютере. Квантовых компьютеров на свете пока нет. Более того, до сих пор неясно, когда появятся практически полезные конструкции и появятся ли вообще. Тем не менее, квантовые вычисления - предмет, чрезвычайно модный сейчас в математике и физике, как теоретической, так и экспериментальной, и занимается им довольно много людей. Судя по всему, именно интерес стимулировал первопроходцев - Ричарда Фейнмана, написавшего пионерскую работу,в которой ставился вопрос о вычислительных возможностях устройств на квантовых элементах;ДэвидаДойча, формализовавшего этот вопрос в рамках современной теории вычислений; и Питера Шора, придумавшего первый нетривиальный квантовый алгоритм. Типы квантовых компьютеров. Строго говоря, можно выделить два типа квантовых компьютеров. И те, и другие основаны на квантовых явлениях, только разного порядка. Представителями первого типа являются, например, компьютеры, в основе которых лежит квантование магнитного потока на нарушениях сверхпроводимости - Джозефсоновских переходах. На эффекте Джозефсона уже сейчас делают линейные усилители, аналого-цифровые преобразователи, СКВИДы и корреляторы. Известен проект создания RISC-процессора на RSFQ-логике (Rapid Single Flux Quantum). Эта же элементная база используется в проекте создания петафлопного (1015оп./с) компьютера. Экспериментально достигнута тактовая частота 370 ГГц, которая в перспективе может быть доведена до 700 ГГц. Однако время расфазировки волновых функций в этих устройствах сопоставимо со временем переключения отдельных вентилей, и фактически на новых, квантовых принципах реализуется уже привычная нам элементная база - триггеры, регистры и другие логические элементы. Другой тип квантовых компьютеров, называемых еще квантовыми когерентными компьютерами, требует поддержания когерентности волновых функций используемых кубитов втечение всего времени вычислений - от начала и до конца (кубитом может быть любая квантомеханическая система с двумя выделенными энергетическими уровнями). В результате, для некоторых задач вычислительная мощность когерентных квантовыхкомпьютеров пропорциональна2N,гдеN- число кубитов в компьютере. Именно последний тип устройств имеется в виду, когда говорят о квантовых компьютерах. Математические основы функционирования квантовых компьютеров. Классический компьютер состоит, грубо говоря, из некоторого числа битов, с которыми можно выполнять арифметические операции. Основным элементом квантового компьютера (КК) являются квантовые биты, или кубиты (от Quantum Bit, qubit). Обычный бит - это классическая система, у которой есть только два возможных состояния. Можно сказать, что пространство состояний бита - это множество из двух элементов, например, из нуля и единицы.Кубитже - это квантовая система с двумя возможными состояниями. Имеется ряд примеров таких квантовых систем: электрон, у которого спин может быть равен либо +1/2 либо –1/2, атомы в кристаллической решетке при некоторых условиях. Но, поскольку система квантовая, ее пространство состояний будет несравненно богаче. Математическикубит- это двумерное комплексное пространство. В такой системе можно выполнятьунитарные преобразования пространства состояний системы. С точки зрения геометрии такие преобразования - прямой аналог вращении и симметрий обычного трехмерного пространства. Согласно принципу суперпозиции вы можете складывать состояния, вычитать их, умножать на комплексные числа. Эти состояния образуют фазовые пространства. При объединении двух систем полученное фазовое пространство будет их тензорным произведением. Эволюция системы в фазовом пространстве описывается унитарными преобразованиями фазового пространства. Так вот, в квантовом компьютере аналогичная ситуация. Он тоже работает с нулями и единицами. Но его функциональные элементы реализуют действия прямо в фазовом пространстве некоторой квантовой системы - при помощи унитарных преобразований этого пространства. Конечно, унитарные преобразования не могут быть произвольными - они должны удовлетворять некоторым естественным ограничениям. Например, в случае обычной логики достаточно иметь три операции: конъюнкция, дизъюнкция, отрицание. Все можно реализовать, используя только эти три операции. Точно так же и в квантовом случае есть некоторый набор операторов, действующих только на три бита, с помощью которых можно все реализовать. Там есть даже более тонкие результаты: можно ограничиться классическими операторами на нескольких битах, а квантовые операторы будут действовать только на один бит. То есть классический набор операций {конъюнкция, дизъюнкция, отрицание} можно заменить на такой: {конъюнкция, дизъюнкция, квантовое отрицание}, где квантовое отрицание - это произвольное унитарное преобразование одного кубита. Фазовое пространство КК есть тензорное произведение кубитов. Если в каждом кубите фиксирован базис (он будет состоять из двух векторов), то фазовое пространство - это комплексное линейное пространство, базис которого индексирован словами из нулей и единиц. Таким способом двоичное слово на входе определяет базисный вектор. Итак, вход - двоичное слово, определяющее один из базисных векторов. Сам же алгоритм - предписанная последовательность элементарных операторов. Применяем эту последовательность к вектору на входе, в результате получаем некоторый вектор на выходе. Так вот, согласно квантовой механике (КМ), пока система эволюционирует под действием наших унитарных операторов, мы не можем сказать, в каком именно классическом состоянии она находится. То есть она находится в каком-то квантовом состоянии, но измеряем-то мы, когда общаемся с системой, все равно какие-то классические значения. Как это понимается в КМ? В фазовом пространстве фиксируется некоторый базис, и вектор состояния разлагается по этому базису. Это математическая формализация процедуры измерения в КМ. То есть если мы имеем дело с системой, у которой «то ли спин влево, то ли спин вправо», и если мы все-таки посмотрим, какой спин, то мы получим одно из двух в любом случае. А вот вероятности того, что мы получим тот или другой результат, - это как раз квадраты модуля коэффициентов разложения. КМ утверждает, что точно предсказать результат измерения нельзя, но вероятности возможных результатов вычислить можно. Вероятность возникает в процессе измерения. А пока система живет, для нас существенно, что там есть сам этот вектор. Другими словами, существенно, что система «находится одновременно во всех возможных состояниях». Как пишут многие авторы популярных введений в KB, возникает совершенно чудовищный параллелизм вычислении: к примеру, в случае нашей системы из двух кубитов мы как бы оперируем одновременно со всеми возможными ее состояниями: 00, 01, 11, 10. Чтобы интерпретировать ответ, надо заранее условиться, что какой-то бит - допустим, первый - это бит ответа. Пусть алгоритм проработал, у нас получился какой-то вектор, не обязательно базисный. Тогда мы можем сказать, что первый бит с некоторой вероятностью равен 1. И требование к алгоритму такое: если ответ «да», то вероятность того, что первый бит равен 1, должна быть больше двух третей. А если ответ «нет», вероятность того, что будет ноль, должна быть тоже больше двух третей. Задачи, реализуемые на КВ. Известно два примера нетривиальных задач, в которых KB дают радикальный выигрыш. Первый из них - задача разложения целых чисел на простые множители и, как следствие, вычисления дискретного логарифма (ДЛ). Дальше речь пойдет именно о ДЛ. Пусть у нас есть поле вычетов по модулю простого числа. В нем есть первообразные корни - такие вычеты, чьи степени порождают все ненулевые элементы. Если задан такой корень и задана степень, то возвести в степень можно быстро (например, сначала возводим в квадрат, потом получаем четвертую степень, и т. д.) Дискретный логарифм - это обратная задача. Дан первообразный корень и какой-то элемент поля; найти, в какую степень нужно возвести этот корень, чтобы получить данный элемент. Вот эта задача уже считается сложной. Настолько сложной, что ряд современных криптографических систем основан на том предположении, что вычислить ДЛ за приемлемое время невозможно, если модуль - достаточно большое простое число. Так вот, для дискретного логарифма есть эффективный квантовый алгоритм. Его придумал Шор в конце 1994 года. После его статьи и начался взрыв публикаций по КВ. Независимо от него, Алексей Китаев из ИТФ им. Ландау построил квантовый алгоритм для этой и некоторых более общих задач [8]. Идеи у них были разные. Шор использовал примерно такую идею, она существенно квантовая: рассмотрим базис в фазовом пространстве. Он состоит из классических состояний. Но в линейном пространстве много базисов. Мы можем найти некий оператор, который эффективно строит другой базис; мы можем к нему перейти, сделать там какие-то вычисления, вернуться обратно и получить нечто совершенно отличное от того, что мы имели бы в классическом базисе. Одна из возможностей использовать квантовость состоит в том, что мы строим какой-то странный базис, в нем что-то делаем, возвращаемся обратно и интерпретируем результат. Шор именно эту идею и реализовал. Причем преобразование оказалось такое, которое и в физике, и в математике имеет принципиальное значение - дискретное преобразование Фурье. Его можно представить в виде тензорного произведения операторов, которые действуют на каждый из кубитов такой матрицей: Китаев придумал примерно следующее. Есть некоторая ячейка - основной регистр, где мы записываем наши данные нулями и единицами. И еще есть один управляющий кубит. Мы работаем так: у нас реализована процедура умножения на первообразный корень, на квадрат первообразного корня, и т. д. Управляющий кубит переводим в некоторое смешанное состояние, дальше строим такой оператор, который, в зависимости оттого, ноль или единица в этом управляющем кубите, либо применяет умножение к нашему основному регистру, либо не применяет. А потом кубит опять возвращаем в смешанное состояние. Оказывается, что это эффективный способ проделать некоторое измерение. То есть Китаев заметил, что одна из вещей, которые мы можем эффективно делать на квантовом компьютере, - это имитировать процесс квантового измерения. В данной задаче из результатов этих измерений эффективно извлекается ответ. Сам процесс вычислений, происходит так: мы все время умножаем одну и ту же ячейку на некие константы, результаты измерений записываем, а потом производим своего рода обработку результатов эксперимента - уже чисто классическими вычислениями. Вся квантовая часть заключается в том, что где-то рядом с нашим регистром находится в некоем смешанном состоянии коррелированный с ним кубит, и мы его периодически наблюдаем. Для вычисления ДЛ числа, записанногоNбитами, нужно потратитьN3единиц времени. Вполне реализуемо - на КК, естественно. Но здесь надо заметить, что никто пока не доказал, что не существует столь же быстрого алгоритма для вычисления ДЛ на обычной машине. Вторая задача предложена Гровером (L. Grover) [9].Рассмотрим базу данных, содержащую2Nзаписей. Мы хотим найти ровно одну запись. Имеется некая процедура определения того, нужную запись мы взяли или нет. Записи не упорядочены. С какой скоростью мы можем решить эту задачу на обычном компьютере? В худшем случае нам придется перебрать все2Nзаписей - это очевидно. Оказывается, что на КК достаточно числа запросов порядка корня из числа записей –2N/2. Интересная задача - создание оптимальных микросхем. Пусть есть функция, которую нужно реализовать микросхемой, и эта функция задана программой, использующей полиномиально ограниченную память. Построение нужной микросхемы с минимальным числом функциональных элементов - задача PSPACE. Поэтому появление устройств, эффективно решающих PSPACE-задачи, позволило бы единообразно проектировать оптимальные по своим показателям вычислительные устройства обычного типа. Кроме того, в PSPACE попадает большинство задач «искусственного интеллекта»: машинное обучение, распознавание образов и т.д. Так вот, точно установлено, что KB находятся где-то между обычными вероятностными вычислениями и PSPACE. Если все же окажется, что KB можно эффективно реализовать на классических вероятностных машинах, не будет смысла в физической реализации квантовых машин. Если же выяснится, что при помощи KB можно эффективно решать те или иные PSPACE-задачи, то физическая реализация КК откроет принципиально новые возможности. Есть еще одна область применения КК, где заведомо возможен радикальный выигрыш у существующих технологий. Это моделирование самих квантовых систем. Давайте посмотрим на такой вопрос: как можно эволюцию квантовой системы изучать на обычном компьютере? Это постоянно делается, так как это задача важна для химии, молекулярной биологии, физики и т.п. Но, за счет экспоненциального роста размерности при тензорном произведении, для моделирования десяти спинов вам нужно оперировать с тысячемерным пространством, сто спинов - это уже конец. А если вспомнить, что в молекуле белка десятки тысяч атомов, то... Там, правда, не всюду существенно именно квантовое моделирование, но в целом ясно, что есть очень серьезные препятствия для моделирования квантовых систем на классических компьютерах. Так что если создать вычислительное устройство, которое ведет себя квантовым образом, то по крайней мере один важный класс задач на нем есть смысл решать - можно моделировать реальные квантовые системы, возникающие в физике, химии, биологии. Проблемы создания КК. Когда начался бум вокруг квантовых вычислений, физики высказывались об этом более чем скептически. Модель квантовых вычислений не противоречит законам природы, но это еще не значит, что ее можно реализовать. К примеру, можно вспомнить создание атомного оружия и управляемый термояд. А если говорить о КК, надо отметить одну очень серьезную проблему. Дело в том, что любая физическая реализация будет приближенной. Во-первых, мы не сможем сделать прибор, который будет давать нам произвольный вектор фазового пространства. Во-вторых, работа любого устройства подвержена всяческим случайным ошибкам. А уж в квантовой системе - пролетит какой-нибудь фотон, провзаимодействует с одним из спинов, и все поменяется. Поэтому сразу возник вопрос, можно ли, хотя бы в принципе, организовать вычисления на ненадежных квантовых элементах, чтобы результат получался со сколь угодно большой достоверностью. Такая задача для обычных компьютеров решается просто - например, за счет введения дополнительных битов. В случае КК эта проблема гораздо глубже. То место, где возникает новое качество KB по сравнению с обычными вычислениями, - это как раз сцепленные состояния - линейные комбинации базисных векторов фазового пространства. У вас есть биты, но они не сами по себе живут в каких-то состояниях - это был бы просто вероятностный компьютер (компьютер, дающий тот или иной ответ с определенной вероятностью), - а они находятся в некоем смешанном состоянии, причем согласованно-смешанном. Из-за этого в КК нельзя, например, просто взять и скопировать один бит в другой! Обычная интуиция из теории алгоритмов здесь неприменима. Так что проблема надежности довольно сложна, даже на уровне чистой теории. Те люди, которые активно занимаются KB, активно ее решали и добились успеха: доказано, что, как и в классике, можно делать вычисления на элементах с заданной надежностью сколь угодно точно. Это реализовано с помощью некоего аналога кодов, исправляющих ошибки. Что касается технической стороны появляются сообщения, что создаются реальные квантовые системы с небольшим числом битов - с двумя, скажем. Экспериментальные, в железе, так сказать. Так что эксперименты есть, но пока очень далекие от реальности. Два бита - это и для классического и для квантового компьютера слишком мало! Чтобы моделировать молекулу белка, нужно порядка ста тысяч кубитов. Для ДЛ, чтобы вскрывать шифры, достаточно примерно тысячи кубитов. Задача эта возникла слишком недавно, и не исключено, что она потребует каких-то фундаментальных исследований в самой физике. Поэтому в обозримом будущем ожидать появления квантовых компьютеров не приходится. Но можно ожидать распространения через не очень долгое время квантовых криптографических систем. Квантовая криптография позволяет обмениваться сообщениями так, что враг, если попытается подслушать, сможет разве что разрушить ваше сообщение. То есть оно не дойдет до адресата, но перехватить его в принципе будет нельзя. Подобные системы, которые уже реализованы, используют световод. Универсальный КК здесь не нужен. Нужно специализированное квантовое устройство, способное выполнять только небольшой набор операций, - своего рода квантовый кодек. Физической системе, реализующей квантовый компьютер, можно предъявить пять требований: 1. Система должна состоять из точно известного числа частиц. 2. Должна быть возможность привести систему в точно известное начальное состояние. 3. Степень изоляции от внешней среды должна быть очень высока. 4. Надо уметь менять состояние системы согласно заданной последовательности унитарных преобразований ее фазового пространства. 5. Необходимо иметь возможность выполнять «сильные измерения» состояния системы (то есть такие, которые переводят ее в одно из чистых состояний). Из этих пяти задач наиболее трудными считаются третья и четвертая. От того, насколько точно они решаются, зависит точность выполнения операций. Пятая задача тоже весьма неприятна, так как измерить состояние отдельной частицы нелегко. Физические основы организации КК. Итак, что же это за тайное оружие такое - КК? Остроумная идея заключается в использовании для хранения, передачи и обработки информации существенно квантовых свойств вещества. В основном такие свойства проявляют объекты микромира: элементарные частицы, атомы, молекулы и небольшие сгустки молекул, так называемые кластеры. (Хотя, конечно, и в жизни макромира квантовая механика играет важную роль. В частности, только с ее помощью можно объяснить такое явление, как ферромагнетизм.) Одним из квантовых свойств вещества является то, что некоторые величины при измерении (наблюдении) могут принимать значения лишь из заранее определенного дискретного набора. Такой величиной, например, является проекция собственного момента импульса, или, иначе говоря, спина элементарной частицы, на любую заданную ось. Например, у электрона возможно только два значения проекции: +1/2или–1/2. Таким образом, количество информации, необходимое для сообщения о проекции, равно одному биту. Записав в классическую однобитную ячейку памяти определенное значение, мы именно его оттуда и прочтем, если не произойдет какой-нибудь ошибки. Классической ячейкой может послужить и спин электрона. Однако квантовая механика позволяет записать в проекции спина больше информации, чем в классике. Для описания поведения квантовых систем было введено понятие волновой функции. Существуют волновые функции, называемые собственными для какой-то конкретной измеряемой величины. В состоянии, описываемом собственной функцией, значение этой величины может быть точно предсказано до ее измерения. Именно с такими состояниями работает обычная память. Квантовая же система может находиться и в состоянии с волновой функцией, равной линейной комбинации собственных функции, соответствующих каждому из возможных значений (назовем здесь такие состояния сложными). В сложном состоянии результат измерения величины не может быть предсказан заранее. Заранее известно только, с какой вероятностью мы получим то или иное значение. В отличие от обычного компьютера, в квантовом для представления данных используются такие ячейки памяти, которые могут находиться в сложном состоянии. В нашем примере мы определили бы, что спин электрона с определенной вероятностью смотрит вверх и вниз, то есть можно сказать, что в кубит записаны сразу и 0, и 1. Количество информации, содержащееся в такой ячейке, и саму ячейку называют квантовым битом, или, сокращенно, кубитом. Согласитесь, ячейки в сложных состояниях весьма необычны для классической теории информации. Каждому возможному значению величины, представленной кубитом, соответствует вероятность, с которой это значение может быть получено при чтении. Эта вероятность равна квадрату модуля коэффициента, с которым собственная функция этого значения входит в линейную комбинацию. Именно вероятность и является информацией, записанной в кубит. Квантовую механику не случайно называют иногда волновой механикой. Дело в том, что квантово-механические волновые функции ведут себя подобно световой или какой-либо другой волне. И для волновых функций, благодаря их способности интерферировать, также может быть введено понятие когерентности. Именно это свойство используется в когерентном квантовом компьютере. Набор кубитов представляется когерентными волновыми функциями. Оказывается, что существует вполне определенный класс воздействий на квантовую систему, называемый унитарными преобразованиями, при которых не теряется записанная в кубит информация и не нарушается когерентность волновых функций кубитов. Унитарные преобразования обратимы - по результату можно восстановить исходные данные. После прохождения через квантовый процессор, использующий унитарные преобразования, волновые функции кубитов заставляют интерферировать друг с другом, наблюдая получающуюся картину и судя по ней о результате вычисления. Из-за того, что для представления информации используются кубиты, в которых записано сразу оба значения - и0, и1, в процессе вычислений происходит параллельная обработка сразу всех возможных вариантов комбинаций битов в процессорном слове. Таким образом, в КК реализуется естественный параллелизм, недоступный классическим компьютерам. За счет возможности параллельной работы с большим числом вариантов, в идеале равным2N(гдеN- число кубитов), квантовому компьютеру необходимо гораздо меньше времени для решения определенного класса задач. К ним относятся, например, задача разложения числа на простые множители или поиск в большой базе данных. Для когерентного компьютера уже предложены алгоритмы, использующие его уникальные свойства. Кроме того, предполагается использовать КК для моделирования квантовых систем, что трудно или вообще невозможно сделать на обычных компьютерах из-за нехватки мощности или по принципиальным соображениям. Все существующие на сегодняшний день обычные компьютеры, даже с параллельной обработкой информации на многих процессорах, могут быть смоделированы так называемым клеточным автоматом Тьюринга. Это существенно детерминированная и дискретная машина. С возникновением и обсуждением идей квантовых вычислений стала активно развиваться квантовая теория информации и, в частности, теория квантовых клеточных автоматов - ККА. Квантовый клеточный автомат является обобщением автомата Тьюринга для КК. Сформулирована гипотеза, гласящая, что каждая конечным образом реализуемая физическая система может быть достаточно хорошо смоделирована универсальной моделью квантовой вычислительной машины, использующей ограниченное количество ресурсов. Для одного из предложенных типов ККА теоретически уже доказано, что он подходит для такого моделирования и не противоречит квантовой теории. Пытаясь осуществить свой замысел, ученые упираются в проблему сохранения когерентности волновых функций кубитов, так как потеря когерентности хотя бы одним из кубитов разрушила бы интерференционную картину. В настоящее время основные усилия экспериментальных рабочих групп направлены на увеличение отношения времени сохранения когерентности ко времени, затрачиваемому на одну операцию (это отношение определяет число операций, которые можно успеть провести над кубитами). Главной причиной потери когерентности является связь состояний, используемых для кубитов, со степенями свободы, не участвующими в вычислениях. Например, при передаче энергии электрона в возбужденном атоме в поступательное движение всего атома. Мешает и взаимодействие с окружающей средой, например, с соседними атомами материала компьютера или магнитным полем Земли, но это не такая важная проблема. Вообще, любое воздействие на когерентную квантовую систему, которое принципиально позволяет получить информацию о каких-либо кубитах системы, разрушает их когерентность. Потеря когерентности может произойти и без обмена энергией с окружающей средой. Воздействием, нарушающим когерентность, в частности, является и проверка когерентности. При коррекции ошибок возникает своего рода замкнутый круг: для того чтобы обнаружить потерю когерентности, нужно получить информацию о кубитах, а это, в свою очередь, также нарушает когерентность. В качестве выхода предложено много специальных методов коррекции, представляющих также и большой теоретический интерес. Все они построены на избыточном кодировании. Если в области передачи информации уже созданы реально работающие системы и до коммерческих продуктов осталось лишь несколько шагов, то коммерческая реализация квантового когерентного процессора - дело будущего. К настоящему времени КК научился вычислять сумму1+1! Это большое достижение, если учесть, что в виде результата он выдает именно2, а не3и не0. Кроме того, не следует забывать, что и первые обычные компьютеры были не особенно мощны. Сейчас ведется работа над двумя различными архитектурами процессоров: типа клеточного автомата и в виде сети логических элементов. Пока не известно о каких-либо принципиальных преимуществах одной архитектуры перед другой. Как функциональная основа для логических элементов квантового процессора более или менее успешно используется целый ряд физических явлений. Среди них - взаимодействие одиночных поляризованных фотонов или лазерного излучения с веществом или отдельными атомами, квантовые точки, ядерный магнитный резонанс и - наиболее многообещающий - объемный спиновый резонанс. Процессор, построенный на последнем принципе, в шутку называют «компьютером в чашке кофе» - из-за того, что в нем работают молекулы жидкости при комнатной температуре и атмосферном давлении. Кроме этих эффектов есть довольно хорошо развитая технология логических элементов и ячеек памяти на джозефсоновских переходах, которую можно при соответствующих условиях приспособить под когерентный процессор. Теорию, описывающую явления, лежащие в основе первого типа логических ячеек, называют квантовой электродинамикой в полости или резонаторе. Кубиты хранятся в основных и возбужденных состояниях атомов, расположенных некоторым образом на равных расстояниях в оптическом резонаторе. Для каждого атома используется отдельный лазер, приводящий его в определенное состояние с помощью короткого импульса. Взаимовлияние атомных состояний происходит посредством обмена фотонов в резонаторе. Основными причинами разрушения когерентности здесь служат спонтанное излучение и выход фотонов за пределы резонатора. В элементах на основе ионов в линейных ловушках кубиты хранятся в виде внутренних состояний пойманных ионов. Для управления логикой и для манипулирования отдельными кубитами также используются лазеры. Унитарные преобразования осуществляются возбуждением коллективных квантованных движений ионов. Источниками некогерентности является спонтанный распад состояний ионов в другие внутренние состояния и релаксация в колебательные степени свободы. Сильно отличается от двух предыдущих «компьютер в чашке кофе». Благодаря достоинствам данного метода этот компьютер является наиболее реальным претендентом на то, чтобы достигнуть разрядности 10 бит в ближайшее время. В компьютере на коллективном спиновом резонансе работают молекулы обычных жидкостей (без всяких квантовых вывертов типа сверхтекучести). В качестве кубитов используется ориентация ядерных спинов. Работа логических ячеек и запись кубитов осуществляется радиочастотными электромагнитными импульсами со специально подобранными частотой и формой. В принципе, прибор похож на обычные приборы ядерного магнитного резонанса (ЯМР) и использует аналогичную аппаратуру. Жизнеспособность этого подхода обеспечивается, с одной стороны, очень слабой связью ядерных спинов с окружением и, потому, большим временем сохранения когерентности (до тысяч секунд). Эта связь ослаблена из-за экранирования ядерных спинов спинами электронов из оболочек атомов. С другой стороны, можно получить сильный выходной сигнал, так как для вычислений параллельно используется большое количество молекул. «Не так уж сложно измерить спин четвертого ядра у какого-то типа молекул, если у вас имеется около числа Авогадро (~1023) таких молекул», - говорит Ди Винченцо (Di Vincenzo), один из исследователей. Для определения результата непрерывно контролируют излучение всего ансамбля. Такое измерение не приводит к потере когерентности в компьютере, как было бы в случае использования только одной молекулы. Ядерные спины в молекулах жидкости при комнатной температуре хаотически разупорядочены, их направления равномерно распределены от 0 до 4p. Проблема записи и считывания кажется непреодолимой из-за этого хаоса. При воздействии магнитного поля спины начинают ориентироваться по полю. После снятия поля через небольшое время система снова приходит к термодинамическому равновесию, и в среднем лишь около миллионной доли всех спинов остается в состоянии с ориентацией по направлению поля. Однако благодаря тому, что среднее значение сигнала от хаотически направленных спинов равно нулю, на этом фоне можно выделить довольно слабый сигнал от «правильных» спинов. Вот в этих-то молекулах с правильными ядерными спинами и размещают кубиты. Для коррекции ошибок при записиNкубитов используют2Nили больше спинов. Например, дляN=1 выбираются такие жидкости, где какие-то два спина ядер в одной молекуле после определенного воздействия полем могут быть ориентированны только одинаково. Тогда по направлению второго спина при снятии результата обработки можно отсеять нужные молекулы, никак не влияя на первый спин. Как уже было сказано, обработка битов осуществляется радиоимпульсами. Основным логическим элементом является управляемый инвертор. Из-за спин-спинового взаимодействия резонансная частота, при которой происходит опрокидывание одного спина, зависит от направления другого. Что касается квантовой передачи данных, к настоящему времени экспериментально реализованы системы обмена секретной информацией по незащищенному от несанкционированного доступа каналу. Они основаны на фундаментальном постулате квантовой механики о невозможности измерения состояния без оказания влияния на него. Подслушивающий всегда изменяет состояние кубитов, которые он подслушал, и это может быть зафиксировано связывающимися сторонами. Данная система защиты информации абсолютно надежна, так как способов обойти законы квантовой механики пока еще никто не выдумал. Вместо заключения… Пока квантовым компьютерам по плечу только наиболее простые задачи - например, они уже умеют складывать 1 и 1, получая в результате 2. Было также запланировано взятие другого важного рубежа - факторизации числа 15, его предстоит разложить на простые множители - 3 и 5. А там, глядишь, дойдет дело и до более серьезных задач. Опытные образцы сейчас содержат менее десяти квантовых битов. По мнению Нейла Гершенфельда (Nell Gershenfeld), участвовавшего в создании одной из первых действующих моделей квантового компьютера, необходимо объединить не менее 50-100 кубитов, чтобы решать полезные с практической точки зрения задачи. Интересно, что добавление каждого следующего кубита в квантовый компьютер на эффекте объемного спинового резонанса требует увеличения чувствительности аппаратуры в два раза. Десять дополнительных кубитов, таким образом, потребуютувеличения чувствительности в 1000 раз, или на 60 дБ. Двадцать - в миллион раз, или на 120 дБ... He исключено, что в информационном обществе появление квантового компьютера сыграет ту же роль, что в свое время, в индустриальном, - изобретение атомной бомбы. Действительно, если последняя является средством «уничтожения материи», то первый может стать средством «уничтожения информации» - ведь очень часто то, что известно всем, не нужно никому. Литература, содержащая основную информацию о КК. 1. Feynman R. Int. J. Theor. Phys. 21, 1982. 2. Манин Ю.И. Вычислимое и невычислимое. - М.: Советское радио, 1980. 3. Feynman R. Quantum mechanical computers. // Optics News, February 1985, 11, p.11. 4. Deutsch D. Quantum theory, the Church-Turing principle and the universal quantum computer. - Proc. R. Soc. London A 400, 97, 1985. 5. Deutsch D. Quantum computational networks. - Proc. R. Soc. London A 425, 73, 1989. 6. Yao А. С.-С. Quantum circuit complexity. //Proceedings of the 34th Annual Symposium on the Foundations of Computer Science, IEEE Computer Society Press, Los Alamitos, CA, 1993, p. 352. 7. Shor P.W. Algorithms for Quantum Computation: Discrete log and Factoring. // Proceedings of the 35th Annual Symposium on the Foundations of Computer Science, edited by S. Goldwasser, IEEE Computer Society Press, Los Alamitos, CA, 1994, p.124. 8. Китаев A.Ю. Квантовые вычисления: алгоритмы и исправление ошибок. //Успехи математических наук. 9. Grover L. Afast quantum mechanical algorithm for database search. //Proceedings of the 28th Annual ACM Symposium on Theory of Computing, 1996, pp. 212-219. 10. Kitaev A.Yu. Quantum measurements and the Abelian stabilizer problem. - LANL e-print quant-ph/9511026, http://xxx.lanl.gov. 11. Shor P.W. Fault-Tolerant Quantum Computation. - LANL e-print quant-ph/9005011, http://xxx.lanl.gov. 12. Bennett С.Н., Bernstein E., Brassard G., Vazirany U. Strengths and Weaknesses of Quantum Computing. - LANL e-print quant-ph/9701001, http://xxx.lanl.gov, to appear in SIAM J. On Computing. | superbotanik.net
Реферат - Квантовые компьютеры - Кибернетика
МИНИСТЕРСТВО ОБЩЕГО И ПРОФЕССИОНАЛЬНОГО ОБРАЗОВАНИЯ РФ
АСТРАХАНСКИЙ ГОСУДАРСТВЕННЫЙ ПЕДАГОГИЧЕСКИЙ УНИВЕРСИТЕТ
кафедра теоретической физики
РЕФЕРАТ
на тему:
«Квантовые компьютеры»
Выполнил:
студент 154 группы ФМФ
Безниско Евгений.
Руководитель:
к.ф.-м.н., доцент
Джалмухамбетов А.У.
Астрахань – 2000 г.
Предпосылки создания квантовых компьютеров.
Уже сейчас существует множество систем, в работе которых квантовые эффекты играют существенную роль. Одним из наиболее известных примеров может служить лазер: поле его излучения порождается квантово-механическими событиями — спонтанным и индуцированным излучением света. Другим важным примером таких систем являются современные микросхемы — непрерывное ужесточение проектных норм приводит к тому, что квантовые эффекты начинают играть в их поведении существенную роль. В диодах Ганна возникают осцилляции электронных токов, в полупроводниках образуются слоистые структуры: электроны или дырки в различных запертых состояниях могут хранить информацию, а один или несколько электронов могут быть заперты в так называемых квантовых ямах.
Сейчас ведутся разработки нового класса квантовых устройств — квантовых компьютеров. Идея квантового компьютера возникла так.
Все началось в 1982 году, когда Фейнман написал очень интересную статью [1], в которой рассмотрел два вопроса. Он подошел к процессу вычисления как физик: есть чисто логические ограничения на то, что можно вычислить (можно придумать задачу, для которой вообще нет алгоритма, можно придумать задачу, для которой любой алгоритм будет долго работать). А есть ли ограничения физические? Вот есть закон сохранения энергии — вечный двигатель невозможен; а есть ли какое-нибудь физическое ограничение на функционирование компьютера, которое накладывает некие запреты на реализуемость алгоритмов? И Фейнман показал, что термодинамических ограничений, типа второго начала термодинамики, нет. Если мы будем уменьшать потери энергии, шумы, то мы можем сделать сколь угодно длинные вычисления со сколь угодно малыми затратами энергии. Это означает, что вычисления можно сделать обратимым образом — потому что в необратимых процессах энтропия возрастает. Собственно, Фейнмана это и заинтересовало: ведь реальное вычисление на реальном компьютере необратимо. И полученный им результат состоит в том, что можно так переделать любое вычисление — без особой потери эффективности, — чтобы оно стало обратимым. Те вычисления, которые делаются «просто так», конечно, необратимы, но «рост необратимости» пренебрежимо мал по сравнению, скажем, с шумами в современном компьютере. То есть необратимость — это тонкий эффект; тут вопрос не практический а принципиальный: если представить себе, что технология дойдет до такого уровня, что этот эффект станет существенным, то можно так перестроить вычисления, чтобы добиться обратимости.
И в этой же работе Фейнман обратил внимание на то, что если у нас имеется устройство квантовое, то есть подчиняющееся законам квантовой механики, то его вычислительные возможности совершенно не обязательно должны совпадать с возможностями обычного устройства. Возникают некоторые дополнительные возможности. Но пока непонятно, позволяют они получить какой-то выигрыш или нет. Фактически, он и поставил своей статьей такой вопрос.
Кстати, Ю.И. Манин в конце семидесятых годов написал две популярные книжки по логике — «Вычислимое и невычислимое» и «Доказуемое и недоказуемое», и в одной из них есть сюжет про квантовые автоматы, где он говорит о некоторых кардинальных отличиях этих автоматов от классических [2].
В середине восьмидесятых годов появились работы Дойча (D. Deutsch), Бернстайна и Вазирани (Е. Bernstein, U. Vazirani), Яo (A. Уао). В них были построены формальные модели квантового компьютера — например, квантовая машина Тьюринга [3-6].
Следующий этап — статья Шора (Р.W. Shor) 1994 года [7], вызвавшая лавинообразный рост числа публикаций о квантовых вычислениях. Шор построил квантовый (то есть реализуемый на квантовом компьютере) алгоритм факторизации (разложения целых чисел на множители — используется в том числе для вскрытия зашифрованных сообщений). Все известные алгоритмы для обычного компьютера- экспоненциальные (время их работы растет как экспонента от числа знаков в записи факторизуемого числа). Факторизация 129-разрядного числа потребовала 500 MIPS-лет, или восемь месяцев непрерывной работы системы из 1600 рабочих станций, объединенных через Интернет.А при числе разрядов порядка 300 это время существенно превзойдет возраст Вселенной- даже если работать одновременно на всех существующих в мире машинах. Считается (хотя это и не доказано!), что быстрого алгоритма решения этой задачи не существует. Более того, гарантией надежности большинства существующих шифров является именно сложность решения задачи факторизации или одной из родственных ей теоретико-числовых задач, например — дискретного логарифма. И вдруг выясняется, что на квантовом компьютере эта задача имеет всего лишь кубическую сложность! Перед квантовым компьютером классические банковские, военные и другие шифры мгновенно теряют всякую ценность. Короче говоря, работа Шора показала, что вся эта изысканная академическая деятельность непосредственно касается такой первобытной стихии, какденьги. После этого и началась настоящая популярность...
Впрочем, выясняется, что не только классическая, но и квантовая криптография (наука о шифровании сообщений) часто не способна противостоять квантовой криптоаналитике (науке о расшифровке). Некоторые важные криптографические протоколы, такие как «подбрасывание монеты по телефону», рушатся при переходе к квантовым вычислениям. Точнее, гарантией их надежности является отныне не сложность тех или иных алгоритмов, а сложность задачи создания квантового компьютера.
Таким образом возникает новая отрасль вычислений – квантовые вычисления. Квантовые вычисления (КВ) — это, как можно догадаться, вычисления на квантовом компьютере. Квантовых компьютеров на свете пока нет. Более того, до сих пор неясно, когда появятся практически полезные конструкции и появятся ли вообще. Тем не менее, квантовые вычисления — предмет, чрезвычайно модный сейчас в математике и физике, как теоретической, так и экспериментальной, и занимается им довольно много людей. Судя по всему, именно интерес стимулировал первопроходцев — Ричарда Фейнмана, написавшего пионерскую работу, в которой ставился вопрос о вычислительных возможностях устройств на квантовых элементах; ДэвидаДойча, формализовавшего этот вопрос в рамках современной теории вычислений; и Питера Шора, придумавшего первый нетривиальный квантовый алгоритм.
Типы квантовых компьютеров.
Строго говоря, можно выделить два типа квантовых компьютеров. И те, и другие основаны на квантовых явлениях, только разного порядка.
Представителями первого типа являются, например, компьютеры, в основе которых лежит квантование магнитного потока на нарушениях сверхпроводимости — Джозефсоновских переходах. На эффекте Джозефсона уже сейчас делают линейные усилители, аналого-цифровые преобразователи, СКВИДы и корреляторы. Известен проект создания RISC-процессора на RSFQ-логике (Rapid Single Flux Quantum). Эта же элементная база используется в проекте создания петафлопного (1015 оп./с) компьютера. Экспериментально достигнута тактовая частота 370 ГГц, которая в перспективе может быть доведена до 700 ГГц. Однако время расфазировки волновых функций в этих устройствах сопоставимо со временем переключения отдельных вентилей, и фактически на новых, квантовых принципах реализуется уже привычная нам элементная база — триггеры, регистры и другие логические элементы.
Другой тип квантовых компьютеров, называемых еще квантовыми когерентными компьютерами, требует поддержания когерентности волновых функций используемых кубитов втечение всего времени вычислений — от начала и до конца (кубитом может быть любая квантомеханическая система с двумя выделенными энергетическими уровнями). В результате, для некоторых задач вычислительная мощность когерентных квантовыхкомпьютеров пропорциональна 2N, где N — число кубитов в компьютере. Именно последний тип устройств имеется в виду, когда говорят о квантовых компьютерах.
Математические основы функционирования квантовых компьютеров.
Классический компьютер состоит, грубо говоря, из некоторого числа битов, с которыми можно выполнять арифметические операции. Основным элементом квантового компьютера (КК) являются квантовые биты, или кубиты (от Quantum Bit, qubit). Обычный бит — это классическая система, у которой есть только два возможных состояния. Можно сказать, что пространство состояний бита — это множество из двух элементов, например, из нуля и единицы. Кубит же — это квантовая система с двумя возможными состояниями. Имеется ряд примеров таких квантовых систем: электрон, у которого спин может быть равен либо +1/2 либо –1/2, атомы в кристаллической решетке при некоторых условиях. Но, поскольку система квантовая, ее пространство состояний будет несравненно богаче. Математическикубит — это двумерное комплексное пространство.
В такой системе можно выполнятьунитарные преобразования пространства состояний системы. С точки зрения геометрии такие преобразования — прямой аналог вращении и симметрий обычного трехмерного пространства. Согласно принципу суперпозиции вы можете складывать состояния, вычитать их, умножать на комплексные числа. Эти состояния образуют фазовые пространства. При объединении двух систем полученное фазовое пространство будет их тензорным произведением. Эволюция системы в фазовом пространстве описывается унитарными преобразованиями фазового пространства.
Так вот, в квантовом компьютере аналогичная ситуация. Он тоже работает с нулями и единицами. Но его функциональные элементы реализуют действия прямо в фазовом пространстве некоторой квантовой системы — при помощи унитарных преобразований этого пространства.
Конечно, унитарные преобразования не могут быть произвольными — они должны удовлетворять некоторым естественным ограничениям. Например, в случае обычной логики достаточно иметь три операции: конъюнкция, дизъюнкция, отрицание. Все можно реализовать, используя только эти три операции. Точно так же и в квантовом случае есть некоторый набор операторов, действующих только на три бита, с помощью которых можно все реализовать. Там есть даже более тонкие результаты: можно ограничиться классическими операторами на нескольких битах, а квантовые операторы будут действовать только на один бит. То есть классический набор операций {конъюнкция, дизъюнкция, отрицание} можно заменить на такой: {конъюнкция, дизъюнкция, квантовое отрицание}, где квантовое отрицание — это произвольное унитарное преобразование одного кубита.
Фазовое пространство КК есть тензорное произведение кубитов. Если в каждом кубите фиксирован базис (он будет состоять из двух векторов), то фазовое пространство — это комплексное линейное пространство, базис которого индексирован словами из нулей и единиц. Таким способом двоичное слово на входе определяет базисный вектор.
Итак, вход — двоичное слово, определяющее один из базисных векторов. Сам же алгоритм — предписанная последовательность элементарных операторов. Применяем эту последовательность к вектору на входе, в результате получаем некоторый вектор на выходе.
Так вот, согласно квантовой механике (КМ), пока система эволюционирует под действием наших унитарных операторов, мы не можем сказать, в каком именно классическом состоянии она находится. То есть она находится в каком-то квантовом состоянии, но измеряем-то мы, когда общаемся с системой, все равно какие-то классические значения. Как это понимается в КМ? В фазовом пространстве фиксируется некоторый базис, и вектор состояния разлагается по этому базису. Это математическая формализация процедуры измерения в КМ. То есть если мы имеем дело с системой, у которой «то ли спин влево, то ли спин вправо», и если мы все-таки посмотрим, какой спин, то мы получим одно из двух в любом случае. А вот вероятности того, что мы получим тот или другой результат, — это как раз квадраты модуля коэффициентов разложения. КМ утверждает, что точно предсказать результат измерения нельзя, но вероятности возможных результатов вычислить можно.
Вероятность возникает в процессе измерения. А пока система живет, для нас существенно, что там есть сам этот вектор.
Другими словами, существенно, что система «находится одновременно во всех возможных состояниях». Как пишут многие авторы популярных введений в KB, возникает совершенно чудовищный параллелизм вычислении: к примеру, в случае нашей системы из двух кубитов мы как бы оперируем одновременно со всеми возможными ее состояниями: 00, 01, 11, 10.
Чтобы интерпретировать ответ, надо заранее условиться, что какой-то бит — допустим, первый — это бит ответа. Пусть алгоритм проработал, у нас получился какой-то вектор, не обязательно базисный. Тогда мы можем сказать, что первый бит с некоторой вероятностью равен 1. И требование к алгоритму такое: если ответ «да», то вероятность того, что первый бит равен 1, должна быть больше двух третей. А если ответ «нет», вероятность того, что будет ноль, должна быть тоже больше двух третей.
Задачи, реализуемые на КВ.
Известно два примера нетривиальных задач, в которых KB дают радикальный выигрыш.
Первый из них — задача разложения целых чисел на простые множители и, как следствие, вычисления дискретного логарифма (ДЛ). Дальше речь пойдет именно о ДЛ.
Пусть у нас есть поле вычетов по модулю простого числа. В нем есть первообразные корни — такие вычеты, чьи степени порождают все ненулевые элементы. Если задан такой корень и задана степень, то возвести в степень можно быстро (например, сначала возводим в квадрат, потом получаем четвертую степень, и т. д.) Дискретный логарифм — это обратная задача. Дан первообразный корень и какой-то элемент поля; найти, в какую степень нужно возвести этот корень, чтобы получить данный элемент. Вот эта задача уже считается сложной. Настолько сложной, что ряд современных криптографических систем основан на том предположении, что вычислить ДЛ за приемлемое время невозможно, если модуль — достаточно большое простое число.
Так вот, для дискретного логарифма есть эффективный квантовый алгоритм. Его придумал Шор в конце 1994 года. После его статьи и начался взрыв публикаций по КВ. Независимо от него, Алексей Китаев из ИТФ им. Ландау построил квантовый алгоритм для этой и некоторых более общих задач [8]. Идеи у них были разные.
Шор использовал примерно такую идею, она существенно квантовая: рассмотрим базис в фазовом пространстве. Он состоит из классических состояний. Но в линейном пространстве много базисов. Мы можем найти некий оператор, который эффективно строит другой базис; мы можем к нему перейти, сделать там какие-то вычисления, вернуться обратно и получить нечто совершенно отличное от того, что мы имели бы в классическом базисе. Одна из возможностей использовать квантовость состоит в том, что мы строим какой-то странный базис, в нем что-то делаем, возвращаемся обратно и интерпретируем результат. Шор именно эту идею и реализовал. Причем преобразование оказалось такое, которое и в физике, и в математике имеет принципиальное значение — дискретное преобразование Фурье.
Его можно представить в виде тензорного произведения операторов, которые действуют на каждый из кубитов такой матрицей:
Китаев придумал примерно следующее. Есть некоторая ячейка — основной регистр, где мы записываем наши данные нулями и единицами. И еще есть один управляющий кубит. Мы работаем так: у нас реализована процедура умножения на первообразный корень, на квадрат первообразного корня, и т. д. Управляющий кубит переводим в некоторое смешанное состояние, дальше строим такой оператор, который, в зависимости оттого, ноль или единица в этом управляющем кубите, либо применяет умножение к нашему основному регистру, либо не применяет. А потом кубит опять возвращаем в смешанное состояние. Оказывается, что это эффективный способ проделать некоторое измерение. То есть Китаев заметил, что одна из вещей, которые мы можем эффективно делать на квантовом компьютере, — это имитировать процесс квантового измерения. В данной задаче из результатов этих измерений эффективно извлекается ответ.
Сам процесс вычислений, происходит так: мы все время умножаем одну и ту же ячейку на некие константы, результаты измерений записываем, а потом производим своего рода обработку результатов эксперимента — уже чисто классическими вычислениями. Вся квантовая часть заключается в том, что где-то рядом с нашим регистром находится в некоем смешанном состоянии коррелированный с ним кубит, и мы его периодически наблюдаем.
Для вычисления ДЛ числа, записанного N битами, нужно потратить N3 единиц времени. Вполне реализуемо — на КК, естественно. Но здесь надо заметить, что никто пока не доказал, что не существует столь же быстрого алгоритма для вычисления ДЛ на обычной машине.
Вторая задача предложена Гровером (L. Grover) [9].Рассмотрим базу данных, содержащую 2 N записей. Мы хотим найти ровно одну запись. Имеется некая процедура определения того, нужную запись мы взяли или нет. Записи не упорядочены. С какой скоростью мы можем решить эту задачу на обычном компьютере? В худшем случае нам придется перебрать все 2 N записей — это очевидно. Оказывается, что на КК достаточно числа запросов порядка корня из числа записей – 2 N/2 .
Интересная задача — создание оптимальных микросхем. Пусть есть функция, которую нужно реализовать микросхемой, и эта функция задана программой, использующей полиномиально ограниченную память. Построение нужной микросхемы с минимальным числом функциональных элементов — задача PSPACE. Поэтому появление устройств, эффективно решающих PSPACE-задачи, позволило бы единообразно проектировать оптимальные по своим показателям вычислительные устройства обычного типа. Кроме того, в PSPACE попадает большинство задач «искусственного интеллекта»: машинное обучение, распознавание образов и т.д.
Так вот, точно установлено, что KB находятся где-то между обычными вероятностными вычислениями и PSPACE. Если все же окажется, что KB можно эффективно реализовать на классических вероятностных машинах, не будет смысла в физической реализации квантовых машин. Если же выяснится, что при помощи KB можно эффективно решать те или иные PSPACE-задачи, то физическая реализация КК откроет принципиально новые возможности.
Есть еще одна область применения КК, где заведомо возможен радикальный выигрыш у существующих технологий. Это моделирование самих квантовых систем.
Давайте посмотрим на такой вопрос: как можно эволюцию квантовой системы изучать на обычном компьютере? Это постоянно делается, так как это задача важна для химии, молекулярной биологии, физики и т.п. Но, за счет экспоненциального роста размерности при тензорном произведении, для моделирования десяти спинов вам нужно оперировать с тысячемерным пространством, сто спинов — это уже конец. А если вспомнить, что в молекуле белка десятки тысяч атомов, то… Там, правда, не всюду существенно именно квантовое моделирование, но в целом ясно, что есть очень серьезные препятствия для моделирования квантовых систем на классических компьютерах. Так что если создать вычислительное устройство, которое ведет себя квантовым образом, то по крайней мере один важный класс задач на нем есть смысл решать — можно моделировать реальные квантовые системы, возникающие в физике, химии, биологии.
Проблемы создания КК.
Когда начался бум вокруг квантовых вычислений, физики высказывались об этом более чем скептически. Модель квантовых вычислений не противоречит законам природы, но это еще не значит, что ее можно реализовать. К примеру, можно вспомнить создание атомного оружия и управляемый термояд.
А если говорить о КК, надо отметить одну очень серьезную проблему. Дело в том, что любая физическая реализация будет приближенной. Во-первых, мы не сможем сделать прибор, который будет давать нам произвольный вектор фазового пространства. Во-вторых, работа любого устройства подвержена всяческим случайным ошибкам. А уж в квантовой системе — пролетит какой-нибудь фотон, провзаимодействует с одним из спинов, и все поменяется. Поэтому сразу возник вопрос, можно ли, хотя бы в принципе, организовать вычисления на ненадежных квантовых элементах, чтобы результат получался со сколь угодно большой достоверностью. Такая задача для обычных компьютеров решается просто — например, за счет введения дополнительных битов.
В случае КК эта проблема гораздо глубже. То место, где возникает новое качество KB по сравнению с обычными вычислениями, — это как раз сцепленные состояния — линейные комбинации базисных векторов фазового пространства. У вас есть биты, но они не сами по себе живут в каких-то состояниях — это был бы просто вероятностный компьютер (компьютер, дающий тот или иной ответ с определенной вероятностью), — а они находятся в некоем смешанном состоянии, причем согласованно-смешанном. Из-за этого в КК нельзя, например, просто взять и скопировать один бит в другой! Обычная интуиция из теории алгоритмов здесь неприменима.
Так что проблема надежности довольно сложна, даже на уровне чистой теории. Те люди, которые активно занимаются KB, активно ее решали и добились успеха: доказано, что, как и в классике, можно делать вычисления на элементах с заданной надежностью сколь угодно точно. Это реализовано с помощью некоего аналога кодов, исправляющих ошибки.
Что касается технической стороны появляются сообщения, что создаются реальные квантовые системы с небольшим числом битов — с двумя, скажем. Экспериментальные, в железе, так сказать.
Так что эксперименты есть, но пока очень далекие от реальности. Два бита — это и для классического и для квантового компьютера слишком мало! Чтобы моделировать молекулу белка, нужно порядка ста тысяч кубитов. Для ДЛ, чтобы вскрывать шифры, достаточно примерно тысячи кубитов.
Задача эта возникла слишком недавно, и не исключено, что она потребует каких-то фундаментальных исследований в самой физике. Поэтому в обозримом будущем ожидать появления квантовых компьютеров не приходится.
Но можно ожидать распространения через не очень долгое время квантовых криптографических систем. Квантовая криптография позволяет обмениваться сообщениями так, что враг, если попытается подслушать, сможет разве что разрушить ваше сообщение. То есть оно не дойдет до адресата, но перехватить его в принципе будет нельзя. Подобные системы, которые уже реализованы, используют световод. Универсальный КК здесь не нужен. Нужно специализированное квантовое устройство, способное выполнять только небольшой набор операций, — своего рода квантовый кодек.
Физической системе, реализующей квантовый компьютер, можно предъявить пять требований:
1. Система должна состоять из точно известного числа частиц.
2. Должна быть возможность привести систему в точно известное начальное состояние.
3. Степень изоляции от внешней среды должна быть очень высока.
4. Надо уметь менять состояние системы согласно заданной последовательности унитарных преобразований ее фазового пространства.
5. Необходимо иметь возможность выполнять «сильные измерения» состояния системы (то есть такие, которые переводят ее в одно из чистых состояний).
Из этих пяти задач наиболее трудными считаются третья и четвертая. От того, насколько точно они решаются, зависит точность выполнения операций. Пятая задача тоже весьма неприятна, так как измерить состояние отдельной частицы нелегко.
Физические основы организации КК.
Итак, что же это за тайное оружие такое — КК? Остроумная идея заключается в использовании для хранения, передачи и обработки информации существенно квантовых свойств вещества. В основном такие свойства проявляют объекты микромира: элементарные частицы, атомы, молекулы и небольшие сгустки молекул, так называемые кластеры. (Хотя, конечно, и в жизни макромира квантовая механика играет важную роль. В частности, только с ее помощью можно объяснить такое явление, как ферромагнетизм.) Одним из квантовых свойств вещества является то, что некоторые величины при измерении (наблюдении) могут принимать значения лишь из заранее определенного дискретного набора. Такой величиной, например, является проекция собственного момента импульса, или, иначе говоря, спина элементарной частицы, на любую заданную ось. Например, у электрона возможно только два значения проекции: +1/2 или –1/2. Таким образом, количество информации, необходимое для сообщения о проекции, равно одному биту. Записав в классическую однобитную ячейку памяти определенное значение, мы именно его оттуда и прочтем, если не произойдет какой-нибудь ошибки.
Классической ячейкой может послужить и спин электрона. Однако квантовая механика позволяет записать в проекции спина больше информации, чем в классике.
Для описания поведения квантовых систем было введено понятие волновой функции. Существуют волновые функции, называемые собственными для какой-то конкретной измеряемой величины. В состоянии, описываемом собственной функцией, значение этой величины может быть точно предсказано до ее измерения. Именно с такими состояниями работает обычная память. Квантовая же система может находиться и в состоянии с волновой функцией, равной линейной комбинации собственных функции, соответствующих каждому из возможных значений (назовем здесь такие состояния сложными). В сложном состоянии результат измерения величины не может быть предсказан заранее. Заранее известно только, с какой вероятностью мы получим то или иное значение. В отличие от обычного компьютера, в квантовом для представления данных используются такие ячейки памяти, которые могут находиться в сложном состоянии. В нашем примере мы определили бы, что спин электрона с определенной вероятностью смотрит вверх и вниз, то есть можно сказать, что в кубит записаны сразу и 0, и 1. Количество информации, содержащееся в такой ячейке, и саму ячейку называют квантовым битом, или, сокращенно, кубитом. Согласитесь, ячейки в сложных состояниях весьма необычны для классической теории информации. Каждому возможному значению величины, представленной кубитом, соответствует вероятность, с которой это значение может быть получено при чтении. Эта вероятность равна квадрату модуля коэффициента, с которым собственная функция этого значения входит в линейную комбинацию. Именно вероятность и является информацией, записанной в кубит.
Квантовую механику не случайно называют иногда волновой механикой. Дело в том, что квантово-механические волновые функции ведут себя подобно световой или какой-либо другой волне. И для волновых функций, благодаря их способности интерферировать, также может быть введено понятие когерентности. Именно это свойство используется в когерентном квантовом компьютере. Набор кубитов представляется когерентными волновыми функциями. Оказывается, что существует вполне определенный класс воздействий на квантовую систему, называемый унитарными преобразованиями, при которых не теряется записанная в кубит информация и не нарушается когерентность волновых функций кубитов. Унитарные преобразования обратимы — по результату можно восстановить исходные данные. После прохождения через квантовый процессор, использующий унитарные преобразования, волновые функции кубитов заставляют интерферировать друг с другом, наблюдая получающуюся картину и судя по ней о результате вычисления.
Из-за того, что для представления информации используются кубиты, в которых записано сразу оба значения — и , и 1, в процессе вычислений происходит параллельная обработка сразу всех возможных вариантов комбинаций битов в процессорном слове. Таким образом, в КК реализуется естественный параллелизм, недоступный классическим компьютерам. За счет возможности параллельной работы с большим числом вариантов, в идеале равным 2 N (где N — число кубитов), квантовому компьютеру необходимо гораздо меньше времени для решения определенного класса задач. К ним относятся, например, задача разложения числа на простые множители или поиск в большой базе данных. Для когерентного компьютера уже предложены алгоритмы, использующие его уникальные свойства. Кроме того, предполагается использовать КК для моделирования квантовых систем, что трудно или вообще невозможно сделать на обычных компьютерах из-за нехватки мощности или по принципиальным соображениям.
Все существующие на сегодняшний день обычные компьютеры, даже с параллельной обработкой информации на многих процессорах, могут быть смоделированы так называемым клеточным автоматом Тьюринга. Это существенно детерминированная и дискретная машина. С возникновением и обсуждением идей квантовых вычислений стала активно развиваться квантовая теория информации и, в частности, теория квантовых клеточных автоматов — ККА. Квантовый клеточный автомат является обобщением автомата Тьюринга для КК. Сформулирована гипотеза, гласящая, что каждая конечным образом реализуемая физическая система может быть достаточно хорошо смоделирована универсальной моделью квантовой вычислительной машины, использующей ограниченное количество ресурсов. Для одного из предложенных типов ККА теоретически уже доказано, что он подходит для такого моделирования и не противоречит квантовой теории.
Пытаясь осуществить свой замысел, ученые упираются в проблему сохранения когерентности волновых функций кубитов, так как потеря когерентности хотя бы одним из кубитов разрушила бы интерференционную картину. В настоящее время основные усилия экспериментальных рабочих групп направлены на увеличение отношения времени сохранения когерентности ко времени, затрачиваемому на одну операцию (это отношение определяет число операций, которые можно успеть провести над кубитами). Главной причиной потери когерентности является связь состояний, используемых для кубитов, со степенями свободы, не участвующими в вычислениях. Например, при передаче энергии электрона в возбужденном атоме в поступательное движение всего атома. Мешает и взаимодействие с окружающей средой, например, с соседними атомами материала компьютера или магнитным полем Земли, но это не такая важная проблема. Вообще, любое воздействие на когерентную квантовую систему, которое принципиально позволяет получить информацию о каких-либо кубитах системы, разрушает их когерентность. Потеря когерентности может произойти и без обмена энергией с окружающей средой.
Воздействием, нарушающим когерентность, в частности, является и проверка когерентности. При коррекции ошибок возникает своего рода замкнутый круг: для того чтобы обнаружить потерю когерентности, нужно получить информацию о кубитах, а это, в свою очередь, также нарушает когерентность. В качестве выхода предложено много специальных методов коррекции, представляющих также и большой теоретический интерес. Все они построены на избыточном кодировании.
Если в области передачи информации уже созданы реально работающие системы и до коммерческих продуктов осталось лишь несколько шагов, то коммерческая реализация квантового когерентного процессора — дело будущего. К настоящему времени КК научился вычислять сумму 1+1! Это большое достижение, если учесть, что в виде результата он выдает именно 2, а не 3 и не . Кроме того, не следует забывать, что и первые обычные компьютеры были не особенно мощны.
Сейчас ведется работа над двумя различными архитектурами процессоров: типа клеточного автомата и в виде сети логических элементов. Пока не известно о каких-либо принципиальных преимуществах одной архитектуры перед другой. Как функциональная основа для логических элементов квантового процессора более или менее успешно используется целый ряд физических явлений. Среди них — взаимодействие одиночных поляризованных фотонов или лазерного излучения с веществом или отдельными атомами, квантовые точки, ядерный магнитный резонанс и — наиболее многообещающий — объемный спиновый резонанс. Процессор, построенный на последнем принципе, в шутку называют «компьютером в чашке кофе» — из-за того, что в нем работают молекулы жидкости при комнатной температуре и атмосферном давлении. Кроме этих эффектов есть довольно хорошо развитая технология логических элементов и ячеек памяти на джозефсоновских переходах, которую можно при соответствующих условиях приспособить под когерентный процессор.
Теорию, описывающую явления, лежащие в основе первого типа логических ячеек, называют квантовой электродинамикой в полости или резонаторе. Кубиты хранятся в основных и возбужденных состояниях атомов, расположенных некоторым образом на равных расстояниях в оптическом резонаторе. Для каждого атома используется отдельный лазер, приводящий его в определенное состояние с помощью короткого импульса. Взаимовлияние атомных состояний происходит посредством обмена фотонов в резонаторе. Основными причинами разрушения когерентности здесь служат спонтанное излучение и выход фотонов за пределы резонатора.
В элементах на основе ионов в линейных ловушках кубиты хранятся в виде внутренних состояний пойманных ионов. Для управления логикой и для манипулирования отдельными кубитами также используются лазеры. Унитарные преобразования осуществляются возбуждением коллективных квантованных движений ионов. Источниками некогерентности является спонтанный распад состояний ионов в другие внутренние состояния и релаксация в колебательные степени свободы.
Сильно отличается от двух предыдущих «компьютер в чашке кофе». Благодаря достоинствам данного метода этот компьютер является наиболее реальным претендентом на то, чтобы достигнуть разрядности 10 бит в ближайшее время. В компьютере на коллективном спиновом резонансе работают молекулы обычных жидкостей (без всяких квантовых вывертов типа сверхтекучести). В качестве кубитов используется ориентация ядерных спинов. Работа логических ячеек и запись кубитов осуществляется радиочастотными электромагнитными импульсами со специально подобранными частотой и формой. В принципе, прибор похож на обычные приборы ядерного магнитного резонанса (ЯМР) и использует аналогичную аппаратуру. Жизнеспособность этого подхода обеспечивается, с одной стороны, очень слабой связью ядерных спинов с окружением и, потому, большим временем сохранения когерентности (до тысяч секунд). Эта связь ослаблена из-за экранирования ядерных спинов спинами электронов из оболочек атомов. С другой стороны, можно получить сильный выходной сигнал, так как для вычислений параллельно используется большое количество молекул. «Не так уж сложно измерить спин четвертого ядра у какого-то типа молекул, если у вас имеется около числа Авогадро (~1023 ) таких молекул», — говорит Ди Винченцо (Di Vincenzo), один из исследователей. Для определения результата непрерывно контролируют излучение всего ансамбля. Такое измерение не приводит к потере когерентности в компьютере, как было бы в случае использования только одной молекулы.
Ядерные спины в молекулах жидкости при комнатной температуре хаотически разупорядочены, их направления равномерно распределены от 0 до 4p. Проблема записи и считывания кажется непреодолимой из-за этого хаоса. При воздействии магнитного поля спины начинают ориентироваться по полю. После снятия поля через небольшое время система снова приходит к термодинамическому равновесию, и в среднем лишь около миллионной доли всех спинов остается в состоянии с ориентацией по направлению поля. Однако благодаря тому, что среднее значение сигнала от хаотически направленных спинов равно нулю, на этом фоне можно выделить довольно слабый сигнал от «правильных» спинов. Вот в этих-то молекулах с правильными ядерными спинами и размещают кубиты. Для коррекции ошибок при записи N кубитов используют2N или больше спинов. Например, дляN =1 выбираются такие жидкости, где какие-то два спина ядер в одной молекуле после определенного воздействия полем могут быть ориентированны только одинаково. Тогда по направлению второго спина при снятии результата обработки можно отсеять нужные молекулы, никак не влияя на первый спин.
Как уже было сказано, обработка битов осуществляется радиоимпульсами. Основным логическим элементом является управляемый инвертор. Из-за спин-спинового взаимодействия резонансная частота, при которой происходит опрокидывание одного спина, зависит от направления другого.
Что касается квантовой передачи данных, к настоящему времени экспериментально реализованы системы обмена секретной информацией по незащищенному от несанкционированного доступа каналу. Они основаны на фундаментальном постулате квантовой механики о невозможности измерения состояния без оказания влияния на него. Подслушивающий всегда изменяет состояние кубитов, которые он подслушал, и это может быть зафиксировано связывающимися сторонами. Данная система защиты информации абсолютно надежна, так как способов обойти законы квантовой механики пока еще никто не выдумал.
Вместо заключения…
Пока квантовым компьютерам по плечу только наиболее простые задачи — например, они уже умеют складывать 1 и 1, получая в результате 2. Было также запланировано взятие другого важного рубежа — факторизации числа 15, его предстоит разложить на простые множители — 3 и 5. А там, глядишь, дойдет дело и до более серьезных задач.
Опытные образцы сейчас содержат менее десяти квантовых битов. По мнению Нейла Гершенфельда (Nell Gershenfeld), участвовавшего в создании одной из первых действующих моделей квантового компьютера, необходимо объединить не менее 50-100 кубитов, чтобы решать полезные с практической точки зрения задачи. Интересно, что добавление каждого следующего кубита в квантовый компьютер на эффекте объемного спинового резонанса требует увеличения чувствительности аппаратуры в два раза. Десять дополнительных кубитов, таким образом, потребуютувеличения чувствительности в 1000 раз, или на 60 дБ. Двадцать — в миллион раз, или на 120 дБ...
He исключено, что в информационном обществе появление квантового компьютера сыграет ту же роль, что в свое время, в индустриальном, — изобретение атомной бомбы. Действительно, если последняя является средством «уничтожения материи», то первый может стать средством «уничтожения информации» — ведь очень часто то, что известно всем, не нужно никому.
Литература, содержащая основную информацию о КК.
1. Feynman R. Int. J. Theor. Phys. 21, 1982.
2. Манин Ю.И. Вычислимое и невычислимое. — М.: Советское радио, 1980.
3. Feynman R. Quantum mechanical computers. // Optics News, February 1985, 11, p.11.
4. Deutsch D. Quantum theory, the Church-Turing principle and the universal quantum computer. — Proc. R. Soc. London A 400, 97, 1985.
5. Deutsch D. Quantum computational networks. — Proc. R. Soc. London A 425, 73, 1989.
6. Yao А. С.-С. Quantum circuit complexity. //Proceedings of the 34th Annual Symposium on the Foundations of Computer Science, IEEE Computer Society Press, Los Alamitos, CA, 1993, p. 352.
7. Shor P.W. Algorithms for Quantum Computation: Discrete log and Factoring. // Proceedings of the 35th Annual Symposium on the Foundations of Computer Science, edited by S. Goldwasser, IEEE Computer Society Press, Los Alamitos, CA, 1994, p.124.
8. Китаев A.Ю. Квантовые вычисления: алгоритмы и исправление ошибок. //Успехи математических наук.
9. Grover L. Afast quantum mechanical algorithm for database search. //Proceedings of the 28th Annual ACM Symposium on Theory of Computing, 1996, pp. 212-219.
10. Kitaev A.Yu. Quantum measurements and the Abelian stabilizer problem. — LANL e-print quant-ph/9511026, xxx.lanl.gov.
11. Shor P.W. Fault-Tolerant Quantum Computation. — LANL e-print quant-ph/9005011, xxx.lanl.gov.
12. Bennett С.Н., Bernstein E., Brassard G., Vazirany U. Strengths and Weaknesses of Quantum Computing. — LANL e-print quant-ph/9701001, xxx.lanl.gov, to appear in SIAM J. On Computing.
www.ronl.ru
Реферат Квантовые компьютеры
МИНИСТЕРСТВО ОБЩЕГО И ПРОФЕССИОНАЛЬНОГО ОБРАЗОВАНИЯ РФАСТРАХАНСКИЙ ГОСУДАРСТВЕННЫЙ ПЕДАГОГИЧЕСКИЙ УНИВЕРСИТЕТкафедра теоретической физикиРЕФЕРАТ
на тему:
«Квантовые компьютеры»Выполнил:
студент 154 группы ФМФ
Безниско Евгений.Руководитель:
к.ф.-м.н., доцент
Джалмухамбетов А.У.Астрахань – 2000 г.
Предпосылки создания квантовых компьютеров.
Уже сейчас существует множество систем, в работе которых квантовые эффекты играют существенную роль. Одним из наиболее известных примеров может служить лазер: поле его излучения порождается квантово-механическими событиями - спонтанным и индуцированным излучением света. Другим важным примером таких систем являются современные микросхемы - непрерывное ужесточение проектных норм приводит к тому, что квантовые эффекты начинают играть в их поведении существенную роль. В диодах Ганна возникают осцилляции электронных токов, в полупроводниках образуются слоистые структуры: электроны или дырки в различных запертых состояниях могут хранить информацию, а один или несколько электронов могут быть заперты в так называемых квантовых ямах.
Сейчас ведутся разработки нового класса квантовых устройств - квантовых компьютеров. Идея квантового компьютера возникла так.
Все началось в 1982 году, когда Фейнман написал очень интересную статью [1], в которой рассмотрел два вопроса. Он подошел к процессу вычисления как физик: есть чисто логические ограничения на то, что можно вычислить (можно придумать задачу, для которой вообще нет алгоритма, можно придумать задачу, для которой любой алгоритм будет долго работать). А есть ли ограничения физические? Вот есть закон сохранения энергии - вечный двигатель невозможен; а есть ли какое-нибудь физическое ограничение на функционирование компьютера, которое накладывает некие запреты на реализуемость алгоритмов? И Фейнман показал, что термодинамических ограничений, типа второго начала термодинамики, нет. Если мы будем уменьшать потери энергии, шумы, то мы можем сделать сколь угодно длинные вычисления со сколь угодно малыми затратами энергии. Это означает, что вычисления можно сделать обратимым образом - потому что в необратимых процессах энтропия возрастает. Собственно, Фейнмана это и заинтересовало: ведь реальное вычисление на реальном компьютере необратимо. И полученный им результат состоит в том, что можно так переделать любое вычисление - без особой потери эффективности, - чтобы оно стало обратимым. Те вычисления, которые делаются «просто так», конечно, необратимы, но «рост необратимости» пренебрежимо мал по сравнению, скажем, с шумами в современном компьютере. То есть необратимость - это тонкий эффект; тут вопрос не практический а принципиальный: если представить себе, что технология дойдет до такого уровня, что этот эффект станет существенным, то можно так перестроить вычисления, чтобы добиться обратимости.
И в этой же работе Фейнман обратил внимание на то, что если у нас имеется устройство квантовое, то есть подчиняющееся законам квантовой механики, то его вычислительные возможности совершенно не обязательно должны совпадать с возможностями обычного устройства. Возникают некоторые дополнительные возможности. Но пока непонятно, позволяют они получить какой-то выигрыш или нет. Фактически, он и поставил своей статьей такой вопрос.
Кстати, Ю.И. Манин в конце семидесятых годов написал две популярные книжки по логике - «Вычислимое и невычислимое» и «Доказуемое и недоказуемое», и в одной из них есть сюжет про квантовые автоматы, где он говорит о некоторых кардинальных отличиях этих автоматов от классических [2].
В середине восьмидесятых годов появились работы Дойча (D. Deutsch), Бернстайна и Вазирани (Е. Bernstein, U. Vazirani), Яo (A. Уао). В них были построены формальные модели квантового компьютера - например, квантовая машина Тьюринга [3-6].
Следующий этап - статья Шора (Р.W. Shor) 1994 года [7], вызвавшая лавинообразный рост числа публикаций о квантовых вычислениях. Шор построил квантовый (то есть реализуемый на квантовом компьютере) алгоритм факторизации (разложения целых чисел на множители - используется в том числе для вскрытия зашифрованных сообщений). Все известные алгоритмы для обычного компьютера - экспоненциальные (время их работы растет как экспонента от числа знаков в записи факторизуемого числа). Факторизация 129-разрядного числа потребовала 500 MIPS-лет, или восемь месяцев непрерывной работы системы из 1600 рабочих станций, объединенных через Интернет. А при числе разрядов порядка 300 это время существенно превзойдет возраст Вселенной - даже если работать одновременно на всех существующих в мире машинах. Считается (хотя это и не доказано!), что быстрого алгоритма решения этой задачи не существует. Более того, гарантией надежности большинства существующих шифров является именно сложность решения задачи факторизации или одной из родственных ей теоретико-числовых задач, например - дискретного логарифма. И вдруг выясняется, что на квантовом компьютере эта задача имеет всего лишь кубическую сложность! Перед квантовым компьютером классические банковские, военные и другие шифры мгновенно теряют всякую ценность. Короче говоря, работа Шора показала, что вся эта изысканная академическая деятельность непосредственно касается такой первобытной стихии, как деньги. После этого и началась настоящая популярность...
Впрочем, выясняется, что не только классическая, но и квантовая криптография (наука о шифровании сообщений) часто не способна противостоять квантовой криптоаналитике (науке о расшифровке). Некоторые важные криптографические протоколы, такие как «подбрасывание монеты по телефону», рушатся при переходе к квантовым вычислениям. Точнее, гарантией их надежности является отныне не сложность тех или иных алгоритмов, а сложность задачи создания квантового компьютера.
Таким образом возникает новая отрасль вычислений – квантовые вычисления. Квантовые вычисления (КВ) - это, как можно догадаться, вычисления на квантовом компьютере. Квантовых компьютеров на свете пока нет. Более того, до сих пор неясно, когда появятся практически полезные конструкции и появятся ли вообще. Тем не менее, квантовые вычисления - предмет, чрезвычайно модный сейчас в математике и физике, как теоретической, так и экспериментальной, и занимается им довольно много людей. Судя по всему, именно интерес стимулировал первопроходцев - Ричарда Фейнмана, написавшего пионерскую работу, в которой ставился вопрос о вычислительных возможностях устройств на квантовых элементах; Дэвида Дойча, формализовавшего этот вопрос в рамках современной теории вычислений; и Питера Шора, придумавшего первый нетривиальный квантовый алгоритм. Типы квантовых компьютеров.
Строго говоря, можно выделить два типа квантовых компьютеров. И те, и другие основаны на квантовых явлениях, только разного порядка.
Представителями первого типа являются, например, компьютеры, в основе которых лежит квантование магнитного потока на нарушениях сверхпроводимости - Джозефсоновских переходах. На эффекте Джозефсона уже сейчас делают линейные усилители, аналого-цифровые преобразователи, СКВИДы и корреляторы. Известен проект создания RISC-процессора на RSFQ-логике (Rapid Single Flux Quantum). Эта же элементная база используется в проекте создания петафлопного (1015 оп./с) компьютера. Экспериментально достигнута тактовая частота 370 ГГц, которая в перспективе может быть доведена до 700 ГГц. Однако время расфазировки волновых функций в этих устройствах сопоставимо со временем переключения отдельных вентилей, и фактически на новых, квантовых принципах реализуется уже привычная нам элементная база - триггеры, регистры и другие логические элементы.
Другой тип квантовых компьютеров, называемых еще квантовыми когерентными компьютерами, требует поддержания когерентности волновых функций используемых кубитов в течение всего времени вычислений - от начала и до конца (кубитом может быть любая квантомеханическая система с двумя выделенными энергетическими уровнями). В результате, для некоторых задач вычислительная мощность когерентных квантовых компьютеров пропорциональна 2N, где N - число кубитов в компьютере. Именно последний тип устройств имеется в виду, когда говорят о квантовых компьютерах.Математические основы функционирования квантовых компьютеров.
Классический компьютер состоит, грубо говоря, из некоторого числа битов, с которыми можно выполнять арифметические операции. Основным элементом квантового компьютера (КК) являются квантовые биты, или кубиты (от Quantum Bit, qubit). Обычный бит - это классическая система, у которой есть только два возможных состояния. Можно сказать, что пространство состояний бита - это множество из двух элементов, например, из нуля и единицы. Кубит же - это квантовая система с двумя возможными состояниями. Имеется ряд примеров таких квантовых систем: электрон, у которого спин может быть равен либо +1/2 либо –1/2, атомы в кристаллической решетке при некоторых условиях. Но, поскольку система квантовая, ее пространство состояний будет несравненно богаче. Математически кубит - это двумерное комплексное пространство.
В такой системе можно выполнять унитарные преобразования пространства состояний системы. С точки зрения геометрии такие преобразования - прямой аналог вращении и симметрий обычного трехмерного пространства. Согласно принципу суперпозиции вы можете складывать состояния, вычитать их, умножать на комплексные числа. Эти состояния образуют фазовые пространства. При объединении двух систем полученное фазовое пространство будет их тензорным произведением. Эволюция системы в фазовом пространстве описывается унитарными преобразованиями фазового пространства.
Так вот, в квантовом компьютере аналогичная ситуация. Он тоже работает с нулями и единицами. Но его функциональные элементы реализуют действия прямо в фазовом пространстве некоторой квантовой системы - при помощи унитарных преобразований этого пространства.
Конечно, унитарные преобразования не могут быть произвольными - они должны удовлетворять некоторым естественным ограничениям. Например, в случае обычной логики достаточно иметь три операции: конъюнкция, дизъюнкция, отрицание. Все можно реализовать, используя только эти три операции. Точно так же и в квантовом случае есть некоторый набор операторов, действующих только на три бита, с помощью которых можно все реализовать. Там есть даже более тонкие результаты: можно ограничиться классическими операторами на нескольких битах, а квантовые операторы будут действовать только на один бит. То есть классический набор операций {конъюнкция, дизъюнкция, отрицание} можно заменить на такой: {конъюнкция, дизъюнкция, квантовое отрицание}, где квантовое отрицание - это произвольное унитарное преобразование одного кубита.
Фазовое пространство КК есть тензорное произведение кубитов. Если в каждом кубите фиксирован базис (он будет состоять из двух векторов), то фазовое пространство - это комплексное линейное пространство, базис которого индексирован словами из нулей и единиц. Таким способом двоичное слово на входе определяет базисный вектор.
Итак, вход - двоичное слово, определяющее один из базисных векторов. Сам же алгоритм - предписанная последовательность элементарных операторов. Применяем эту последовательность к вектору на входе, в результате получаем некоторый вектор на выходе.
Так вот, согласно квантовой механике (КМ), пока система эволюционирует под действием наших унитарных операторов, мы не можем сказать, в каком именно классическом состоянии она находится. То есть она находится в каком-то квантовом состоянии, но измеряем-то мы, когда общаемся с системой, все равно какие-то классические значения. Как это понимается в КМ? В фазовом пространстве фиксируется некоторый базис, и вектор состояния разлагается по этому базису. Это математическая формализация процедуры измерения в КМ. То есть если мы имеем дело с системой, у которой «то ли спин влево, то ли спин вправо», и если мы все-таки посмотрим, какой спин, то мы получим одно из двух в любом случае. А вот вероятности того, что мы получим тот или другой результат, - это как раз квадраты модуля коэффициентов разложения. КМ утверждает, что точно предсказать результат измерения нельзя, но вероятности возможных результатов вычислить можно.
Вероятность возникает в процессе измерения. А пока система живет, для нас существенно, что там есть сам этот вектор.
Другими словами, существенно, что система «находится одновременно во всех возможных состояниях». Как пишут многие авторы популярных введений в KB, возникает совершенно чудовищный параллелизм вычислении: к примеру, в случае нашей системы из двух кубитов мы как бы оперируем одновременно со всеми возможными ее состояниями: 00, 01, 11, 10.
Чтобы интерпретировать ответ, надо заранее условиться, что какой-то бит - допустим, первый - это бит ответа. Пусть алгоритм проработал, у нас получился какой-то вектор, не обязательно базисный. Тогда мы можем сказать, что первый бит с некоторой вероятностью равен 1. И требование к алгоритму такое: если ответ «да», то вероятность того, что первый бит равен 1, должна быть больше двух третей. А если ответ «нет», вероятность того, что будет ноль, должна быть тоже больше двух третей.Задачи, реализуемые на КВ.
Известно два примера нетривиальных задач, в которых KB дают радикальный выигрыш.
Первый из них - задача разложения целых чисел на простые множители и, как следствие, вычисления дискретного логарифма (ДЛ). Дальше речь пойдет именно о ДЛ.
Пусть у нас есть поле вычетов по модулю простого числа. В нем есть первообразные корни - такие вычеты, чьи степени порождают все ненулевые элементы. Если задан такой корень и задана степень, то возвести в степень можно быстро (например, сначала возводим в квадрат, потом получаем четвертую степень, и т. д.) Дискретный логарифм - это обратная задача. Дан первообразный корень и какой-то элемент поля; найти, в какую степень нужно возвести этот корень, чтобы получить данный элемент. Вот эта задача уже считается сложной. Настолько сложной, что ряд современных криптографических систем основан на том предположении, что вычислить ДЛ за приемлемое время невозможно, если модуль - достаточно большое простое число.
Так вот, для дискретного логарифма есть эффективный квантовый алгоритм. Его придумал Шор в конце 1994 года. После его статьи и начался взрыв публикаций по КВ. Независимо от него, Алексей Китаев из ИТФ им. Ландау построил квантовый алгоритм для этой и некоторых более общих задач [8]. Идеи у них были разные.
Шор использовал примерно такую идею, она существенно квантовая: рассмотрим базис в фазовом пространстве. Он состоит из классических состояний. Но в линейном пространстве много базисов. Мы можем найти некий оператор, который эффективно строит другой базис; мы можем к нему перейти, сделать там какие-то вычисления, вернуться обратно и получить нечто совершенно отличное от того, что мы имели бы в классическом базисе. Одна из возможностей использовать квантовость состоит в том, что мы строим какой-то странный базис, в нем что-то делаем, возвращаемся обратно и интерпретируем результат. Шор именно эту идею и реализовал. Причем преобразование оказалось такое, которое и в физике, и в математике имеет принципиальное значение - дискретное преобразование Фурье.
Его можно представить в виде тензорного произведения операторов, которые действуют на каждый из кубитов такой матрицей:
Китаев придумал примерно следующее. Есть некоторая ячейка - основной регистр, где мы записываем наши данные нулями и единицами. И еще есть один управляющий кубит. Мы работаем так: у нас реализована процедура умножения на первообразный корень, на квадрат первообразного корня, и т. д. Управляющий кубит переводим в некоторое смешанное состояние, дальше строим такой оператор, который, в зависимости оттого, ноль или единица в этом управляющем кубите, либо применяет умножение к нашему основному регистру, либо не применяет. А потом кубит опять возвращаем в смешанное состояние. Оказывается, что это эффективный способ проделать некоторое измерение. То есть Китаев заметил, что одна из вещей, которые мы можем эффективно делать на квантовом компьютере, - это имитировать процесс квантового измерения. В данной задаче из результатов этих измерений эффективно извлекается ответ.
Сам процесс вычислений, происходит так: мы все время умножаем одну и ту же ячейку на некие константы, результаты измерений записываем, а потом производим своего рода обработку результатов эксперимента - уже чисто классическими вычислениями. Вся квантовая часть заключается в том, что где-то рядом с нашим регистром находится в некоем смешанном состоянии коррелированный с ним кубит, и мы его периодически наблюдаем.
Для вычисления ДЛ числа, записанного N битами, нужно потратить N 3 единиц времени. Вполне реализуемо - на КК, естественно. Но здесь надо заметить, что никто пока не доказал, что не существует столь же быстрого алгоритма для вычисления ДЛ на обычной машине.
Вторая задача предложена Гровером (L. Grover) [9]. Рассмотрим базу данных, содержащую 2N записей. Мы хотим найти ровно одну запись. Имеется некая процедура определения того, нужную запись мы взяли или нет. Записи не упорядочены. С какой скоростью мы можем решить эту задачу на обычном компьютере? В худшем случае нам придется перебрать все 2N записей - это очевидно. Оказывается, что на КК достаточно числа запросов порядка корня из числа записей – 2N/2.
Интересная задача - создание оптимальных микросхем. Пусть есть функция, которую нужно реализовать микросхемой, и эта функция задана программой, использующей полиномиально ограниченную память. Построение нужной микросхемы с минимальным числом функциональных элементов - задача PSPACE. Поэтому появление устройств, эффективно решающих PSPACE-задачи, позволило бы единообразно проектировать оптимальные по своим показателям вычислительные устройства обычного типа. Кроме того, в PSPACE попадает большинство задач «искусственного интеллекта»: машинное обучение, распознавание образов и т.д.
Так вот, точно установлено, что KB находятся где-то между обычными вероятностными вычислениями и PSPACE. Если все же окажется, что KB можно эффективно реализовать на классических вероятностных машинах, не будет смысла в физической реализации квантовых машин. Если же выяснится, что при помощи KB можно эффективно решать те или иные PSPACE-задачи, то физическая реализация КК откроет принципиально новые возможности.
Есть еще одна область применения КК, где заведомо возможен радикальный выигрыш у существующих технологий. Это моделирование самих квантовых систем.
Давайте посмотрим на такой вопрос: как можно эволюцию квантовой системы изучать на обычном компьютере? Это постоянно делается, так как это задача важна для химии, молекулярной биологии, физики и т.п. Но, за счет экспоненциального роста размерности при тензорном произведении, для моделирования десяти спинов вам нужно оперировать с тысячемерным пространством, сто спинов - это уже конец. А если вспомнить, что в молекуле белка десятки тысяч атомов, то... Там, правда, не всюду существенно именно квантовое моделирование, но в целом ясно, что есть очень серьезные препятствия для моделирования квантовых систем на классических компьютерах. Так что если создать вычислительное устройство, которое ведет себя квантовым образом, то по крайней мере один важный класс задач на нем есть смысл решать - можно моделировать реальные квантовые системы, возникающие в физике, химии, биологии.Проблемы создания КК.
Когда начался бум вокруг квантовых вычислений, физики высказывались об этом более чем скептически. Модель квантовых вычислений не противоречит законам природы, но это еще не значит, что ее можно реализовать. К примеру, можно вспомнить создание атомного оружия и управляемый термояд.
А если говорить о КК, надо отметить одну очень серьезную проблему. Дело в том, что любая физическая реализация будет приближенной. Во-первых, мы не сможем сделать прибор, который будет давать нам произвольный вектор фазового пространства. Во-вторых, работа любого устройства подвержена всяческим случайным ошибкам. А уж в квантовой системе - пролетит какой-нибудь фотон, провзаимодействует с одним из спинов, и все поменяется. Поэтому сразу возник вопрос, можно ли, хотя бы в принципе, организовать вычисления на ненадежных квантовых элементах, чтобы результат получался со сколь угодно большой достоверностью. Такая задача для обычных компьютеров решается просто - например, за счет введения дополнительных битов.
В случае КК эта проблема гораздо глубже. То место, где возникает новое качество KB по сравнению с обычными вычислениями, - это как раз сцепленные состояния - линейные комбинации базисных векторов фазового пространства. У вас есть биты, но они не сами по себе живут в каких-то состояниях - это был бы просто вероятностный компьютер (компьютер, дающий тот или иной ответ с определенной вероятностью), - а они находятся в некоем смешанном состоянии, причем согласованно-смешанном. Из-за этого в КК нельзя, например, просто взять и скопировать один бит в другой! Обычная интуиция из теории алгоритмов здесь неприменима.
Так что проблема надежности довольно сложна, даже на уровне чистой теории. Те люди, которые активно занимаются KB, активно ее решали и добились успеха: доказано, что, как и в классике, можно делать вычисления на элементах с заданной надежностью сколь угодно точно. Это реализовано с помощью некоего аналога кодов, исправляющих ошибки.
Что касается технической стороны появляются сообщения, что создаются реальные квантовые системы с небольшим числом битов - с двумя, скажем. Экспериментальные, в железе, так сказать.
Так что эксперименты есть, но пока очень далекие от реальности. Два бита - это и для классического и для квантового компьютера слишком мало! Чтобы моделировать молекулу белка, нужно порядка ста тысяч кубитов. Для ДЛ, чтобы вскрывать шифры, достаточно примерно тысячи кубитов.
Задача эта возникла слишком недавно, и не исключено, что она потребует каких-то фундаментальных исследований в самой физике. Поэтому в обозримом будущем ожидать появления квантовых компьютеров не приходится.
Но можно ожидать распространения через не очень долгое время квантовых криптографических систем. Квантовая криптография позволяет обмениваться сообщениями так, что враг, если попытается подслушать, сможет разве что разрушить ваше сообщение. То есть оно не дойдет до адресата, но перехватить его в принципе будет нельзя. Подобные системы, которые уже реализованы, используют световод. Универсальный КК здесь не нужен. Нужно специализированное квантовое устройство, способное выполнять только небольшой набор операций, - своего рода квантовый кодек.
Физической системе, реализующей квантовый компьютер, можно предъявить пять требований:
1. Система должна состоять из точно известного числа частиц.
2. Должна быть возможность привести систему в точно известное начальное состояние.
3. Степень изоляции от внешней среды должна быть очень высока.
4. Надо уметь менять состояние системы согласно заданной последовательности унитарных преобразований ее фазового пространства.
5. Необходимо иметь возможность выполнять «сильные измерения» состояния системы (то есть такие, которые переводят ее в одно из чистых состояний).
Из этих пяти задач наиболее трудными считаются третья и четвертая. От того, насколько точно они решаются, зависит точность выполнения операций. Пятая задача тоже весьма неприятна, так как измерить состояние отдельной частицы нелегко.Физические основы организации КК.
Итак, что же это за тайное оружие такое - КК? Остроумная идея заключается в использовании для хранения, передачи и обработки информации существенно квантовых свойств вещества. В основном такие свойства проявляют объекты микромира: элементарные частицы, атомы, молекулы и небольшие сгустки молекул, так называемые кластеры. (Хотя, конечно, и в жизни макромира квантовая механика играет важную роль. В частности, только с ее помощью можно объяснить такое явление, как ферромагнетизм.) Одним из квантовых свойств вещества является то, что некоторые величины при измерении (наблюдении) могут принимать значения лишь из заранее определенного дискретного набора. Такой величиной, например, является проекция собственного момента импульса, или, иначе говоря, спина элементарной частицы, на любую заданную ось. Например, у электрона возможно только два значения проекции: +1/2 или –1/2. Таким образом, количество информации, необходимое для сообщения о проекции, равно одному биту. Записав в классическую однобитную ячейку памяти определенное значение, мы именно его оттуда и прочтем, если не произойдет какой-нибудь ошибки.
Классической ячейкой может послужить и спин электрона. Однако квантовая механика позволяет записать в проекции спина больше информации, чем в классике.
Для описания поведения квантовых систем было введено понятие волновой функции. Существуют волновые функции, называемые собственными для какой-то конкретной измеряемой величины. В состоянии, описываемом собственной функцией, значение этой величины может быть точно предсказано до ее измерения. Именно с такими состояниями работает обычная память. Квантовая же система может находиться и в состоянии с волновой функцией, равной линейной комбинации собственных функции, соответствующих каждому из возможных значений (назовем здесь такие состояния сложными). В сложном состоянии результат измерения величины не может быть предсказан заранее. Заранее известно только, с какой вероятностью мы получим то или иное значение. В отличие от обычного компьютера, в квантовом для представления данных используются такие ячейки памяти, которые могут находиться в сложном состоянии. В нашем примере мы определили бы, что спин электрона с определенной вероятностью смотрит вверх и вниз, то есть можно сказать, что в кубит записаны сразу и 0, и 1. Количество информации, содержащееся в такой ячейке, и саму ячейку называют квантовым битом, или, сокращенно, кубитом. Согласитесь, ячейки в сложных состояниях весьма необычны для классической теории информации. Каждому возможному значению величины, представленной кубитом, соответствует вероятность, с которой это значение может быть получено при чтении. Эта вероятность равна квадрату модуля коэффициента, с которым собственная функция этого значения входит в линейную комбинацию. Именно вероятность и является информацией, записанной в кубит.
Квантовую механику не случайно называют иногда волновой механикой. Дело в том, что квантово-механические волновые функции ведут себя подобно световой или какой-либо другой волне. И для волновых функций, благодаря их способности интерферировать, также может быть введено понятие когерентности. Именно это свойство используется в когерентном квантовом компьютере. Набор кубитов представляется когерентными волновыми функциями. Оказывается, что существует вполне определенный класс воздействий на квантовую систему, называемый унитарными преобразованиями, при которых не теряется записанная в кубит информация и не нарушается когерентность волновых функций кубитов. Унитарные преобразования обратимы - по результату можно восстановить исходные данные. После прохождения через квантовый процессор, использующий унитарные преобразования, волновые функции кубитов заставляют интерферировать друг с другом, наблюдая получающуюся картину и судя по ней о результате вычисления.
Из-за того, что для представления информации используются кубиты, в которых записано сразу оба значения - и 0, и 1, в процессе вычислений происходит параллельная обработка сразу всех возможных вариантов комбинаций битов в процессорном слове. Таким образом, в КК реализуется естественный параллелизм, недоступный классическим компьютерам. За счет возможности параллельной работы с большим числом вариантов, в идеале равным 2N (где N - число кубитов), квантовому компьютеру необходимо гораздо меньше времени для решения определенного класса задач. К ним относятся, например, задача разложения числа на простые множители или поиск в большой базе данных. Для когерентного компьютера уже предложены алгоритмы, использующие его уникальные свойства. Кроме того, предполагается использовать КК для моделирования квантовых систем, что трудно или вообще невозможно сделать на обычных компьютерах из-за нехватки мощности или по принципиальным соображениям.
Все существующие на сегодняшний день обычные компьютеры, даже с параллельной обработкой информации на многих процессорах, могут быть смоделированы так называемым клеточным автоматом Тьюринга. Это существенно детерминированная и дискретная машина. С возникновением и обсуждением идей квантовых вычислений стала активно развиваться квантовая теория информации и, в частности, теория квантовых клеточных автоматов - ККА. Квантовый клеточный автомат является обобщением автомата Тьюринга для КК. Сформулирована гипотеза, гласящая, что каждая конечным образом реализуемая физическая система может быть достаточно хорошо смоделирована универсальной моделью квантовой вычислительной машины, использующей ограниченное количество ресурсов. Для одного из предложенных типов ККА теоретически уже доказано, что он подходит для такого моделирования и не противоречит квантовой теории.
Пытаясь осуществить свой замысел, ученые упираются в проблему сохранения когерентности волновых функций кубитов, так как потеря когерентности хотя бы одним из кубитов разрушила бы интерференционную картину. В настоящее время основные усилия экспериментальных рабочих групп направлены на увеличение отношения времени сохранения когерентности ко времени, затрачиваемому на одну операцию (это отношение определяет число операций, которые можно успеть провести над кубитами). Главной причиной потери когерентности является связь состояний, используемых для кубитов, со степенями свободы, не участвующими в вычислениях. Например, при передаче энергии электрона в возбужденном атоме в поступательное движение всего атома. Мешает и взаимодействие с окружающей средой, например, с соседними атомами материала компьютера или магнитным полем Земли, но это не такая важная проблема. Вообще, любое воздействие на когерентную квантовую систему, которое принципиально позволяет получить информацию о каких-либо кубитах системы, разрушает их когерентность. Потеря когерентности может произойти и без обмена энергией с окружающей средой.
Воздействием, нарушающим когерентность, в частности, является и проверка когерентности. При коррекции ошибок возникает своего рода замкнутый круг: для того чтобы обнаружить потерю когерентности, нужно получить информацию о кубитах, а это, в свою очередь, также нарушает когерентность. В качестве выхода предложено много специальных методов коррекции, представляющих также и большой теоретический интерес. Все они построены на избыточном кодировании.
Если в области передачи информации уже созданы реально работающие системы и до коммерческих продуктов осталось лишь несколько шагов, то коммерческая реализация квантового когерентного процессора - дело будущего. К настоящему времени КК научился вычислять сумму 1+1! Это большое достижение, если учесть, что в виде результата он выдает именно 2, а не 3 и не 0. Кроме того, не следует забывать, что и первые обычные компьютеры были не особенно мощны.
Сейчас ведется работа над двумя различными архитектурами процессоров: типа клеточного автомата и в виде сети логических элементов. Пока не известно о каких-либо принципиальных преимуществах одной архитектуры перед другой. Как функциональная основа для логических элементов квантового процессора более или менее успешно используется целый ряд физических явлений. Среди них - взаимодействие одиночных поляризованных фотонов или лазерного излучения с веществом или отдельными атомами, квантовые точки, ядерный магнитный резонанс и - наиболее многообещающий - объемный спиновый резонанс. Процессор, построенный на последнем принципе, в шутку называют «компьютером в чашке кофе» - из-за того, что в нем работают молекулы жидкости при комнатной температуре и атмосферном давлении. Кроме этих эффектов есть довольно хорошо развитая технология логических элементов и ячеек памяти на джозефсоновских переходах, которую можно при соответствующих условиях приспособить под когерентный процессор.
Теорию, описывающую явления, лежащие в основе первого типа логических ячеек, называют квантовой электродинамикой в полости или резонаторе. Кубиты хранятся в основных и возбужденных состояниях атомов, расположенных некоторым образом на равных расстояниях в оптическом резонаторе. Для каждого атома используется отдельный лазер, приводящий его в определенное состояние с помощью короткого импульса. Взаимовлияние атомных состояний происходит посредством обмена фотонов в резонаторе. Основными причинами разрушения когерентности здесь служат спонтанное излучение и выход фотонов за пределы резонатора.
В элементах на основе ионов в линейных ловушках кубиты хранятся в виде внутренних состояний пойманных ионов. Для управления логикой и для манипулирования отдельными кубитами также используются лазеры. Унитарные преобразования осуществляются возбуждением коллективных квантованных движений ионов. Источниками некогерентности является спонтанный распад состояний ионов в другие внутренние состояния и релаксация в колебательные степени свободы.
Сильно отличается от двух предыдущих «компьютер в чашке кофе». Благодаря достоинствам данного метода этот компьютер является наиболее реальным претендентом на то, чтобы достигнуть разрядности 10 бит в ближайшее время. В компьютере на коллективном спиновом резонансе работают молекулы обычных жидкостей (без всяких квантовых вывертов типа сверхтекучести). В качестве кубитов используется ориентация ядерных спинов. Работа логических ячеек и запись кубитов осуществляется радиочастотными электромагнитными импульсами со специально подобранными частотой и формой. В принципе, прибор похож на обычные приборы ядерного магнитного резонанса (ЯМР) и использует аналогичную аппаратуру. Жизнеспособность этого подхода обеспечивается, с одной стороны, очень слабой связью ядерных спинов с окружением и, потому, большим временем сохранения когерентности (до тысяч секунд). Эта связь ослаблена из-за экранирования ядерных спинов спинами электронов из оболочек атомов. С другой стороны, можно получить сильный выходной сигнал, так как для вычислений параллельно используется большое количество молекул. «Не так уж сложно измерить спин четвертого ядра у какого-то типа молекул, если у вас имеется около числа Авогадро (~1023) таких молекул», - говорит Ди Винченцо (Di Vincenzo), один из исследователей. Для определения результата непрерывно контролируют излучение всего ансамбля. Такое измерение не приводит к потере когерентности в компьютере, как было бы в случае использования только одной молекулы.
Ядерные спины в молекулах жидкости при комнатной температуре хаотически разупорядочены, их направления равномерно распределены от 0 до 4p. Проблема записи и считывания кажется непреодолимой из-за этого хаоса. При воздействии магнитного поля спины начинают ориентироваться по полю. После снятия поля через небольшое время система снова приходит к термодинамическому равновесию, и в среднем лишь около миллионной доли всех спинов остается в состоянии с ориентацией по направлению поля. Однако благодаря тому, что среднее значение сигнала от хаотически направленных спинов равно нулю, на этом фоне можно выделить довольно слабый сигнал от «правильных» спинов. Вот в этих-то молекулах с правильными ядерными спинами и размещают кубиты. Для коррекции ошибок при записи N кубитов используют 2N или больше спинов. Например, для N=1 выбираются такие жидкости, где какие-то два спина ядер в одной молекуле после определенного воздействия полем могут быть ориентированны только одинаково. Тогда по направлению второго спина при снятии результата обработки можно отсеять нужные молекулы, никак не влияя на первый спин.
Как уже было сказано, обработка битов осуществляется радиоимпульсами. Основным логическим элементом является управляемый инвертор. Из-за спин-спинового взаимодействия резонансная частота, при которой происходит опрокидывание одного спина, зависит от направления другого.
Что касается квантовой передачи данных, к настоящему времени экспериментально реализованы системы обмена секретной информацией по незащищенному от несанкционированного доступа каналу. Они основаны на фундаментальном постулате квантовой механики о невозможности измерения состояния без оказания влияния на него. Подслушивающий всегда изменяет состояние кубитов, которые он подслушал, и это может быть зафиксировано связывающимися сторонами. Данная система защиты информации абсолютно надежна, так как способов обойти законы квантовой механики пока еще никто не выдумал.Вместо заключения…
Пока квантовым компьютерам по плечу только наиболее простые задачи - например, они уже умеют складывать 1 и 1, получая в результате 2. Было также запланировано взятие другого важного рубежа - факторизации числа 15, его предстоит разложить на простые множители - 3 и 5. А там, глядишь, дойдет дело и до более серьезных задач.
Опытные образцы сейчас содержат менее десяти квантовых битов. По мнению Нейла Гершенфельда (Nell Gershenfeld), участвовавшего в создании одной из первых действующих моделей квантового компьютера, необходимо объединить не менее 50-100 кубитов, чтобы решать полезные с практической точки зрения задачи. Интересно, что добавление каждого следующего кубита в квантовый компьютер на эффекте объемного спинового резонанса требует увеличения чувствительности аппаратуры в два раза. Десять дополнительных кубитов, таким образом, потребуют увеличения чувствительности в 1000 раз, или на 60 дБ. Двадцать - в миллион раз, или на 120 дБ...
He исключено, что в информационном обществе появление квантового компьютера сыграет ту же роль, что в свое время, в индустриальном, - изобретение атомной бомбы. Действительно, если последняя является средством «уничтожения материи», то первый может стать средством «уничтожения информации» - ведь очень часто то, что известно всем, не нужно никому.Литература, содержащая основную информацию о КК.
1. Feynman R. Int. J. Theor. Phys. 21, 1982.
2. Манин Ю.И. Вычислимое и невычислимое. - М.: Советское радио, 1980.
3. Feynman R. Quantum mechanical computers. // Optics News, February 1985, 11, p.11.
4. Deutsch D. Quantum theory, the Church-Turing principle and the universal quantum computer. - Proc. R. Soc. London A 400, 97, 1985.
5. Deutsch D. Quantum computational networks. - Proc. R. Soc. London A 425, 73, 1989.
6. Yao А. С.-С. Quantum circuit complexity. //Proceedings of the 34th Annual Symposium on the Foundations of Computer Science, IEEE Computer Society Press, Los Alamitos, CA, 1993, p. 352.
7. Shor P.W. Algorithms for Quantum Computation: Discrete log and Factoring. // Proceedings of the 35th Annual Symposium on the Foundations of Computer Science, edited by S. Goldwasser, IEEE Computer Society Press, Los Alamitos, CA, 1994, p.124.
8. Китаев A.Ю. Квантовые вычисления: алгоритмы и исправление ошибок. //Успехи математических наук.
9. Grover L. Afast quantum mechanical algorithm for database search. //Proceedings of the 28th Annual ACM Symposium on Theory of Computing, 1996, pp. 212-219.
10. Kitaev A.Yu. Quantum measurements and the Abelian stabilizer problem. - LANL e-print quant-ph/9511026, http://xxx.lanl.gov.
11. Shor P.W. Fault-Tolerant Quantum Computation. - LANL e-print quant-ph/9005011, http://xxx.lanl.gov.
12. Bennett С.Н., Bernstein E., Brassard G., Vazirany U. Strengths and Weaknesses of Quantum Computing. - LANL e-print quant-ph/9701001, http://xxx.lanl.gov, to appear in SIAM J. On Computing.
bukvasha.ru
Реферат: Квантовые компьютеры
МИНИСТЕРСТВО
ОБЩЕГО И ПРОФЕССИОНАЛЬНОГО ОБРАЗОВАНИЯ РФ
АСТРАХАНСКИЙ
ГОСУДАРСТВЕННЫЙ ПЕДАГОГИЧЕСКИЙ УНИВЕРСИТЕТ
кафедра теоретической физики
РЕФЕРАТ
на тему:
«Квантовые компьютеры»
Выполнил:
студент 154 группы ФМФ
Безниско Евгений.
Руководитель:
к.ф.-м.н., доцент
Джалмухамбетов А.У.
Астрахань – 2000
г.
Предпосылки
создания квантовых компьютеров.
Уже
сейчас существует множество систем, в работе которых квантовые эффекты играют
существенную роль. Одним из наиболее известных примеров может служить лазер:
поле его излучения порождается квантово-механическими событиями - спонтанным и
индуцированным излучением света. Другим важным примером таких систем являются
современные микросхемы - непрерывное ужесточение проектных норм приводит к
тому, что квантовые эффекты начинают играть в их поведении существенную роль. В
диодах Ганна возникают осцилляции электронных токов, в полупроводниках
образуются слоистые структуры: электроны или дырки в различных запертых
состояниях могут хранить информацию, а один или несколько электронов могут
быть заперты в так называемых квантовых ямах.
Сейчас
ведутся разработки нового класса квантовых устройств - квантовых компьютеров.
Идея квантового компьютера возникла так.
Все
началось в 1982 году, когда Фейнман написал очень интересную статью [1], в которой
рассмотрел два вопроса. Он подошел к процессу вычисления как физик: есть
чисто логические ограничения на то, что можно вычислить (можно придумать
задачу, для которой вообще нет алгоритма, можно придумать задачу, для которой
любой алгоритм будет долго работать). А есть ли ограничения физические? Вот
есть закон сохранения энергии - вечный двигатель невозможен; а есть ли
какое-нибудь физическое ограничение на функционирование компьютера, которое
накладывает некие запреты на реализуемость алгоритмов? И Фейнман показал, что
термодинамических ограничений, типа второго начала термодинамики, нет. Если
мы будем уменьшать потери энергии, шумы, то мы можем сделать сколь угодно
длинные вычисления со сколь угодно малыми затратами энергии. Это означает, что
вычисления можно сделать обратимым образом -
потому что в необратимых процессах энтропия возрастает. Собственно, Фейнмана
это и заинтересовало: ведь реальное вычисление на реальном компьютере
необратимо. И полученный им результат состоит в том, что можно так переделать
любое вычисление - без особой потери эффективности, - чтобы оно стало
обратимым. Те вычисления, которые делаются «просто так», конечно,
необратимы, но «рост необратимости» пренебрежимо мал по сравнению, скажем, с
шумами в современном компьютере. То есть необратимость - это тонкий эффект;
тут вопрос не практический а принципиальный: если представить себе, что технология
дойдет до такого уровня, что этот эффект станет существенным, то можно так перестроить
вычисления, чтобы добиться обратимости.
И
в этой же работе Фейнман обратил внимание на то, что если у нас имеется устройство
квантовое, то есть подчиняющееся
законам квантовой механики, то его вычислительные возможности совершенно не
обязательно должны совпадать с возможностями обычного устройства. Возникают
некоторые дополнительные возможности. Но пока непонятно, позволяют они получить
какой-то выигрыш или нет. Фактически, он и поставил своей статьей такой вопрос.
Кстати,
Ю.И. Манин в конце семидесятых годов написал две популярные книжки по логике -
«Вычислимое и невычислимое» и «Доказуемое и недоказуемое», и в одной из них
есть сюжет про квантовые автоматы, где он говорит о некоторых кардинальных отличиях
этих автоматов от классических [2].
В середине восьмидесятых годов появились работы Дойча (D. Deutsch),
Бернстайна и Вазирани (Е. Bernstein, U. Vazirani), Яo (A. Уао).
В них были построены формальные модели квантового компьютера - например,
квантовая машина Тьюринга [3-6].
Следующий этап - статья Шора
(Р.W.
Shor)
1994 года [7], вызвавшая лавинообразный рост числа публикаций о квантовых вычислениях.
Шор построил квантовый (то есть реализуемый на квантовом компьютере) алгоритм
факторизации (разложения целых чисел на множители - используется
в том числе для вскрытия зашифрованных сообщений). Все известные алгоритмы для
обычного компьютера - экспоненциальные (время их работы растет как экспонента
от числа знаков в записи факторизуемого числа).
Факторизация 129-разрядного числа потребовала 500 MIPS-лет, или восемь месяцев непрерывной
работы системы из 1600 рабочих станций, объединенных через Интернет. А при
числе разрядов порядка 300 это время существенно превзойдет возраст Вселенной
- даже если работать одновременно на всех существующих в мире машинах.
Считается (хотя это и не доказано!), что быстрого алгоритма решения этой
задачи не существует. Более того, гарантией надежности большинства
существующих шифров является именно сложность решения задачи факторизации или
одной из родственных ей теоретико-числовых задач, например - дискретного
логарифма. И вдруг выясняется, что на квантовом компьютере эта задача имеет
всего лишь кубическую сложность! Перед квантовым компьютером классические
банковские, военные и другие шифры мгновенно теряют всякую ценность. Короче
говоря, работа Шора показала, что вся эта изысканная
академическая деятельность непосредственно касается такой первобытной стихии,
как деньги. После этого и началась настоящая популярность...
Впрочем,
выясняется, что не только классическая, но и квантовая криптография (наука о
шифровании сообщений) часто не способна противостоять квантовой криптоаналитике (науке о расшифровке). Некоторые важные
криптографические протоколы, такие как «подбрасывание монеты по телефону»,
рушатся при переходе к квантовым вычислениям. Точнее, гарантией их надежности
является отныне не сложность тех или иных алгоритмов, а сложность задачи
создания квантового компьютера.
Таким
образом возникает новая отрасль вычислений – квантовые
вычисления. Квантовые вычисления (КВ)
- это, как можно догадаться, вычисления на квантовом компьютере. Квантовых
компьютеров на свете пока нет. Более того, до сих пор неясно, когда появятся
практически полезные конструкции и появятся ли вообще. Тем не менее,
квантовые вычисления - предмет, чрезвычайно модный сейчас в математике и
физике, как теоретической, так и экспериментальной, и занимается им довольно
много людей. Судя по всему, именно интерес стимулировал первопроходцев -
Ричарда Фейнмана, написавшего пионерскую работу, в которой ставился вопрос о
вычислительных возможностях устройств на квантовых элементах; Дэвида Дойча, формализовавшего этот вопрос в рамках современной
теории вычислений; и Питера Шора, придумавшего первый
нетривиальный квантовый алгоритм.
Типы
квантовых компьютеров.
Строго
говоря, можно выделить два типа квантовых компьютеров. И те, и другие основаны
на квантовых явлениях, только разного порядка.
Представителями
первого типа являются, например, компьютеры, в основе которых лежит квантование
магнитного потока на нарушениях сверхпроводимости - Джозефсоновских
переходах. На эффекте Джозефсона уже сейчас делают
линейные усилители, аналого-цифровые преобразователи, СКВИДы
и корреляторы. Известен проект создания RISC-процессора на RSFQ-логике (Rapid Single Flux Quantum). Эта же
элементная база используется в проекте создания петафлопного
(1015оп./с) компьютера. Экспериментально
достигнута тактовая частота 370 ГГц, которая в перспективе может быть
доведена до 700 ГГц. Однако время расфазировки
волновых функций в этих устройствах сопоставимо со временем переключения отдельных
вентилей, и фактически на новых, квантовых принципах реализуется уже привычная нам элементная база - триггеры, регистры и другие
логические элементы.
Другой
тип квантовых компьютеров, называемых еще квантовыми когерентными
компьютерами, требует поддержания когерентности волновых функций используемых
кубитов в течение всего времени вычислений - от
начала и до конца (кубитом может быть любая квантомеханическая система с двумя выделенными энергетическими
уровнями). В результате, для некоторых задач вычислительная мощность
когерентных квантовых компьютеров пропорциональна 2N, где N - число
кубитов в компьютере. Именно последний тип устройств
имеется в виду, когда говорят о квантовых компьютерах.
Математические
основы функционирования квантовых компьютеров.
Классический
компьютер состоит, грубо говоря, из некоторого числа битов, с которыми можно
выполнять арифметические операции. Основным элементом квантового компьютера
(КК) являются квантовые биты, или кубиты (от Quantum Bit, qubit). Обычный бит - это классическая
система, у которой есть только два возможных состояния. Можно сказать, что
пространство состояний бита - это множество из двух элементов, например, из
нуля и единицы. Кубит
же - это квантовая система с двумя возможными состояниями. Имеется ряд примеров
таких квантовых систем: электрон, у которого спин может быть равен либо +1/2 либо –1/2, атомы в кристаллической решетке при некоторых
условиях. Но, поскольку система квантовая, ее пространство состояний будет
несравненно богаче. Математически кубит - это
двумерное комплексное пространство.
В
такой системе можно выполнять унитарные преобразования пространства состояний
системы. С точки зрения геометрии такие преобразования - прямой аналог
вращении и симметрий обычного трехмерного пространства. Согласно принципу
суперпозиции вы можете складывать состояния, вычитать их, умножать на
комплексные числа. Эти состояния образуют фазовые пространства. При объединении
двух систем полученное фазовое пространство будет их тензорным произведением.
Эволюция системы в фазовом пространстве описывается унитарными
преобразованиями фазового пространства.
Так
вот, в квантовом компьютере аналогичная ситуация. Он тоже работает с нулями и
единицами. Но его функциональные элементы реализуют действия прямо в фазовом
пространстве некоторой квантовой системы - при помощи унитарных преобразований
этого пространства.
Конечно,
унитарные преобразования не могут быть произвольными - они должны удовлетворять
некоторым естественным ограничениям. Например, в случае обычной логики
достаточно иметь три операции: конъюнкция, дизъюнкция, отрицание. Все можно реализовать,
используя только эти три операции. Точно так же и в квантовом случае есть
некоторый набор операторов, действующих только на три бита,
с помощью которых можно все реализовать. Там есть даже более тонкие
результаты: можно ограничиться классическими операторами на нескольких битах,
а квантовые операторы будут действовать только на один бит. То
есть классический набор операций {конъюнкция, дизъюнкция, отрицание} можно
заменить на такой: {конъюнкция, дизъюнкция, квантовое отрицание}, где квантовое
отрицание - это произвольное унитарное преобразование одного кубита.
Фазовое
пространство КК есть тензорное произведение кубитов.
Если в каждом кубите фиксирован базис (он будет
состоять из двух векторов), то фазовое пространство - это комплексное линейное
пространство, базис которого индексирован словами из нулей и единиц. Таким
способом двоичное слово на входе определяет базисный вектор.
Итак,
вход - двоичное слово, определяющее один из базисных векторов. Сам же алгоритм -
предписанная последовательность элементарных операторов. Применяем эту
последовательность к вектору на входе, в результате получаем некоторый вектор
на выходе.
Так
вот, согласно квантовой механике (КМ), пока система
эволюционирует под действием наших унитарных операторов, мы не можем сказать,
в каком именно классическом состоянии она находится. То есть она находится в каком-то квантовом состоянии, но измеряем-то мы,
когда общаемся с системой, все равно какие-то классические значения. Как это
понимается в КМ? В фазовом пространстве фиксируется
некоторый базис, и вектор состояния разлагается по этому базису. Это
математическая формализация процедуры измерения в КМ.
То есть если мы имеем дело с системой, у которой «то ли спин влево, то ли спин
вправо», и если мы все-таки посмотрим, какой спин, то мы получим одно из двух в
любом случае. А вот вероятности того, что мы получим тот или другой результат,
- это как раз квадраты модуля коэффициентов разложения. КМ
утверждает, что точно предсказать результат измерения нельзя, но вероятности
возможных результатов вычислить можно.
Вероятность
возникает в процессе измерения. А пока система живет, для нас существенно,
что там есть сам этот вектор.
Другими
словами, существенно, что система «находится одновременно во всех возможных
состояниях». Как пишут многие авторы популярных введений в KB, возникает совершенно
чудовищный параллелизм вычислении: к примеру, в случае нашей системы из двух кубитов мы как бы оперируем одновременно со всеми
возможными ее состояниями: 00, 01, 11, 10.
Чтобы
интерпретировать ответ, надо заранее условиться, что какой-то бит - допустим,
первый - это бит ответа. Пусть алгоритм проработал, у нас получился какой-то
вектор, не обязательно базисный. Тогда мы можем сказать, что первый бит с
некоторой вероятностью равен 1. И требование к алгоритму такое: если ответ
«да», то вероятность того, что первый бит равен 1,
должна быть больше двух третей. А если ответ «нет», вероятность того, что
будет ноль, должна быть тоже больше двух третей.
Задачи,
реализуемые на КВ.
Известно
два примера нетривиальных задач, в которых KB дают радикальный выигрыш.
Первый
из них - задача разложения целых чисел на простые множители и, как следствие,
вычисления дискретного логарифма (ДЛ). Дальше речь пойдет именно о ДЛ.
Пусть
у нас есть поле вычетов по модулю простого числа. В нем есть первообразные
корни - такие вычеты, чьи степени порождают все ненулевые элементы. Если задан
такой корень и задана степень, то возвести в степень можно быстро (например,
сначала возводим в квадрат, потом получаем четвертую степень, и т. д.)
Дискретный логарифм - это обратная задача. Дан первообразный
корень и какой-то элемент поля; найти, в какую степень нужно возвести этот
корень, чтобы получить данный элемент. Вот эта задача уже считается сложной. Настолько
сложной, что ряд современных криптографических систем
основан на том предположении, что вычислить ДЛ за приемлемое время невозможно,
если модуль - достаточно большое простое число.
Так
вот, для дискретного логарифма есть эффективный квантовый алгоритм. Его
придумал Шор в конце 1994 года. После его статьи и начался взрыв публикаций
по КВ. Независимо от него, Алексей Китаев из ИТФ им. Ландау построил квантовый
алгоритм для этой и некоторых более общих задач [8]. Идеи у них были разные.
Шор
использовал примерно такую идею, она существенно квантовая:
рассмотрим базис в фазовом пространстве. Он состоит из классических состояний.
Но в линейном пространстве много базисов. Мы можем найти некий оператор, который
эффективно строит другой базис; мы можем к нему перейти, сделать там какие-то
вычисления, вернуться обратно и получить нечто совершенно
отличное от того, что мы имели бы в классическом базисе. Одна из возможностей
использовать квантовость состоит в том, что мы строим
какой-то странный базис, в нем что-то делаем, возвращаемся обратно и интерпретируем
результат. Шор именно эту идею и реализовал. Причем преобразование оказалось
такое, которое и в физике, и в математике имеет принципиальное значение -
дискретное преобразование Фурье.
Его
можно представить в виде тензорного произведения операторов, которые действуют
на каждый из кубитов такой матрицей:
Китаев
придумал примерно следующее. Есть некоторая ячейка - основной регистр, где мы
записываем наши данные нулями и единицами. И еще есть один управляющий кубит. Мы работаем так: у нас реализована процедура
умножения на первообразный корень, на квадрат первообразного корня, и т. д.
Управляющий кубит переводим в некоторое смешанное
состояние, дальше строим такой оператор, который, в зависимости оттого, ноль
или единица в этом управляющем кубите, либо
применяет умножение к нашему основному регистру, либо не применяет. А потом кубит опять возвращаем в смешанное состояние. Оказывается,
что это эффективный способ проделать некоторое измерение. То есть Китаев заметил,
что одна из вещей, которые мы можем эффективно делать на квантовом компьютере,
- это имитировать процесс квантового измерения. В данной задаче из результатов
этих измерений эффективно извлекается ответ.
Сам
процесс вычислений, происходит так: мы все время умножаем одну и ту же ячейку
на некие константы, результаты измерений записываем, а потом производим своего
рода обработку результатов эксперимента - уже чисто классическими вычислениями.
Вся квантовая часть заключается в том, что где-то рядом с нашим регистром
находится в некоем смешанном состоянии коррелированный с ним кубит, и мы его периодически наблюдаем.
Для
вычисления ДЛ числа, записанного N битами,
нужно потратить N
3 единиц времени. Вполне реализуемо - на КК,
естественно. Но здесь надо заметить, что никто пока не доказал, что не
существует столь же быстрого алгоритма для вычисления ДЛ на обычной машине.
Вторая задача предложена Гровером
(L.
Grover)
[9]. Рассмотрим базу данных, содержащую 2N
записей. Мы хотим найти ровно одну запись. Имеется некая процедура определения
того, нужную запись мы взяли или нет. Записи не упорядочены. С какой скоростью
мы можем решить эту задачу на обычном компьютере? В худшем случае нам
придется перебрать все 2N
записей - это очевидно. Оказывается, что на КК
достаточно числа запросов порядка корня из числа записей – 2N/2.
Интересная
задача - создание оптимальных микросхем. Пусть есть функция, которую нужно реализовать
микросхемой, и эта функция задана программой, использующей полиномиально
ограниченную память. Построение нужной микросхемы с минимальным числом
функциональных элементов - задача PSPACE. Поэтому появление устройств,
эффективно решающих PSPACE-задачи, позволило бы единообразно проектировать оптимальные
по своим показателям вычислительные устройства обычного типа. Кроме того, в PSPACE попадает большинство задач
«искусственного интеллекта»: машинное обучение, распознавание образов и т.д.
Так
вот, точно установлено, что KB находятся где-то между обычными вероятностными
вычислениями и PSPACE.
Если все же окажется, что KB можно эффективно реализовать на
классических вероятностных машинах, не будет смысла в физической реализации
квантовых машин. Если же выяснится, что при помощи KB можно эффективно решать те или
иные PSPACE-задачи, то физическая реализация КК откроет принципиально новые
возможности.
Есть
еще одна область применения КК, где заведомо возможен радикальный выигрыш у
существующих технологий. Это моделирование самих квантовых систем.
Давайте
посмотрим на такой вопрос: как можно эволюцию квантовой системы изучать на
обычном компьютере? Это постоянно делается, так как это задача важна для химии, молекулярной биологии, физики и
т.п. Но, за счет экспоненциального роста размерности при тензорном произведении,
для моделирования десяти спинов вам нужно оперировать с тысячемерным
пространством, сто спинов - это уже конец. А если вспомнить, что в молекуле
белка десятки тысяч атомов, то... Там, правда, не всюду существенно именно
квантовое моделирование, но в целом ясно, что есть очень серьезные препятствия
для моделирования квантовых систем на классических компьютерах. Так что если
создать вычислительное устройство, которое ведет себя квантовым образом, то по крайней мере один важный класс задач на нем есть
смысл решать - можно моделировать реальные квантовые системы, возникающие в
физике, химии, биологии.
Проблемы
создания КК.
Когда
начался бум вокруг квантовых вычислений, физики высказывались об этом более
чем скептически. Модель квантовых вычислений не противоречит законам природы,
но это еще не значит, что ее можно реализовать. К примеру, можно вспомнить создание
атомного оружия и управляемый термояд.
А
если говорить о КК, надо отметить одну очень серьезную проблему. Дело в том,
что любая физическая реализация будет приближенной. Во-первых, мы не сможем
сделать прибор, который будет давать нам произвольный вектор фазового
пространства. Во-вторых, работа любого устройства подвержена всяческим случайным
ошибкам. А уж в квантовой системе - пролетит какой-нибудь фотон, провзаимодействует с одним из спинов, и все поменяется.
Поэтому сразу возник вопрос, можно ли, хотя бы в принципе, организовать
вычисления на ненадежных квантовых элементах, чтобы результат получался со
сколь угодно большой достоверностью. Такая задача для обычных компьютеров решается
просто - например, за счет введения дополнительных битов.
В
случае КК эта проблема гораздо глубже. То место, где возникает новое качество
KB
по сравнению с обычными вычислениями, - это как раз сцепленные состояния - линейные
комбинации базисных векторов фазового пространства. У вас есть биты, но они не
сами по себе живут в каких-то состояниях - это был бы просто вероятностный
компьютер (компьютер, дающий тот или иной ответ с определенной вероятностью), -
а они находятся в некоем смешанном состоянии, причем согласованно-смешанном.
Из-за этого в КК нельзя, например, просто взять и скопировать один бит в другой!
Обычная интуиция из теории алгоритмов здесь неприменима.
Так
что проблема надежности довольно сложна, даже на уровне чистой теории. Те люди,
которые активно занимаются KB, активно ее решали и добились успеха:
доказано, что, как и в классике, можно делать вычисления на элементах с заданной
надежностью сколь угодно точно. Это реализовано с помощью некоего аналога
кодов, исправляющих ошибки.
Что
касается технической стороны появляются сообщения,
что создаются реальные квантовые системы с небольшим числом битов - с двумя,
скажем. Экспериментальные, в железе, так сказать.
Так
что эксперименты есть, но пока очень далекие от реальности. Два бита - это и
для классического и для квантового компьютера слишком мало! Чтобы моделировать
молекулу белка, нужно порядка ста тысяч кубитов. Для
ДЛ, чтобы вскрывать шифры, достаточно примерно тысячи кубитов.
Задача
эта возникла слишком недавно, и не исключено, что она потребует каких-то
фундаментальных исследований в самой физике. Поэтому в обозримом будущем
ожидать появления квантовых компьютеров не приходится.
Но
можно ожидать распространения через не очень долгое время квантовых криптографических
систем. Квантовая криптография позволяет обмениваться сообщениями так, что
враг, если попытается подслушать, сможет разве что разрушить ваше сообщение.
То есть оно не дойдет до адресата, но перехватить его в принципе будет нельзя.
Подобные системы, которые уже реализованы, используют световод.
Универсальный КК здесь не нужен. Нужно специализированное квантовое устройство,
способное выполнять только небольшой набор операций, - своего рода квантовый
кодек.
Физической
системе, реализующей квантовый компьютер, можно предъявить пять требований:
1.
Система должна состоять из точно
известного числа частиц.
2.
Должна быть возможность привести
систему в точно известное начальное состояние.
3.
Степень изоляции от внешней среды
должна быть очень высока.
4.
Надо уметь менять состояние
системы согласно заданной последовательности унитарных преобразований ее
фазового пространства.
5.
Необходимо иметь возможность
выполнять «сильные измерения» состояния системы (то есть такие, которые
переводят ее в одно из чистых состояний).
Из
этих пяти задач наиболее трудными считаются третья и четвертая. От того,
насколько точно они решаются, зависит точность выполнения операций. Пятая
задача тоже весьма неприятна, так как измерить состояние отдельной частицы нелегко.
Физические основы организации КК.
Итак,
что же это за тайное оружие такое - КК? Остроумная идея заключается в использовании
для хранения, передачи и обработки информации существенно
квантовых свойств вещества. В основном такие свойства проявляют объекты
микромира: элементарные частицы, атомы, молекулы и небольшие сгустки молекул,
так называемые кластеры. (Хотя, конечно, и в жизни макромира
квантовая механика играет важную роль. В частности,
только с ее помощью можно объяснить такое явление, как ферромагнетизм.)
Одним из квантовых свойств вещества является то, что некоторые величины при
измерении (наблюдении) могут принимать значения лишь из заранее определенного
дискретного набора. Такой величиной, например, является проекция собственного
момента импульса, или, иначе говоря, спина элементарной частицы, на любую
заданную ось. Например, у электрона возможно только два значения проекции: +1/2 или –1/2. Таким образом, количество информации, необходимое для сообщения
о проекции, равно одному биту. Записав в классическую однобитную ячейку памяти
определенное значение, мы именно его оттуда и прочтем, если не произойдет какой-нибудь
ошибки.
Классической
ячейкой может послужить и спин электрона. Однако квантовая механика позволяет
записать в проекции спина больше информации, чем в классике.
Для
описания поведения квантовых систем было введено понятие волновой функции.
Существуют волновые функции, называемые собственными для какой-то конкретной измеряемой
величины. В состоянии, описываемом собственной функцией, значение этой величины
может быть точно предсказано до ее измерения. Именно с такими состояниями
работает обычная память. Квантовая же система может
находиться и в состоянии с волновой функцией, равной линейной комбинации собственных
функции, соответствующих каждому из возможных значений (назовем здесь такие
состояния сложными). В сложном состоянии результат измерения величины
не может быть предсказан заранее. Заранее известно только, с какой вероятностью
мы получим то или иное значение. В отличие от обычного компьютера,
в квантовом для представления данных используются такие ячейки памяти, которые
могут находиться в сложном состоянии. В нашем примере мы определили бы,
что спин электрона с определенной вероятностью смотрит вверх и вниз, то есть
можно сказать, что в кубит записаны сразу и 0, и 1.
Количество информации, содержащееся в такой ячейке, и саму ячейку называют
квантовым битом, или, сокращенно, кубитом.
Согласитесь, ячейки в сложных состояниях весьма необычны для классической
теории информации. Каждому возможному значению величины, представленной кубитом, соответствует вероятность, с которой это значение
может быть получено при чтении. Эта вероятность равна квадрату модуля
коэффициента, с которым собственная функция этого значения входит в линейную
комбинацию. Именно вероятность и является информацией, записанной в кубит.
Квантовую
механику не случайно называют иногда волновой механикой. Дело в том, что
квантово-механические волновые функции ведут себя подобно световой или
какой-либо другой волне. И для волновых функций, благодаря их способности
интерферировать, также может быть введено понятие когерентности. Именно это
свойство используется в когерентном квантовом компьютере. Набор кубитов представляется когерентными волновыми функциями.
Оказывается, что существует вполне определенный класс воздействий на квантовую
систему, называемый унитарными преобразованиями, при которых не теряется записанная
в кубит информация и не нарушается когерентность волновых
функций кубитов. Унитарные преобразования обратимы -
по результату можно восстановить исходные данные. После прохождения через
квантовый процессор, использующий унитарные преобразования, волновые функции кубитов заставляют интерферировать друг с другом, наблюдая
получающуюся картину и судя по ней о результате вычисления.
Из-за
того, что для представления информации используются кубиты,
в которых записано сразу оба значения - и 0,
и 1, в процессе вычислений происходит
параллельная обработка сразу всех возможных вариантов комбинаций битов в процессорном
слове. Таким образом, в КК реализуется естественный параллелизм, недоступный
классическим компьютерам. За счет возможности параллельной работы с большим
числом вариантов, в идеале равным 2N (где N - число кубитов), квантовому компьютеру
необходимо гораздо меньше времени для решения определенного класса задач. К
ним относятся, например, задача разложения числа на простые множители или
поиск в большой базе данных. Для когерентного компьютера уже предложены
алгоритмы, использующие его уникальные свойства. Кроме того, предполагается
использовать КК для моделирования квантовых систем, что трудно или вообще
невозможно сделать на обычных компьютерах из-за нехватки мощности или по
принципиальным соображениям.
Все
существующие на сегодняшний день обычные компьютеры, даже с параллельной
обработкой информации на многих процессорах, могут быть смоделированы так называемым
клеточным автоматом Тьюринга. Это существенно детерминированная и дискретная
машина. С возникновением и обсуждением идей квантовых вычислений стала активно
развиваться квантовая теория информации и, в частности, теория квантовых клеточных
автоматов - ККА. Квантовый клеточный автомат является обобщением автомата
Тьюринга для КК. Сформулирована гипотеза, гласящая, что каждая конечным
образом реализуемая физическая система может быть достаточно хорошо
смоделирована универсальной моделью квантовой вычислительной машины, использующей
ограниченное количество ресурсов. Для одного из предложенных типов ККА
теоретически уже доказано, что он подходит для такого моделирования и не
противоречит квантовой теории.
Пытаясь
осуществить свой замысел, ученые упираются в проблему сохранения когерентности
волновых функций кубитов, так как потеря когерентности
хотя бы одним из кубитов разрушила бы интерференционную
картину. В настоящее время основные усилия экспериментальных рабочих групп
направлены на увеличение отношения времени сохранения когерентности ко
времени, затрачиваемому на одну операцию (это отношение определяет число
операций, которые можно успеть провести над кубитами).
Главной причиной потери когерентности является связь состояний, используемых
для кубитов, со степенями свободы, не участвующими в
вычислениях. Например, при передаче энергии электрона в возбужденном атоме в
поступательное движение всего атома. Мешает и взаимодействие с окружающей
средой, например, с соседними атомами материала компьютера или магнитным
полем Земли, но это не такая важная проблема. Вообще, любое воздействие на когерентную
квантовую систему, которое принципиально позволяет получить информацию о каких-либо кубитах
системы, разрушает их когерентность. Потеря когерентности может произойти и
без обмена энергией с окружающей средой.
Воздействием,
нарушающим когерентность, в частности, является и проверка когерентности. При
коррекции ошибок возникает своего рода замкнутый круг: для того чтобы
обнаружить потерю когерентности, нужно получить информацию о кубитах, а это, в свою очередь, также нарушает когерентность.
В качестве выхода предложено много специальных методов коррекции,
представляющих также и большой теоретический интерес. Все они построены на
избыточном кодировании.
Если
в области передачи информации уже созданы реально работающие системы и до
коммерческих продуктов осталось лишь несколько шагов, то коммерческая реализация
квантового когерентного процессора - дело будущего. К настоящему времени КК
научился вычислять сумму 1+1! Это
большое достижение, если учесть, что в виде результата он выдает именно 2, а не 3 и не 0. Кроме того, не
следует забывать, что и первые обычные компьютеры были не особенно мощны.
Сейчас
ведется работа над двумя различными архитектурами процессоров: типа клеточного
автомата и в виде сети логических элементов. Пока не известно о каких-либо
принципиальных преимуществах одной архитектуры перед другой. Как функциональная
основа для логических элементов квантового процессора более или менее успешно
используется целый ряд физических явлений. Среди них - взаимодействие
одиночных поляризованных фотонов или лазерного излучения с веществом или
отдельными атомами, квантовые точки, ядерный магнитный резонанс и - наиболее
многообещающий - объемный спиновый резонанс. Процессор, построенный на
последнем принципе, в шутку называют «компьютером в чашке кофе» - из-за того,
что в нем работают молекулы жидкости при комнатной температуре и атмосферном
давлении. Кроме этих эффектов есть довольно хорошо развитая технология
логических элементов и ячеек памяти на джозефсоновских
переходах, которую можно при соответствующих условиях приспособить под когерентный
процессор.
Теорию,
описывающую явления, лежащие в основе первого типа логических ячеек, называют
квантовой электродинамикой в полости или резонаторе. Кубиты
хранятся в основных и возбужденных состояниях атомов, расположенных некоторым
образом на равных расстояниях в оптическом резонаторе. Для каждого атома
используется отдельный лазер, приводящий его в определенное состояние с помощью
короткого импульса. Взаимовлияние атомных состояний происходит посредством обмена
фотонов в резонаторе. Основными причинами разрушения когерентности здесь
служат спонтанное излучение и выход фотонов за пределы резонатора.
В
элементах на основе ионов в линейных ловушках кубиты
хранятся в виде внутренних состояний пойманных ионов. Для управления логикой
и для манипулирования отдельными кубитами
также используются лазеры. Унитарные преобразования осуществляются возбуждением
коллективных квантованных движений ионов. Источниками некогерентности
является спонтанный распад состояний ионов в другие внутренние состояния и
релаксация в колебательные степени свободы.
Сильно
отличается от двух предыдущих «компьютер в чашке кофе». Благодаря достоинствам
данного метода этот компьютер является наиболее реальным претендентом на то,
чтобы достигнуть разрядности 10 бит в ближайшее время. В компьютере на коллективном
спиновом резонансе работают молекулы обычных жидкостей (без всяких квантовых
вывертов типа сверхтекучести). В качестве кубитов
используется ориентация ядерных спинов. Работа логических
ячеек и запись кубитов осуществляется
радиочастотными электромагнитными импульсами со специально подобранными
частотой и формой. В принципе, прибор похож на обычные приборы ядерного
магнитного резонанса (ЯМР) и использует аналогичную аппаратуру. Жизнеспособность
этого подхода обеспечивается, с одной стороны, очень слабой связью ядерных
спинов с окружением и, потому, большим временем сохранения когерентности (до
тысяч секунд). Эта связь ослаблена из-за экранирования ядерных спинов спинами
электронов из оболочек атомов. С другой стороны, можно получить сильный выходной
сигнал, так как для вычислений параллельно используется большое количество
молекул. «Не так уж сложно измерить спин четвертого ядра у какого-то типа
молекул, если у вас имеется около числа Авогадро (~1023) таких
молекул», - говорит Ди Винченцо
(Di
Vincenzo),
один из исследователей. Для определения результата непрерывно контролируют
излучение всего ансамбля. Такое измерение не приводит к потере когерентности в
компьютере, как было бы в случае использования только одной молекулы.
Ядерные
спины в молекулах жидкости при комнатной температуре хаотически разупорядочены,
их направления равномерно распределены от 0 до 4p.
Проблема записи и считывания кажется непреодолимой из-за этого хаоса. При
воздействии магнитного поля спины начинают ориентироваться по полю. После
снятия поля через небольшое время система снова приходит к термодинамическому
равновесию, и в среднем лишь около миллионной доли всех спинов остается в состоянии
с ориентацией по направлению поля. Однако благодаря тому, что среднее значение
сигнала от хаотически направленных спинов равно нулю, на этом фоне можно
выделить довольно слабый сигнал от «правильных» спинов. Вот в этих-то молекулах
с правильными ядерными спинами и размещают кубиты.
Для коррекции ошибок при записи N кубитов используют 2N или больше спинов. Например, для N=1 выбираются такие жидкости, где
какие-то два спина ядер в одной молекуле после определенного воздействия полем
могут быть ориентированны только одинаково. Тогда по
направлению второго спина при снятии результата обработки можно отсеять нужные
молекулы, никак не влияя на первый спин.
Как
уже было сказано, обработка битов осуществляется радиоимпульсами. Основным
логическим элементом является управляемый инвертор. Из-за спин-спинового взаимодействия
резонансная частота, при которой происходит опрокидывание одного спина, зависит
от направления другого.
Что
касается квантовой передачи данных, к настоящему времени экспериментально
реализованы системы обмена секретной информацией по незащищенному от несанкционированного
доступа каналу. Они основаны на фундаментальном постулате квантовой механики о
невозможности измерения состояния без оказания влияния на него. Подслушивающий
всегда изменяет состояние кубитов, которые
он подслушал, и это может быть зафиксировано связывающимися сторонами. Данная
система защиты информации абсолютно надежна, так как способов обойти законы
квантовой механики пока еще никто не выдумал.
Вместо
заключения…
Пока
квантовым компьютерам по плечу только наиболее простые задачи - например, они
уже умеют складывать 1 и 1, получая в результате 2. Было также запланировано
взятие другого важного рубежа - факторизации числа 15, его предстоит разложить
на простые множители - 3 и 5. А там, глядишь, дойдет дело и до более серьезных
задач.
Опытные
образцы сейчас содержат менее десяти квантовых битов. По мнению Нейла Гершенфельда (Nell Gershenfeld),
участвовавшего в создании одной из первых действующих моделей квантового
компьютера, необходимо объединить не менее 50-100 кубитов,
чтобы решать полезные с практической точки зрения задачи. Интересно, что
добавление каждого следующего кубита в квантовый компьютер
на эффекте объемного спинового резонанса требует увеличения чувствительности
аппаратуры в два раза. Десять дополнительных кубитов,
таким образом, потребуют увеличения чувствительности в 1000 раз, или на 60 дБ.
Двадцать - в миллион раз, или на 120 дБ...
He исключено, что в информационном
обществе появление квантового компьютера сыграет ту же роль, что в свое
время, в индустриальном, - изобретение атомной бомбы. Действительно, если
последняя является средством «уничтожения материи», то первый может стать средством
«уничтожения информации» - ведь очень часто то, что известно всем, не нужно
никому.
Литература, содержащая основную
информацию о КК.
1. Feynman R. Int. J. Theor.
Phys. 21, 1982.
2.
Манин Ю.И. Вычислимое и
невычислимое. - М.: Советское радио, 1980.
3. Feynman R. Quantum mechanical computers. // Optics
News, February 1985, 11, p.11.
4. Deutsch D. Quantum theory, the Church-Turing principle
and the universal quantum computer. - Proc. R. Soc. London A
400, 97, 1985.
5. Deutsch D. Quantum computational networks. - Proc. R.
Soc. London A 425, 73, 1989.
6. Yao А. С.-С. Quantum circuit complexity. //Proceedings of the
34th Annual Symposium on the Foundations of Computer Science, IEEE Computer
Society Press, Los Alamitos, CA, 1993, p. 352.
7. Shor P.W. Algorithms for Quantum Computation: Discrete
log and Factoring. // Proceedings of the 35th Annual Symposium on the
Foundations of Computer Science, edited by S. Goldwasser,
IEEE Computer Society Press, Los Alamitos, CA, 1994, p.124.
8.
Китаев A.Ю. Квантовые вычисления:
алгоритмы и исправление ошибок. //Успехи математических наук.
9. Grover L. Afast quantum
mechanical algorithm for database search. //Proceedings of the 28th Annual ACM
Symposium on Theory of Computing, 1996, pp. 212-219.
10.
Kitaev A.Yu. Quantum measurements
and the Abelian stabilizer problem. - LANL e-print quant-ph/9511026,
http://xxx.lanl.gov.
11.
Shor P.W. Fault-Tolerant Quantum Computation. - LANL e-print quant-ph/9005011, http://xxx.lanl.gov.
12.
Bennett С.Н., Bernstein E., Brassard G., Vazirany
U. Strengths and Weaknesses of Quantum Computing. - LANL e-print quant-ph/9701001, http://xxx.lanl.gov, to appear in SIAM J. On
Computing.
www.referatmix.ru
Реферат - Квантовые компьютеры - Кибернетика
МИНИСТЕРСТВООБЩЕГО И ПРОФЕССИОНАЛЬНОГО ОБРАЗОВАНИЯ РФ
АСТРАХАНСКИЙГОСУДАРСТВЕННЫЙ ПЕДАГОГИЧЕСКИЙ УНИВЕРСИТЕТ
кафедратеоретической физики
РЕФЕРАТ
натему:
«Квантовыекомпьютеры»
Выполнил:
студент154 группы ФМФ
БезнискоЕвгений.
Руководитель:
к.ф.-м.н.,доцент
ДжалмухамбетовА.У.
Астрахань– 2000 г.
Предпосылкисоздания квантовых компьютеров.
Уже сейчассуществует множество систем, в работе которых квантовые эффекты играютсущественную роль. Одним из наиболее известных примеров может служить лазер:поле его излучения порождается квантово-механическими событиями — спонтанным ииндуцированным излучением света. Другим важным примером таких систем являютсясовременные микросхемы — непрерывное ужесточение проектных норм приводит ктому, что квантовые эффекты начинают играть в их поведении существенную роль. Вдиодах Ганна возникают осцилляции электронных токов, в полупроводникахобразуются слоистые структуры: электроны или дырки в различных запертыхсостояниях могут хранить информацию, а один или несколько электронов могутбыть заперты в так называемых квантовых ямах.
Сейчас ведутсяразработки нового класса квантовых устройств — квантовых компьютеров. Идеяквантового компьютера возникла так.
Все началось в1982 году, когда Фейнман написал очень интересную статью [1], в которой рассмотрелдва вопроса. Он подошел к процессу вычисления как физик: есть чисто логическиеограничения на то, что можно вычислить (можно придумать задачу, для которойвообще нет алгоритма, можно придумать задачу, для которой любой алгоритм будетдолго работать). А есть ли ограничения физические? Вот есть закон сохраненияэнергии — вечный двигатель невозможен; а есть ли какое-нибудь физическое ограничениена функционирование компьютера, которое накладывает некие запреты нареализуемость алгоритмов? И Фейнман показал, что термодинамических ограничений,типа второго начала термодинамики, нет. Если мы будем уменьшать потериэнергии, шумы, то мы можем сделать сколь угодно длинные вычисления со скольугодно малыми затратами энергии. Это означает, что вычисления можно сделатьобратимым образом — потому что в необратимых процессах энтропиявозрастает. Собственно, Фейнмана это и заинтересовало: ведь реальное вычислениена реальном компьютере необратимо. И полученный им результат состоит в том, чтоможно так переделать любое вычисление — без особой потери эффективности, — чтобы оно стало обратимым. Те вычисления, которые делаются «просто так», конечно,необратимы, но «рост необратимости» пренебрежимо мал по сравнению, скажем, сшумами в современном компьютере. То есть необратимость — это тонкий эффект; тутвопрос не практический а принципиальный: если представить себе, что технологиядойдет до такого уровня, что этот эффект станет существенным, то можно так перестроитьвычисления, чтобы добиться обратимости.
И в этой жеработе Фейнман обратил внимание на то, что если у нас имеется устройство квантовое,то есть подчиняющееся законам квантовой механики, то его вычислительныевозможности совершенно не обязательно должны совпадать с возможностями обычногоустройства. Возникают некоторые дополнительные возможности. Но поканепонятно,позволяют они получить какой-то выигрыш или нет. Фактически, он и поставилсвоей статьей такой вопрос.
Кстати, Ю.И.Манин в конце семидесятых годов написал две популярные книжки по логике — «Вычислимое и невычислимое» и «Доказуемое и недоказуемое», и в одной из нихесть сюжет про квантовые автоматы, где он говорит о некоторых кардинальных отличияхэтих автоматов от классических [2].
В серединевосьмидесятых годов появились работы Дойча (D. Deutsch), Бернстайна иВазирани (Е.Bernstein, U. Vazirani), Яo (A. Уао). В нихбыли построены формальные модели квантового компьютера — например, квантоваямашина Тьюринга [3-6].
Следующий этап — статья Шора (Р.W. Shor) 1994 года [7], вызвавшая лавинообразныйрост числа публикаций о квантовых вычислениях. Шор построил квантовый (тоесть реализуемый на квантовом компьютере) алгоритм факторизации (разложения целыхчисел на множители — используется в том числе для вскрытия зашифрованныхсообщений). Все известные алгоритмы для обычного компьютера — экспоненциальные(время их работы растет как экспонента от числа знаков в записи факторизуемогочисла). Факторизация 129-разрядного числа потребовала 500MIPS-лет,или восемь месяцев непрерывной работы системы из 1600 рабочих станций,объединенных через Интернет. А при числе разрядов порядка 300 это время существеннопревзойдет возраст Вселенной — даже если работать одновременно на всех существующихв мире машинах. Считается (хотя это и не доказано!), что быстрого алгоритмарешения этой задачи не существует. Более того, гарантией надежности большинствасуществующих шифров является именно сложность решения задачи факторизации илиодной из родственных ей теоретико-числовых задач, например — дискретногологарифма. И вдруг выясняется, что на квантовом компьютере эта задача имеетвсего лишь кубическую сложность! Перед квантовым компьютером классическиебанковские, военные и другие шифры мгновенно теряют всякую ценность. Корочеговоря, работа Шора показала, что вся эта изысканная академическая деятельностьнепосредственно касается такой первобытной стихии, как деньги. Послеэтого и началась настоящая популярность...
Впрочем, выясняется, чтоне только классическая, но и квантовая криптография (наука о шифрованиисообщений) часто не способна противостоять квантовой криптоаналитике (науке орасшифровке). Некоторые важные криптографические протоколы, такие как «подбрасываниемонеты по телефону», рушатся при переходе к квантовым вычислениям. Точнее,гарантией их надежности является отныне не сложность тех или иных алгоритмов,а сложность задачи создания квантового компьютера.
Таким образомвозникает новая отрасль вычислений – квантовые вычисления. Квантовыевычисления (КВ) — это, как можно догадаться, вычисления на квантовомкомпьютере. Квантовых компьютеров на свете пока нет. Более того, до сих порнеясно, когда появятся практически полезные конструкции и появятся ли вообще.Тем не менее, квантовые вычисления — предмет, чрезвычайно модный сейчас вматематике и физике, как теоретической, так и экспериментальной, и занимаетсяим довольно много людей. Судя по всему, именно интерес стимулировалпервопроходцев — Ричарда Фейнмана, написавшего пионерскую работу, в которойставился вопрос о вычислительных возможностях устройств на квантовых элементах; Дэвида Дойча,формализовавшего этот вопрос в рамках современной теории вычислений; и ПитераШора, придумавшего первый нетривиальный квантовый алгоритм.
Типы квантовыхкомпьютеров.
Строго говоря,можно выделить два типа квантовых компьютеров. И те, и другие основаны наквантовых явлениях, только разного порядка.
Представителямипервого типа являются, например, компьютеры, в основе которых лежит квантованиемагнитного потока на нарушениях сверхпроводимости — Джозефсоновских переходах.На эффекте Джозефсона уже сейчас делают линейные усилители, аналого-цифровыепреобразователи, СКВИДы и корреляторы. Известен проект создания RISC-процессорана RSFQ-логике(Rapid Single Flux Quantum). Эта же элементная база используется в проектесоздания петафлопного (1015 оп./с) компьютера. Экспериментальнодостигнута тактовая частота 370 ГГц, которая в перспективе может бытьдоведена до 700 ГГц. Однако время расфазировки волновых функций в этихустройствах сопоставимо со временем переключения отдельных вентилей, ифактически на новых, квантовых принципах реализуется уже привычная намэлементная база — триггеры, регистры и другие логические элементы.
Другой типквантовых компьютеров, называемых еще квантовыми когерентными компьютерами,требует поддержания когерентности волновых функций используемых кубитов в течение всеговремени вычислений — от начала и до конца (кубитом может быть любая квантомеханическаясистема с двумя выделенными энергетическими уровнями). В результате, длянекоторых задач вычислительная мощность когерентных квантовых компьютеровпропорциональна 2N, где N — число кубитов в компьютере.Именно последний тип устройств имеется в виду, когда говорят о квантовыхкомпьютерах.
Математическиеосновы функционирования квантовых компьютеров.
Классическийкомпьютер состоит, грубо говоря, из некоторого числа битов, с которыми можновыполнять арифметические операции. Основным элементом квантового компьютера(КК) являются квантовые биты, или кубиты (от Quantum Bit,qubit).Обычный бит — это классическая система, у которой есть только два возможныхсостояния. Можно сказать, что пространство состояний бита — это множество издвух элементов, например, из нуля и единицы. Кубит же — это квантоваясистема с двумя возможными состояниями. Имеется ряд примеров таких квантовыхсистем: электрон, у которого спин может быть равен либо +1/2 либо –1/2, атомыв кристаллической решетке при некоторых условиях. Но, поскольку системаквантовая, ее пространство состояний будет несравненно богаче. Математически кубит — это двумерноекомплексное пространство.
В такой системеможно выполнятьунитарныепреобразования пространства состояний системы. С точки зрения геометрии такиепреобразования — прямой аналог вращении и симметрий обычного трехмерногопространства. Согласно принципу суперпозиции вы можете складывать состояния,вычитать их, умножать на комплексные числа. Эти состояния образуют фазовыепространства. При объединении двух систем полученное фазовое пространствобудет их тензорным произведением. Эволюция системы в фазовом пространствеописывается унитарными преобразованиями фазового пространства.
Так вот, вквантовом компьютере аналогичная ситуация. Он тоже работает с нулями иединицами. Но его функциональные элементы реализуют действия прямо в фазовомпространстве некоторой квантовой системы — при помощи унитарных преобразованийэтого пространства.
Конечно,унитарные преобразования не могут быть произвольными — они должны удовлетворятьнекоторым естественным ограничениям. Например, в случае обычной логикидостаточно иметь три операции: конъюнкция, дизъюнкция, отрицание. Все можно реализовать,используя только эти три операции. Точно так же и в квантовом случае естьнекоторый набор операторов, действующих только на три бита, с помощью которыхможно все реализовать. Там есть даже более тонкие результаты: можноограничиться классическими операторами на нескольких битах, а квантовые операторыбудут действовать только на один бит. То есть классический набор операций {конъюнкция,дизъюнкция, отрицание} можно заменить на такой: {конъюнкция,дизъюнкция, квантовое отрицание}, где квантовое отрицание — это произвольноеунитарное преобразование одного кубита.
Фазовоепространство КК есть тензорное произведение кубитов. Если в каждом кубитефиксирован базис (он будет состоять из двух векторов), то фазовое пространство- это комплексноелинейное пространство, базис которого индексирован словами из нулей и единиц.Таким способом двоичное слово на входе определяет базисный вектор.
Итак, вход — двоичное слово, определяющее один из базисных векторов. Сам же алгоритм — предписаннаяпоследовательность элементарных операторов. Применяем эту последовательность квектору на входе, в результате получаем некоторый вектор на выходе.
Так вот,согласно квантовой механике (КМ), пока система эволюционирует под действиемнаших унитарных операторов, мы не можем сказать, в каком именно классическомсостоянии она находится. То есть она находится в каком-то квантовом состоянии,но измеряем-то мы, когда общаемся с системой, все равно какие-то классическиезначения. Как это понимается в КМ? В фазовом пространстве фиксируетсянекоторый базис, и вектор состояния разлагается по этому базису. Этоматематическая формализация процедуры измерения в КМ. То есть если мы имеемдело с системой, у которой «то ли спин влево, то ли спин вправо», и если мывсе-таки посмотрим, какой спин, то мы получим одно из двух в любом случае. Авот вероятности того, что мы получим тот или другой результат, — это как разквадраты модуля коэффициентов разложения. КМ утверждает, что точно предсказатьрезультат измерения нельзя, но вероятности возможных результатов вычислитьможно.
Вероятностьвозникает в процессе измерения. А пока система живет, для нас существенно,что там есть сам этот вектор.
Другими словами,существенно, что система «находится одновременно во всех возможных состояниях».Как пишут многие авторы популярных введений в KB, возникает совершенночудовищный параллелизм вычислении: к примеру, в случае нашей системы из двухкубитов мы как бы оперируем одновременно со всеми возможными ее состояниями:00, 01, 11, 10.
Чтобыинтерпретировать ответ, надо заранее условиться, что какой-то бит — допустим,первый — это бит ответа. Пусть алгоритм проработал, у нас получился какой-товектор, не обязательно базисный. Тогда мы можем сказать, что первый бит снекоторой вероятностью равен 1. И требование к алгоритму такое: если ответ«да», то вероятность того, что первый бит равен 1, должна быть больше двухтретей. А если ответ «нет», вероятность того, что будет ноль, должна быть тожебольше двух третей.
Задачи,реализуемые на КВ.
Известно двапримера нетривиальных задач, в которых KB даютрадикальный выигрыш.
Первый из них — задача разложения целых чисел на простые множители и, как следствие, вычислениядискретного логарифма (ДЛ). Дальше речь пойдет именно о ДЛ.
Пусть у нас естьполе вычетов по модулю простого числа. В нем есть первообразные корни — такие вычеты,чьи степени порождают все ненулевые элементы. Если задан такой корень и заданастепень, то возвести в степень можно быстро (например, сначала возводим вквадрат, потом получаем четвертую степень, и т. д.) Дискретный логарифм — это обратнаязадача. Дан первообразный корень и какой-то элемент поля; найти, в какуюстепень нужно возвести этот корень, чтобы получить данный элемент. Вот этазадача уже считается сложной. Настолько сложной, что ряд современныхкриптографических систем основан на том предположении, что вычислить ДЛ заприемлемое время невозможно, если модуль — достаточно большое простое число.
Так вот, длядискретного логарифма есть эффективный квантовый алгоритм. Его придумал Шор вконце 1994 года. После его статьи и начался взрыв публикаций по КВ.Независимо от него, Алексей Китаев из ИТФ им. Ландау построил квантовыйалгоритм для этой и некоторых более общих задач [8]. Идеи у них былиразные.
Шор использовалпримерно такую идею, она существенно квантовая: рассмотрим базис в фазовомпространстве. Он состоит из классических состояний. Но в линейном пространствемного базисов. Мы можем найти некий оператор, который эффективно строит другойбазис; мы можем к нему перейти, сделать там какие-то вычисления, вернутьсяобратно и получить нечто совершенно отличное от того, что мы имели бы в классическомбазисе. Одна из возможностей использовать квантовость состоит в том, что мыстроим какой-то странный базис, в нем что-то делаем, возвращаемся обратно иинтерпретируем результат. Шор именно эту идею и реализовал. Причемпреобразование оказалось такое, которое и в физике, и в математике имеетпринципиальное значение — дискретное преобразование Фурье.
Его можнопредставить в виде тензорного произведения операторов, которые действуют накаждый из кубитов такой матрицей:
/>
Китаев придумалпримерно следующее. Есть некоторая ячейка — основной регистр, где мызаписываем наши данные нулями и единицами. И еще есть один управляющий кубит.Мы работаем так: у нас реализована процедура умножения на первообразный корень,на квадрат первообразного корня, и т. д. Управляющий кубит переводим в некотороесмешанное состояние, дальше строим такой оператор, который, в зависимости оттого,ноль или единица в этом управляющем кубите, либо применяет умножение к нашемуосновному регистру, либо не применяет. А потом кубит опять возвращаем всмешанное состояние. Оказывается, что это эффективный способ проделать некотороеизмерение. То есть Китаев заметил, что одна из вещей, которые мы можемэффективно делать на квантовом компьютере, — это имитировать процесс квантовогоизмерения. В данной задаче из результатов этих измерений эффективноизвлекается ответ.
Сам процессвычислений, происходит так: мы все время умножаем одну и ту же ячейку на некиеконстанты, результаты измерений записываем, а потом производим своего родаобработку результатов эксперимента — уже чисто классическими вычислениями.Вся квантовая часть заключается в том, что где-то рядом с нашим регистромнаходится в некоем смешанном состоянии коррелированный с ним кубит, и мы егопериодически наблюдаем.
Для вычисленияДЛ числа, записанного N битами, нужнопотратить N3<sup/> единиц времени. Вполне реализуемо — на КК, естественно. Но здесь надо заметить, что никто пока не доказал, что несуществует столь же быстрого алгоритма для вычисления ДЛ на обычной машине.
Вторая задачапредложена Гровером (L. Grover) [9]. Рассмотрим базу данных, содержащую 2N записей. Мыхотим найти ровно одну запись. Имеется некая процедура определения того,нужную запись мы взяли или нет. Записи не упорядочены. С какой скоростью мыможем решить эту задачу на обычном компьютере? В худшем случае нам придетсяперебрать все 2Nзаписей — этоочевидно. Оказывается, что на КК достаточно числа запросов порядка корня изчисла записей – 2N/2.
Интереснаязадача — создание оптимальных микросхем. Пусть есть функция, которую нужно реализоватьмикросхемой, и эта функция задана программой, использующей полиномиально ограниченнуюпамять. Построение нужной микросхемы с минимальным числом функциональных элементов- задача PSPACE. Поэтомупоявление устройств, эффективно решающих PSPACE-задачи, позволило быединообразно проектировать оптимальные по своим показателям вычислительныеустройства обычного типа. Кроме того, в PSPACE попадаетбольшинство задач «искусственного интеллекта»: машинное обучение, распознаваниеобразов и т.д.
Так вот, точноустановлено, что KB находятся где-то между обычными вероятностнымивычислениями и PSPACE. Если все же окажется, что KB можноэффективно реализовать на классических вероятностных машинах, не будет смыслав физической реализации квантовых машин. Если же выяснится, что при помощи KB можноэффективно решать те или иные PSPACE-задачи, то физическая реализация ККоткроет принципиально новые возможности.
Есть еще однаобласть применения КК, где заведомо возможен радикальный выигрыш у существующихтехнологий. Это моделирование самих квантовых систем.
Давайтепосмотрим на такой вопрос: как можно эволюцию квантовой системы изучать наобычном компьютере? Это постоянно делается, так как это задача важна для химии,молекулярной биологии, физики и т.п. Но, за счет экспоненциального ростаразмерности при тензорном произведении, для моделирования десяти спинов вамнужно оперировать с тысячемерным пространством, сто спинов — это уже конец. Аесли вспомнить, что в молекуле белка десятки тысяч атомов, то… Там, правда,не всюду существенно именно квантовое моделирование, но в целом ясно, что естьочень серьезные препятствия для моделирования квантовых систем на классическихкомпьютерах. Так что если создать вычислительное устройство, которое ведет себяквантовым образом, то по крайней мере один важный класс задач на нем естьсмысл решать — можно моделировать реальные квантовые системы, возникающие вфизике, химии, биологии.
Проблемысоздания КК.
Когда началсябум вокруг квантовых вычислений, физики высказывались об этом более чемскептически. Модель квантовых вычислений не противоречит законам природы, ноэто еще не значит, что ее можно реализовать. К примеру, можно вспомнить созданиеатомного оружия и управляемый термояд.
А если говоритьо КК, надо отметить одну очень серьезную проблему. Дело в том, что любаяфизическая реализация будет приближенной. Во-первых, мы не сможем сделатьприбор, который будет давать нам произвольный вектор фазового пространства.Во-вторых, работа любого устройства подвержена всяческим случайным ошибкам. Ауж в квантовой системе — пролетит какой-нибудь фотон, провзаимодействует содним из спинов, и все поменяется. Поэтому сразу возник вопрос, можно ли, хотябы в принципе, организовать вычисления на ненадежных квантовых элементах,чтобы результат получался со сколь угодно большой достоверностью. Такая задачадля обычных компьютеров решается просто — например, за счет введениядополнительных битов.
В случае КК этапроблема гораздо глубже. То место, где возникает новое качество KB по сравнению собычными вычислениями, — это как раз сцепленные состояния — линейныекомбинации базисных векторов фазового пространства. У вас есть биты, но они несами по себе живут в каких-то состояниях — это был бы просто вероятностныйкомпьютер (компьютер, дающий тот или иной ответ с определенной вероятностью), — а они находятся в некоем смешанном состоянии, причем согласованно-смешанном.Из-за этого в КК нельзя, например, просто взять и скопировать один бит вдругой! Обычная интуиция из теории алгоритмов здесь неприменима.
Так что проблеманадежности довольно сложна, даже на уровне чистой теории. Те люди, которыеактивно занимаются KB, активно ее решали и добились успеха: доказано, что,как и в классике, можно делать вычисления на элементах с заданной надежностьюсколь угодно точно. Это реализовано с помощью некоего аналога кодов, исправляющихошибки.
Что касаетсятехнической стороны появляются сообщения, что создаются реальные квантовыесистемы с небольшим числом битов — с двумя, скажем. Экспериментальные, вжелезе, так сказать.
Так чтоэксперименты есть, но пока очень далекие от реальности. Два бита — это и дляклассического и для квантового компьютера слишком мало! Чтобы моделироватьмолекулу белка, нужно порядка ста тысяч кубитов. Для ДЛ, чтобы вскрыватьшифры, достаточно примерно тысячи кубитов.
Задача эта возникласлишком недавно, и не исключено, что она потребует каких-то фундаментальныхисследований в самой физике. Поэтому в обозримом будущем ожидать появленияквантовых компьютеров не приходится.
Но можно ожидатьраспространения через не очень долгое время квантовых криптографическихсистем. Квантовая криптография позволяет обмениваться сообщениями так, чтовраг, если попытается подслушать, сможет разве что разрушить ваше сообщение.То есть оно не дойдет до адресата, но перехватить его в принципе будет нельзя.Подобные системы, которые уже реализованы, используют световод. УниверсальныйКК здесь не нужен. Нужно специализированное квантовое устройство, способноевыполнять только небольшой набор операций, — своего рода квантовый кодек.
Физической системе,реализующей квантовый компьютер, можно предъявить пять требований:
1. Система должнасостоять из точно известного числа частиц.
2. Должна бытьвозможность привести систему в точно известное начальное состояние.
3. Степень изоляцииот внешней среды должна быть очень высока.
4. Надо уметьменять состояние системы согласно заданной последовательности унитарныхпреобразований ее фазового пространства.
5. Необходимо иметьвозможность выполнять «сильные измерения» состояния системы (то есть такие,которые переводят ее в одно из чистых состояний).
Из этих пятизадач наиболее трудными считаются третья и четвертая. От того, насколько точноони решаются, зависит точность выполнения операций. Пятая задача тоже весьманеприятна, так как измерить состояние отдельной частицы нелегко.
Физическиеосновы организации КК.
Итак, что же этоза тайное оружие такое — КК? Остроумная идея заключается в использовании дляхранения, передачи и обработки информации существенно квантовых свойстввещества. В основном такие свойства проявляют объекты микромира: элементарныечастицы, атомы, молекулы и небольшие сгустки молекул, так называемые кластеры.(Хотя, конечно, и в жизни макромира квантовая механика играет важную роль. Вчастности, только с ее помощью можно объяснить такое явление, какферромагнетизм.) Одним из квантовых свойств вещества является то, чтонекоторые величины при измерении (наблюдении) могут принимать значения лишьиз заранее определенного дискретного набора. Такой величиной, например,является проекция собственного момента импульса, или, иначе говоря, спинаэлементарной частицы, на любую заданную ось. Например, у электрона возможнотолько два значения проекции: +1/2 или –1/2. Таким образом, количествоинформации, необходимое для сообщения о проекции, равно одному биту. Записав вклассическую однобитную ячейку памяти определенное значение, мы именно его оттудаи прочтем, если не произойдет какой-нибудь ошибки.
Классическойячейкой может послужить и спин электрона. Однако квантовая механика позволяетзаписать в проекции спина больше информации, чем в классике.
Для описанияповедения квантовых систем было введено понятие волновой функции. Существуютволновые функции, называемые собственными для какой-то конкретной измеряемойвеличины. В состоянии, описываемом собственной функцией, значение этой величиныможет быть точно предсказано до ее измерения. Именно с такими состояниямиработает обычная память. Квантовая же система может находиться и в состоянии сволновой функцией, равной линейной комбинации собственных функции,соответствующих каждому из возможных значений (назовем здесь такие состояниясложными). В сложном состоянии результат измерения величины не может бытьпредсказан заранее. Заранее известно только, с какой вероятностью мы получимто или иное значение. В отличие от обычного компьютера, в квантовом дляпредставления данных используются такие ячейки памяти, которые могут находитьсяв сложном состоянии. В нашем примере мы определили бы, что спин электрона сопределенной вероятностью смотрит вверх и вниз, то есть можно сказать, что вкубит записаны сразу и 0, и 1. Количество информации, содержащееся в такойячейке, и саму ячейку называют квантовым битом, или, сокращенно, кубитом.Согласитесь, ячейки в сложных состояниях весьма необычны для классическойтеории информации. Каждому возможному значению величины, представленной кубитом,соответствует вероятность, с которой это значение может быть получено причтении. Эта вероятность равна квадрату модуля коэффициента, с которым собственнаяфункция этого значения входит в линейную комбинацию. Именно вероятность иявляется информацией, записанной в кубит.
Квантовуюмеханику не случайно называют иногда волновой механикой. Дело в том, чтоквантово-механические волновые функции ведут себя подобно световой иликакой-либо другой волне. И для волновых функций, благодаря их способностиинтерферировать, также может быть введено понятие когерентности. Именно этосвойство используется в когерентном квантовом компьютере. Набор кубитовпредставляется когерентными волновыми функциями. Оказывается, что существуетвполне определенный класс воздействий на квантовую систему, называемыйунитарными преобразованиями, при которых не теряется записанная в кубитинформация и не нарушается когерентность волновых функций кубитов. Унитарныепреобразования обратимы — по результату можно восстановить исходные данные.После прохождения через квантовый процессор, использующий унитарные преобразования,волновые функции кубитов заставляют интерферировать друг с другом, наблюдаяполучающуюся картину и судя по ней о результате вычисления.
Из-за того, чтодля представления информации используются кубиты, в которых записано сразу обазначения — и, и 1, в процессе вычислений происходит параллельнаяобработка сразу всех возможных вариантов комбинаций битов в процессорномслове. Таким образом, в КК реализуется естественный параллелизм, недоступныйклассическим компьютерам. За счет возможности параллельной работы с большимчислом вариантов, в идеале равным 2N (где N — число кубитов), квантовому компьютеру необходимо гораздо меньше времени длярешения определенного класса задач. К ним относятся, например, задачаразложения числа на простые множители или поиск в большой базе данных. Для когерентногокомпьютера уже предложены алгоритмы, использующие его уникальные свойства.Кроме того, предполагается использовать КК для моделирования квантовых систем,что трудно или вообще невозможно сделать на обычных компьютерах из-за нехваткимощности или по принципиальным соображениям.
Все существующиена сегодняшний день обычные компьютеры, даже с параллельной обработкой информациина многих процессорах, могут быть смоделированы так называемым клеточнымавтоматом Тьюринга. Это существенно детерминированная и дискретная машина. Свозникновением и обсуждением идей квантовых вычислений стала активноразвиваться квантовая теория информации и, в частности, теория квантовых клеточныхавтоматов — ККА. Квантовый клеточный автомат является обобщением автоматаТьюринга для КК. Сформулирована гипотеза, гласящая, что каждая конечнымобразом реализуемая физическая система может быть достаточно хорошосмоделирована универсальной моделью квантовой вычислительной машины, использующейограниченное количество ресурсов. Для одного из предложенных типов ККАтеоретически уже доказано, что он подходит для такого моделирования и непротиворечит квантовой теории.
Пытаясьосуществить свой замысел, ученые упираются в проблему сохранения когерентностиволновых функций кубитов, так как потеря когерентности хотя бы одним изкубитов разрушила бы интерференционную картину. В настоящее время основные усилияэкспериментальных рабочих групп направлены на увеличение отношения временисохранения когерентности ко времени, затрачиваемому на одну операцию (этоотношение определяет число операций, которые можно успеть провести надкубитами). Главной причиной потери когерентности является связь состояний,используемых для кубитов, со степенями свободы, не участвующими в вычислениях.Например, при передаче энергии электрона в возбужденном атоме в поступательноедвижение всего атома. Мешает и взаимодействие с окружающей средой, например,с соседними атомами материала компьютера или магнитным полем Земли, но этоне такая важная проблема. Вообще, любое воздействие на когерентную квантовуюсистему, которое принципиально позволяет получить информацию о каких-либокубитах системы, разрушает их когерентность. Потеря когерентности можетпроизойти и без обмена энергией с окружающей средой.
Воздействием,нарушающим когерентность, в частности, является и проверка когерентности. Прикоррекции ошибок возникает своего рода замкнутый круг: для того чтобыобнаружить потерю когерентности, нужно получить информацию о кубитах, а это,в свою очередь, также нарушает когерентность. В качестве выхода предложеномного специальных методов коррекции, представляющих также и большойтеоретический интерес. Все они построены на избыточном кодировании.
Если в областипередачи информации уже созданы реально работающие системы и до коммерческихпродуктов осталось лишь несколько шагов, то коммерческая реализация квантовогокогерентного процессора — дело будущего. К настоящему времени КК научилсявычислять сумму 1+1! Это большое достижение, если учесть, что в видерезультата он выдает именно 2, а не 3 и не. Кроме того,не следует забывать, что и первые обычные компьютеры были не особенно мощны.
Сейчас ведетсяработа над двумя различными архитектурами процессоров: типа клеточного автоматаи в виде сети логических элементов. Пока не известно о каких-либопринципиальных преимуществах одной архитектуры перед другой. Как функциональнаяоснова для логических элементов квантового процессора более или менее успешноиспользуется целый ряд физических явлений. Среди них — взаимодействиеодиночных поляризованных фотонов или лазерного излучения с веществом илиотдельными атомами, квантовые точки, ядерный магнитный резонанс и — наиболеемногообещающий — объемный спиновый резонанс. Процессор,построенный на последнем принципе, в шутку называют «компьютером в чашке кофе»- из-за того, что в нем работают молекулы жидкости при комнатной температуре иатмосферном давлении. Кроме этих эффектов есть довольно хорошо развитаятехнология логических элементов и ячеек памяти на джозефсоновских переходах,которую можно при соответствующих условиях приспособить под когерентныйпроцессор.
Теорию,описывающую явления, лежащие в основе первого типа логических ячеек, называютквантовой электродинамикой в полости или резонаторе. Кубиты хранятся в основныхи возбужденных состояниях атомов, расположенных некоторым образом на равныхрасстояниях в оптическом резонаторе. Для каждого атома используется отдельныйлазер, приводящий его в определенное состояние с помощью короткого импульса.Взаимовлияние атомных состояний происходит посредством обмена фотонов врезонаторе. Основными причинами разрушения когерентности здесь служат спонтанноеизлучение и выход фотонов за пределы резонатора.
В элементах наоснове ионов в линейных ловушках кубиты хранятся в виде внутренних состоянийпойманных ионов. Для управления логикой и для манипулирования отдельнымикубитами также используются лазеры. Унитарные преобразования осуществляютсявозбуждением коллективных квантованных движений ионов. Источниками некогерентностиявляется спонтанный распад состояний ионов в другие внутренние состояния ирелаксация в колебательные степени свободы.
Сильноотличается от двух предыдущих «компьютер в чашке кофе». Благодаря достоинствамданного метода этот компьютер является наиболее реальным претендентом на то,чтобы достигнуть разрядности 10 бит в ближайшее время. В компьютере на коллективномспиновом резонансе работают молекулы обычных жидкостей (без всяких квантовыхвывертов типа сверхтекучести). В качестве кубитов используется ориентация ядерныхспинов. Работа логических ячеек и запись кубитов осуществляетсярадиочастотными электромагнитными импульсами со специально подобраннымичастотой и формой. В принципе, прибор похож на обычные приборы ядерного магнитногорезонанса (ЯМР) и использует аналогичную аппаратуру. Жизнеспособность этогоподхода обеспечивается, с одной стороны, очень слабой связью ядерных спинов сокружением и, потому, большим временем сохранения когерентности (до тысяч секунд).Эта связь ослаблена из-за экранирования ядерных спинов спинами электронов изоболочек атомов. С другой стороны, можно получить сильный выходной сигнал, таккак для вычислений параллельно используется большое количество молекул. «Не такуж сложно измерить спин четвертого ядра у какого-то типа молекул, если у васимеется около числа Авогадро (~1023) таких молекул», — говорит ДиВинченцо(Di Vincenzo),один из исследователей. Для определения результата непрерывно контролируютизлучение всего ансамбля. Такое измерение не приводит к потере когерентности вкомпьютере, как было бы в случае использования только одной молекулы.
Ядерные спины вмолекулах жидкости при комнатной температуре хаотически разупорядочены, ихнаправления равномерно распределены от 0 до 4p. Проблема записи и считывания кажется непреодолимойиз-за этого хаоса. При воздействии магнитного поля спины начинаюториентироваться по полю. После снятия поля через небольшое время система сноваприходит к термодинамическому равновесию, и в среднем лишь около миллионнойдоли всех спинов остается в состоянии с ориентацией по направлению поля. Однакоблагодаря тому, что среднее значение сигнала от хаотически направленныхспинов равно нулю, на этом фоне можно выделить довольно слабый сигнал от«правильных» спинов. Вот в этих-то молекулах с правильными ядерными спинами иразмещают кубиты. Для коррекции ошибок при записи N кубитов используют 2Nили больше спинов. Например, для N=1выбираются такие жидкости, где какие-то два спина ядер в одной молекуле послеопределенного воздействия полем могут быть ориентированны только одинаково.Тогда по направлению второго спина при снятии результата обработки можноотсеять нужные молекулы, никак не влияя на первый спин.
Как уже былосказано, обработка битов осуществляется радиоимпульсами. Основным логическимэлементом является управляемый инвертор. Из-за спин-спинового взаимодействиярезонансная частота, при которой происходит опрокидывание одного спина, зависитот направления другого.
Что касается квантовойпередачи данных, к настоящему времени экспериментально реализованы системыобмена секретной информацией по незащищенному от несанкционированного доступаканалу. Они основаны на фундаментальном постулате квантовой механики о невозможностиизмерения состояния без оказания влияния на него. Подслушивающий всегдаизменяет состояние кубитов, которые он подслушал, и это может бытьзафиксировано связывающимися сторонами. Данная система защиты информации абсолютнонадежна, так как способов обойти законы квантовой механики пока еще никто невыдумал.
Вместозаключения…
Пока квантовымкомпьютерам по плечу только наиболее простые задачи — например, они уже умеютскладывать 1 и 1, получая в результате 2. Было такжезапланировано взятие другого важного рубежа — факторизации числа 15, егопредстоит разложить на простые множители — 3 и 5. А там, глядишь, дойдет делои до более серьезных задач.
Опытные образцысейчас содержат менее десяти квантовых битов. По мнению Нейла Гершенфельда(Nell Gershenfeld),участвовавшего в создании одной из первых действующих моделей квантовогокомпьютера, необходимо объединить не менее 50-100 кубитов, чтобы решатьполезные с практической точки зрения задачи. Интересно, что добавлениекаждого следующего кубита в квантовый компьютер на эффекте объемного спиновогорезонанса требует увеличения чувствительности аппаратуры в два раза. Десятьдополнительных кубитов, таким образом, потребуют увеличения чувствительности в1000 раз, или на 60 дБ. Двадцать — в миллион раз, или на 120 дБ...
He исключено, чтов информационном обществе появление квантового компьютера сыграет ту же роль,что в свое время, в индустриальном, — изобретение атомной бомбы. Действительно,если последняя является средством «уничтожения материи», то первый может статьсредством «уничтожения информации» — ведь очень часто то, что известно всем,не нужно никому.
Литература,содержащая основную информацию о КК.
1. FeynmanR. Int. J. Theor. Phys. 21, 1982.
2. Манин Ю.И.Вычислимое и невычислимое. — М.: Советское радио, 1980.
3. FeynmanR. Quantum mechanical computers. // Optics News, February 1985, 11, p.11.
4. DeutschD. Quantum theory, the Church-Turing principle and the universal quantum computer. — Proc.R. Soc. London A 400, 97, 1985.
5. DeutschD. Quantum computational networks. — Proc. R. Soc.London A 425, 73, 1989.
6. Yao А. С.-С.Quantum circuit complexity. //Proceedings of the 34th Annual Symposiumon the Foundations of Computer Science, IEEE Computer Society Press, LosAlamitos, CA, 1993, p. 352.
7. ShorP.W. Algorithms for Quantum Computation: Discrete log and Factoring. // Proceedingsof the 35th Annual Symposium on the Foundations of Computer Science, edited byS. Goldwasser, IEEE Computer Society Press, Los Alamitos, CA, 1994, p.124.
8. Китаев A.Ю. Квантовыевычисления: алгоритмы и исправление ошибок. //Успехи математических наук.
9. GroverL. Afast quantum mechanical algorithm for database search. //Proceedings of the28th Annual ACM Symposium on Theory of Computing, 1996, pp. 212-219.
10. KitaevA.Yu. Quantum measurements and the Abelian stabilizer problem. — LANL e-printquant-ph/9511026, xxx.lanl.gov.
11. ShorP.W. Fault-Tolerant Quantum Computation. — LANL e-print quant-ph/9005011,xxx.lanl.gov.
12. Bennett С.Н.,Bernstein E., Brassard G., Vazirany U. Strengths and Weaknesses of QuantumComputing. — LANL e-print quant-ph/9701001, xxx.lanl.gov, to appear inSIAM J. On Computing.
www.ronl.ru
|
|