wstęp do informatyki kwantowej

150
Witold Jacak Instytut Fizyki Politechnika Wrocławska 1

Upload: deacon

Post on 05-Jan-2016

63 views

Category:

Documents


0 download

DESCRIPTION

Witold Jacak Instytut Fizyki Politechnika Wrocławska. Wstęp do informatyki kwantowej. Informacja klasyczna. Informacja klasyczna: nośnik: makroskopowa wielkość fizyczna dostępna jest poprzez klasyczne pomiary: - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: Wstęp do informatyki kwantowej

Witold JacakInstytut FizykiPolitechnika Wrocławska

1

Page 2: Wstęp do informatyki kwantowej

2

Informacja klasyczna:

nośnik: makroskopowa wielkość fizyczna dostępna jest poprzez klasyczne pomiary: np. natężenia prądu elektrycznego, napięcia, pojemności kondensatora (typowe klasyczne nośniki informacji), ale też np. długości stołu itp.  Pomiar klasyczny jest•Nieniszczący•Powtarzalny •Nie wyróżnia obserwatora Najmniejsza porcja informacji klasycznej jest klasyczny bit

Informacja klasyczna może podlegać zaburzeniom otoczenia – ale w ramach klasycznej termodynamiki – stąd w odniesieniu do informacji klasycznej można wprowadzić pojęcie entropii Shannona.

Własności entropii informatycznej ujmowane są w twierdzeniach Shannona (przepustowości kanału informacyjnego). Ewolucja informacji klasycznej (czy układu klasycznego) przebiega wg klasycznej dynamiki (klasycznej mechaniki, klasycznej elektrodynamiki, termodynamiki) Podstawową własnością klasycznej ewolucji jest determinizm (związany z trajektorią wynikającą z rozwiązania równania dynamiki Newtona)

Ten determinizm stoi u podstaw klasycznej algorytmiki

i

iii ppSp ln,

Page 3: Wstęp do informatyki kwantowej

3

Informacja kwantowa:

nośnik: mikroskopowa wielkość fizyczna dostępna jest poprzez pomiar układu kwantowego, np. stanu pojedynczego elektronu, atomu czy fotonu  Pomiar kwantowy jest•Niszczący •Niepowtarzalny•Wyróżnia obserwatora Najmniejsza porcja informacji kwantowej jest tzw. qubit (odpowiednik klasycznego bitu)

Informacja kwantowa też podlega zaburzeniom otoczenia, ale wtedy ginie nieodwracalnie (jest to zjawisko dekoherencji – układ kwantowy „zapomina” informację – informacja wypływa do otoczenia i jest tracona)  Informacja kwantowa zachowuje się w czasie wg mechaniki kwantowej, ma też inny charakter niż klasyczna - dopasowany do kwantowego opisu. Także można tutaj mówić o determinizm – trajektoria w przestrzeni Hilberta algorytmika

Page 4: Wstęp do informatyki kwantowej

4

1. Funkcja falowa opisująca układ kwantowy należy do przestrzeni Hilberta

Przestrzeń Hilberta – zupełna przestrzeń metryczna z metryką zadaną przez iloczyn skalarny

00,0

**

*

H jest zupełna wg. normy

Page 5: Wstęp do informatyki kwantowej

5

3. Żeby funkcja falowa należała do przestrzeni Hilberta to powinna być unormowana

tylko operacje unitarne

zachowują normę (w przestrzeni Hilberta zadaną przez iloczyn skalarny)

1

,1, UUUUU

,,,, UUUUUU

UUU

2. Stan układu kwantowego podlega ewolucji zgodnie z równaniem Schrodingera

Ht

i ˆ

Page 6: Wstęp do informatyki kwantowej

6

4. Pomiar kwantowy – rzutowanie von Neumanna

•Obserwable muszą być operatorami hermitowskimi, bo tylko takie mają wartości własne rzeczywiste (możliwe do zinterpretowania)

równanie Schrodingera

Ht

i ˆ

operator Hamiltona (z liniowości i z zachowania normy wynika, że jest hermitowski):

0

0

1

tt

t

HH

HH

HH

Hi

Hi

ˆˆ

0ˆˆ

0ˆˆ

0ˆˆ

Page 7: Wstęp do informatyki kwantowej

7

Jeżeli hamiltonian H nie zależy jawnie od czasu 0ˆˆ

tHi

etdtHd

i

Dowolny operator Aieˆ

jest unitarny gdy AA ˆˆ

1, 0ˆˆˆˆˆˆˆ

eeeeeeeUeU AiAiAiAiAiAiAi

Więc tHi

unitarny – czyli ewolucja unitarna

Jeżeli hamiltonian H zależy jawnie od czasu to też ewolucja unitarna

tdttUtdttHi

dtt

ttdtt

,ˆ1

z dokładnością do członów liniowych w dt 1ˆ11ˆ1ˆ1 2

2

dttHdttH

idttH

i

rozpatruje się człony liniowe ponieważ chodzi o określenie różniczki 0ˆ,ˆ

21 tHtH

jeżeli by całkować różniczki to postać operatora nie byłaby postaci eksponenty tylko T-eksponenty

Page 8: Wstęp do informatyki kwantowej

8

W ogólności każda rozpatrywana ewolucja zamkniętego układu kwantowego jest unitarna

•zdeterminowana w przestrzeni Hilberta przez trajektorię •w przestrzeni fazowej dalej nie ma trajektorii

Na podstawie hamiltonianu można określić przeszłość i przyszłość układu – więc określić jego zachowanie, czyli zaprogramować

Taka ewolucja zaprogramowanego układu kwantowego jest realizacją pewnych założonych procedur czyli jest programem komputera kwantowego

DETERMINIZM (kwantowo - trajektoria w przestrzeni Hilberta, klasycznie trajektoria wyznaczona przez równanie Newtona)

Page 9: Wstęp do informatyki kwantowej

9

Rzutowanie von Neumana

