Pobieranie prezentacji. Proszę czekać

Pobieranie prezentacji. Proszę czekać

Wstęp do informatyki kwantowej

Podobne prezentacje


Prezentacja na temat: "Wstęp do informatyki kwantowej"— Zapis prezentacji:

1 Wstęp do informatyki kwantowej
Witold Jacak Instytut Fizyki Politechnika Wrocławska Wstęp do informatyki kwantowej

2 Informacja klasyczna 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

3 Informacja kwantowa 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

4 Główne założenia opisu kwantowego
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 H jest zupełna wg. normy

5 Główne założenia opisu kwantowego
2. Stan układu kwantowego podlega ewolucji zgodnie z równaniem Schrodingera 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)

6 Główne założenia opisu kwantowego
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 operator Hamiltona (z liniowości i z zachowania normy wynika, że jest hermitowski):

7 Główne założenia opisu kwantowego
Jeżeli hamiltonian H nie zależy jawnie od czasu Dowolny operator jest unitarny gdy Więc unitarny – czyli ewolucja unitarna Jeżeli hamiltonian H zależy jawnie od czasu to też ewolucja unitarna z dokładnością do członów liniowych w dt rozpatruje się człony liniowe ponieważ chodzi o określenie różniczki jeżeli by całkować różniczki to postać operatora nie byłaby postaci eksponenty tylko T-eksponenty

8 Główne założenia opisu kwantowego
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)

9 Główne założenia opisu kwantowego
Rzutowanie von Neumana rozłożenie dowolnego stanu w danej chwili t w bazie wektorów własnych operatora A równanie własne operatora A ewolucja unitarna dalsza ewolucja unitarna pomiar – redukcja f. falowej

10 Główne założenia opisu kwantowego
Rzutowanie von Neumana W wyniku pomiaru, przypadkowo ale z prawdopodobieństwem |ci|2 wychodzi wynik li a stan Y(r,t) zamieniany jest w odpowiednią funkcję własną Yi. 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

11 Główne założenia opisu kwantowego
Dla operatorów hermitowskich spełnione jest tw. Spektralne 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 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: a funkcja kolapsuje do W wyniku pomiaru uzyskuje się wartość

12 Główne założenia opisu kwantowego
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: Dla 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).

13 Główne założenia opisu kwantowego
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: W przestrzeniach Hilberta układów A i B wybieramy bazy: 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).

14 Główne założenia opisu kwantowego
Mamy zatem dwie sytuacje odnośnie macierzy gęstości stanu A. Dla stanu czystego układu A 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) 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.

15 Główne założenia opisu kwantowego
5. Iloczyn tensorowy – splątanie kwantowe dwa podukłady nie oddziałują: dwa podukłady oddziałują: stany separowalne stany nieseparowalne Iloczyn tensorowy to przestrzeń par i ich liniowych kombinacji Przestrzeń będąca iloczynem tensorowym dwóch podprzestrzeni ma określony następująco iloczyn skalarny:

16 Qubit 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 a jest rzeczywiste (pominąć fazę funkcji falowej)

17 Qubit – reprezentacja geometryczna
Czyli można zapisać dowolny stan qubitu jako stan z dwoma parametrami będącymi kątami Wtedy wektor n odpowiada powyższemu opisowi qubitu z jest wektorem jednostkowym sfery (Blocha). Sfera Blocha – stan |0> jest opisany wektorem [0,0,1] a stan |1> wektorem [0,0,-1]. y x

18 Stany splątane dwóch qubitów
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: Stany te tworzą bazę ON w 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 )

19 Baza Bella 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.

20 Protokół super gęstego kodowania
Z postaci stanów Bella wynika, że następujące operacje lokalne na qubicie B pozwalają otrzymać wszystkie stany Bella z jednego, np. 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).

21 Teleportacja kwantowa
Innym przykładem prostego wykorzystania splątania kwantowego jest zjawisko teleportacji kwantowej. Jeśli mamy stan cząstki A (qubitu A) w postaci: 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

22 Teleportacja kwantowa
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 cały układ ABC jest w stanie czystym

23 Teleportacja kwantowa
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) może być przedstawiony w bazie:

