Квантовые гейты — различия между версиями
(→Демонстрация действия гейта на кубит) |
(→Двукубитный гейт CNOT) |
||
Строка 48: | Строка 48: | ||
В классическом случае это просто <tex>XOR</tex>. | В классическом случае это просто <tex>XOR</tex>. | ||
+ | |||
+ | Матрица действия этого гейта и таблица истинности выглядят так: | ||
+ | |||
+ | <tex>CCNOT=\begin{pmatrix} 1 & 0 & 0 &0 \\ 0 & 1 & 0& 0 \\ 0 & 0 & 0 & 1 \\ 0 & 0 & 1 & 0 \end{pmatrix}</tex>; | ||
+ | |||
+ | |||
+ | <math>CCNOT: \begin{array}{|c c|c c|} | ||
+ | |||
+ | |||
+ | 0 & 0 & 0 & 0 \\ | ||
+ | 0 & 1 & 0 & 1 \\ | ||
+ | 1 & 0 & 1 & 1 \\ | ||
+ | 1 & 1 & 1 & 0 \\ | ||
+ | \end{array}</math> | ||
===Другие используемые гейты=== | ===Другие используемые гейты=== | ||
Кроме упомянутых выше гейтов <tex>NOT</tex> и <tex>CNOT</tex> в квантовых вычислениях используются также некоторые другие гейты. Их применение не необходимо, но запись алгоритма с их помощью намного проще. На практике часто используются такие гейты: однобитный <tex>H</tex> (''Hadamard''), двубитные <tex>R</tex> (''rotate''), <tex>S</tex> (''swap''), трехбитные <tex>CCNOT</tex> (гейт Тоффоли), <tex> CSWAP</tex> (гейт Фредкина). | Кроме упомянутых выше гейтов <tex>NOT</tex> и <tex>CNOT</tex> в квантовых вычислениях используются также некоторые другие гейты. Их применение не необходимо, но запись алгоритма с их помощью намного проще. На практике часто используются такие гейты: однобитный <tex>H</tex> (''Hadamard''), двубитные <tex>R</tex> (''rotate''), <tex>S</tex> (''swap''), трехбитные <tex>CCNOT</tex> (гейт Тоффоли), <tex> CSWAP</tex> (гейт Фредкина). |
Версия 09:39, 22 декабря 2014
Идея квантового компьютера, высказанная Фейнманом (Richard Phillips Feynman) в 1982 году, достаточно проста. Она состоит в построении компьютера на основе квантовых, а не классических элементарных ячеек. Законы квантовой механики, определяющие поведение таких квантовых битов (quantum bit) – кубитов, обеспечивают огромные преимущества (скорость и параллелизм вычислений) квантового компьютера по сравнению с классическим компьютером.
Классический компьютер состоит из элементарных ячеек – битов, двум состояниям которых приписываются значения
или . В наборе битов (регистре) записывается и перерабатывается информация в виде двоичных чисел. Один бит имеет два базисных состояния и . Система из битов имеет базисных состояний. В квантовом компьютере элементарными ячейками для записи информации являются квантовые биты – кубиты. Кубит – это квантовая система, которая, как и бит, имеет два базисных состояния и , но в отличие от бита, кубит может находиться в любом суперпозиционном состоянии . Набор кубитов составляет квантовый регистр.Наиболее важным отличием кубитов от классических битов является не непрерывная природа суперпозиционных состояний, а возможность квантового перепутывания состояний в системе кубитов. В квантовой механике размерность пространства состояний системы в целом есть произведение (а не сумма) размерностей пространств состояний отдельных подсистем. Система из
кубитов имеет , а не базисных состояний.
Определение: |
Любая логическая операция с кубитами называется квантовым гейтом. |
По числу задействованных кубитов гейты делятся на одно- и многокубитные. Гейт переводит одно состояние регистра в другое.
Действие гейта на регистр можно записать так: .
Гейты – линейные операции:
.Содержание
Демонстрация действия гейта на кубит
Для демонстрации действия гейта на кубиты используют матричную запись гейта или таблицу истинности.
Матрица гейта действует на столбец весовых коэффициентов регистра и получается новый столбец, соответствующий новому состоянию регистра. В случае, если в действии гейта не участвуют некоторые кубиты, то их и не включают в матрицу, т.e. в матрице записано только реальное действие кубитов.
Таблица истинности отражает действие гейта на базисные состояния. Ее структура имеет следующий вид: по горизонтали записывается слева начальные состояния входящих кубитов, а справа — соответствующие конечные. По вертикали записываются все базисные состояния. Пример матричной записи кубита и таблиц истинности будет дан в таблице ниже.
Описание используемых гейтов
В квантовом случае, как и в теории классических вычислений, любую обратимую унитарную операцию на кубитах можно представить как совокупность базовых операций. Базисом квантовой логики может служить один трехкубитный гейт (например Тоффоли
или Фредкина — описание этих гейтов будет дано ниже) или один однокубитный и один двукубитный гейт (например и )Однокубитный гейт
Однокубитная логическая операция
переводит в .т.e. переставляет весовые коэффициенты кубита местами. В классическом случае ей соответствует обычный
, т.к. один из коэффициентов равен нулю. Матрица действия этого гейта и таблица истинности выглядят так:;
Двукубитный гейт
Двубитный гейт
(Controlled NOT), действующий на двукубитное состояние в общем виде записывается так:В классическом случае это просто
.Матрица действия этого гейта и таблица истинности выглядят так:
;
Другие используемые гейты
Кроме упомянутых выше гейтов
и в квантовых вычислениях используются также некоторые другие гейты. Их применение не необходимо, но запись алгоритма с их помощью намного проще. На практике часто используются такие гейты: однобитный (Hadamard), двубитные (rotate), (swap), трехбитные (гейт Тоффоли), (гейт Фредкина).