iiiA ˆ ),(),( trctr ii

i

ewolucja unitarnadalsza ewolucja unitarna

pomiar – redukcja f. falowej

),( tr

i

i

równanie własne operatora A

rozłożenie dowolnego stanu w danej chwili t w bazie wektorów własnych operatora A

Page 10: Wstęp do informatyki kwantowej

10

Rzutowanie von Neumana

W wyniku pomiaru, przypadkowo ale z prawdopodobieństwem |ci|2 wychodzi wynik i a stan (r,t) zamieniany jest w odpowiednią funkcję własną i. Funkcja ta nie ma związku przyczynowego z mierzonym stanem. Od niej kontynuowana jest dalsza ewolucja.

Jest to: •proces nieodwracalny – ponieważ do któregokolwiek stanu końcowego można było być zrzutowanym z bardzo wielu stanów wejściowych i nie wiadomo do którego należałoby wrócić •proces niszczący – niszczona jest pełna informacja zawarta w mierzonym stanie•proces wyróżniający obserwatora

),(),( trctr ii

i

iiiA ˆ

Page 11: Wstęp do informatyki kwantowej

11

Dla operatorów hermitowskich spełnione jest tw. Spektralne

nnnn

nn PPA ˆ,ˆˆ

Operator Pn jest operatorem rzutu na podprzestrzeń własną odpowiadającej n-tej wartości własnej. Operator rzutowania posiada własność:•nilpotentności

•hermitowskości

mmnnnnmmn

nm

PPP

,ˆˆˆ

nnnnnnnn PP ,ˆˆ

W wyniku pomiaru następuje redukcja funkcji falowej do przestrzeni rzutowej -- tzw. kolaps von Neumanna operatora rzutu (podprzestrzeni, na którą następuje rzutowanie) jest zupełnie przypadkowy ale jest określone prawdopodobieństwo tego wyboru:

nnnnn PPPPp ˆˆˆˆ 2

W wyniku pomiaru uzyskuje się wartość

a funkcja kolapsuje do

n

n

n

n

P

P

P

P

ˆ

ˆ

ˆ

ˆ

2

n

Page 12: Wstęp do informatyki kwantowej

12

Macierze gęstości

Jeśli układ A jest w stanie czystym , to można wprowadzić operator rzutowania na ten stan i nazwać go macierzą gęstości:

Dla dowolnej obserwabli M w układzie A mamy wtedy:

MTrMM

i

iAiATr

Dla MA

i i i

MMiiiMiiMiMTr

Zapis stanu czystego w postaci operatora rzutu na ten stan, czyli w postaci macierzy gęstości, i w postaci funkcji falowej, są zatem w pełni ekwiwalentne (dają te same średnie dla dowolnych obserwabli).

Page 13: Wstęp do informatyki kwantowej

13

Macierz gęstości można jednak wprowadzić ogólniej, tzn. nie tylko dla stanów czystych układu A, wtedy nie będzie ona operatorem rzutu na jakiś stan (bo układ A nie jest wtedy w określonym stanie czystym).

Taką sytuację mamy gdy układ A oddziałuje z układem B i razem tworzą zamknięty układ A+B, który jako całość jest już w stanie czystym,

Wspólna macierz gęstości układu A+B dla tego stanu jest równa:

BAABHH

ABABAB

BAri

irABria

,

W przestrzeniach Hilberta układów A i B wybieramy bazy: A

i B

r

Jeśli z macierzy gęstości dla pełnego układu A+B (będącego w stanie czystym) wziąć teraz ślad po układzie B, to otrzymamy macierz gęstości dla układu A oddziałującego z B (i przez to nie będącego w stanie czystym).

.*,

,,,

,,,,

*,, jiaajirspraarrTr

AArjrji

riAABBBspjir

BsjpiBABr

BABBA

Page 14: Wstęp do informatyki kwantowej

14

Mamy zatem dwie sytuacje odnośnie macierzy gęstości stanu A. Dla stanu czystego układu A

jiccAAj

jiiAAA

*

,

i dla stanu układu A będącego częścią złożonego układu A+B (nie jest to stan czysty układu A) .*

,,,

, jiaaTrAArj

rjiriABBA

Różnica polega tu na dodatkowym indeksie r i sumowaniu po nim w przypadku stanu układu będącego częścią układu A+B. W pierwszym przypadku macierz gęstości jest operatorem rzutowania, w drugim nie.

W obu przypadkach macierz gęstości posiada jednak trzy własności:

•jest operatorem hermitowskim,•jest operatorem dodatnio określonym,•ślad macierzy gęstości jest równy 1.

Page 15: Wstęp do informatyki kwantowej

15

5. Iloczyn tensorowy – splątanie kwantowe

dwa podukłady nie oddziałują:

BAB

AAA

BAAB

Ht

i

Ht

i

HHH

ˆ

ˆ

ˆˆˆ

dwa podukłady oddziałują:

stany nieseparowalne

jiBjAiijAB

BAAB

BAAB

BAAB

c

VHHH

,

ˆˆˆˆ

BBAA

BAAB

,

stany separowalne

Iloczyn tensorowy to przestrzeń par i ich liniowych kombinacji

BA

BA

,

221221112121 aaa

Przestrzeń będąca iloczynem tensorowym dwóch podprzestrzeni ma określony następująco iloczyn skalarny:

BABA 21212211 ,,,

Page 16: Wstęp do informatyki kwantowej

16

Qubit – najmniejsza porcja informacji kwantowej

Dowolny stan qubitu należy do dwu-wymiarowej przestrzeni Hilberta, i może być przedstawiony jako superpozycja dwóch stanów ortonormalnych

Przestrzeń Hilberta qubitu może być rozpięta np. na tzw. bazie obliczeniowej:

Wtedy dowolny stan qubitu ma postać

Ale można przyjąć, że jest rzeczywiste (pominąć fazę funkcji falowej)

0 , 1

0 1 2 21 C ,

x 21ie x Rx , 1,0x 0,2

cos2

x

21 sin2

x

2 2sin cos 12 2

0 1

cos 0 sin 12 2

ie

Page 17: Wstęp do informatyki kwantowej

17

0 1 cos 0 sin 12 2

ie

Czyli można zapisać dowolny stan qubitu jako stan z dwoma parametrami będącymi kątami

x

z

y

Wtedy wektor n odpowiada powyższemu opisowi qubitu

ˆ cos sin ,sin sin ,cosn

jest wektorem jednostkowym sfery (Blocha). Sfera Blocha – stan |0> jest opisany wektorem [0,0,1] a stan |1> wektorem [0,0,-1].

ˆ ˆcos sin , 1xn n n

ˆ ˆsin sin , 1yn n n

ˆ ˆcos , 1zn n n

Page 18: Wstęp do informatyki kwantowej

18

Stany splątane dwóch qubitów to stany z przestrzeni Hilberta 4-wymiarowej, która jest iloczynem dwóch przestrzeni qubitów (2-wymiarowych), takie że nie można ich separować na prosty iloczyn tensorowy stanów obu qubitów. W 4-wymiarowej przestrzeni Hilberta pary qubitów można wybrać bazę złożoną z samych stanów splątanych. Standardowa baza tej przestrzeni składa się ze stanów niesplątanych:

BA11

BA12

BA21

BA22

Stany te tworzą bazę ON w BA HH

Bazę tę można jednak zmienić na dowolną inną bazę (przy pomocy unitarnej transformacji), w szczególności na bazę złożoną z maksymalnie splątanych stanów (tj. odpowiadających maksymalnie zmieszanemu stanowi zarówno układu A jak i B – wszystkie stany splątane odpowiadają temu samemu stanowi zmieszanemu podukładu A i B )

Page 19: Wstęp do informatyki kwantowej

19

)1221(2

1BABAAB

)1221(2

1BABAAB

)2211(2

1BABAAB

)2211(2

1BABAAB

Wektory te nazywane są stanami Bella, a baza – bazą Bella. Łatwo zauważyć, że baza Bella ma specjalną własność – stany qubitu A wchodzą do wszystkich wektorów Bella w taki sam sposób. Oznacza to, że można uzyskać wszystkie wektory Bella z jednego z nich (np. pierwszego) manipulując tylko stanami qubitu B, a więc przy pomocy tylko lokalnych operacji na układzie B.

Ta własność jest ściśle kwantowa (wynika ze splątania kwantowego – czyli w zasadzie z prostych własności algebraicznych 4-wymiarowej przestrzeni liniowej) i nie ma swojego odpowiednika klasycznego. Ten fakt nosi nazwę supergęstego kodowania.

Page 20: Wstęp do informatyki kwantowej

20

Z postaci stanów Bella wynika, że następujące operacje lokalne na qubicie B pozwalają otrzymać wszystkie stany Bella z jednego, np.

ABABBBBBowatozsamoscioperacja )(22,11

ABABBBBBoobrot )(22,11

ABABBBBBzamiana )(12,21

ABABBBBBoobrotizamiana )(12,21

Oznacza to zdwojenie możliwości kodowania informacji w stosunku do klasycznej pary bitów: 00, 01, 10, 11. W tym klasycznym przypadku, aby otrzymać wszystkie cztery stany pary bitów, należy kodować obydwa bity. Zauważmy, że podobną własność ma także baza standardowa przestrzeni , tj. baza:

(także należy kodować na obu qubitach).

BA11

BA12

BA21

BA22

Page 21: Wstęp do informatyki kwantowej

21

Innym przykładem prostego wykorzystania splątania kwantowego jest zjawisko teleportacji kwantowej.

Jeśli mamy stan cząstki A (qubitu A) w postaci:

AAAcc 21 21 1|||| 2

22

1 cc

i chcemy przesłać (teleportować) ten stan na cząstkę B (qubit B), odległą od cząstki A, to możemy posłużyć się cząstką pomocniczą C (qubitem C), w taki sposób, że przygotowujemy parę cząstek CB w stanie splątanym. Najlepiej w jednym z maksymalnie splątanych stanów Bella – np. w stanie

)1221(2

1BCBCCB

Page 22: Wstęp do informatyki kwantowej

22

Można to zrobić posługując się przyrządem pomiarowym realizującym pomiar na parze cząstek (w tym przypadku CB), tak zorganizowanym, że jego operator hermitowski ma przedstawienie spektralne w postaci operatorów rzutowania na cztery stany Bella qubitów C i B. Taki pomiar – ortogonalne rzutowanie na stany Bella – prowadzi do oddziaływania cząstek (qubitów) C i B, w wyniku którego powstaje jeden ze stanów Bella. Nie wiadomo który – może powstać każdy z jednakowym prawdopodobieństwem, ale z pewnością któryś powstanie. Taki pomiar na parze nieoddziaływujących cząstek prowadzi zatem do ich splątania, czyli jest ich oddziaływaniem.Zakładając zatem, że przygotowaliśmy parę qubitów C i B w stanie

)1221(2

1BCBCCB

cały układ ABC jest w stanie czystym CBAABC

Page 23: Wstęp do informatyki kwantowej

23

CBAABC

)1221(2

1)21( 21 BCBCBA

cc

)}12(

)12(

21(

)21({2

1

21

21

21

21

CCAB

CCAB

CCAB

CCAB

cc

cc

cc

cc ta równość jest oczywistym tożsamościowym związkiem wynikającym z możliwości zapisu tego samego wektora w przestrzeni liniowej (w tym przypadku ośmiowymiarowej) w rozłożeniu na inne wektory (jest to zmiana bazy)

CBA HHH

CBAABC

może być przedstawiony w bazie:

CAB0

CAB0

CAB0

CAB0

CAB1

CAB1

CAB1

CAB1

Page 24: Wstęp do informatyki kwantowej

24

Oczywiście wtedy współczynniki c1 i c2 znajdą się przy qubicie (cząstce C), ale w wielu rożnych kombinacjach. Można powiedzieć, że w tym sensie (nadmiarowo) te współczynniki są od razu przy cząstce C (chociaż wprowadziliśmy je z cząstką A) – tak samo jak przy dowolnej innej cząstce – wynika to z możliwości zmiany bazy w przestrzeniach Hilberta wielo-cząstkowych (wielo-qubitowych) układów.

Jeśli uważać, że nie ma żadnego oddziaływania między cząstkami A, B, i C, ani też oddziaływania otoczenia na te trzy cząstki, to można oddalić cząstkę B (nawet znacznie) od cząstki C, pozostawiając je jednak dalej w stanie splątanym,

)1221(2

1BCBCCB

Następnie można zbliżyć do siebie cząstki A i C i dokonać na tej parze ortogonalnego pomiaru stanów Bella, tzn. wprowadzić ich oddziaływanie za pośrednictwem tego pomiaru. W wyniku tego pomiaru zostanie wybrany (z równym prawdopodobieństwem) któryś z czterech możliwych stanów Bella pary AC, ale równocześnie, wobec powyższego przedstawienia, zostanie wtedy wybrany stan czysty cząstki B.

Page 25: Wstęp do informatyki kwantowej

25

Na przykład gdy po rzutowaniu na stany Bella pary AC znajdzie się ona w stanie

AC

cząstka B będzie wtedy z pewnością w stanie BBcc 12 21

wystarczy wtedy lokalnie na cząstce B (odległej) wykonać zamianę stanów

B1

B2

by otrzymać ten sam stan, jaki na początku miała cząstka A. Z góry nie wiadomo było jednak, który z wyników rzutowania na stany Bella się zrealizuje (tu założyliśmy dla przykładu, że czwarty) i dopiero po jego zrealizowaniu wiadomo co zrobić lokalnie na qubicie B (odległym), żeby otrzymać pożądany stan, taki jak wyjściowy na qubicie A. Tę informację, który ze stanów Bella zrealizował się w pomiarze (zupełnie losowo – zgodnie z ansatzem von Neumanna), należy przesłać do obserwatora przy qubicie B (Bob), za pomocą klasycznych kanałów łączności (informacje te wyśle obserwator qubitu A, który dokonał pomiaru stanów Bella na parze AC - Alice).

Page 26: Wstęp do informatyki kwantowej

26

Fakt konieczności przesłania dodatkowej informacji klasycznej powoduje

•ograniczenie prędkości teleportacji kwantowej przez prędkość światła (w kanale klasycznym), chociaż kwantowa informacja znalazła się na cząstce B natychmiastowo, ale w nieczytelny dla Boba sposób,•układ z informacją klasyczną oznacza co innego, niż układ bez tej informacji klasycznej,•konieczność uczestnictwa obserwatora (Boba) i obserwatora (Alice) w całym procesie teleportacji. Pomiar dokonany przez Alice na parze AC powoduje splątanie cząstek A i C, ale równocześnie rozplątanie cząstek C i B – po tym pomiarze cząstka B jest już w stanie czystym. Natomiast cząstka A jest wtedy w stanie splątanym z C (i para AC nie ma już żadnej informacji o współczynnikach i – ta informacja jest już w całości na B – jest to wynik rzutowania von Neumanna). Jest tu spełniona zasada no-cloning – stan czysty znika z cząstki A i pojawia się na cząstce C, nie ma wiec kopiowania stanu kwantowego, ale jego przesyłanie (teleportacja).

Page 27: Wstęp do informatyki kwantowej

27

źródło EPRsplątane stany

stany Bella

operacje lokalne

A (Alice)

B (Bob)

1

2

3

informacja klasyczna

Schematyczne przedstawienie procesu teleportacji kwantowej: do cząstki 2, splątanej kwantowo z cząstką 3, doplątuje się, przez pomiar na parze 1-2, cząstkę 1, wtedy cząstka 3 odplątuje się, a stan z cząstki 1 może być przeniesiony na cząstkę 3, pod warunkiem wykonania odpowiedniego pomiaru na tej cząstce (skorelowanego z wcześniej nie znanym wynikiem pomiaru na parze 1-2).

Page 28: Wstęp do informatyki kwantowej

Twierdzenia No-cloning Nieznany stan kwantowy nie może zostać

skopiowanyTwierdzenie No-broadcasting Nieznany stan kwantowy nie może zostać

rozgłoszony (konsekwencja tw. No-cloning)Twierdzenie No-deleting Nieznany stan kwantowy nie może zostać

usunięty (względem swojej kopii – odwrócone tw. No-cloning)

28

Page 29: Wstęp do informatyki kwantowej

29

Nieznany stan kwantowy nie może być skopiowany [Wootters W. K., Żurek W. H., Nature 299 802-803 (1982)].

Należy tutaj wyjaśnić, co oznacza „nieznany stan kwantowy”. Rozważmy pojedynczy qubit. Jest to stan rozpięty na bazie dwu-wektorowej. W ogólnym przypadku baza ta jest dowolna, ale jej wektory uważane są za stany „znane”, natomiast qubit z dowolnymi współczynnikami występującymi w kombinacji liniowej wektorów bazowych wybranej bazy nazywany jest stanem „nieznanym”. Nieznany stan odpowiada nieznanym wartościom współczynników definiujących qubit – w przypadku gdy wartości te wynoszą (0,1) lub (1,0) to stan qubitu odpowiada stanom bazy i uważany jest za „znany”.

To twierdzenie można łatwo udowodnić. Wystarczy zauważyć, że gdyby twierdzenie No-cloning nie było prawdziwe to istniałaby możliwość pomiaru niekomutujących wielkości na kopiach stanu, a to przeczyłoby schematowi von Neumanna kwantowego kolapsu na skutek pomiaru.

Page 30: Wstęp do informatyki kwantowej

30

Załóżmy nie wprost, że istnieje operator kopiowania A, zdefiniowany następująco

A s

ˆ ( 1 2 ) ( 1 2 ) ( 1 2 )A s 2 21 1 1 2 2 1 2 2

Okazuje się, że ten operator jest nieliniowy i tym samym narusza warunek liniowości nakładany przez zasadę superpozycji. W konsekwencji taki operator nie może istnieć w ramach liniowej mechaniki kwantowej. Jeżeli jednak założyć jego liniowość, to

ˆ ˆ ˆ( 1 2 ) 1 2 1 1 2 2A s A s A s

co stoi w sprzeczności z poprzednim równaniem. Oba równania można ze sobą uzgodnić tylko w przypadku gdy = 0, = 1, lub = 0, = 1, co oznacza, że kopiowany jest stan znany (wektor z bazy). To kończy dowód.

Page 31: Wstęp do informatyki kwantowej

Załóżmy nie wprost, że kopiowanie jest możliwe. Jako wejście można rozważyć nieznany stan jako wyjście ten sam stan, który zastąpi wcześniejszy stan czysty aparatury kopiującej. Więc początkowy stan aparatury kopiującej oraz kopiowanego stanu można zapisać w następującej formie:

s

Załóżmy dodatkowo, że proces kopiowania jest pewną operacją unitarną aparatury kopiującej, czyli

Us U s

Można rozważyć kopiowanie dwóch stanów czystych

U s

U s

31

Page 32: Wstęp do informatyki kwantowej

32

Można rozważyć iloczyn skalarny obu wcześniejszych równań

, ,U s U s

1

, ,L U s U s s U U s

1

, , , ,s s s s

2, , , ,P

22, ,L P

2

2 0 1x x x x

Stąd stany albo są identyczne albo prostopadłe. Zatem operacja U nie dopuszcza kopiowania dowolnych nieznanych stanów. To kończy dowód.

Page 33: Wstęp do informatyki kwantowej

33

Konsekwencje dla QIP (kwantowego przetwarzania informacji)

•brak możliwości tworzenia kopii kwantowych rejestrów•bezużyteczność klasycznych metod korekcji błędów (bazujących na zwielokrotnieniu kopii informacji)•umożliwienie całkowicie bezpiecznej komunikacji kwantowej (bezpieczeństwo przed atakami hakerów)•umożliwienie natychmiastowej identyfikacji dowolnej formy ataków hakerskich•potwierdzenie zasady nieoznaczoności•potwierdzenie destruktywnego charakteru pomiaru kwantowego•w przypadku gdyby możliwe było kopiowanie wtedy dopuszczalna byłaby natychmiastowa komunikacja (co naruszałoby ograniczenia relatywistyczne) zgodnie z poniższym schematem:

• przygotowanie pary splątanych fotonów – para EPR (związek nazwy ze znanym paradoksem Einsteina-Podolskiego-Rosena)

• na jednej z cząstek dokonywany jest pomiar w wybranej bazie - załóżmy, że jest to pomiar polaryzacji

• druga cząstka posiadać będzie identyczną polaryzację, na skutek splątania – zgodnie z argumentacją paradoksu EPR

• następnie kopiowany jest drugi foton i dokonywany jest pomiar kopii• w ten sposób można określić, w której bazie został zmierzony pierwszy foton

•czyli natychmiastowa komunikacja byłaby możliwa

Page 34: Wstęp do informatyki kwantowej

W informatyce kwantowej można także wprowadzić twierdzenie o braku możliwości rozprzestrzeniania (No-Broadcasting) informacji kwantowej, które wynika z twierdzenia Żurka No-Cloning.

Wykluczenie możliwości kopiowania informacji skutkuje silnym ograniczeniem narzuconym na kantową komunikację.

Kwantowa komunikacja musi przebiegać w trybie jeden-do-jednego, w odróżnieniu od klasycznych systemów np. trasminisji telewizyjnej, druku książek, czy kopiowania lub transmitowania dokumentów elektronicznych.

34

Page 35: Wstęp do informatyki kwantowej

35

Zagadnienia dotyczące usuwania (kasowania) informacji są silnie związane z bezpieczeństwem informacji. W przypadku klasycznego przetwarzania informacji mamy do czynienia z dwoma możliwymi schematami kasowania informacji. Proces kasowania odbywający się przy zachowaniu kopii (ten proces jest odwracalny). Drugi schemat to proces nieodwracalnego wymazania informacji. Taki nieodwracalny proces musi odbywać się zgodnie z prawami fizyki statystycznej – potrzebuje energii – związane z tym rozważania doprowadziły do sformułowania zasady Landauera. W przypadku kwantowego przetwarzania informacji nieodwracalne wymazanie stanu pojedynczego qubitu może zostać wykonane np. poprzez dekoherencję spowodowaną otoczeniem.  Proces kasowania przy zachowaniu kopii – odwracalne wymazywanie jest procesem odwrotnym do procesu kopiowania nieznanego stanu – więc także nie jest możliwe.  Załóżmy, że dysponujemy pewną liczbą kopii nieznanej informacji. W przypadku klasycznym możliwe jest skasowanie jednej kopii przy zachowaniu drugiej, po czym odtworzenie informacji następuje przy wykorzystaniu pozostałej kopii. W przypadku kwantowym sytuacja jest zupełnie inna. Są tu dwie możliwe sytuacje:•Wymazanie informacji – posiadana jest tylko jedno kopia stanu i ten stan może być zniszczony (przez pomiar, dekoherencje) w sposób nieodwracalny (informacje zostaje całkowicie utracona)•Skasowanie z zachowaniem kopii – w przypadku posiadania przynajmniej dwóch kopii tego samego stanu. Ta sytuacja nie jest jednak możliwa w kwantowym przypadku, ponieważ jest to odwrotny proces do procesu kopiowania.

Page 36: Wstęp do informatyki kwantowej

36

Rozważmy dwu-qubitowy układ oraz pewne otoczenie. Stany dwóch qubitów należą odpowiednio do przestrzeni H1, H2 natomiast stan otoczenia do przestrzeni H3. Czyli stan całego układu należy do przestrzeni będącej iloczynem tensorowym przestrzeni poszczególnych podukładów. Załóżmy, że oba qubity znajdują się w tym samym nieznanym stanie kwantowym |> natomiast otoczenie znajduje się w pewnym stanie |A>. Załóżmy, że transformacja usuwająca informację względem jej kopii jest transformacją liniową L,

321321: L

L

A A

gdzie |> jest stanem „pustym” (dowolnie wybranym), stan |A> jest pomocniczym stanem otoczenia, zależnym od stanu |>. Ogólnie, rozpatrywana transformacja zdefiniowana jest na układzie trzech niesplątanych stanów i zamienia stan |> wobec jego kopii w stan |>.

Page 37: Wstęp do informatyki kwantowej

37

Dla ortogonalnych stanów bazy qubitu mamy

00 0 0A A

11 1 1A A

Należy zwrócić uwagę na to, że jawna postać transformacji dotyczy wyłącznie dwóch identycznych kopii. W przypadku, gdy stany poszczególnych qubitów są różne, transformacja pozostaje niezdefiniowana (dla dwóch różnych stanów nie możemy mówić o odwróceniu w czasie transformacji kopiowania).

2 20 1 , , , 1C

0 1 0 1 0 1L

A A

2 20 0 1 1 0 1 1 0A A A A

0 1L

A

Page 38: Wstęp do informatyki kwantowej

38

Czyli, przyjmując X X XX

2 200 11 01 10A A A

0 1L

A

Jak wspomniane zostało wcześniej, rozpatrywana transformacja L nie posiada jawnej postaci dla różnych stanów, dlatego można założyć dla stanu mieszanego, że,

101 10

2

L

A

01 10 2L

A

2 20 10 1 2A A

0 1 A

Page 39: Wstęp do informatyki kwantowej

39

Wiadomo, z postaci |>, że nie występuje tam zależność od współczynników i .

Aby wcześniejsze było spełnione dla dowolnych i stan |A> musi od nich liniowo zależeć. Stąd to równanie ma rozwiązanie jedynie gdy

1 00 1

2

A A

0 1A A A

Z warunku normalizacji uzyskuje się:

0 1 0 10 1 , 0 1 1A A A A Zgodnie z definicją iloczynu skalarnego,

0 1 0 10 1 , 0 1A A A A

0 1 , 0 1 , 0 1 0 1,A A A A 1

Page 40: Wstęp do informatyki kwantowej

40

, 1

2 20 1 , 0 1 1

0 1 0 1,A A A A 2 2 * *

0 0 1 1 0 1 1 0, , , , 1A A A A A A A A

2 2 * *0 0 1 1 1 0 0 1 1A A A A A A A A

2 2 * *0 0 1 1 1 0 0 1

1

A A A A A A A A

* *0 1 1 0 0A A A A

Z powyższego wynika, że aby ostatnia równość była spełniona dla dowolnych i , to stany A0 i A1 muszą być ortogonalne. Ortogonalność i unormowanie stanów i oznacza, że stan |A> = |A0> + |A1> zawiera tyle samo informacji co stan . Czyli informacja nie została usunięta a jedynie przesunięta, co kończy dowód.

Page 41: Wstęp do informatyki kwantowej

41

Rozważmy liniowy operator A, zdefiniowany następująco

A

Dla dowolnego stanu 0 1

ˆ 0 1 0 1 0 1A

ˆ 0 1 0 1A

2 2ˆ ˆ ˆ0 0 1 1 0 1 1 0A A A

0

1

ˆ 0 0 0

ˆ 1 1 1

ˆ 0 1 1 0

A

A

A

2 2

0 10 1

Page 42: Wstęp do informatyki kwantowej

42

2 20 10 1 0 1

Uzyskujemy równość

Jeśli |> jest niezależne od i , to dla dowolnych i , to stan |> musi być liniową funkcją tych parametrów. Rozwiązanie tego równania przyjmuje zatem postać:

1 00 1 0 1

0 10 1

0 1 0 10 1 , 0 1 1

0 1 0 10 1 , 0 1 , 1

Page 43: Wstęp do informatyki kwantowej

43

2 2 * *0 0 1 1 1 0 0 1

1

1

* *1 0 0 1 0

2 2

0 1 0 1

1

, 1

To prowadzi do warunku 1 0 0 1 0

0 1 Więc jest tym samym co 0 1 koniec dowodu

Konsekwencje

•Bezpieczeństwo kwantowej informacji•Informacja kwantowa jest odporna na różne metody jej usuwania przy zachowaniu kopii

Page 44: Wstęp do informatyki kwantowej

44

Macierze Pauliego , ,X Y Z

0 1

1 0x X

0

0y

iY

i

1 0

0 1z Z

Własności macierzy Pauliego:

det 1i

0iTr

2i I

, 2i j ijk ki

Page 45: Wstęp do informatyki kwantowej

45

Działanie dla stanów z bazy obliczeniowej

0 1

1 0X

0 1 1 00 1

1 0 0 1X

0 1 0 11 0

1 0 1 0X

Działanie dla dowolnego stanu

0 10 1 0 1

1 0X

2X IBramka samoodwracalna

Page 46: Wstęp do informatyki kwantowej

46

Bramka samoodwracalna

Działanie dla stanów z bazy obliczeniowej

Działanie dla dowolnego stanu

0

0

iY

i

0 1 00 1

0 0Yi

ii i

0 0

1 00 1 0

Yi ii

i

00 1 0 1

0Yi i

i ii i

2Y I

Page 47: Wstęp do informatyki kwantowej

47

Bramka samoodwracalna

Działanie dla stanów z bazy obliczeniowej

Działanie dla dowolnego stanu

1 0

0 1Z

1 0 1 10 0

0 1 0 0Z

1 0 0 01 1

0 1 1 1Z

1 00 1 0 1

0 1Z

2Z I

Page 48: Wstęp do informatyki kwantowej

XXX

T

*

01

10

01

10

Yi

iY

i

iY

T

*

0

0

0

0

ZZZ

T

*

10

01

10

01

IXXXX

01

10

01

10

Ii

i

i

iYYYY

0

0

0

0

IZZZZ

10

01

10

01

Macierze Pauliego są unitarne Macierze Pauliego są hermitowskie

48

Page 49: Wstęp do informatyki kwantowej

49

Bramka Hadamarda jest hermitowska i unitarna

Działanie dla stanów z bazy obliczeniowej

Działanie dla dowolnego stanu

1 11

1 12H

1 1 1 11 1 1

0 0 11 1 0 12 2 2

H

1 1 0 11 1 11 0 1

1 1 1 12 2 2H

1 11 10 1 0 1

1 12 2 2 2H

1 11

1 12H H

1 1 1 1 2 0 1 01 1

1 1 1 1 0 2 0 12 2H H I HH

HXH ZHYH YHZH X

Page 50: Wstęp do informatyki kwantowej

Bramka hermitowska i unitarna

Działanie dla stanów z bazy obliczeniowej

Działanie dla dowolnego stanu

1 0

0S

i

1 0 1 10 0

0 0 0S

i

1 0 0 01 1

0 1S i

i i

1 00 1 0 1

0S i

i i

Sii

S

T

0

01

0

01*

Iii

SS

0

01

0

01I

iiSS

0

01

0

01

50

Page 51: Wstęp do informatyki kwantowej

Bramka hermitowska i unitarna

Działanie dla stanów z bazy obliczeniowej

Działanie dla dowolnego stanu

4

1 0

0i

Te

88

8

0

0

ii

i

eT e

e

4

1 0 1 10 0

0 00

T

ie

4

4 4

1 0 001 1

10

iT

i ie

e e

4

4 4

1 00 1 0 1

0

iT

i ie

e e

*

4 4 4

1 0 1 0 1 0

0 0 0

T T

i i iT T

e e e

4 4 4 4

1 0 1 0 1 0 1 0

0 10 0 0i i i i

T T Ie e e

4 4 4 4

1 0 1 0 1 0 1 0

0 10 0 0i i i i

TT Ie e e

51

Page 52: Wstęp do informatyki kwantowej

Działanie dla stanów z bazy obliczeniowej

Działanie dla dowolnego stanu

0

0

i

i

e

e

1 100 0

0 00

ii

i

ee

e

0 001 1

1 10

ii

i

ee

e

00 1 0 1 0 1

0

i ii i i i

i i

e ee e e e

e e

Ta bramka posiada parametr , dlatego powyższą definicję należy traktować, jako definicję całej rodziny takich bramek.

52

Page 53: Wstęp do informatyki kwantowej

Qubit 0 1 2 2

1

x 21ie x

cos2

x

21 sin2

x

cos 0 sin 12 2

ie

Ta reprezentacja kątowa odpowiada współrzędnym sferycznym jednostkowego wektora na sferze Blocha.

ˆ cos sin ,sin sin ,cosn

0 0,0,1 1 0,0, 1

ˆ ˆcos sin , 1xn n n ˆ ˆsin sin , 1yn n n ˆ ˆcos , 1zn n n 53

Page 54: Wstęp do informatyki kwantowej

54

Można zapisać postaci operatory obrotów względem osi x, y, z, o kąt

2i X

xR e

2i Y

yR e

2i Z

zR e

X, Y, Z są macierzami Pauliego (z ich hermitowskości wynika hermitowskość operatorów obrotu)

Funkcje od operatorów zazwyczaj definiuje się poprzez rozwinięcie w szereg potęgowy. W ogólnym przypadku można wykorzystać rozwinięcie Taylora

1 20 00 0 01! 2!

f x f xf x f x x x x x

Page 55: Wstęp do informatyki kwantowej

55

2 3

11 2! 3!

A A A Ae

2i X

xR e

0 1

1 02 2

i iA X

2 2 22 0 1 0 1 1 0

1 0 1 0 0 14 4 4A I

2 3 33 2 0 1 0 1

1 0 1 04 2 8 8

i i iA A A I A

IA k 2

AA k 12

0

1

! 2

nn

xn

iR X

n

2 2 11 1

2 ! 2 2 1 ! 2

k k

k N k N

i iI X

k k

Rozwinięcie w szereg operacji:

Page 56: Wstęp do informatyki kwantowej

56

2 2 1

1 11 1

2 ! 2 2 1 ! 2

k kk k

xk N k N

R I i Xk k

2 1

0

1sin

2 1 !

n

n

n

x xn

2

0

1cos

2 !

n

n

n

x xn

2 2 1

0 0

cos sin2 2

1 1

2 ! 2 2 1 ! 2

n nn n

xn n

R I i Xn n

cos sin2 2

I i X

2i X

xR e

Rozwinięcie w szereg operacji:

Page 57: Wstęp do informatyki kwantowej

2

cos sin2 2

cos sin2 2

sin cos2 2

i X

x

i

R e I i X

i

2

cos sin2 2

cos sin2 2

sin cos2 2

i Y

yR e I i Y

2 cos sin2 2

i Z

zR e I i Z

2

2

cos sin 002 2

0 cos sin 02 2

i

i

ie

i e

ˆ2

ˆ cos sin2 2

i n

n x y zR e I i n X n Y n Z

rotacja wokół dowolnej osi na sferze Blocha:

ˆ , ,x y zn n n nrzeczywisty wektor jednostkowy

, ,X Y Z 57

Page 58: Wstęp do informatyki kwantowej

58

cos sin cos sin

2 2 4 42

sin cos sin cos2 2 4 4

x y

iR R

i

0 1 1 1 1 1

1 0 1 1 1 12 2

i iiH

cos sin 1 0 1 04 4 cos sin0 1 0 12 2 4 4

sin cos4 4

x z

iR R i

i

1 1 0 1 1 1 11 1 1 1 1 11

1 0 1 1 1 1 12 2 2 2 2 2

i i i ii

i i i i

1

2

iH

7

41 1 1

1 1 2 12 2 2

iii i e

2

3iei

nieistotna faza (funkcja falowa określona z dokładnością do fazy)

Wokół osi x i y

Wokół osi x i z

Wokół osi y i z

cos sin 1 0 1 04 4 cos sin

0 1 0 12 2 2sin cos

4 4

y zR R i

1 1 1 0 1 11 1

1 1 0 1 1 12 2i i iH

2i

i e

nieistotna faza (funkcja falowa określona z dokładnością do fazy)

nieistotna faza (funkcja falowa określona z dokładnością do fazy)

Page 59: Wstęp do informatyki kwantowej

59

ˆ2

ˆ cos sin2 2

i n

n x y zR e I i n X n Y n Z

ˆ , ,x y zn n n n , ,X Y Z

ˆ

2 2 2 2ˆ

i n i X i Y i Z

n x y zR e R R R e e e

Można podać podobne dekompozycje (np. ZY)

Każdy obrót można przedstawić jako złożenie trzech obrotów (o określone kąty) wokół dwóch ustalonych osi (niekoniecznie prostopadłych)

Dekompozycja XY:

Page 60: Wstęp do informatyki kwantowej

60

Dowolny jedno-qubitowy unitarny operator (dekompozycja ZY)

iz y zU e R R R

2 2

2 2

cos sin0 02 2

sin cos0 02 2

i i

i

i i

e eU e

e e

2 22

2 2 2

cos sin 02 2

sin cos 02 2

i ii

i

i i i

e e ee

e e e

2cos

2sin

2sin

2cos

2cos

2sin

2sin

2cos

2222

2222

2222

2222

ii

ii

iiii

iiii

i

ee

ee

eeee

eeeee

Dla dowolnej jednostkowej macierzy U, zawsze można znaleźć takie cztery liczby rzeczywiste aby powyższa macierz była równa U

Page 61: Wstęp do informatyki kwantowej

61

Dowód1 2 31

3 4 2 4

1 2 1 3

3 4 2 4

,i i ii

i i i i

re r e re r eU U

r e r e r e r e

1 2 1 23 31 1

3 34 42 4 2 4

1 2 1 21 3 1 3

3 4 3 42 4 2 4

,i i i ii ii i

i ii ii i i i

re r e re r ere r e re r eUU I U U I

r e r e r e r er e r e r e r e

4 3 1 32 1 2 4

3 4 3 11 2 4 2

2 2 2 21 3 1 22 2 2 22 4 3 4

1 2 3 4 1 3 2 4

1 2 3 4 1 3 2 4

1 1

1 1(1) , (2)

0 0

0 0

i ii i

i ii i

r r r r

r r r r

r r e r r e r r e r r e

r r e r r e r r e r r e

1 2 3 4cos , sin , sin , cos2 2 2 2

A A A Ar r r r

3 42 1

3 42 1

1sin 0

21sin 0

2

ii

ii

A e e

A e e

2 1

3 4

10

1 0 11

0

i

i

ae a b ab abe b b

a

2 1 3 4

2 1 3 4i ie e

1 3 4 2

1 3 4 2

1sin 0

21sin 0

2

i i

i i

A e e

A e e

2 1 3 4i ie e

1 3 4 2 2 1 3 4

1

3

4

2 2

2 2

2 2

1

1

1

1

21

21

21

21

21

21

Ten układ równań zawsze posiada nietrywialne rozwiązanie, ponieważ

Page 62: Wstęp do informatyki kwantowej

62

ˆ ˆ ˆi

n m nU e R R R

ˆ2

ˆ cos sin2 2

i m

m x y zR e I i m X m Y m Z

ˆ , ,x y zm m m m

, ,X Y Z

ˆ2

ˆ cos sin2 2

i n

n x y zR e I i n X n Y n Z

ˆ , ,x y zn n n n

Wektory m i n są dowolnymi wektorami jednostkowymi nierównoległymi względem siebie

wektor macierzy Pauliego

Page 63: Wstęp do informatyki kwantowej

63

Dla dowolnej unitarnej operacji jedno-qubitowej U istnieją takie operacje jedno-qubitowe A, B i C, że:

ABC I

iU e AXBXC nieistotnym globalnym przesunięciem fazowym

Dowód

2z yA R R

Niech:2 2y zB R R

2zC R

2 2 2 2z y y z zABC R R R R R

4 4 4 42 4 4 2i Z i Z i Z i Zi Z i Y i Y i Z

I

e e e e e e e e

2 4 4 4 42 4 4 4 4i Zi Z i Z i Z i Z i Z

e e e e e e I

Page 64: Wstęp do informatyki kwantowej

64

Ale y yXR X R

cos sin cos sin cos sin2 2 2 2 2 2

X I i Y X XIX i XYX I i XYX

0 1 0 0 1 0 0 1 0

1 0 0 1 0 0 1 0 0

i i iXYX Y

i i i

cos sin2 2

I i Y

yR a to jest operacja obrotu

2 2 2 2 2 2y z y y zXX

XBX XR I R X XR XX X R R

Ogólnie:

2 2 2 2z y y z z z y zAXBXC R R R R R R R R

i iz y ze AXBXC e R R R U

Page 65: Wstęp do informatyki kwantowej

65

Dokompozycja ZY

2 02

i

z y zH e R R R

Znalezienie macierzy A, B, C

ABC I

iU e AXBXC

2 2

2

0 02 2

y

i i

z y z z y z

R

H e R R R e R XR X R

0zA R2yB R

zC R

2

HXH Z

Inne przedstawienia niektórych operacji jedno-qubitowych

HYH Y HZH X4xHTH R

Page 66: Wstęp do informatyki kwantowej

Bramkę można rozpatrywać jako unitarną operacje na dwóch qubitach: qubicie kontrolnym (control qubit) oraz qubicie docelowym (target qubit)

66

X X

suma modulo 2

Page 67: Wstęp do informatyki kwantowej

67

Działanie bramki CNOT na stany qubitów kontrolnego i docelowego z bazy obliczeniowej 0 , 1 0 , 1

• jeżeli qubit kontrolny znajduje się w stanie |0>, to stan qubitu docelowego nie ulega zmianie

• jeżeli qubit kontrolny znajduje się w stanie |1>, to stan qubitu docelowego zmieni się na przeciwny

0 0 0 0CNOT

0 1 0 1CNOT

1 0 1 1CNOT

1 1 1 0CNOT

Dlatego bramkę CNOT należy rozumieć jako operację kontrolowanej negacji qubitu docelowego

Page 68: Wstęp do informatyki kwantowej

68

a

ba XOR b

a XOR ba b0 0 0

1 0 10 1 1

1 1 0

Bramkę CNOT można interpretować w odniesieniu do klasycznej dwubitowej operacji logicznej XOR, zdefiniowanej następująco:

Bramka CNOT jest pewnym uogólnieniem klasycznej bramki XOR (kwantowe bramki działają nie tylko na stany z bazy, ale także na pełny iloczyn tensorowy przestrzeni Hilberta, w wyniku liniowości; bramka klasyczna zdefiniowana jest wyłącznie na dyskretnym zbiorze logicznych wartości bitów).

Wynik działania bramki CNOT, podobnie jak bramki XOR sprowadza się do sumy modulo 2, co ma sens wyłącznie w stosunku do stanów bazowych (w przypadku bramki kwantowej). Dla wektorów z bazy obliczeniowej można zapisać: CNOT

Page 69: Wstęp do informatyki kwantowej

69

Operację unitarną CNOT można przedstawić jako czterowymiarową unitarną macierz

1 0 0 0

0 1 0 0

0 0 0 1

0 0 1 0

CNOTU

1 0 0 0 1 0 0 0 1 0 0 0

0 1 0 0 0 1 0 0 0 1 0 0

0 0 0 1 0 0 0 1 0 0 1 0

0 0 1 0 0 0 1 0 0 0 0 1

CNOT CNOT CNOT CNOTU U I U U

Macierz CNOT jest też hermitowska (jest macierzą rzeczywistą i symetryczną). Z równoczesnej hermitowskości i unitarności wynika, że macierz CNOT jest macierzą samoodwracalną CNOT2 = I

Page 70: Wstęp do informatyki kwantowej

70

Iloczyn tensorowy dwóch qubitów jest opisany przez czterowektor w bazie obliczeniowej iloczynu tensorowego przestrzeni układów dwóch qubitów

1 2 1 2 1 2 1 20 0 , 0 1 , 1 0 , 1 1

Dowolny stan w takiej przestrzeni ma postać:

1 1 2 21 1 2 20 1 0 1

1 2 1 2 1 2 1 21 2 1 2 1 2 1 20 0 0 1 1 0 1 1

1 2 1 2 1 21 2 1 2

1 2 1 2 1 21 2 1 2

1 2 1 2 1 21 2 1 2

1 2 1 2 1 21 2 1 2

0 0 0 0

0 1 0 1

1 0 1 0

1 1 1 1

1 2 1 2 1 2 1 2

1 0 0 0

0 1 0 00 0 , 0 1 , 1 0 , 1 1

0 0 1 0

0 0 0 1

Można przedstawić bazę za pomocą wektorów

Page 71: Wstęp do informatyki kwantowej

71

1 0 0 0 1 1

0 1 0 0 0 0

0 0 0 1 0 0

0 0 1 0 0 0

1 20 0

1 0 0 0 0 0

0 1 0 0 1 1

0 0 0 1 0 0

0 0 1 0 0 0

1 20 1

1 0 0 0 0 0

0 1 0 0 0 0

0 0 0 1 1 0

0 0 1 0 0 1

1 21 1

1 0 0 0 0 0

0 1 0 0 0 0

0 0 0 1 0 1

0 0 1 0 1 0

1 21 0

Działanie bramki CNOT na stany z bazy obliczeniowej wynikami są odpowiednie kolumny macierzy

Page 72: Wstęp do informatyki kwantowej

72

Działanie bramki CNOT na dowolny stan:

1 1 2 21 1 2 20 1 0 1

1 2 1 2

1 2 1 2

1 2 1 2

1 2 1 2

1 0 0 0

0 1 0 0

0 0 0 1

0 0 1 0

1 2 1 2 1 2 1 21 2 1 2 1 2 1 20 0 0 1 1 0 1 1

1 2 2 1 2 21 2 2 1 2 20 0 1 1 0 1

W ogólnym przypadku stan końcowy nie jest stanem separowalnym (w odróżnieniu od początkowego stanu) – tzn. bramka CNOT może służyć jako narzędzie do wprowadzania splątania pomiędzy dwoma qubitami

Page 73: Wstęp do informatyki kwantowej

73

Gdy , wtedy stan qubitu docelowego nie ulega zmianie, natomiast gdy , stan qubitu docelowego działa jednoqubitowa bramka negacji (bramka Pualiego ), zmieniając miejscami współczynniki:

2 2 2 22 2 2 20 1 0 1X

Zatem, bramkę CNOT można zapisać w następującej postaci

2 2

0 0

0 0

0 0

0 0

I

X

CNOT X

I2x2 oznacza trywialną operację tożsamościową dla jednego qubitu

Page 74: Wstęp do informatyki kwantowej

74

można rozważyć układ kopiujący wykorzystując bramkę CNOT w celu zilustrowania twierdzenia No-cloning

0 1 0 0 0 1 0

0 0 1 1CNOT

2 20 0 1 1 0 0 0 1 0 1 1 1

ale

Spełnione tylko dla

1 0 0 0

0 1 0 0 0 0

0 0 0 1 0

0 0 1 0 0

2

2

Oczekiwany rezultat dla dowolnych

Page 75: Wstęp do informatyki kwantowej

75

U U

2 2

0 0

0 0

0 0

0 0

controlled U

I

U

U

Jeżeli qubit kontrolny jest w stanie 1 wtedy na qubicie docelowym wykonywana jest unitarna operacja U. Poniżej postać macierzowa takie operacji

Un

Jeżeli qubit kontrolny jest w stanie 1 wtedy na n qubitach docelowych wykonywana jest n-qubitowa unitarna operacja U.

Page 76: Wstęp do informatyki kwantowej

76

H H

H H

H

H I H I

1 0 1 0

1 1 0 1 0 11 1

1 1 1 0 1 02 2

0 1 0 1

I IH I

I I

H I H

1 1 0 0

1 0 1 1 0 01

0 1 0 0 1 12

0 0 1 1

H HI H

H H

Page 77: Wstęp do informatyki kwantowej

77

H H

Z

controlled ZH I U H I

1 0 0 0

0 1 0 0

0 0 1 0

0 0 0 1

controlled ZU

1 0 1 0 1 0 0 0 1 0 1 0

0 1 0 1 0 1 0 0 0 1 0 11 1

1 0 1 0 0 0 1 0 1 0 1 02 2

0 1 0 1 0 0 0 1 0 1 0 1

0010

0100

1000

0001

1010

0101

1010

0101

1010

0101

1010

0101

2

1

H HZ

controlled ZI H U I H

1 1 0 0 1 0 0 0 1 1 0 0

1 1 0 0 0 1 0 0 1 1 0 01 1

0 0 1 1 0 0 1 0 0 0 1 12 2

0 0 1 1 0 0 0 1 0 0 1 1

0100

1000

0010

0001

1100

1100

0011

0011

1100

1100

0011

0011

2

1

H HZ

Page 78: Wstęp do informatyki kwantowej

78

0 1

2

0 1

2

Wektory zupełnie nieortogonalnej bazy (w stosunku do bazy obliczeniowej)

1 1 2 2

1

0 1 0 1 11

122 2

1

1 1 2 2

1

0 1 0 1 11

122 2

1

1 1 2 2

1

0 1 0 1 11

122 2

1

1 1 2 2

1

0 1 0 1 11

122 2

1

Page 79: Wstęp do informatyki kwantowej

79

Działanie bramki CNOT

1 0 0 0 1 1

0 1 0 0 1 11 1

0 0 0 1 1 12 2

0 0 1 0 1 1

CNOT

1 0 0 0 1 1

0 1 0 0 1 11 1

0 0 0 1 1 12 2

0 0 1 0 1 1

CNOT

1 0 0 0 1 1

0 1 0 0 1 11 1

0 0 0 1 1 12 2

0 0 1 0 1 1

CNOT

1 0 0 0 1 1

0 1 0 0 1 11 1

0 0 0 1 1 12 2

0 0 1 0 1 1

CNOT

• qubit kontrolny zamienił się rolą z qubitem docelowym

• qubit docelowy nie zmienia stanu na skutek działania bramki CNOT

Page 80: Wstęp do informatyki kwantowej

80

H

HH

H0H

1H

Stany bazowe bazy zupełnie nieortogonalnej można uzyskać działając bramką Hadamarda na stany bazy obliczeniowej

Można więc przedstawić postać bramki CNOT ze zmienioną bazą (qubity zmienieją swoją rolę: docelowy kontrolny, kontrolny docelowy)

1 1 1 1

1 1 1 11

1 1 1 12

1 1 1 1

H H

1 0 0 0

0 1 0 0

0 0 0 1

0 0 1 0

CNOT

1 1 1 1

1 1 1 11

1 1 1 12

1 1 1 1

H H

1 1 1 1 1 0 0 0 1 1 1 1

1 1 1 1 0 1 0 0 1 1 1 11

1 1 1 1 0 0 0 1 1 1 1 14

1 1 1 1 0 0 1 0 1 1 1 1

1 0 0 0

0 0 0 1

0 0 1 0

0 1 0 0

0 0 0 0

1 0 1 0

0 1 1 1

1 1 0 1

Page 81: Wstęp do informatyki kwantowej

81

Operację SWAP wprowadza się w celu zrealizowania zamiany stanów dwóch qubitów.

CNOT reversed CNOT

CNOT a b b a

a a b b

1000

0010

0100

0001

0100

1000

0010

0001

0010

0100

1000

0001

0100

1000

0010

0001

1 2 1 2

1 2 1 22 2 1 11 1 2 2

1 2 1 2

1 2 1 2

1 0 0 0

0 0 1 00 1 0 1

0 1 0 0

0 0 0 1

Page 82: Wstęp do informatyki kwantowej

82

1 0

0 ie

U BC A

U

ABC IiU e AXBXC

Jeżeli qubit kontrolny jest w stanie 1 to na qubicie docelowym wykonywana jest kolejno operacja C, X, B, X, A dając w rezultacie operację AXBXC. Jeżeli qubit kontrolny jest w stanie 0 to bramki X nie zostają wykonane a tym samym realizowana jest operacja ABC = I na qubicie docelowym

Page 83: Wstęp do informatyki kwantowej

83

Inputs Outputsa b c a’ b’ c’0 0 0 0 0 00 0 1 0 0 10 1 0 0 1 00 1 1 0 1 11 0 0 1 0 01 0 1 1 0 11 1 0 1 1 11 1 1 1 1 0

a a

b b

c c ab

Bramka Toffoli jest klasyczną bramką odwracalną

Negacja trzeciego bitu zachodzi w przypadku, gdy oba bity kontrolne są w stanie wysokim. Bity kontrolne nie ulegają zmianie podczas działania bramki. Bramka Toffoli jest bramką odwracalną. Ta bramka może zostać wykorzystana do realizacji bramki różnych bramek (AND, NAND, FANOUT)

a

1 ab ab

b b

1 ab0

a a

b b

1 1

a a

a0

Page 84: Wstęp do informatyki kwantowej

84

Kwantową realizację bramki Toffoli jest możliwa dla układu dwóch qubitów kontrolnych i jednego qubitu docelowego. Stany poszczególnych qubitów zapisywane są w bazie obliczeniowej – co umożliwia posługiwanie się sumą modulo 2 (dzięki interpretacji stanów z bazy obliczeniowej na bity klasyczne). Operację Toffoli można oznaczać jako bramkę CCNOT (podwójnie kontrolowaną bramkę negacji)

CCNOT

A B C A B C A B

C

A

B

C A B

A

B

C

A

B

C A B

A

B

X

1 0 0 0 0 0 0 0

0 1 0 0 0 0 0 0

0 0 1 0 0 0 0 0

0 0 0 1 0 0 0 0

0 0 0 0 1 0 0 0

0 0 0 0 0 1 0 0

0 0 0 0 0 0 0 1

0 0 0 0 0 0 1 0

CCNOT

Page 85: Wstęp do informatyki kwantowej

85

Inputs Outputsa b c a’ b’ c’0 0 0 0 0 00 0 1 0 0 10 1 0 0 1 00 1 1 1 0 11 0 0 1 0 01 0 1 0 1 11 1 0 1 1 01 1 1 1 1 1

a a

b b

c c

Realizacja bramki AND i NAND

0

abb

a ab

b

1

ab

ab

0ab

ab

Klasyczna bramka Fredkina jest odpowiednikiem kontrolowanej bramki SWAP

Page 86: Wstęp do informatyki kwantowej

86

W przypadku kwantowym można zrealizować bramkę Fredkina w oparciu o kwantową kontrolowaną bramkę SWAP. Operacji SWAP odpowiada następująca definicja

1 2 1 2

1 2 1 22 2 1 11 1 2 2

1 2 1 2

1 2 1 2

1 0 0 0

0 0 1 00 1 0 1

0 1 0 0

0 0 0 1SWAP

Postać macierzowa kontrolowanej bramki SWAP

1 0 0 0 0 0 0 0

0 1 0 0 0 0 0 0

0 0 1 0 0 0 0 0

0 0 0 1 0 0 0 0

0 0 0 0 1 0 0 0

0 0 0 0 0 0 1 0

0 0 0 0 0 1 0 0

0 0 0 0 0 0 0 1

Qubitem kontrolnym jest pierwszy qubit. Jeżeli qubit kontrolny jest w stanie 1 wtedy zamieniane są dwa pozostałe qubity. Natomiast, w przypadku gdy qubit kontrolny będzie w stanie 0 wtedy stany wszystkie qubity pozostaną bez zmian

Page 87: Wstęp do informatyki kwantowej

87

• n qubitów kontrolnych• m qubitów docelowych• gdy każdy z qubitów kontrolnych jest w stanie 1 wtedy na m qubitów

docelowych zostanie zastosowana operacja U

1 21 2 1 2

nx x xnn nC U x x x x x x U 1 2 nx x x

iloczyn bitów odpowiadających odpowiednim stanom bazy obliczeniowej

m

n

U

2 2 2 2

2 2

0

0

n m m n m m

m m

mnI

C UU

Page 88: Wstęp do informatyki kwantowej

88

V VV U

Można przestawić dowolną podwójnie kontrolowaną operację U za pomocą tylko bramek jedno-qubitowych oraz bramek CNOT

2V U

1

2

i I iXV

2V X

Np. bramka CCNOT przedstawiona może być za pomocą operacji V następującej postaci:

IVV

Page 89: Wstęp do informatyki kwantowej

89

H

T

T T

TT T

S

TH

Przykład realizacji CCNOT za pomocą tylko bramki Hadamarda, bramki /8, bramki fazy S oraz bramki CNOT

Bramka Hadamarda H, bramka /8 T, bramka fazy S oraz bramka CNOT (dodatkowo jeszcze bramka ei) tworzą zbiór uniwersalny – tzn. za ich pomocą można zrealizować dowolną operację wieloqubitową

Page 90: Wstęp do informatyki kwantowej

Można pokazać, że pewne zbiory bramek (jedno- i dwu-qubitowych) dają możliwość skonstruowana dowolnych bramek wieloqubitowych

Dowód opiera się na kolejnych konstrukcjach dowolną operację U buduje się z bramek

kontrolowanych przez wiele qubitów bramki kontrolowane przez wiele qubitów bramki

buduje się za pomocą bramek podwójnie kontrolowanych

bramki podwójnie kontrolowane następnie buduje się z bramek CNOT i dowolnych operacji jedno-qubitowych U

dowolne operacje jedno-qubitowe można przybliżyć bramkami jedno-qubitowymi

90

Page 91: Wstęp do informatyki kwantowej

91

Realizacja dowolnej kontrolowanej operacja U za pomocą bramki Hadamarda H, bramki /8 T, bramki fazy S oraz bramki CNOT

Każdą bramkę CCNOT można zrealizować tak jak pokazano wcześniej

Etap 1: realizacja AND qubitów kontrolnych

Etap 3: przywrócenie stanów początkowych qubitom roboczym

U

1

0000n

1 2 3 nx x x x

U Etap 2:

m

n

U

Page 92: Wstęp do informatyki kwantowej

92

000 000

001 001

010 010

011 011

100 111

101 110

110 101

111 100

1 0 0 0 0 0 0 0

0 1 0 0 0 0 0 0

0 0 1 0 0 0 0 0

0 0 0 1 0 0 0 0

0 0 0 0 0 0 0 1

0 0 0 0 0 0 1 0

0 0 0 0 0 1 0 0

0 0 0 0 1 0 0 0

CNOT kontrolowany przez odwrócony qubit

X X

XX

X X

Jeden qubit kontroluje dwie bramki negacji

Page 93: Wstęp do informatyki kwantowej

93

Każda wielo-qubitowa unitarna operacja może zostać zrealizowana za pomocą uniwersalnego zbioru kwantowych bramek, np. bramki Hadamarda H, bramki /8 T, bramki fazy S oraz bramki CNOT

Dowód tego twierdzenia opiera się na połączeniu trzech konstrukcji:

•Pierwsza konstrukcja wskazuje na możliwość dokładnego przedstawienia dowolnej operacji unitarnej, jako iloczynu operatorów unitarnych działających nietrywialnie na wyłącznie dwa stany (lub mniej) z bazy obliczeniowej (operatory te reprezentowane są przez tzw. macierze dwu-poziomowe).

•Druga konstrukcja wskazuje, że dowolny unitarny operator opisany macierzą dwu-poziomową można przedstawić za pomocą wyłącznie bramek jedno-qubitowych, oraz bramek CNOT.

•Trzecia konstrukcja wskazuje, że każdą wielo-qubitową operację można przedstawić (z dowolną dokładnością) za pomocą bramki Hadamarda H, bramki /8 T, bramki fazy S oraz bramki CNOT

Page 94: Wstęp do informatyki kwantowej

94

a d g

U b e h

c f i

3 2 1 1 2 3U U UU I U U U U

Znalezienie reprezentacji dowolnej macierzy U za pomocą macierzy dwupoziomowych. Analogiczne kroki można wykonać dla macierzy unitarnych o dowolnym wymiarze.

Konstrukcja dla macierzy 3x3

poszukujemy macierzy 1 2 3, ,U U U

Konstrukcja macierzy 1U

* *

2 2 2 2

2 2 2 2

01 0 0

0 0 1 0 0 0

0 0 10 0 1

a b

a b a b

b a

a b a bb U b U

W obu przypadkach, macierz U1 jest macierzą dwupoziomową

Page 95: Wstęp do informatyki kwantowej

95

Iloczyn 1UU

1 0

a d g

U U e h

c f i

Konstrukcja macierzy 2U

* *

2 2 2 2

2 2 2 2

* 00 0

0 0 1 0 0 0 1 0

0 0 1 0

a c

a c a c

c a

a c a c

a

c U c U

Iloczyn 2 1U UU

2 1

1

0

0

d g

U U U e h

f i

Page 96: Wstęp do informatyki kwantowej

96

1 2, ,U U U

2 1U UU

0d g 2 1

1

0

0

d g

U U U e h

f i

Z unitarności macierzy

wynika unitarność iloczynu

Konstrukcja macierzy 3U

* *3

* *

1 0 0

0

0

U e f

h i

Widać, że iloczyn 3 2 1U U UU I

3 2 1 1 2 3U U UU I U U U U

Page 97: Wstęp do informatyki kwantowej

97

Dla dowolnej macierzy unitarnej U w d-wymiarowej przestrzeni Hilberta można zastosować analogiczną do powyższej metodę.

Można znaleźć macierze U1,…,Ud-1 takie, że iloczyn Ud-1Ud-2 …U1U ma w lewym górnym rogu 1, a w pozostałej części pierwszej kolumny i pierwszego rzędu zera. Następnie należy powtórzyć procedurę dla macierzy o rozmiarach (d-1)x(d-1), która znajduje się w prawej dolnej części macierzy Ud-1Ud-2 …U1U.

1

1, 1 2 1

2k

d dU V V k d d

Gdzie macierze Vi są macierzami dwupoziomowymi

12 2 1

2 2 12

n n

n nk

Page 98: Wstęp do informatyki kwantowej

98

Można pokazać, że przy wykorzystaniu wyłącznie jedno-qubitowych bramek oraz bramek CNOT można zrealizować dowolną dwu-poziomową unitarną macierz.

Niech U będzie dowolną macierzą dwupoziomową działającą nietrywialnie na stany: |a> i |b>, gdzie a = a1a2…an oraz b = b1b2…bn to rozwinięcia binarne indeksów stanów a i b

Stosuje się tutaj kod Gray’a (kod binarny) - kolejne wyrazy kodu Gray’a łączą dwie różne liczby binarne a = a1a2…an oraz b = b1b2…bn wyrazami, które różnią się względem siebie dokładnie na jednej pozycji bitowej

Niech a = g1,g2,…,gm będą kolejnymi wyrazami kodu Gray’a, takimi, że g1 = a oraz gm = b (m ≤ n+1).

Page 99: Wstęp do informatyki kwantowej

99

Idea implementacji macierzy dwupoziomowej U

•podejście do przedostatniego wyrazu kodu Gray’a

1 2 1mg g g

1 2 1m mg g g

• zastosowanie kontrolowanej operacji U’,• która jest operacją jedno-qubitową określoną przez implementowaną

macierz dwupoziomową (macierz tą budują współczynniki nietrywialnego działania macierzy dwupoziomowej na dwa stany)

na qubicie odpowiadającym miejscu, na którym różni się przedostatni i ostatni wyraz kodu Gray’a

• następnie powrót do stanu a za zgodnie z kolejnymi wyrazami kodu Gray’a

• przejścia pomiędzy kolejnymi wyrazami kodu Gray’a realizuje się za pomocą kontrolowanych bramek negacji

Page 100: Wstęp do informatyki kwantowej

100

Przykładowa macierz dwupoziomowa U i określona operacja jedno-qubitowa

Macierz działa nietrywialnie na stany:

1 2

1 2

3 4

3 4

1 0 0 0 0 0 0 0

0 0 0 0 0 0

0 0 1 0 0 0 0 0

0 0 0 1 0 0 0 0,

0 0 0 0 1 0 0 0

0 0 0 0 0 1 0 0

0 0 0 0 0 0

0 0 0 0 0 0 0 1

c c

c cU U

c c

c c

1 2

1 3 2 4

3 4

0 0 0 0

1 0

0 0 0 0

0 0 0 0001 001 110 , 110 001 110

0 0 0 0

0 0 0 0

0 1

0 0 0 0

U U

c c

c c c c

c c

Page 101: Wstęp do informatyki kwantowej

101

0 0 10 0 00 1 01 1 0

1q 2q 3q

1a g2g

3g

4b g

Kolejne wyrazu kodu Gray’a

U1q

2q

3q

Jako, że zbiór operacji unitarnych jest ciągły, nie istnieje jednak możliwość przedstawienia go za pomocą dyskretnego zbioru elementów. Można raczej tu mówić o przedstawieniu z dowolnie dobrym przybliżeniem macierzy U

Page 102: Wstęp do informatyki kwantowej

102

Trzecia konstrukcja – uniwersalność skończonego zbioru bramek

Za pomocą bramek Hadamarda H, /8 T można, z dowolnym przybliżeniem, skonstruować dowolną jedno-qubitową bramkę

• bramka T jest obrotem wokół osi z o kąt /4• bramka HTH jest obrotem wokół osi x także o kąt /4• złożenie tych obrotów ma postać:

8 8 cos sin cos sin8 8 8 8

i Z i Xe e I i Z I i X

.8

sin8

sin8

cos8

cos2

ZXiZXiI

cos ,sin ,cos8 8 8

n

Jest to obrót wokół osi

o kąt 2cos cos2 8

Page 103: Wstęp do informatyki kwantowej

103

Czyli za pomocą bramki Hadamarda H i /8 T można zbudować bramkę obrotu wokół osi n o kąt

kąt jest niewymierną wielokrotnością 2, co daje możliwość wypełnienia tym kątem przedziału (0, 2] odpowiednio gęsto, stosując tylko powtórzenie obrotu.

nR

nR

0,

2,N N Z

0,2 , mod 2k k k

, 1, ,

2k j

j k N N

k j k j k j 0k j l k j

ˆ ˆ0

,3

n

n nn

E R R

określona dokładność

przy zmianie l można zapełnić odpowiednio gęsto zbiór (0, 2]

Page 104: Wstęp do informatyki kwantowej

104

Dodatkowo można zmienić oś obrotu za pomocą bramek Hadamarda

ˆ ˆn mHR H R

cos ,sin ,cos8 8 8

n

cos , sin ,cos

8 8 8

ˆ ˆ,3

n

m mE R R

Dowolna unitarna jedno-qubitowa operacja U może być przedstawiona, z dokładnością do fazy, w postaci

ˆ ˆ ˆn m nU R R R

1 2 3

ˆ ˆ ˆ,n n n

n m nE U R H R H R

Co kończy trzecią konstrukcję i cały dowód uniwersalności bramek

Page 105: Wstęp do informatyki kwantowej

105

212112

12212

1

212112

12212

1

212112

22112

1

212112

22112

1

Stany Bella

Te stany są czasem nazywane stanami EPR w związku z paradoksem Einsteina-Podolskiego-Rosena. Stany Bella są maksymalnie zmieszanymi stanami układu dwóch qubitów (ze środka odpowiedniej sfery Blocha)

1 2 1 2 1 2 1 20 0 , 0 1 , 1 0 , 1 1

Stany Bella – maksymalnie splątane stany rozpięte na bazie obliczeniowej układu dwóch qubitów

Page 106: Wstęp do informatyki kwantowej

106

H

1 0 0 0

1 1 0 1 0 01

1 1 0 0 0 12

0 0 1 0

H I CNOT I

12

12

12

12

10 0 0 0 1 1

21

0 1 0 1 1 021

1 0 0 0 1 12

11 1 0 1 1 0

2

Page 107: Wstęp do informatyki kwantowej

107

pomiar

pomiar

H

H

1P

2P

2PX 1PZ

A

C

BC

0 10 1 0 0 1 1

2ABC A A A B C B CBC

10 0 0 1 1 1 0 0 1 1

2 A B C B C A B C B C

W pierwszym kroku

Po zadziałaniu bramki CNOT na qubity A i B stan całego układu ulegnie zmianie

1 10 0 0 1 1 1 1 0 0 1

2ABC A B C B C A B C B C

Page 108: Wstęp do informatyki kwantowej

108

Następnie na qubit A jest poddany działaniu bramki Hadamarda, co zmieni stan układu na:

2 10 1 0 0 1 1

2ABC A A B C B C

0 1 1 0 0 1A A B C B C

lub inaczej: 2 1

0 1 0 0 1 12ABC A A B C B C

0 1 1 0 0 1A A B C B C

10 0 0 0 1 1

2 A B C A B C

1 0 0 1 1 1A B C A B C

0 1 0 0 0 1A B C A B C

1 1 0 1 0 1A B C A B C

10 0 0 1 0 1 1 0

2 A B C C A B C C

1 0 0 1 1 1 0 1A B C C A B C C

Page 109: Wstęp do informatyki kwantowej

109

Można finalnie zapisać powiązanie między wynikiem pomiaru qubitów A i B a stanem końcowym qubitu C

0 0 0 1

0 1 0 1

1 0 0 1

1 1 0 1

A B C C

A B C C

A B C C

A B C C

Bramki realizujące pomiaru na qubitach A i B kontrolują odpowiednio operacje X i Z działające na qubicie C aby doprowadzić go finalnie do porządanego stanu, w którym współczynniki a i b będą występować w kombinacji liniowej w identycznym sposób jak w przypadku początkowego stanu qubitu A

Page 110: Wstęp do informatyki kwantowej

110

Kwantowa równoległość jest szeroko wykorzystywana w różnych kwantowych algorytmach. W dużym uproszczeniu można powiedzieć, że równoległość przetwarzania kwantowego polega na jednoczesnym obliczeniu wartości funkcji dla różnych argumentów (obliczeniu w sensie kwantowym, niedostępnym dla klasycznego obserwatora).

: 0,1 0,1f x

Przykład: dwu-qubitowy komputer kwantowy – stan początkowy komputera kwantowego niech będzie postaci a b

:fU a b a b f a 0b f a

Jeśli stan wejściowy postaci

0 1

2a

to

0 0 1 1

2

f f wartość funkcji została natychmiastowo obliczona dla dwóch różnych argumentów – natychmiastowa równoległość

Uwaga: dostęp do tych wyników tylko przez pomiar kwantowy!

Page 111: Wstęp do informatyki kwantowej

111

1. W związku z wymogiem odwracalności operacji komputery kwantowe muszą posiadać rejestry wejściowe i wyjściowe równych rozmiarów.

2. Rejestr wejściowy składa się z:• n qubitów definiujących liczbę całkowitą x – w reprezentacji bitowej zapisaną

za pomocą n bitów (dla n qubitów można wyreprezentować liczby całkowite do 2n)

• m qubitów potrzebnych do wyreprezentowania wyników określonej funkcji f(x)3. Rejestr wyjściowy składa się z:• niezmienionych n qubitów wejściowych• m qubitów, które przyjmą wartości funkcji f(x).Gdyby nie uwzględnić dodatkowych m qubitów (oprócz n qubitów) pojawiłby się

problem z odwracalnością operacji dla funkcji nieróżnowartościowych – operacja taka nie byłaby unitarna. Dla funkcji różnowartościowej m = n

Page 112: Wstęp do informatyki kwantowej

112

mnmnf xfyxyxU

mnmnmnf xfxxfxxU 00

yxxfxfyxxfyxUyxUU fff

111001002

110

2

110

2

10000 HHHH

n

n

xnnn

xH2

022

10

n

n

xmnnmnm xIH

2

02

0

2

100

nnn

xmnn

xmnfn

xmnnf xfxxUxU

2

02

2

02

2

02 2

10

2

10

2

1

Page 113: Wstęp do informatyki kwantowej

113

Uzyskany stan, w przypadku klasycznego obliczania wartości funkcji , wymagałby obliczenia wartości dla wszystkich x – w przypadku kwantowym stan ten otrzymany jest natychmiastowo. Można dokonać obliczeń np. dla 100 qubitów, po zastosowaniu 100-krotnego iloczynu tensorowego bramek Hadamarda, oraz po zastosowaniu operacji unitarnej, uzyskana zostanie superpozycja 2100 stanów, a to odpowiada około 1030 obliczeń wartości funkcji f. Jednakże, pojawia się tutaj problem – wynikowy stan jest nieznany, a klasycznie możliwe jest odczytanie tylko jego małego fragmentu. Np. po dokonaniu pomiaru uzyskana zostanie tylko jedna losowa wartość (w związku z równowagowym rozkładem prawdopodobieństwa w równowagowej superpozycji).

nnn

xmnn

xmnfn

xmnnf xfxxUxU

2

02

2

02

2

02 2

10

2

10

2

1

Page 114: Wstęp do informatyki kwantowej

114

Kwantowe procedury realizowane na komputerach kwantowych mogą znacznie przyspieszyć niektóre obliczenia matematyczne. Bardzo istotną transformacją z punktu widzenia kwantowych algorytmów jest transformata Fouriera.

Dyskretna klasyczna transformata Fouriera

21

0

1 nkN iN

n

F eN

w N-wymiarowej przestrzeni. Jej działanie na zespolony wektor x0,x1,…,xN-1 można zapisać w postaci,

21

0

1 nkN iN

n kn

e x yN

gdzie y0,y1,…,yN-1 jest wyjściowym zespolonym wektorem

Page 115: Wstęp do informatyki kwantowej

115

n

N

y

ixy

nFT yeN

xUn

0

2

21

xy zwykle mnożenie, x i y liczby numerujące n-qubitowy stan

Kwantowa transformacja Fouriera

yeN

xxx

xyeN

yxyxeN

yeN

xxUxxxU

N

y

ixy

n

N

x

n

N

x

N

y

ixy

n

N

x

ixyN

y

n

N

y

ixyN

x

N

xnFT

N

xnFT

n

nn

n

0

2

2

0

0 0

2

2

0

2

2

0

0

2

2

000

1,

11

1

Działanie kwantowej transformaty Fouriera na superpozycję stanów bazowych

Page 116: Wstęp do informatyki kwantowej

116

W przypadku gdy jj rozważana suma jest sumą szeregu geometrycznego

1 1

1

21

1 10

1 j kN iN

k

j e kN

2 2

2

21

2 20

1 j kN iN

k

j e kN

1 1 2 2

1

2

2 21

2 1 2 100

1 1 j k j kN i iN N

kk

j j e e k kN N

1 1 2 2 1 1 2 1

1 1

2

2 2 2 21 1

120 00

1 1j k j k j k j kN Ni i i iN N N N

k kk

e e e eN N

11 2

1

21

0

1 kN i j jN

k

eN

11 2

0

1 1

21 1

01 2

0 0

1 11

ki j jN NN

k k

Nj j e e

N N N

11 2

1

21

1 20

1 kN i j jN

k

j j eN

gdy 1 2j j1

1

1

nqS a

q

1 2 1 22 0 2

1 1

1 1 10 ,

i j j i j jN Na k e q e

N N N

1 21 2

1 2 1 2 1 2

22

2 2 2

1 1 1 1 10

11 1 1

i j j i j jN NN

i j j i j j i j jN N N

q e e

qe e e

Page 117: Wstęp do informatyki kwantowej

117

Można wprowadzić odwrotną transformatę Fouriera:

21

0

1 jkN iN

j

k e jN

2 22 21 1 1 1

0 0 0 0

1 1 1x xjk jkjk jkN N N Ni i i iN N N N

xj k j k

k e e k e e kNN N

2 2 21 1 1 1

0 0 0 0

1 1xx

jk jk jN N N Ni i i k kN N N

j k j k

e e k e kN N

xk k

21

00

1 xjN i k k

Nx

jk

Ne k k

N N

xk k

0

11 1

0

0.

1

0

21

0

1

0

2

N

k

geomszeregusuma

N

j

kkN

jiN

j

N

k

kkN

ji xx

ekN

keN

Page 118: Wstęp do informatyki kwantowej

118

W ramach kwantowej transformaty Fouriera można rozważyć układ n qubitów. Odpowiadająca mu przestrzeń Hilberta będzie miała wymiar 2n. Stany bazy obliczeniowej tej przestrzeni można zapisać w konwencji rozwinięć bitowych

0 , , 2 1nj

Dla bazy obliczeniowej,

1 1 , 1, , 0,1n n ij j j j j i n j 1 2 1 0

1 1 2 12 2 2 2n nk n n nj j j j j j j

Działanie kwantowej transformaty Fouriera na stan |j>

22 12

10

1

2

n

n

jki

nnk

F j e k k k k

nnn yyyy 0

22

11 222

Page 119: Wstęp do informatyki kwantowej

119

22 12

10

1

2

n

n

jki

nnk

F j e k k k k

1

1 2

21 1 1(***)2

10 0 0

1

2

nqq

q

n

ki j

nnk k k

e k k

1 2

1 1 1 22

0 0 0 1

1

2

qq

n

kn i j

qnk k k q

e k

1 2

2

01

1

2

qq

q

kn i j

qnkq

e k

2

2

1

10 1

2

q

jn i

nq

e

1 1 2 1 21 1 22 2 2 2 2 2 2 2 21

0 1 0 1 0 12

nn n n ni j i j j i j j j

ne e e

Page 120: Wstęp do informatyki kwantowej

120

Krok (***) w powyższym wyprowadzeniu można przykładowo przedstawić dla n = 3

37 2

21 2 33

0

1

2

ki j

k

e k k k

3 3 3

1 2 32 2 2

2 0 2 2 2

3

1000 001 010 011

2

i j i j i ji je e e e

3 3 3 3

4 5 6 72 2 2 2

2 2 2 2100 101 110 111i j i j i j i j

e e e e

1 1 11 1 1 13 3 31

1

1 2 31 2 2 2 2 2 22 2 2 2 21 1 1 1

0

00 01 10 11i j k i j k i j ki j k

k

e k e k e k e k

1 21 2 1 2 31 2

1 2

11 1 2 2 22 2 2 21 2 1 2

0 0

0 1i j k ki j k k

k k

e k k e k k

3

1 2 31 2 3 1

1 2 3 1 2 3

2 21 1 1 1 1 12 2 2 2

1 2 3 1 2 30 0 0 0 0 0

qq

q

i j ki j k k k

k k k k k k

e k k k e k k k

1 2 3

3 3 31 1 1 12 2 2 2 2 2

0 0 0 01 1 1

0 1q q q

q q

q

i jk i jk i jq q

k k k kq q q

e k e k e

1 2 32 2 2 2 2 20 1 0 1 0 1i j i j i je e e

2 1 01 2 3

1 0 11 2 3

0 1 21 2 3

1 2 31 2 3

2 2 2

2 2 22

2 2 24

2 2 28

j j j j

jj j j

jj j j

jj j j

1 0 1 0 1 2 1 2 31 2 3 1 2 3 1 2 32 2 2 2 2 2 2 2 2 2 2 2

0 1 0 1 0 1i j j j i j j j i j j je e e

1 2 1 2 31 2 3 1 2 332 2 2 2 2 2 22 20 1 0 1 0 1i j j i j j ji je e e

Page 121: Wstęp do informatyki kwantowej

121

1 1 2 1 21 1 22 2 2 2 2 2 2 2 21

0 1 0 1 0 12

nn n n ni j i j j i k j j j

ne e e

H2R

1nR

nRH

2nR

1nR 1j

2j

H

2R

H

1nj

nj

1x

2x

1nx

nx

Postać iloczynowa kwantowej transformaty Fouriera daje możliwość łatwej realizacji bramkowej tej operacji

12 22 2 2

10 1 , , 0 1n nn

jj ji i

nx e x e

Page 122: Wstęp do informatyki kwantowej

122

H2R

1nR

nRH

2nR

1nR 1j

2j

H

2R

H

1nj

nj

1x

2x

1nx

nx

układ składa się z n bramek Hadamarda, z (n-1)+(n-2)+…+1 = (n-1)(n-2)/2 dwu-qubitowych kontrolowanych bramek Rk, oraz z n/2 bramek SWAP (pierwszy z ostatnim, drugi z przedostatnim, itd.)

Bramki Rk mają postać 2

2

1 0

0k

k iR

e

Można prześledzić działanie powyższego układu na przykładowym stanie

1 1n nj j j j

Page 123: Wstęp do informatyki kwantowej

123

0 0

22

1

1 10 1 0 1

2 2

n nj ji

n j i

eH j e

e

1jjn 2

21

10 1

2

njix e

122

1

10 1

2

nji

nH j e

224

1 0

0i

Re

11 22 2

2 42 42 1

1 10 1 0 1

2 2

n nn n

n

j jj j ii ijnR H j e e e

21 jjn

122 4

2

10 1

2

n nj ji

x e

Page 124: Wstęp do informatyki kwantowej

124

102

1 8422

223

12

1

nnn

nn

jjji

njj ejHRR

32 jjn

2 122 4 8

3

10 1

2

n n nj j ji

x e

Powtarzając tą procedurę dla kolejnych stanów otrzyma się wyrażenie na stan

1 2

1 3 22

2 4 21 3 2 1

10 1

2

nn

n n

jj ji

j j j jn nR R R R H j e

Po zastosowaniu operacji SWAP uzyska się stan wyjściowy

1 222 4 21

0 12

nn

jj ji

nx e

Page 125: Wstęp do informatyki kwantowej

125

Stan końcowy całego układu przyjmuje postać

1 1 nx x x x

1 1 22 222 4 2 4 22

1 1 10 1 0 1 0 1

2 2 2

n n nnn

j j jj jj i iie e e

1 1 2 1 21 1 22 2 2 2 2 2 2 2 21

0 1 0 1 0 12

nn n n ni j i j j i j j j

ne e e

FOznaczenie bramkowe operacji kwantowej tranfromaty Fouriera

Page 126: Wstęp do informatyki kwantowej

126

34

22 0

01,

0

01R

eTR

eS ii

H

STS

H

H

2 3 5 6 72 12 2 2 22

8 8 8 8 84 2

6 62 1 2 12 22 2

8 84 2 4 2

3 6 2 7 51 22 2 2 22

8 8 8 8 82 4

1 12 2

2 2

5 722 2

8 84

6 1 22 2

8 2 4

7 6 52 2 2

8 8 8

1 1 1 1 1 1 1 1

1

1 1

11

8 1 1 1

1

1

1

i i i i ii i

i ii i i i

i i i i ii i

i i i

i ii

i i i

i i i

e e e e e e e

e e e e e e

e e e e e e e

e e e

e e e

e e e

e e e

1 12 2

2 2

2 6 312 22

8 8 82

6 1 22 2

8 2 4

3 21 222

8 82 4

1

1

i

i i ii

i i i

i ii i

e

e e e e

e e e

e e e e

Kwantowa transfromata Fouriera dla układu 3 qubitów, w postaci bramkowej i macierzowej

Page 127: Wstęp do informatyki kwantowej

127

W ogólnym przypadku całkowita liczba bramek potrzebnych do realizacji układu kwantowej transformaty Fouriera jest rzędu:

2

22

1

2121 n

nnnnnnn

Wynika z tego, że układ kwantowej transformacji Fouriera jest wydajny (w sensie teorii złożoności), ponieważ jego złożoność jest wielomianowa – O(n2)

W przypadku klasycznym, liczba operacji realizowanych przez klasyczną transformatę Fouriera jest rzędu O(22n) lub dla szybkiej klasycznej transformaty Fouriera O(n2n)

fundamentalny charakter schematu pomiaru w mechanice kwantowej nie wszystkie współczynniki wyliczone kwantową transformatą Fouriera są dostępne dla klasycznego obserwatora, w odróżnieniu od rezultatów klasycznej transformaty Fouriera

Page 128: Wstęp do informatyki kwantowej

128

Problem:

-n-elementowa baza danych (każdy element z bazy występuje jednokrotnie)-poszukiwany element x

Klasycznie:

-bierzemy kolejne elementy i sprawdzamy czy jest to poszukiwany element (?=x)-gdy poszukiwany element jest pierwszy w bazie sukces po pierwszym kroku-gdy poszukiwany element jest ostatni w bazie sukces po n krokach

Klasycznie problem skaluje się wraz z liczbą elementów w bazie, czyli O(n)

Kwantowo:

Lov K. Grover podał algorytm dla komputera kwantowego, który zmniejsza złożoność obliczeniową zagadnienia przeszukiwania bazy danych do O(√n)

Page 129: Wstęp do informatyki kwantowej

129

Algorytm Grovera zakłada istnienie kwantowej procedury określającej, czy poszukiwany element został znaleziony, czyli czy wyreprezentowana przez n qubitów liczba całkowita jest poszukiwaną liczbą, zwracając odpowiedź poprzez funkcję :

0,

1,

x af x

x a

Grover pokazał, że jego algorytm kwantowy – w najgorszym przypadku – nie wymaga sprawdzenia wszystkich 2n elementów (dla poszukiwanej n-bitowej liczby całkowitej), tak jak jego klasyczny odpowiednik. Ale tylko 2n/2 – jest to przespieszenie pierwiastkowe

Page 130: Wstęp do informatyki kwantowej

130

Implementacja tego algorytmu opiera się na unitarnej operacji Uf, która działa na n-qubitowy rejestr wejściowy reprezentujący liczbę x, oraz posiada 1-qubitowy rejestr wyjściowy, którego stan zmienia wartość w przypadku gdy x = a lub pozostaje niezmieniony w przeciwnym przypadku:

1 1f n nU x y x y f x

Przykład takiej operacji:1

x

2x

3x

4x

5x

y 1 2 3 4 5x x x x xX y

1x

2x

3x

4x

5x

Page 131: Wstęp do informatyki kwantowej

131

• W ogólnym przypadku układ działa jak czarna skrzynka i nie jest wiadome, które qubity kontrolują w sposób prosty, a które w sposób odwrotny, działanie bramki X – ta informacja jest określona przez nieznaną liczbę całkowitą a.

• W przypadku klasycznym, należałoby sprawdzać wszystkie kolejne wartości x do momentu, gdy nastąpi zamiana rejestru wyjściowego (dla poszukiwanej n-bitowej liczby całkowitej, w najgorszym przypadku będzie to 2n kroków).

• W przypadku algorytmu Grovera wystarczy wykonać pierwiastek z liczby kroków dla klasycznego algorytmu

Page 132: Wstęp do informatyki kwantowej

132

Przydatne jest odwrócenia operacji zamiany stanu rejestru wyjściowego na operację tylko zmiany znaku stanu wyjściowego. W tym celu wystarczy, aby rejestr wyjściowy był w stanie:

11 0 1

2H 1 1 1

f x

fU x H x H

1 11 0 1 0 1

2 2fU x H x f x x f x f x

1 10 1 1 1 1 0 1 1

2 21 1

0 0 1 0 0 1 1 12 2

f x

f x

x a x x x H

x a x x x H

Zatem, w przypadku x = a, stan całego układ zostanie pomnożony przez czynnik -1

Page 133: Wstęp do informatyki kwantowej

133

Można to przedstawić jako działanie tylko na rejestr wejściowy pewną operacją unitarną V, która działa na bazie obliczeniowej w następujący sposób

,

1,

f x x x aV x x

a x a

2V I a a

, 02

,

x a xV x x a a x

a x a

2V a a

Czyli, dla ogólnego przypadku można zapisać

1 2 1fU H a a H

Można zauważyć, że operacja Uf pozostawia stan H|1> niesplątany z resztą układu i stan ten pozostaje niesplątany z rejestrem wejściowym przez cały czas działania algorytmu – dlatego można ten stan pominąć w zapisie

Page 134: Wstęp do informatyki kwantowej

134

Rozważmy dowolny stan układu wejściowego – jako superpozycję wszystkich możliwych stanów wejściowych

2 1

0

10

2

n

n

n nnx

H x

Oprócz operacji V potrzebna jest także operacja W, która działa podobnie do V, ale nie jest zależna od a. Unitarna transformacja W zachowuje znak współczynnika stojącego przy stanie |> zmieniając znak wszystkich innych stanów na przeciwny:

2W I

Algorytm Grovera sprowadza się do wielokrotnego powtarzania operacji WV

1

2na a

V a a 2

2nV a

W 2

2nW a a

Page 135: Wstęp do informatyki kwantowej

135

Przykładowo2 2

2 2n nWVWVWV WVWVW a WVWV W W a

2 2 2 2 2 21

2 2 2 2 2 2n n n n n nWVWV a WVWV a

Z postaci |> wynika, że |a> i |> są prawie prostopadłe, ponieważ

1 1cos

2na

N

Można zdefiniować stan |a┴> będący znormalizowaną liniową kombinacją stanów |a> i |>, która jest ortogonalna do stanu |a> i tworzy mały kąt = /2 – ze stanem |>. Obliczając sinus kąt mamy:

1 1sin cos

2na

N

dla dostatecznie dużych N można przyjąć, że

1

2n

Page 136: Wstęp do informatyki kwantowej

136

a

a

Można to przedstawić graficznie, odnosząc operacje V i W do odpowiednich obrotów (odbić) względem stanów

Page 137: Wstęp do informatyki kwantowej

137

Ponieważ operacja W pozostawia stan |>, niezmieniony, a dowolny wektor, który jest prostopadły do stanu |> zmienia na przeciwny, więc operację W można traktować jako odbicie lustrzane względem prostej przechodzącej przez środek i wyznaczonej przez stan |>. Operacja V zmienia stan |a> na przeciwny, a dowolny inny wektor prostopadły do stanu |a> pozostawia niezmieniony. Czyli operację można z kolei traktować jako odbicie lustrzane względem prostej wyznaczonej przez stan |a┴>. Operacja WV jest złożeniem dwóch odbić – czyli jest dwuwymiarowym obrotem. Efekt rotacji WV stanu |a┴> - V pozostawia stan |a┴> niezmieniony, a W odbija go względem stanu |>.

a

a

2

V

WV

Page 138: Wstęp do informatyki kwantowej

138

a

a

2

V

WV

Czyli operacja WV jest rotacją o kąt 2. Operacja WV obróci dowolny wektor o 2 w kierunku od stanu |a┴> do stanu |>. Działając WV na stan |> otrzymamy stan obrócony o 3 od stanu |a┴>, bo początkowo |> było obrócone o od stanu |a┴>. Kolejne zastosowanie WV oddala wynikowy stan od |a┴> o kolejne 2.

więc po całkowitej liczbie kroków, która jest najbliższa /4 2n/2, stan wynikowy będzie prawie równoległy do stanu |a>. Liczbę powtórzeń k można wyznaczyć z warunku,

1

2n

1 12 1 2 2

2 22 2

n

n nk k

2

4nk

Zatem, w wyniku pomiaru w bazie obliczeniowej końcowego stanu, z prawdopodobieństwem bliskim 1 uzyska się poszukiwany stan |a>

Page 139: Wstęp do informatyki kwantowej

139

Co wie BOB? Co wie ALICE? Co jest publicznie znane?Dwie liczby pierwsze: c i d,oraz liczby p i q, takie, żecd = 1 (mod(p-1)(q-1))N = pq

Klucz publiczny: c i NKlucz prywatny: d

Wiadomość a do zakodowania.Tylko c (nie zna d), oraz tylko N (nie zna poszczególnych mnożników p i q)Zakodowana wiadomość:b = ac (mod N)

Zakodowana wiadomość bTylko c (nie jest znane d), oraztylko N (nie są znane poszczególne mnożniki p i q)

Dekodowanie:a = bd (mod N)

Komputer kwantowy znajduje okres r, taki żebr = 1 (mod N)Klasyczny komputer znajduje d’ takie, żecd‘ = 1 (mod r)a = bd’ (mod N)

Szyfr RSA

• jeżeli c nie posiada wspólnego dzielnika z (q-1)(p-1) to istnieje takie d, że powyższe spełnione• wiadome jest, że a1+s(p-1)(q-1) = a (mod N=pq) ac (mod N), to jeżeli cd = 1 + s(p-1)(q-1) to

mod

mod

mod

cd

c

d

a a pq

b a pq

b a pq

(z małego twierdzenia Fermata)

Page 140: Wstęp do informatyki kwantowej

140

r = new Random();// p, qp = BigInteger.probablePrime(bitlength, r);q = BigInteger.probablePrime(bitlength, r);// PUBLIC KEY [part 1] modulo N = p*qN = p.multiply(q);// phi = (p-1)*(q-1)phi = p.subtract(BigInteger.ONE).multiply(q.subtract(BigInteger.ONE));// PUBLIC KEY [part 2] GCD(e,phi) = 1e = BigInteger.probablePrime(bitlength/2, r);while (phi.gcd(e).compareTo(BigInteger.ONE) > 0 && e.compareTo(phi) < 0 ) {

e.add(BigInteger.ONE);System.out.print(".");

}//PRIVATE KEY e^(-1)mod(p-1)(q-1)d = e.modInverse(phi);

Przykładowa generacja kluczy w RSA (java)

Natomiast metoda szyfrowania wykorzystuje prostą instrukcję:BigInteger temp = new BigInteger(raw[i]).modPow(e, N);

A metoda deszyfrowania wykorzystuje instrukcję:

BigInteger temp = new BigInteger(tmp).modPow(d, N);

Page 141: Wstęp do informatyki kwantowej

141

Szyfr RSA można złamać, jeśli posiada się szybką metodę wyszukiwania okresu znanej funkcji okresowej:

ZkNbNbkrxf xkrx ,modmod

NNbb

NNb

NNbNb

NNb

rr

r

rr

mod0mod11

mod0mod1

mod1modmod

mod1mod0

0

Nbxf x mod)(

Więc N ma wspólne dzielnik z i z 1rb 1rb

Znając kilka różnych wielokrotności okresu można w z dużym prawdopodobieństwem znaleźć sam okres r, a znając r możemy wyliczyć czynniki liczby N (np. algorytmem Euklidesa)

Page 142: Wstęp do informatyki kwantowej

142

algorytmem Euklidesa: Aby znaleźć wspólny dzielnik dwóch liczb A i B należy wykonać dzielenie

C

Dcalkowitaliczba

C

B

B

Ccalkowitaliczba

B

A

przykład

57

5

07

5

30

30

51

30

35

35

304

35

1707

04

7

28

28

71

28

35

35

284

35

168

oraz

5735

Page 143: Wstęp do informatyki kwantowej

143

15, 8N y

0 1 2 3 4 5 61 8 64 512 4096 32768 2621441 8 4 2 1 8 4

nny

modny N

4r 2

2

21 63 3 73,5

1 65 5 13

r

r

y

y

15, 7N y

0 1 2 3 4 5 61 7 49 343 2041 16807 1176941 7 4 13 1 7 4

nny

modny N

4r 2

2

4

2

1 48 2 33,5

1 50 2 5

r

r

y

y

35, 13N y

0 1 2 3 4 5 61 13 169 2197 28561 371293 48268091 13 29 27 1 13 29

nny

modny N

4r 2 31 168 2 3 7r

y

2 1 170 2 5 17r

y

B

acalkowital

a

B

B

acalkowital

B

A 2

1

1 ..7,5

5

06

5

30

30

51

30

35

35

304

35

1707

04

7

28

28

71

28

35

35

284

35

168

Page 144: Wstęp do informatyki kwantowej

144

• Należy jednak zwrócić uwagę na fakt, że wartości funkcji f(x) = bx (mod N) w odróżnieniu od prostych, gładkich funkcji periodycznych (np. sin, cos, itp.) nie wskazują na żadną prawidłowość – można powiedzieć, że jest to funkcja losowego szumu z okresem.

• Żaden zakres wartości między okresami nie wskazuje na prawdopodobną wartość okresu funkcji.

• Z tego powodu w przypadku klasycznym, próba określenia okresu takiej funkcji sprowadza się do wyliczania wartości f dla losowego zbioru liczb całkowitych do momentu aż nie zostanie znaleziona wartość funkcji identyczna do wyliczonej wcześniej.

Skalowanie  Niech n będzie liczbą bitów w reprezentacji binarnej liczby N = pq, wtedy 2n to najniższa

potęga 2 przekraczająca N = pq. Dla liczby 500 cyfrowej w reprezentacji dziesiętnej (typowy rozmiar dla wykorzystań kryptograficznych), liczba bitów w reprezentacji binarnej wynosi około 1700. Podobne skale można przyjąć dla a, b, oraz okresu (mod N) r. Czyli złożoność problemu znalezienia okresu skaluje się ekspotencjalnie z n – O(2n).

 W przypadku kwantowym, w związku z istnieniem kwantowej równoległości,

procedura wyliczenia okresu (z prawdopodobieństwem bliskim 1) skaluje się wielomianowo z n.

Page 145: Wstęp do informatyki kwantowej

145

Można rozważyć układ kwantowy, który posiada rejestr wejściowy oraz rejestr wyjściowy. Aby umożliwić reprezentację x oraz f(x) w przedziale od 0 do N, należy przyjąć rozmiary obu rejestrów nie mniejsze niż liczba bitów potrzebnych do wyreprezentowania N. Dla odpowiedniej efektywności przyjmuje się rejestr wejściowy o dwukrotnym rozmiarze. Podwojenie rejestru wejściowego zapewnie zawieranie przynajmniej N pełnych okresów funkcji f.

Działanie rozpoczyna się od skonstruowania stanu

0

2 11

2

n

n nnx

x f x

Czyli najpierw wprowadzamy rejestr wejściowy i wyjściowy w superpozycję bramkami Hadamarda, a następnie działamy operacją Uf

fU x y x y f x

Jeżeli rozważyć pomiar rejestru wyjściowego to w jego wyniku otrzymamy jakąś wartość f0, można wtedy zapisać stan rejestru wejściwoego

Page 146: Wstęp do informatyki kwantowej

146

Pomiar f0 = f(x0)

1

00

1 m

n nk

x krm

0x 00 x r 0 0f x f

m0 2nmr x

najmniejsza wartość x, dla której

najmniejsza liczba całkowita, dla której

2n

mr

21

n

mr

Gdyby posiadać kilka kopii takiego stanu to można by wykonać parę pomiarów, następnie wziąć ich różnicę i w ten sposób otrzymać zbiór różnych wielokrotności okresu, co umożliwiłoby obliczenie samego okresu (np. algorytmem Euklidesa). Jest to jednak niemożliwe zgodnie z twierdzeniem No-cloning. Pojedynczy pomiar zwróci jedynie wartość dla zupełnie losowego x0, co uniemożliwi wydobycie jakiejkolwiek informacji o okresie.

Należy podkreślić, że wykonanie pomiaru rejestru wyjściowego nie jest konieczne – można pracować na całej kombinacji liniowej wyników, co w rezultacie da dodatkową sumę. Taki pomiar można rozważyć teoretycznie i pominąć niepotrzebne człony, nie wpływające na działanie algorytmu.

Page 147: Wstęp do informatyki kwantowej

147

Należy następnie zastosować kwantową transformatę Fouriera

2 1 2 1

0 0

n n

FTx x

U x x x x

22 12

0

1

2

n

n

i xy

ny

x e x

021 2 1 12

00 0 0

1 1 1

2

n

n

i x kr ym m

FT n nk y k

U x kr e ym m

02 22 1 12 2

0 0

1

2

n

n n

i x y i krym

ny k

e e ym

Jeżeli teraz zostanie przeprowadzony pomiar, to prawdopodobieństwo p(y) otrzymania stanu y jest kwadratem współczynnika stającego przy |y>. Czynnik eksponencjalny zniknie pod modułem (problem z losowym x0 także).

Page 148: Wstęp do informatyki kwantowej

148

Czyli można zapisać prawdopodobieństwo takiego pomiaru

221

2

0

1

2n

i krym

nk

p y em

22221 2

22

0 2

1

1

n

n

n

i rymi krym

i ryk

ee

e

21 1 1 1 1 2 2cosi i i i ie e e e e

2 1 cos 2 1 cos 22

2cos 2 1 2sinx x

2 22 1 cos 2 2 1 1 2sin 4sin2 2 2

22 2 2221 22

220 2

2

224sin sin1 2 22

sin1 2 24sin2

n

n

n

ni rymi krym n

i ryk

n n

i rym rmy

ee

i ry rye

finalnie:

2

2

sin1 22 sin

2

n

n

n

rmy

p yrym

Page 149: Wstęp do informatyki kwantowej

149

Okazuje się, że ta funkcja prawdopodobieństwa osiąga maksimum przy y bliskim całkowitej wielokrotności 2n/r. Można rozważyć otoczenie całkowitej wielokrotności 2n/r (np. 1/2) czyli:

2

2

sin1 22 sin

2

n

n

n

rmy

p yrym

2n

j jy y jr

1

2j

2

2

sin1 22

sin2

j

n

j nj

n

rm

p yrm

Wiemy, że m jest liczbą całkowitą bliską 2n/r oraz, że

można zastąpić mr/2n przez 1, oraz zamienić dolny sinus przez bardzo mały argument,

22n NN

r r

2

2 22

2

sin sin sin1 2 1

2 22

nj j j

j n nj j j

n

p yrm mr r

Page 150: Wstęp do informatyki kwantowej

150

02

x

2

sinx

x

1

2j

2

1 2jp y

r

Należy zauważyć, że istnieje przynajmniej r-1 różnych wartości j, okres może być bardzo duża liczbą, wiec widać, że z prawdopodobieństwa minimum 40% otrzymamy założoną wartość y, która znajduje się w otoczeniu 1/2 całkowitej wielokrotności 2n/r

Jeżeli znaleźliśmy y, które jest właśnie w takim otoczeniu to, można zapisać

2

2 22

2

sin sin sin1 2 1

2 22

nj j j

j n nj j j

n

p yrm mr r

1

1

2 2n n

y j

r Znając y oraz n, otrzymujemy zatem przybliżenie na j/r– czyli informację o szukanym okresie