В квантовых компьютерах ( КК ) основная ставка делается на предельный и недостижимый в субмикронной электронике режим распараллеливания вычислений на физико-техническом уровне их организации. Авторы идеи использования квантовых процессов при вычислениях [177, 178] исходили из того, что состояние квантовой системы из \[ \theta \] двухуровневых элементов (кубитов) можно описать некоторой когерентной суперпозицией из \[ 2^{\theta} \] булевых состояний, так как в отличие от классических физических систем состояние квантовой системы описывается вектором состояния в \[ 2^{\theta} \] -мерном гильбертовом пространстве. Это автоматически приводит к тому, что в КК коэффициент распараллеливания вычислений только на физическом уровне равен \[ 2^{\theta} \] . Однако для использования таких потенциальных возможностей КК необходимо [94, 193]:
При переходе в квантовую область сохраняются основные положения классической теории передачи, хранения и преобразования информации Винера - Шеннона [14, 15] с той разницей, что в КК энтропия служит мерой неопределенности измерения (идентификации) фактического состояния квантовой системы, которое характеризуется волновой функцией Шредингера \[ \Psi(x,t) \] , если квантовая система полностью изолирована от окружающей среды (замкнута). Здесь \[ x \] - полный набор всех непрерывных и дискретных переменных, характеризующих состояние квантовой системы, которыми, в частности, могут быть координаты и спиновые моменты всех частиц, составляющих систему. Такие состояния принято называть чистыми (когерентными) [94], и в КК каждый составляющий кубит может находиться в одном из двух таких состояний: \[ \Psi_{0}(x,t) \] или \[ \Psi_{1}(x,t) \] , первое из которых условно считается "нулевым", а второе - "единичным".
Для описания чистых состояний квантовой системы можно использовать вектор состояния Дирака \[ |\Psi(t)> \] , который представляет собой матрицу-столбец в гильбертовом пространстве и имеет размерность, равную числу чистых состояний квантовой системы (в случае кубита вектор состояния Дирака имеет размерность 2).
Любое взаимодействие квантовой системы с внешней средой (в том числе и через входные и выходные интерфейсы КК ) приводит к флуктуа-циям ее макроскопических характеристик, необратимым процессам диссипации энергии в ней и, как следствие, к разрушению квантовой когерентности, именуемой декогерентизацией [94]. При достижении квантовой системы термодинамического равновесия с внешней средой ее состояние считается смешанным (некогерентным) и описывается не волновой функцией, а положительно определенным оператором (матрицей) плотности \[ \hat{\rho}(t) = |\Psi(f)>*<\Psi(f)| \] который является результатом усреднения аналогичного оператора замкнутой системы по неконтролируемым состояниям внешней среды, которые в совокупности образуют более "общую" замкнутую систему Здесь \[ <\Psi(f)| \] - эрмитово-сопряженный вектор состояния системы.
Сохранение когерентности суперпозиции состояний кубитов составляет центральную физико-техническую проблему создания реальных КК. При этом требуется, чтобы время декогерентизации было больше, чем время реализации алгоритма, то есть \[ T_{d} > Lp*\tau_c \] . Как показывает опыт МКМД-бит-потоковых вычислительных технологий, для реализации слов- и поток-инструкций требуется \[ Lp \ge 10^{4} \] бит-инструкций, откуда следует, что время декогерентизации должно превосходить время выполнения основных квантовых операций на четыре и более порядков.
Центральная системотехническая проблема создания КК состоит в том, что для описания поведения \[ \theta \] -кубитного регистра требуется задать \[ 2^{\theta } \] комплексных чисел, что практически исключает возможность моделирования когерентных суперпозиций на основе традиционных ЭВМ уже при \[ \theta = 10^{2}-10^{3} \] . Объясняется это тем, что размерность пространства состояний квантового "рабочего тела" из \[ 10^{2}-10^{3} \] кубитов составляет величины порядка \[ 10^{30}-10^{300} \] . Отсюда следует, что схемотехническое моделирование квантового "рабочего тела" из сотен и более кубитов практически невозможно с использованием традиционных инструментальных ЭВМ. Для этого требуются компьютеры на основе квантовых логических вентилей, работа которых описывается в \[ 2^{\theta } \] - мерном гильбертовом пространстве, то есть инструментальная ЭВМ также должна быть квантовой и фактически идентичной создаваемой.
Перспективы использования КК в основном связывают [94] с решением так называемых NP- полных задач, где на основе квантовых вычислений можно достичь экспоненциального ускорения. Такие задачи принято считать не вычисляемыми на классических компьютерах из-за того, что в них время решения полиномиально зависит от размерности задачи \[ \theta \] . К классу NP- полных относятся задачи, для которых трудно найти решение, но очень просто его проверить. Отсюда следует, что программно-аппаратные инструментальные платформы для КК удобнее строить на базе нейрокомпьютерных технологий, где в процессе обучения материнской нейро-ЭВМ можно использовать методы проб и ошибок, основанные на направленном или случайном переборе возможных вариантов решения поставленной задачи.
В идеале центральную физико-техническую проблему декогеренти-зации КК можно решить[94, 194, 195] на основе логически и термодинамически обратимых вентилей, в которых энергия, затраченная на переключение из одного когерентного состояния в другое, рассеивается только за счет необратимых периферийных процессов ввода информации в КК и считывания (идентификации) результата на его выходе.
В теории информации в качестве термодинамического предела для энергии переключения классического вентиля \[ (P*\tau)_{min} \] принято считать предельное значение работы \[ \Delta F _{in} \] , которую необходимо выполнить для того, чтобы перевести вентиль в состояние, отличное от исходного. Поэтому на 1 бит информационной энтропии [94] необходимо затратить \[ ( P*\tau)_{min} = \Delta F_{min} = kT*\ln{2}\approx 3*10^{-21}(T/300K) \] Дж/бит, где \[ k = 1,380662*10^{-23} \] Дж*К-1 - постоянная Больцмана, \[ P \] - мощность, расходуемая в процессе переключения, а \[ \tau \] - время переключения вентиля. Однако в этом случае высока вероятность ложного срабатывания вентиля за счет тепловых флуктуаций \[ p\approx exp(-F_{min} /kT) = 0,5 \] , то есть такие энергетические затраты приводят к максимальной неопределенности при оценке текущего состояния вентиля. Поэтому в качестве классического термодинамического предела для энергии переключения выбрана величина с более чем 6-кратным запасом \[ ( P*\tau)_{min} = 4kT ^2*10^{-20}(T/300K) \] Дж/бит, которой соответствует \[ p\approx0,02 \] .
В этом случае при увеличении количества информации внутри системы на 1 бит ее внутренняя энергия должна увеличиться на \[ \Delta U = kT*(4-ln2) > kT \] , что приводит к ее накоплению в квантовой системе пропорционально росту числа вентилей, частоте и продолжительности их работы.
Отсюда встает задача преодоления квазиклассического термодинамического барьера и построения термодинамически и логически обратимого КК. Из приведенных соотношений видно, что стирание 1 бита информации увеличивает энтропию квантовой системы на величину \[ \Delta S = k\ln{2} \] , что приводит к рассеянию энергии и выделению тепла \[ \Delta Q_{min} = T*\Delta S = (P*\tau)_{min} = kT*\ln{2} \] . В результате логически необратимая операция одновременно является и термодинамически необратимой [94]. Это говорит о том, что вентили реальных КК можно сделать только логически обратимыми, а их термодинамическую обратимость можно считать только условной и ее можно выдерживаться только при определенных условиях и на ограниченных интервалах времени. Для этого можно использовать адиабатическую динамическую логику [94, 196], в рамках которой частота переключательных процессов настолько мала, что обеспечивается релаксация всех составляющих вентилей в квазиравновесное состояние. Это позволяет считать вычислительный процесс адиабатическим, в котором энергия не рассеивается, а минимальная работа переключения практически полностью расходуется на изменение внутренней энергии квантового "рабочего тела" \[ (W_{min}= \Delta U_{min} \] , которую можно возвратить для полезного использования в последующих циклах его "возбуждения". Однако и в этом случае не удается полностью исключить диссипацию энергии [94, 197], что не является обязательным условием сохранения логической необратимости.
Компромиссное решение состоит в том, чтобы логически обратимым считать тот вентиль, в котором по сигналам на выходе можно однозначно восстановить значение сигналов на его входах. Такие логически, но не термодинамически обратимые вентили были предложены в рамках консервативной логики [94, 198], основу которой образуют (рис. 7.5) вентили дважды контролируемого "НЕ" ( CCNOT ) и контролируемого обмена ( SWAP ).
Эти вентили имеют по три входа и выхода, обладают базисным свойством в том смысле, что на их основе можно представить любую логическую функцию от большего числа переменных, а логически обратимый характер выполняемых ими преобразований задается правилами табл. 7.1. По аналогичной схеме можно выполнить и "ИСКЛЮЧАЮЩЕЕ ИЛИ" ( CNOT ), которое базисным свойством не обладает, но широко используется в вычислительной технике (см. рис. 7.5-с).
В основу квантовых вентилей (кубитов) можно положить достаточно широкий спектр реальных квантовых процессов [94]:
а | b | с | CCNOT | CSWAP | ||||
---|---|---|---|---|---|---|---|---|
а | b | с | а | b | с | |||
0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
0 | 0 | 1 | 0 | 0 | 1 | 0 | 0 | 1 |
0 | 1 | 0 | 0 | 1 | 0 | 0 | 1 | 0 |
0 | 1 | 1 | 0 | 1 | 1 | 0 | 1 | 1 |
1 | 0 | 0 | 1 | 0 | 0 | 1 | 0 | 0 |
1 | 0 | 1 | 1 | 0 | 1 | 1 | 1 | 0 |
1 | 1 | 0 | 1 | 1 | 1 | 1 | 0 | 1 |
1 | 1 | 1 | 1 | 1 | 0 | 1 | 1 | 1 |
Несмотря на такое разнообразие квантовых процессов, используемых в реальных и реалистичных КК, уже сейчас можно выделить достаточно узкий класс математических моделей (преобразований), описывающих эти процессы. Основное внимание уделяется двум типам квантовых операторов и соответствующих им квантовых вентилей (излагается по [94]). К первым относят различные операторы, которые выполняют одно-кубитовые повороты вектора состояния кубита в двухмерном гильбертовом пространстве:
что соответствует
\[ \hat{H}|x>=\sqrt{1/2}\sum_{y=0.1}{(-1)^{x*y}|y>} \]и описывается матрицей
\[ \hat{H}=\sqrt{1/2}\left (\begin{array}{cc}1&1\\1&-1\end{array}\right ) = \sqrt{1/2}(\hat{\sigma}_z + \hat{\sigma}_x); \]Суперпозиция двузначных (булевых) состояний в регистре из \[ N = 2^{\theta} \] кубитов описывается оператором Уолша - Адамара, который представляет собой прямое произведение однокубитовых операторов Адамара: \[ \hat{W} = \hat{H}_1\otimes\hat{H}_2\otimes\ldots\hat{H}_i\otimes... \hat{H}_{\delta} \] и для него
\[ \hat{W}|x>=N\sum_{y=0}^{N-1}{(-1)^{x*y}|y>} \]Где \[ x, y \] - цепочки из \[ N = 2^{\theta} \] состояний \[ \theta \] -кубитов, а \[ x*y \] - побитное скалярное произведение этих цепочек по модулю 2:
\[ х*у= \sum_{i=0}^{N-1}{x_{i}\Lambda y_{i}}. \]Двухкубитовые операторы и соответствующие им квантовые вентили выполняют повороты в гильбертовом пространстве двух кубитов, взаимодействие между которыми невозможно представить прямым произведением однокубитовых поворотов. Основным вентилем этого типа является CNOT рис. 7.5-с, который совместно с однокубтовыми операторами образует операционный базис для всех унитарных операций, выполняемых квантовой системой из более двух кубитов, и который можно представить матрицей 4*4:
В этом двухкубитовом вентиле кубит \[ A \] является контролирующим и описывается симметричной матрицей, так как его схема симметрична относительно входов-выходов. Квантовый вентиль \[ B \] является контролируемым и выполняет контролируемую инверсию ( \[ NOT \] ) при \[ А = |1> \] , то есть, как и в МКМД-бит-потоковых вычислительных технологиях, операция \[ XOR \] используется как условная инверсия. Этот же вентиль можно использовать для копирования или неразрушающего измерения состояния контролирующего кубита \[ A \] , так как при \[ |b > = 0 |b' > = |a > \] .
Физический смысл преобразований, выполняемых квантовым вентилем \[ CNOT \] , проще всего установить из эквивалентной схемы
где составляющие преобразования выполняются слева направо, \[ H \] - однокубитовый вентиль Адамара, а
двухкубитовый оператор контролируемого (избирательного) изменения фазы, который в данном случае осуществляет сдвиг фазы нал и только состояния \[ |1,1> \] : \[ |1,1> \to - |1,1> \] , оставляя неизменными остальные состояния кубита.
\[ \hat{B}_{ij}=\left ( \begin{array}{cccc} 1&0&0&0\\ 0&1&0&0\\ 0&0&1&0\\ 0&0&0&-1 \end{array} \right ) \]Тип двухкубитного квантового вентиля \[ SWAP \] выполняет обмен состояниями между составляющими кубитами, и его можно представить:
Таким образом, базовые квантовые вентили:
Существующие экспериментальные КК реализуют уже ряд квантовых алгоритмов и обладают всеми признаками традиционных компьютеров: загружают информацию, обрабатывают ее и выдают результаты. Но они еще обладают малой оперативной памятью (единицы и десятки кубит) и низким быстродействием. Так, операция выборки из четырех элементов осуществляется на двух кубитах за десятки миллисекунд, что пока не позволяет им конкурировать с классическими компьютерами.
Один из первых экспериментальных КК ориентирован на реализацию алгоритма Дойча - Джозса [94, 199], который используется при решении следующей задачи.