Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
4_Kvantovye_vychislenia.ppt
Скачиваний:
10
Добавлен:
25.06.2024
Размер:
13.48 Mб
Скачать

Пример ИОС

a=7/27

9/27

-9/27

5/27 23/27

N=9, vi=1/3, vx= -1/3

Среднее значение a=7/27 После ИОС получаем v’i=5/27, vx=23/27

22

Примеры применения процедуры ИОС при разны N=2n

n=7

n=8

n=9

n=10

23

Этапы алгоритма Гровера

. Создаем регистр из n кубитов и устанавливаем все

азряды в состояние 0

0 (n)

. Применяем преобразование Адамара, получаем состояние

аждой ячейки

 

1

 

1

(

 

0

 

1 -) равновероятное состояние.

 

 

 

 

2

 

 

 

 

 

 

 

 

 

 

 

 

 

. Находим значение функции f(x), применяя оператор

U ( 1)f (x)

ри х=х0 f(x0)=1 и U=-1, при других х f(x)=0 и U=1.

сли U=1, то ячейка остается в исходном состоянии, если

 

 

 

 

 

 

=-1, то изменяет состояние

U

 

1

 

1

(

 

0 ( 1) f ( x)

 

1 ( 1) f ( x) )

1

(

 

0

 

 

1 )

 

 

 

 

 

 

2

2

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

. Все состояния равновероятные, но одно из них противо- оложное другим состояниям. Нужно повысить его вероятность. рименяем метод усиления амплитуды (инверсии относительно

реднего.)

24

Пример алгоритма Гровера

• Задана булева функция от n аргументов

f (x0 , x1, , xn ) , которая принимает значение 1 только при одном наборе аргументов.

Нужно найти это состояние. Решение.

1 этап. Подготавливает начальное состояние

0 0,0, .0 , т.е. все ячейки квантового регистра устанавливаются в состоянии 0. Или все кубиты в нулевом состоянии.

 

0

0

 

x0

1

 

x1

2n 1

 

x2n 1

1

 

x0

0

 

x1

0

 

x262n 1

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

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

x

x3

x2

x1

y=f(x1,x2,x3)

 

 

 

 

 

 

 

 

 

x0

0

0

0

0

x1

0

0

1

0

x2

0

1

0

0

x3

0

1

1

0

x4

1

0

0

0

x5

1

0

1

0

x

1

1

0

0

6

 

 

 

 

x7

1

1

1

1

27

Далее рассмотрим преобразование для функции от 3-х аргументов

• 2 этап. Приготавливаем смесь равновероятных состояний 1 H3 0

 

 

 

 

1

1

1

1

1

1

1

1

 

1

0,354

 

 

 

 

 

1

1

1

1

1

1

1

1

 

0

 

 

0,354

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

1

1

1

1

1

1

1

 

 

 

0

 

 

0,354

 

 

 

 

 

 

1

 

 

 

 

 

 

 

1

 

1

1

1

1

1

1

1

1

 

 

0

 

 

0,354

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

1

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

2 2

 

1

1

1

1

1

1

1

1

 

0

 

 

0,354

 

 

 

 

 

 

 

1

1

1

1

1

1

1

1

 

 

0

 

 

0,354

 

 

 

 

 

 

1

1

1

1

1

1

1

1

 

 

0

 

 

0,354

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

1

1

1

1

1

1

1

 

 

 

0

 

 

0,354

 

 

 

 

 

 

1

 

 

 

 

Состояние 1 является суперпозицией 2n возможных состояний системы из n кубитов.

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

H0 1,

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

1

1

 

Hn 1

 

 

Hn 1

 

 

Hn

1

 

Hn 1

 

 

 

 

 

 

 

 

 

 

 

 

 

 

1

 

Hn 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

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

29

3 этап. Несколько раз применяем оператор

G RU f

 

2

G G

 

1

 

 

 

 

1

f (000)

 

 

0

 

 

 

 

 

 

 

 

 

 

 

f (001)

 

 

 

 

 

 

 

 

 

 

0

 

1

 

 

U f

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

0

 

 

0

 

 

 

 

 

 

 

 

 

 

 

 

0

0

1 f (111)

 

 

1

 

 

0

 

 

 

 

0

 

 

0

 

 

 

 

0

 

 

 

 

 

0

 

 

 

0

 

 

 

 

 

 

0

 

 

(пустые места в матрице нули)

0 0 0 0

1

1

1

1

0 0 0 0

0

0

0

 

 

 

0

 

 

 

 

 

 

 

0

 

 

 

 

 

 

0

 

 

 

0

 

1

 

0

 

 

 

 

1

0

 

 

 

 

 

0

0

 

 

1

30

 

1

2n

1

 

1

 

 

 

 

1

 

 

 

 

 

 

 

2

n 1

 

R

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

1

 

 

 

 

 

 

2n 1

 

 

 

 

 

12n 1

12n 1 1

12n 1

 

 

 

 

 

 

3 4

 

 

 

 

 

 

 

 

 

 

 

 

 

 

14

 

 

 

 

 

 

 

1

2

n 1

 

 

1

4

 

 

 

 

 

 

 

1

 

 

 

 

1

 

2

n 1

 

4

 

 

 

 

 

 

 

 

 

 

14

 

 

 

1

 

1

 

 

1

 

2n

1

 

4

 

 

 

 

 

 

1

 

 

 

 

 

 

4

 

 

 

 

 

 

1

 

 

 

 

 

 

 

 

 

 

 

 

4

 

 

 

 

 

 

 

14

14

14

14

14

14

34

34

34

34

34

34 14 14 14 14 14 14

4

4

14

14

14

14

14

34

Так называемый оператор диффузии

31

Результаты преобразования

 

 

 

 

0,177

 

 

 

 

 

0,088

 

 

 

 

 

 

 

0.305

 

 

 

 

 

0,177

 

 

 

 

 

0,088

 

 

 

 

 

 

 

0.305

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

0,177

 

 

 

 

 

0,088

 

 

 

 

 

 

 

0.305

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

G

 

1

 

0,177

 

GG

 

1

 

0,088

 

GGG

 

1

 

 

 

0.305

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

0,177

 

 

 

 

 

0,088

 

 

 

 

 

 

 

0.305

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

0,177

 

 

 

 

 

0,088

 

 

 

 

 

 

 

0.305

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

0,177

 

 

 

 

 

0,088

 

 

 

 

 

 

 

0.305

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

0,884

 

 

 

 

 

0,972

 

 

 

 

 

 

 

0,575

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Оптимальное число применений оператора G

 

2n раз.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

4

 

 

 

Состояние соответствующее решению уравнения

f(x)=1, будет иметь максимальную амплитуду и может появиться в процессе измерения с максимальной вероятностью. Вероятность получить неправильный результат в алгоритме Гровера оценивается как

O(1/2n).

 

Решение задачи алгоритмом Гровера требует O(2n/2 )

операций.

Классический переборный алгоритм требует O(2n 1)

операций.

32

Соседние файлы в предмете Криптографические протоколы