24 Teleportacja kwantowa
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, 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.

25 Teleportacja kwantowa
Na przykład gdy po rzutowaniu na stany Bella pary AC znajdzie się ona w stanie cząstka B będzie wtedy z pewnością w stanie wystarczy wtedy lokalnie na cząstce B (odległej) wykonać zamianę stanów 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).

26 Teleportacja kwantowa
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).

27 Teleportacja kwantowa
źródło EPR splą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).

28 Twierdzenia No- Twierdzenia No-cloning Twierdzenie No-broadcasting
Nieznany stan kwantowy nie może zostać skopiowany Twierdzenie 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)

29 Twierdzenie No-cloning
Nieznany stan kwantowy nie może być skopiowany [Wootters W. K., Żurek W. H., Nature 299  (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.

30 Twierdzenie No-cloning – dowód 1
Załóżmy nie wprost, że istnieje operator kopiowania A, zdefiniowany następująco 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 co stoi w sprzeczności z poprzednim równaniem. Oba równania można ze sobą uzgodnić tylko w przypadku gdy b = 0, a = 1, lub a = 0, b = 1, co oznacza, że kopiowany jest stan znany (wektor z bazy). To kończy dowód.

31 Twierdzenie No-cloning – dowód 2
Załóżmy nie wprost, że kopiowanie jest możliwe. Jako wejście można rozważyć nieznany stan |y>, 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: Załóżmy dodatkowo, że proces kopiowania jest pewną operacją unitarną aparatury kopiującej, czyli Można rozważyć kopiowanie dwóch stanów czystych

32 Twierdzenie No-cloning – dowód 2
Można rozważyć iloczyn skalarny obu wcześniejszych równań Stąd stany albo są identyczne albo prostopadłe. Zatem operacja U nie dopuszcza kopiowania dowolnych nieznanych stanów. To kończy dowód.

33 Twierdzenie No-cloning – konsekwencje
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

34 Twierdzenie No-broadcasting
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.

35 Twierdzenie No-deleting
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.

36 Twierdzenie No-deleting – dowód 1
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 |y> natomiast otoczenie znajduje się w pewnym stanie |A>. Załóżmy, że transformacja usuwająca informację względem jej kopii jest transformacją liniową L, gdzie |S> jest stanem „pustym” (dowolnie wybranym), stan |Ay> jest pomocniczym stanem otoczenia, zależnym od stanu |y>. Ogólnie, rozpatrywana transformacja zdefiniowana jest na układzie trzech niesplątanych stanów i zamienia stan |y> wobec jego kopii w stan |S>.

37 Twierdzenie No-deleting – dowód 1
Dla ortogonalnych stanów bazy qubitu mamy 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).

38 Twierdzenie No-deleting – dowód 1
Czyli, przyjmując 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,

39 Twierdzenie No-deleting – dowód 1
Wiadomo, z postaci |y>, że nie występuje tam zależność od współczynników a i b. Aby wcześniejsze było spełnione dla dowolnych a i b stan |Ay> musi od nich liniowo zależeć. Stąd to równanie ma rozwiązanie jedynie gdy Z warunku normalizacji uzyskuje się: Zgodnie z definicją iloczynu skalarnego,

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

41 Twierdzenie No-deleting – dowód 2
Rozważmy liniowy operator A, zdefiniowany następująco Dla dowolnego stanu

42 Twierdzenie No-deleting – dowód 2
Uzyskujemy równość Jeśli |f> jest niezależne od a i b, to dla dowolnych a i b, to stan |ey> musi być liniową funkcją tych parametrów. Rozwiązanie tego równania przyjmuje zatem postać:

43 Twierdzenie No-deleting – dowód 2
To prowadzi do warunku Więc jest tym samym co koniec dowodu Konsekwencje Bezpieczeństwo kwantowej informacji Informacja kwantowa jest odporna na różne metody jej usuwania przy zachowaniu kopii

44 Macierze Pauliego Macierze Pauliego Własności macierzy Pauliego:

45 Bramka Pauliego X Działanie dla stanów z bazy obliczeniowej
Działanie dla dowolnego stanu Bramka samoodwracalna

46 Bramka Pauliego Y Działanie dla stanów z bazy obliczeniowej
Działanie dla dowolnego stanu Bramka samoodwracalna

47 Bramka Pauliego Z Działanie dla stanów z bazy obliczeniowej
Działanie dla dowolnego stanu Bramka samoodwracalna

48 Macierze Pauliego Macierze Pauliego są hermitowskie
Macierze Pauliego są unitarne

49 Bramka Hadamarda H Działanie dla stanów z bazy obliczeniowej
Działanie dla dowolnego stanu Bramka Hadamarda jest hermitowska i unitarna

50 Bramka fazy S Działanie dla stanów z bazy obliczeniowej
Działanie dla dowolnego stanu Bramka hermitowska i unitarna

51 Bramka p/8, T Działanie dla stanów z bazy obliczeniowej
Działanie dla dowolnego stanu Bramka hermitowska i unitarna

52 Bramka eif, F Działanie dla stanów z bazy obliczeniowej
Działanie dla dowolnego stanu Ta bramka posiada parametr f, dlatego powyższą definicję należy traktować, jako definicję całej rodziny takich bramek.

53 Operacje jednoqubitowe jako rotacje na sferze Blocha
Ta reprezentacja kątowa odpowiada współrzędnym sferycznym jednostkowego wektora na sferze Blocha.

54 Operacje jednoqubitowe jako rotacje na sferze Blocha
Można zapisać postaci operatory obrotów względem osi x, y, z, o kąt q 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

55 Operacje jednoqubitowe jako rotacje na sferze Blocha
Rozwinięcie w szereg operacji:

56 Operacje jednoqubitowe jako rotacje na sferze Blocha
Rozwinięcie w szereg operacji:

57 Operacje jednoqubitowe jako rotacje na sferze Blocha
rotacja wokół dowolnej osi na sferze Blocha: rzeczywisty wektor jednostkowy

58 Bramka Hadamarda jako rotacje na sferze Blocha
Wokół osi x i y nieistotna faza (funkcja falowa określona z dokładnością do fazy) Wokół osi x i z nieistotna faza (funkcja falowa określona z dokładnością do fazy) Wokół osi y i z nieistotna faza (funkcja falowa określona z dokładnością do fazy)

59 Dowolny obrót w dekompozycji XY
Dekompozycja XY: 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)

