Часть 2 — здесь.
Квантовые вычисления используют явления квантовой механики, такие как суперпозиция (superposition) и спутывание (entaglement). Для слова entaglement, его русский перевод «спутывание» — не очень удачен. Скорее, это явление надо назвать «взаимосвязь», «взаимозависимость». Однако, если «спутывание» уже стало общепринятым термином, будем пользоваться им, имея в виду это уточнение.
Существуют несколько различных реализаций концепции квантовых вычислений, пока фактически в виде опытных образцов. Услуги некоторых из них уже доступны как облачные услуги.
Можно сказать, что по сравнению с традиционными компьютерами, квантовые находятся примерно на уровне первых реализаций ламповых компьютеров в средине 20 века, либо даже ранее, в виде разработанного в середине 30-х годов немецким инженером Конрадом Цузе электромеханического компьютера. Как будут выглядеть квантовые компьютеры будущего – пока никто не знает.
Однако, в настоящий момент уже существует ряд реализаций квантовых вычислений:
- Сверхпроводящий контур (IBM, Google, Quantum Circuits…)
- Захваченные ионы (ionQ)
- Кремниевые квантовые точки (Intel)
- Топологические кубиты (Microsoft, Bell Labs)
- Электронные дырки в кристаллах алмаза (Quantum Diamond Technologies).
Однако, пока не изучены теоретические основы, останавливаться подробно на технической реализации пока не будем.
Кубиты и суперпозиция
Начнем с основ. Квантовая информация – это данные о квантовых состояниях, которые используются для исследования вычислительных операций. Квантовая информация обрабатывается в виде кубитов. Они могут быть представлены как аналоги битов в обычных компьютерах, и в квантовых компьютерах они также выполняют роль элементарных носители информации.
Кубит может быть представлен в виде вектора в двумерном гильбертовом пространстве (см. рис. 1-4 в предыдущей публикации). Традиционный бит имеет только два состояния (0 и 1). Кубит имеет также два основных состояния |0⟩ и |1⟩. Такие скобки, как уже указывалось ранее, означают вектор (нотация Дирака).
Векторы кубита в двумерном гильбертовом представлены в виде 2-размерных матриц:
Это базовые состояния кубита. Ранее уже отмечалось, что квантовые состояния могут быть зафиксированы как функции вероятности, а также как векторы состояния.
Кубит может находиться в состоянии суперпозиции, то есть, одновременно в нескольких состояниях. Суперпозиция, как возможность нахождения во многих состояниях одновременно – это базовое понятие квантовых вычислений. И главное отличие от традиционных двоичных компьютеров, где состояния могут быть однозначно определены только как 0 или 1. А в квантовых вычислениях возможно и такое, что кубит может находиться в состоянии |0⟩ с вероятностью, скажем, 0.9, и в состоянии |1⟩ с вероятностью 0.1. Из теории вероятностей известно, что сумма вероятностей нахождения системы в конечном наборе состояний всегда равна 1 (или 100%). Если сумма вероятностей меньше, это значит, какие-то состояния не учтены.
Суперпозиция – это основной инструмент операций в квантовом компьютере, именно она обеспечивает экспоненциальный рост мощности вычислений в нём. Суперпозиция кубита может быть представлена вероятностной функцией |ψ⟩, которая зависит от амплитуды кубита в гильбертовом пространстве α и β.
Таким образом, мы может представить кубит как линейную комбинацию векторов |0⟩ и |1⟩. Коэффициенты α и β представляют собой амплитуды вероятностей нахождения вектора кубита в определённых локациях. В общем они случае являются комплексными числами. При измерении кубитов, они подчиняются правилу Борна:
|α|2 + |β|2 = 1
То есть, сумма квадратов абсолютных значений возможных вероятностей равна единице, или 100%, как это и следует из обычной логики.
Чтобы визуально представить себе кубит, воспользуемся т.н. сферой Блоха.
(Bloch Sphere, не путать с «блогосферой», это физик Феликс Блох. И кстати, уж не эта ли сфера послужила источников айтишного мема «сферический конь в вакууме»?).

На ней представлена волновая функция
|ψ⟩ = α|0⟩ + β|1⟩.

