Онлайн книга «Тьюринг. Компьютерное исчисление»
Двоичная | 1000 | 1001 | 1010 | 1011 | 1100 | 1101 | 1110 | НИ |
Десятичная | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 |
Как мы можем представить число в кубитах?
Например, нам нужно представить число 9 (схема 2). В двоичной системе его эквивалентом будет 1001, так как вычислив 1 · 23 + 0 · 22 + 0 · 21 + 1 -20 (помним, что 20 = 1), получим 9.
Следовательно, |9> соответствует 11001>. А число 8? |8) соответствует 11000>. Это означает, что квантовый компьютер представляет числа 8 и 9 так же, как и обычный.
Однако он также может представлять и выполнять операции суперпозиции, например с |8> + |9>.
РИС. 2
Теперь, когда мы попытаемся выяснить экспериментальными методами, в каком состоянии суперпозиции находится кубит из всех возможных состояний между 0 и 1, проявляется принцип интерференции, состоящий в том, что, как говорят квантовые физики, происходит коллапс кубита. То есть кубит превращается в классический бит, теряет состояние суперпозиции и принимает значение, равное 0 или 1. Это означает, что квантовый компьютер может выполнять операции согласно правилам квантовой механики, чем и объясняется его потенциал, при этом результат будет представлен пользователю, как и в обычном компьютере.
Еще одно явление, имеющее место в квантовых компьютерах, — квантовая запутанность частиц. Согласно этому свойству, можно получить пару фотонов, находящихся в запутанном состоянии, так что изменение одного фотона повлияет на другой. Этот феномен очень важен для квантовых вычислительных машин и применяется в криптографии — области, в которой Алан Тьюринг преуспел во время работы в Блетчли- парке.
У нас есть два кубита, которые обозначим А и В, в состояниях 0 и 1. Представим их, согласно системе счисления, в виде |0>A и |1>B соответственно. Если они запутаны, нужно использовать символ ®, применяемый в математике для обозначения операции тензорного произведения, как показано далее:
В предыдущем выражении 1/√2
является величиной от применения тензорного произведения к системе из двух кубитов. Не вдаваясь в детальные объяснения, можно сказать: предполагается, что кубиты находятся в так называемом гильбертовом пространстве — обобщении евклидова пространства. Возведя эту величину в квадрат:
(1/√2)2,
получаем 1/2. Это позволяет измерить состояния в квантовом эксперименте и получить результаты |01> или |10>.
Представим, что Алан Тьюринг — друг Эндрю Ходжеса, его лучшего биографа, и что он может измерить, в каком состоянии находится кубит А, а Ходжес может измерить, в каком состоянии находится кубит В. Для того чтобы сделать эксперимент еще более эффектным, представим, что Алан и Эндрю находятся в разных комнатах и оба имеют устройство для измерения состояния кубитов.
РИС.З
В данном эксперименте интересно то, что если, например, Алан первым измерит состояние своего кубита (А), он узнает, что оно равно |0>A или |1>A, и вероятность того и другого события, как и при подкидывании монетки, составляет 50%. Однако фантастический аспект квантового исчисления состоит в том, что измерение Аланом кубита станет причиной коллапса, который произойдет после выяснения его состояния. В результате для Эндрю, находящегося в другой комнате, учитывая, что кубиты запутаны, эксперимент потеряет характер случайности. Если теперь Эндрю все же будет измерять свой кубит (В), результат его наблюдений заведомо известен. То есть для Эндрю результаты эксперимента уже не эквивалентны подбрасыванию монетки, так как в 100% наблюдений он получит результат, обратный результату Алана (схема 3). Например, если Алан увидел, что запутанный кубит А находится в состоянии |0>A, произойдет коллапс пары кубитов |0>A и |1>B. Если же Алан увидел обратную ситуацию, а именно что А находится в состоянии |1>A, тогда произойдет коллапс пары кубитов |1>A и |0>B. То есть измерения, проведенные Аланом, «изменили» кубиты таким образом, что однозначно определили наблюдения Эндрю.
Полезность квантовой запутанности в системах шифрования с военными или коммерческими целями очевидна, так как если два человека совместно владеют запутанными объектами, несанкционированное вмешательство в систему третьего лица изменит один из двух объектов и таким образом выдаст присутствие постороннего. Сегодня ведутся исследования в системах этого класса с использованием поляризованного света, волны которого совершают колебания в одной плоскости, при этом считается, что горизонтальные колебания соответствуют состоянию 0, а вертикальные — состоянию 1. Таким образом, в квантовом компьютере кубит может находиться в состояниях |0>, |1>, состоянии суперпозиции между |0> и |1> или может быть запутанным с другим кубитом, и это позволяет преодолеть ограничения универсальной машины Тьюринга, или, если угодно, компьютера.
Наконец, если комплектующие компьютера используют вентили И, ИЛИ и другие, в квантовом компьютере используются квантовые вентили, оперирующие кубитами, и их операции имеют реверсивный характер. Например, при использовании вентиля ИЛИ в обычном компьютере, если выход равен 1, выполненная операция не реверсивна. Это означает, что невозможно установить, какими были входные данные: 0 или 1,1 или 0,1 или 1. Кроме того, класс операций с кубитами, которые может совершать квантовый компьютер, выше, чем класс операций с битами, так как состояния, в которых может находиться кубит, могут быть представлены как вектор в сфере, называемой сферой Блоха (схема 4). Программа blochsphere симулирует один кубит, а также операции, которые можно с ним выполнить.
Кроме логических операторов булевой алгебры (И, ИЛИ и другие), возможны другие операции с кубитами, определяющие вращение вектора по осям X, Y, Z сферы Блоха. Эти операции являются результатом применения так называемых квантовых вентилей, то есть квантовых цепей, производящих операцию над одним или несколькими кубитами. Например, вентили Паули и Адамара позволяют совершать вращения. Необходимо помнить, что хотя кубит представлен в сфере Блоха как вектор, на самом деле квантовые операторы представляют матрицы, которые при умножении на вектор-кубит дают новый вектор — измененный кубит. Вот простой пример оператора Паули класса х с матрицей