60 Twierdzenie o przedstawieniu dowolnej operacji jedno-qubitowej za pomocą operatorów obrotu
Dowolny jedno-qubitowy unitarny operator (dekompozycja ZY) Dla dowolnej jednostkowej macierzy U, zawsze można znaleźć takie cztery liczby rzeczywiste a,b,g,d, aby powyższa macierz była równa U

61 Twierdzenie o przedstawieniu dowolnej operacji jedno-qubitowej za pomocą operatorów obrotu
Dowód Ten układ równań zawsze posiada nietrywialne rozwiązanie, ponieważ

62 Reprezentacja dowolnej operacji jedno-qubitowej
Wektory m i n są dowolnymi wektorami jednostkowymi nierównoległymi względem siebie wektor macierzy Pauliego

63 Reprezentacja dowolnej operacji jedno-qubitowej
Dla dowolnej unitarnej operacji jedno-qubitowej U istnieją takie operacje jedno-qubitowe A, B i C, że: a nieistotnym globalnym przesunięciem fazowym Dowód Niech:

64 Reprezentacja dowolnej operacji jedno-qubitowej
Ale a to jest operacja obrotu Ogólnie:

65 Przykładowa reprezentacja bramki Hadamarda
Dokompozycja ZY Znalezienie macierzy A, B, C Inne przedstawienia niektórych operacji jedno-qubitowych

66 Bramka kontrolowanej negacji CNOT
Bramkę można rozpatrywać jako unitarną operacje na dwóch qubitach: qubicie kontrolnym (control qubit) oraz qubicie docelowym (target qubit) suma modulo 2

67 Bramka kontrolowanej negacji CNOT
Działanie bramki CNOT na stany qubitów kontrolnego i docelowego z bazy obliczeniowej 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 Dlatego bramkę CNOT należy rozumieć jako operację kontrolowanej negacji qubitu docelowego

