Wstęp do informatyki kwantowej

Slides:



Advertisements
Podobne prezentacje
Przykład liczbowy Rozpatrzmy dwuwymiarową zmienną losową (X,Y), gdzie X jest liczbą osób w rodzinie, a Y liczbą izb w mieszkaniu. Niech f.r.p. tej zmiennej.
Advertisements

Modelowanie i symulacja
Reinhard Kulessa1 Wykład Środek masy Zderzenia w układzie środka masy Sprężyste zderzenie centralne cząstek poruszających się c.d.
Metody badania stabilności Lapunowa
Metody numeryczne część 1. Rozwiązywanie układów równań liniowych.
Obserwowalność System ciągły System dyskretny
DYSKRETYZACJA SYGNAŁU
mgr inż. Ryszard Chybicki Zespół Szkół Ponadgimnazjalnych
Rachunek prawdopodobieństwa 2
Metody rozwiązywania układów równań liniowych
WYKŁAD 6 ATOM WODORU W MECHANICE KWANTOWEJ (równanie Schrődingera dla atomu wodoru, separacja zmiennych, stan podstawowy 1s, stany wzbudzone 2s i 2p,
Na ostatnim wykładzie Działanie procesora, dokonującego operacji na kubitach reprezentują operatory unitarne, opisujące ewolucję czasową układu w okresie.
Liczby pierwsze.
Domy Na Wodzie - metoda na wlasne M
Badania operacyjne. Wykład 2
Wykład no 11.
Czyli czym się różni bit od qubitu
Macierze Maria Guzik.
ATOM WODORU, JONY WODOROPODOBNE; PEŁNY OPIS
Wykład XII fizyka współczesna
Wykład III Fale materii Zasada nieoznaczoności Heisenberga
Wzory ułatwiające obliczenia
Zapis informacji Dr Anna Kwiatkowska.
Metody numeryczne Wykład no 2.
Matematyka.
Ogólnopolski Konkurs Wiedzy Biblijnej Analiza wyników IV i V edycji Michał M. Stępień
Podstawy układów logicznych
Wyrażenia algebraiczne
Metody Lapunowa badania stabilności
Rozkłady wywodzące się z rozkładu normalnego standardowego
Podstawy analizy matematycznej II
Obserwatory zredukowane
Podstawy automatyki 2012/2013Transmitancja widmowa i charakterystyki częstotliwościowe Mieczysław Brdyś, prof. dr hab. inż.; Kazimierz Duzinkiewicz, dr.
A. Sumionka. Starodawna gra marynarska; Gra dwu i wieloosobowa; Gracze wykonują ruchy naprzemian; Złożona ze stosów, w których znajduje się pewna ilość
II. Matematyczne podstawy MK
Elementy Rachunku Prawdopodobieństwa i Statystyki
Miary efektywności/miary dobroci/kryteria jakości działania SSN
II. Matematyczne podstawy MK
1. Pomyśl sobie liczbę dwucyfrową (Na przykład: 62)
Analiza matury 2013 Opracowała Bernardeta Wójtowicz.
Obserwowalność i odtwarzalność
Sterowalność - osiągalność
Sterowanie – metody alokacji biegunów II
Algebra Przestrzenie liniowe.
Stało- i zmiennopozycyjna reprezentacja liczb binarnych
Matematyka i system dwójkowy
EcoCondens Kompakt BBK 7-22 E.
EcoCondens BBS 2,9-28 E.
Rachunek różniczkowy funkcji jednej i wielu zmiennych
II Zadanie programowania liniowego PL
WYNIKI EGZAMINU MATURALNEGO W ZESPOLE SZKÓŁ TECHNICZNYCH
Testogranie TESTOGRANIE Bogdana Berezy.
Jak Jaś parował skarpetki Andrzej Majkowski 1 informatyka +
Grafika i komunikacja człowieka z komputerem
Systemy dynamiczne 2014/2015Obserwowalno ść i odtwarzalno ść  Kazimierz Duzinkiewicz, dr hab. in ż. Katedra In ż ynierii Systemów Sterowania 1 Obserwowalność.
Grafika i komunikacja człowieka z komputerem
Elementy geometryczne i relacje
Strategia pomiaru.
Zagadnienie własne Macierz wektorów własnych V=(v1,v2,...,vn) przekształca zatem macierz A do postaci diagonalnej: W większości zastosowań w chemii i fizyce.
Metody rozwiązywania układów równań liniowych
Warstwowe sieci jednokierunkowe – perceptrony wielowarstwowe
Dynamika punktu materialnego Dotychczas ruch był opisywany za pomocą wektorów r, v, oraz a - rozważania geometryczne. Uwzględnienie przyczyn ruchu - dynamika.
Wykład Rozwinięcie potencjału znanego rozkładu ładunków na szereg momentów multipolowych w układzie sferycznym Rozwinięcia tego można dokonać stosując.
Dynamika ruchu obrotowego
Niech f(x,y,z) będzie ciągłą, różniczkowalną funkcją współrzędnych. Wektor zdefiniowany jako nazywamy gradientem funkcji f. Wektor charakteryzuje zmienność.
Elementy cyfrowe i układy logiczne
3. Siła i ruch 3.1. Pierwsza zasada dynamiki Newtona
Wstęp do Informatyki - Wykład 6
Podstawy teorii spinu ½
II. Matematyczne podstawy MK
Zapis prezentacji:

Wstęp do informatyki kwantowej 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: 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

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

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

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)

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):

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

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)

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

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

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ść

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).

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).

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.

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:

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)

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

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 )

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.

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).

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

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

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:

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.

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).

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).

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).

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)

Twierdzenie No-cloning 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.

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.

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

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.

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

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.

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.

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>.

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).

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,

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,

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.

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

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ć:

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

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

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

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

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

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

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

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

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

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.

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

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

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

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

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

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)

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)

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

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ż

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

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:

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

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

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

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

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 0 0 0 1 0 1 0 1 1 1 1 0 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ć:

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

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

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

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

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

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

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.

Metoda budowy macierzy wielo-qubitowych

Reprezentacja bramki CNOT

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

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

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)

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

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

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)

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)

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

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

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

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:

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ą

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

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:

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

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

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ą

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

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

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

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).

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

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:

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

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

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]

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

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)

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

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

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:

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

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!

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

Równoległość kwantowa

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).

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

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

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

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

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>

Kwantowa transformata Fouriera

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

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

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

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

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

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

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

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

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)

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

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:

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

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

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

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

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

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

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>.

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>

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)

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);

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)

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

Ł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 4826809 29 27

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 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.

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

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.

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).

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

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,

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