Поскольку коэффициенты α и β – комплексные числа, то их можно представить в полярной системе координат:
α = r0eiϕ0 и β = r1eiϕ1 ,
где r0 и r1 – вещественные числа (real), а ϕ0 и ϕ1 – углы.
При подстановке в волновую функцию, получаем:
|ψ⟩ = r0eiϕ0 |0⟩ + r1eiϕ1 |1⟩.
Из теории следует, что волновые функции, отличающиеся друг от друга домножением на комплексное число вида eiх – неотличимы. Домножим |ψ⟩ на комплексное число e-iϕ0:
|ψ⟩ = e-iϕ0|ψ⟩ = e-iϕ0 (r0eiϕ0 |0⟩ + r1eiϕ1 |1⟩) = r0|0⟩ + r1ei(ϕ1— ϕ0 )|1⟩.
Таким образом, количество независимых вещественных параметров, необходимых для описания системы из одного кубита, может быть сокращено до трёх: вещественных чисел r0 и r1, и разность углов ϕ = (ϕ1— ϕ0), причем, ϕ лежит в диапазоне от 0 до 2π радиан.
Поскольку справедливо правило Борна: |α|2 + |β|2 = 1, то r02 + r12 = 1, поэтому эти вещественные числа можно представить как:
r0= cos(θ/2), r1= sin (θ/2).
Поэтому, состояние квантовой системы, состоящей из одного кубита, может быть описано с помощью только двух вещественных параметров — углов ϕ и θ.
|ψ⟩ = cos(θ/2)|0⟩ + eiϕ|1⟩.
Углы ϕ и θ являются долготой и широтой на сфере Блоха.
Сфера Блоха является единичной двумерной сферой, каждая пара диаметрально противоположных точек которой соответствует взаимно ортогональным (т.е. разнонаправленным) векторам состояния. Условно считается, что северный и южный полюсы сферы Блоха соответствуют векторам|0⟩ и|1⟩, которые в свою очередь могут обозначать спины электрона («спин вверх» и «спин вниз»).

Важно понять, что точки на поверхности сферы соответствуют чистым состояниям квантовой системы, соответствующие единичной вероятности, в то время как точки внутри сферы представляют смешанные состояния (суперпозицию).
Квантовые регистры
В квантовом компьютере регистры – это системы из нескольких кубитов, точно так же, как в обычном компьютере в регистрах записывается набор битов. Квантовый регистр имеет размер, соответствующий числу кубитов в квантовом компьютере.
Если двоичный регистр может содержать N битов (переключателей «включено-выключено»), то квантовый регистр тоже содержать N кубитов, над которыми можно производить различные квантовые операции (о них – в следующей публикации). В упрощенной форме это можно представить так:

Отличие квантового регистра в том, что он может хранить данные в состоянии суперпозиции, т.е. в вероятностном представлении. Пространство состояний N-мерного квантового регистра – это Гильбертово пространство из 2N квантовых состояний.
По мере увеличения числа кубитов происходит расширение Гильбертова пространства. Для регистра из двух кубитов |ψ1⟩ и |ψ2⟩ это будет выглядеть так:
|ψ⟩ = | ψ1⟩⊗|ψ2⟩ = | ψ1⟩| ψ2⟩ = |ψ1ψ2⟩, где ⊗ — тензорное произведение (произведение Кронекера) векторных пространств (матриц).
То есть, если в классическом регистре записываются биты в виде 0 и 1, над которыми можно производить математические операции в двоичной форме, то в квантовом регистре записываются кубиты, которые являются своеобразными «векторными разрядами», над которыми также можно производить операции, но уже векторные (матричные).
Квантовые вентили (Quantum gates)
В традиционных компьютерах используются электронные устройства, в виде простейших логических элементов, способных выполнять элементарные логические задачи, которые являются основой интегральных цифровых микросхем. Входя в состав современных цифровых устройств (например, компьютеров, смартфонов и пр.), они, в самых различных комбинациях, способны к реализации весьма сложных функций.
Классические логические вентили показаны на рисунке.

В квантовых вычислениях используются квантовые элементы — вентили (gates), которые выполняют основные квантовые операции. Выстраивая их композиционно, можно производить требуемые квантовые вычисления над кубитами.
В отличие от классических логических вентилей, на входы квантовых вентилей подаются не бинарные сигналы, а векторы состояний, которые состоят из кубитов.
Квантовые вентили математически представляются унитарными матрицами, в которых число кубитов, подаваемых на вход и получаемых на выходе должно быть одинаковым.
Квантовый вентиль обозначается буквой U. При выполнении операции квантового вентиля над одним квантовым состоянием, можно получить другое квантовое состояние:
U|ψ1⟩ = |ψ2⟩
Некоторые примеры квантовых вентилей показаны в таблице:

Эти и другие квантовые операции подробнее рассмотрим в следующей публикации.
Уведомление: Квантовые вычисления и квантовые компьютеры (2) | Telecom & IT