68 Bramka kontrolowanej negacji CNOT
Bramkę CNOT można interpretować w odniesieniu do klasycznej dwubitowej operacji logicznej XOR, zdefiniowanej następująco: a b a XOR b a b 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ć:

69 Bramka kontrolowanej negacji CNOT
Operację unitarną CNOT można przedstawić jako czterowymiarową unitarną macierz 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

70 Bramka kontrolowanej negacji CNOT
Iloczyn tensorowy dwóch qubitów jest opisany przez czterowektor w bazie obliczeniowej iloczynu tensorowego przestrzeni układów dwóch qubitów Dowolny stan w takiej przestrzeni ma postać: Można przedstawić bazę za pomocą wektorów

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

72 Działanie bramki kontrolowanej negacji CNOT
Działanie bramki CNOT na dowolny stan: 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

73 Działanie bramki kontrolowanej negacji CNOT
Gdy a1=1, b1=0, wtedy stan qubitu docelowego nie ulega zmianie, natomiast gdy a1=0, b1=1, stan qubitu docelowego działa jednoqubitowa bramka negacji (bramka Pualiego ), zmieniając miejscami współczynniki: Zatem, bramkę CNOT można zapisać w następującej postaci I2x2 oznacza trywialną operację tożsamościową dla jednego qubitu

74 Bramka CNOT – układ kopiujący?
można rozważyć układ kopiujący wykorzystując bramkę CNOT w celu zilustrowania twierdzenia No-cloning ale Spełnione tylko dla a, b = 0,1 Oczekiwany rezultat dla dowolnych a, b

75 Bramka kontrolowanej operacji U
Jeżeli qubit kontrolny jest w stanie 1 wtedy na qubicie docelowym wykonywana jest unitarna operacja U. Poniżej postać macierzowa takie operacji Jeżeli qubit kontrolny jest w stanie 1 wtedy na n qubitach docelowych wykonywana jest n-qubitowa unitarna operacja U.

76 Metoda budowy macierzy wielo-qubitowych

77 Reprezentacja bramki CNOT

78 Bramka CNOT dla zupełnie nieortogonalnej bazy
Wektory zupełnie nieortogonalnej bazy (w stosunku do bazy obliczeniowej)

79 Bramka CNOT dla zupełnie nieortogonalnej bazy
Działanie bramki CNOT qubit kontrolny zamienił się rolą z qubitem docelowym qubit docelowy nie zmienia stanu na skutek działania bramki CNOT

80 Bramka CNOT dla zupełnie nieortogonalnej bazy
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)

81 Bramka SWAP (zamiany) Operację SWAP wprowadza się w celu zrealizowania zamiany stanów dwóch qubitów.

82 Bramka CNOT w reprezentacji dowolnej kontrolowanej bramki U
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

83 Klasyczna bramka Toffoli
Inputs Outputs a b c a’ b’ c’ 1 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)

84 Kwantowa bramka Toffoli
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)

85 Klasyczna bramka Fredkina
Inputs Outputs a b c a’ b’ c’ 1 Klasyczna bramka Fredkina jest odpowiednikiem kontrolowanej bramki SWAP Realizacja bramki AND i NAND

86 Kwantowa bramka Fredkina
W przypadku kwantowym można zrealizować bramkę Fredkina w oparciu o kwantową kontrolowaną bramkę SWAP. Operacji SWAP odpowiada następująca definicja 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 Postać macierzowa kontrolowanej bramki SWAP

87 Dowolna kontrolowana operacja U
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 iloczyn bitów odpowiadających odpowiednim stanom bazy obliczeniowej

88 Podwójnie kontrolowana unitarna operacja U
Można przestawić dowolną podwójnie kontrolowaną operację U za pomocą tylko bramek jedno-qubitowych oraz bramek CNOT Np. bramka CCNOT przedstawiona może być za pomocą operacji V następującej postaci:

89 Realizacja CCNOT Przykład realizacji CCNOT za pomocą tylko bramki Hadamarda, bramki p/8, bramki fazy S oraz bramki CNOT Bramka Hadamarda H, bramka p/8 T, bramka fazy S oraz bramka CNOT (dodatkowo jeszcze bramka eif) tworzą zbiór uniwersalny – tzn. za ich pomocą można zrealizować dowolną operację wieloqubitową

