Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Лекции / Лекция 10 - Квантовые вычисления.ppt
Скачиваний:
0
Добавлен:
04.06.2026
Размер:
13.09 Mб
Скачать

Идея квантовых вычислений

• Принцип квантовых вычислений заключен в увеличении модуля комплексных амплитуд │λx0│тех состояний x0 , f (x), которые хотелось бы получить в результате считывания.

Процесс вычисления – последовательность унитарных преобразований ненаблюдаемого состояния регистра.

Унитарное преобразование задается унитарной матрицей - Н. Матрица Называется унитарной , если H H где - комплексно сопряженная матрица.

Этим обеспечивается обратимость преобразования.

Для обратимых преобразований выполняется условие нормировки

02 12 1

12

Элементарные преобразования

Нaзвание и

Результат

обозначение

преобразования

Тождественное

преобразование II

Отрицание X

Фазовый сдвиг -Z

Фазовый сдвиг

с отрицанием Y

Преобразование

Адамара Н

CNOT

Прибавление ко второму биту первого

mod2

0

0

 

 

1

1

 

 

0

1

 

 

1

0

 

 

0

0

 

 

1

1

 

 

0

0

 

 

1

1

 

 

0

 

1

( 0

1 )

 

 

2

 

 

1

 

1

( 0

1 )

 

 

2

 

 

00

00

01

01

10

11

11

10

Матрица

1

 

0

 

 

0

 

1

 

 

 

 

 

 

0

 

1

 

 

1

 

0

 

 

 

 

 

 

1

 

0

 

0

 

 

 

 

 

 

1

 

0

 

1

 

 

1

0

 

 

 

 

1

 

1

 

1

 

 

 

1

 

 

 

2

 

 

 

 

1

1

0

0

0

 

0

1

0

0

 

 

 

 

 

 

 

 

0

0

0

1

 

 

 

 

0

0

1

0

 

13

Задачи, решаемые с помощью квантового компьютера

Проверка является ли булева функция константой

– алгоритм Дойча-Джоза.

Задача поиска решения уравнения f (x) 1 , где функция принимает значения (0,1) – алгоритм Гровера.

Квантовое преобразование Фурье.

Задача факторизации числа – алгоритм Шора.

Задача дискретного логарифмирования-алгоритм Шора

14

Алгоритм Дойча (алгоритм параллельных вычислений)

• Рассмотрим булеву функцию от одной переменной

f (x) :{0,1} {0,1}

Существует всего 4 таких функций:

 

 

x

f1

f2

f3

f4

 

 

 

 

 

 

 

 

 

 

 

0

0

1

0

1

 

 

 

 

 

 

 

 

 

 

1

0

1

1

0

4

 

 

 

 

 

 

Первые две функции – функции константы, 3 и

функции не константы. Чтобы определить тип функции, нужно в классической системе сделать два запроса на вычисления. При квантовых вычислениях – только один.

15

Решение

Запишем состояния 0 и1 кубита

q 0

 

0 1

1

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

0 1

 

0

0

1

или

 

0

 

 

1

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

0

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

1 0

 

0

1

1

или

 

1

 

0

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

1

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Сначала возьмем систему из одного кубита в базисном состоянии, соответствующем логическому нулю.

К полученному кубиту применяем преобразование Адамара

H1

 

1

 

1

1

 

 

1

 

2

 

 

 

1

16

Построение матриц Адамара

H0 1,

 

 

 

 

 

 

1

1

Hn 1

Hn 1

Hn 1

 

Hn

 

 

Hn 1

 

 

1

1

 

 

Hn 1

 

 

 

1

1

 

 

1

1

 

 

 

 

 

 

 

 

 

 

1

1

 

 

 

1

 

 

 

 

1

 

 

 

 

 

 

1

1

H2

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

H1

 

 

1

1

 

 

1

 

1

 

 

 

1

1

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

1

1

 

1

1

 

 

 

 

 

 

 

 

 

 

 

 

 

17

H

 

0

 

1

1

1

1

 

 

1

 

1

 

1

(

 

0

 

1 )

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

2

 

1

1

0

 

 

2

 

1

 

2

 

 

 

 

 

Это λi

• Далее выполняем еще одно преобразование, которое называется фазовый запрос Of

Of H

 

0

 

1

 

( 1) f (0)

0

 

 

1

 

1

 

( 1) f (0)

 

1

(( 1) f (0)

 

0

( 1) f (1)

 

1 )

 

 

 

 

 

 

 

0

( 1)

f (1)

 

 

 

 

( 1)

f (1)

 

 

 

 

 

2

2

2

 

 

 

 

 

 

 

1

 

 

 

 

 

 

 

 

 

 

 

Далее еще раз применяем преобразование Адамара.

HOf H

 

0

 

1

 

1

1

( 1) f (0)

 

( 1) f (0)

( 1) f (1)

 

0

( 1) f (0)

( 1) f (1)

 

1

 

 

 

 

2

 

1

 

( 1)

f (1)

 

 

2

 

 

2

 

 

 

 

 

 

1

 

 

 

 

 

 

 

 

 

18

x

f1

f2

f3

f4

 

 

 

 

 

0

0

1

0

1

 

 

 

 

 

1

0

1

1

0

 

 

 

 

 

• Таким образом после этих преобразований мы получаем суперпозицию состояний с амплитудами

 

( 1) f (0)

( 1) f (1)

,

( 1) f (0)

( 1) f (1)

0

 

 

2

1

 

 

 

 

 

 

2

 

 

 

 

 

 

 

 

 

 

 

 

получаем

• Для функции типа константы

 

 

 

 

 

 

 

 

 

амплитуды

 

 

и измерение конечного

 

 

 

 

f (0)

f

(1)

 

состояния с вероятностью

 

 

 

 

 

 

 

определит,

0 1, 1

0

 

 

 

 

 

 

 

 

 

 

что система находится в состоянии

0

 

2

1

.

 

 

 

 

 

 

 

 

P

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

0

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

19

Для функции, не являющейся константой

f (0) f (1) амплитуды равны

0 0, 1 1

и с вероятностью

P

 

1

 

2 получим состояние

 

 

 

.

 

 

 

 

1

 

 

1

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Таким образом в процесс только одного

 

измерения мы получаем результат ,

который означает, что функция

является

 

 

 

 

 

 

 

 

 

f (x)

 

константой или не константой в противном

случае.

20

Алгоритм Дойча-Джоза

• Обобщает алгоритм Дойча на случай функции n

переменных

0

1

n 1

) :

 

 

n

 

 

 

 

 

 

 

f (x

, x

, , x

 

0,1

 

 

0,1

Позволяет определить за одно измерение является ли функция константой или сбалансированной функцией , т.е. если в половине случаев она принимает значение 0, а в другой половине 1.

• Амплитуда

принимает значение

 

если функция константа и 0, если она

1

сбалансирована.

 

0

 

21