90 Uniwersalność zbioru bramek
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

91 Realizacja dowolnej kontrolowanej operacja U
Realizacja dowolnej kontrolowanej operacja U za pomocą bramki Hadamarda H, bramki p/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 Etap 2:

92 Pomocnicze konstrukcje
CNOT kontrolowany przez odwrócony qubit Jeden qubit kontroluje dwie bramki negacji

93 Operacje wielo-qubitowe – bramki uniwersalne
Każda wielo-qubitowa unitarna operacja może zostać zrealizowana za pomocą uniwersalnego zbioru kwantowych bramek, np. bramki Hadamarda H, bramki p/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 p/8 T, bramki fazy S oraz bramki CNOT

94 Dowód uniwersalności bramek – pierwsza konstrukcja
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 Konstrukcja macierzy W obu przypadkach, macierz U1 jest macierzą dwupoziomową

95 Dowód uniwersalności bramek – pierwsza konstrukcja
Iloczyn Konstrukcja macierzy Iloczyn

96 Dowód uniwersalności bramek – pierwsza konstrukcja
Z unitarności macierzy wynika unitarność iloczynu Konstrukcja macierzy Widać, że iloczyn

97 Dowód uniwersalności bramek – pierwsza konstrukcja
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. Gdzie macierze Vi są macierzami dwupoziomowymi

98 Dowód uniwersalności bramek – druga konstrukcja
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).

99 Dowód uniwersalności bramek – druga konstrukcja
Idea implementacji macierzy dwupoziomowej U podejście do przedostatniego wyrazu kodu Gray’a 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

100 Dowód uniwersalności bramek – druga konstrukcja - przykład
Przykładowa macierz dwupoziomowa U i określona operacja jedno-qubitowa Macierz działa nietrywialnie na stany:

101 Dowód uniwersalności bramek – druga konstrukcja - przykład
Kolejne wyrazu kodu Gray’a 1 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

102 Dowód uniwersalności bramek – trzecia konstrukcja
Trzecia konstrukcja – uniwersalność skończonego zbioru bramek Za pomocą bramek Hadamarda H, p/8 T można, z dowolnym przybliżeniem, skonstruować dowolną jedno-qubitową bramkę bramka T jest obrotem wokół osi z o kąt p/4 bramka HTH jest obrotem wokół osi x także o kąt p/4 złożenie tych obrotów ma postać: Jest to obrót wokół osi o kąt q

103 Dowód uniwersalności bramek – trzecia konstrukcja
Czyli za pomocą bramki Hadamarda H i p/8 T można zbudować bramkę obrotu wokół osi n o kąt q kąt q jest niewymierną wielokrotnością 2p, co daje możliwość wypełnienia tym kątem przedziału (0, 2p] odpowiednio gęsto, stosując tylko powtórzenie obrotu. określona dokładność przy zmianie l można zapełnić odpowiednio gęsto zbiór (0, 2p]

104 Dowód uniwersalności bramek – trzecia konstrukcja
Dodatkowo można zmienić oś obrotu za pomocą bramek Hadamarda Dowolna unitarna jedno-qubitowa operacja U może być przedstawiona, z dokładnością do fazy, w postaci Co kończy trzecią konstrukcję i cały dowód uniwersalności bramek

105 Układ bramek kwantowych realizujący splątane stany (stany Bella)
Stany Bella – maksymalnie splątane stany rozpięte na bazie obliczeniowej układu dwóch qubitów 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)

106 Układ bramek kwantowych realizujący splątane stany (stany Bella)

107 Układ bramek kwantowych realizujący teleportację kwantowych stanów
pomiar W pierwszym kroku Po zadziałaniu bramki CNOT na qubity A i B stan całego układu ulegnie zmianie

108 Układ bramek kwantowych realizujący teleportację kwantowych stanów
Następnie na qubit A jest poddany działaniu bramki Hadamarda, co zmieni stan układu na: lub inaczej:

109 Układ bramek kwantowych realizujący teleportację kwantowych stanów
Można finalnie zapisać powiązanie między wynikiem pomiaru qubitów A i B a stanem końcowym qubitu 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

110 Równoległość kwantowa
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). Przykład: dwu-qubitowy komputer kwantowy – stan początkowy komputera kwantowego niech będzie postaci Jeśli stan wejściowy postaci wartość funkcji została natychmiastowo obliczona dla dwóch różnych argumentów – natychmiastowa równoległość to Uwaga: dostęp do tych wyników tylko przez pomiar kwantowy!

111 Równoległość kwantowa
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

112 Równoległość kwantowa

113 Równoległość kwantowa
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).

114 Kwantowa transformata Fouriera
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 w N-wymiarowej przestrzeni. Jej działanie na zespolony wektor x0,x1,…,xN-1 można zapisać w postaci, gdzie y0,y1,…,yN-1 jest wyjściowym zespolonym wektorem

115 Kwantowa transformata Fouriera
Kwantowa transformacja Fouriera xy zwykle mnożenie, x i y liczby numerujące n-qubitowy stan Działanie kwantowej transformaty Fouriera na superpozycję stanów bazowych

116 Kwantowa transformata Fouriera
W przypadku gdy jj rozważana suma jest sumą szeregu geometrycznego gdy

117 Kwantowa transformata Fouriera
Można wprowadzić odwrotną transformatę Fouriera:

118 Kwantowa transformata Fouriera
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 Dla bazy obliczeniowej, Działanie kwantowej transformaty Fouriera na stan |j>

119 Kwantowa transformata Fouriera

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

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

122 Układ realizujący kwantową transformatę Fouriera
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ć Można prześledzić działanie powyższego układu na przykładowym stanie

123 Układ realizujący kwantową transformatę Fouriera - działanie

124 Układ realizujący kwantową transformatę Fouriera - działanie
Powtarzając tą procedurę dla kolejnych stanów otrzyma się wyrażenie na stan Po zastosowaniu operacji SWAP uzyska się stan wyjściowy

125 Układ realizujący kwantową transformatę Fouriera - działanie
Stan końcowy całego układu przyjmuje postać Oznaczenie bramkowe operacji kwantowej tranfromaty Fouriera

126 Układ realizujący kwantową transformatę Fouriera - przykład
Kwantowa transfromata Fouriera dla układu 3 qubitów, w postaci bramkowej i macierzowej

127 Kwantowa transformata Fouriera
W ogólnym przypadku całkowita liczba bramek potrzebnych do realizacji układu kwantowej transformaty Fouriera jest rzędu: 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

128 Algorytm Grovera - poszukiwanie igły w stogu siana (finding needle in a haystack)
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)

129 Algorytm Grovera - założenia
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ę : 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

130 Algorytm Grovera - założenia
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: Przykład takiej operacji:

131 Algorytm Grovera 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

132 Algorytm Grovera – działanie
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: Zatem, w przypadku x = a, stan całego układ zostanie pomnożony przez czynnik -1

133 Algorytm Grovera – działanie
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 Czyli, dla ogólnego przypadku można zapisać 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

134 Algorytm Grovera – działanie
Rozważmy dowolny stan układu wejściowego – jako superpozycję wszystkich możliwych stanów wejściowych 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 |f> zmieniając znak wszystkich innych stanów na przeciwny: Algorytm Grovera sprowadza się do wielokrotnego powtarzania operacji WV

135 Algorytm Grovera – działanie
Przykładowo Z postaci |f> wynika, że |a> i |f> są prawie prostopadłe, ponieważ Można zdefiniować stan |a┴> będący znormalizowaną liniową kombinacją stanów |a> i |f>, która jest ortogonalna do stanu |a> i tworzy mały kąt b = p/2 – a ze stanem |f>. Obliczając sinus kąt b mamy: dla dostatecznie dużych N można przyjąć, że

136 Algorytm Grovera – działanie
Można to przedstawić graficznie, odnosząc operacje V i W do odpowiednich obrotów (odbić) względem stanów

137 Algorytm Grovera – działanie
Ponieważ operacja W pozostawia stan |f>, niezmieniony, a dowolny wektor, który jest prostopadły do stanu |f> zmienia na przeciwny, więc operację W można traktować jako odbicie lustrzane względem prostej przechodzącej przez środek i wyznaczonej przez stan |f>. 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 |f>.

138 Algorytm Grovera – działanie
Czyli operacja WV jest rotacją o kąt 2b. Operacja WV obróci dowolny wektor o 2b w kierunku od stanu |a┴> do stanu |f>. Działając WV na stan |f> otrzymamy stan obrócony o 3b od stanu |a┴>, bo początkowo |f> było obrócone o b od stanu |a┴>. Kolejne zastosowanie WV oddala wynikowy stan od |a┴> o kolejne 2b. więc po całkowitej liczbie kroków, która jest najbliższa p/4 2n/2, stan wynikowy będzie prawie równoległy do stanu |a>. Liczbę powtórzeń k można wyznaczyć z warunku, Zatem, w wyniku pomiaru w bazie obliczeniowej końcowego stanu, z prawdopodobieństwem bliskim 1 uzyska się poszukiwany stan |a>

139 Algorytm Shora – łamanie szyfru RSA
Szyfr RSA Co wie BOB? Co wie ALICE? Co jest publicznie znane? Dwie liczby pierwsze: c i d, oraz liczby p i q, takie, że cd = 1 (mod(p-1)(q-1)) N = pq Klucz publiczny: c i N Klucz 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ść b Tylko c (nie jest znane d), oraz tylko N (nie są znane poszczególne mnożniki p i q) Dekodowanie: a = bd (mod N) Komputer kwantowy znajduje okres r, taki że br = 1 (mod N) Klasyczny komputer znajduje d’ takie, że cd‘ = 1 (mod r) a = bd’ (mod N) 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 (z małego twierdzenia Fermata)

140 Algorytm Shora – łamanie szyfru RSA
Przykładowa generacja kluczy w RSA (java) r = new Random(); // p, q p = BigInteger.probablePrime(bitlength, r); q = BigInteger.probablePrime(bitlength, r); // PUBLIC KEY [part 1] modulo N = p*q N = 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) = 1 e = 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); 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);

141 Algorytm Shora – łamanie szyfru RSA
Szyfr RSA można złamać, jeśli posiada się szybką metodę wyszukiwania okresu znanej funkcji okresowej: Więc N ma wspólne dzielnik z i z 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)

142 Łamanie szyfru RSA – algorytm Euklidesa
algorytmem Euklidesa: Aby znaleźć wspólny dzielnik dwóch liczb A i B należy wykonać dzielenie przykład

143 Łamanie szyfru RSA – przykład
1 2 3 4 5 6 8 64 512 4096 32768 262144 1 2 3 4 5 6 7 49 343 2041 16807 117694 13 1 2 3 4 5 6 13 169 2197 28561 371293 29 27

144 Algorytm Shora – łamanie szyfru RSA
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 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.

145 Algorytm Shora – znajdowanie okresu funkcji - realizacja
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 Czyli najpierw wprowadzamy rejestr wejściowy i wyjściowy w superpozycję bramkami Hadamarda, a następnie działamy operacją Uf Jeżeli rozważyć pomiar rejestru wyjściowego to w jego wyniku otrzymamy jakąś wartość f0, można wtedy zapisać stan rejestru wejściwoego

146 Algorytm Shora – znajdowanie okresu funkcji - realizacja
Pomiar  f0 = f(x0) najmniejsza wartość x, dla której najmniejsza liczba całkowita, dla której 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.

147 Algorytm Shora – znajdowanie okresu funkcji - realizacja
Należy następnie zastosować kwantową transformatę Fouriera 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).

148 Algorytm Shora – znajdowanie okresu funkcji - realizacja
Czyli można zapisać prawdopodobieństwo takiego pomiaru finalnie:

149 Algorytm Shora – znajdowanie okresu funkcji - realizacja
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: 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,

150 Algorytm Shora – znajdowanie okresu funkcji - realizacja
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ć Znając y oraz n, otrzymujemy zatem przybliżenie na j/r – czyli informację o szukanym okresie


Pobierz ppt "Wstęp do informatyki kwantowej"

Podobne prezentacje


Reklamy Google