VI Festiwal Nauki i Sztuki na Wydziale Fizyki UAM Informatyka kwantowa Ryszard Tanaś http://zon8.physd.amu.edu.pl/~tanas 16 października 2003
Spis treści 1 Rozwój komputerów 4 1.1 Początki.................. 4 1.2 Obwody scalone miniaturyzacja... 5 1.3 Prawo Moore a............. 5 1.4 Zasada Landauera............ 9 2 Bit 11 2.1 Orzeł czy reszka?............. 11 2.2 Definicja.................. 12 2.3 Entropia Shannona............ 13 2.4 Zapisywanie (kodowanie) informacji.. 14 2.5 Operacje na bitach bramki logiczne. 16
3 Kubit (qubit) 37 3.1 Definicja.................. 37 3.2 Sfera Blocha................ 39 3.3 Reguła Feynmana............. 79 3.4 Kwantowe, czyli nielogiczne bramki logiczne................... 96 3.5 Rejestry kwantowe............ 105 3.6 Stany splątane............... 110 4 Algorytmy kwantowe 120 4.1 Kwantowa faktoryzacja.......... 121 4.2 Komputer kwantowy liczy już do 15!.. 126 5 Kilka uwag na koniec 128
1 Rozwój komputerów 1.1 Początki ENIAC, luty 1946 (Electronic Numerical Integrator and Computer) 17468 lamp elektronowych 5000 dodawań/s 357 mnożeń/s 175 kw energii
1.2 Obwody scalone miniaturyzacja Komputery stają się coraz mniejsze szybsze tańsze
1.3 Prawo Moore a 10 10 Tranzystorów/chip 10 8 10 6 10 4 8080 8008 4004 8086 286 386 486 Itanium 2 Pentium 4 Pentium III Pentium II Pentium 10 2 1970 1980 1990 2000 2010 Lata Rozwój układów scalonych (Intel)
10 3 Rozmiary bramki [nm] 10 2 10 1 1990 1995 2000 2005 2010 2015 2020 Lata Rozmiary elementów obwodu scalonego (SIA Roadmap 2000/2001)
Jak długo prawo Moore a będzie jeszcze obowiązywać?
Jak długo prawo Moore a będzie jeszcze obowiązywać? Obecna technologia to 0.13 µm = 130 nm Przygotowana jest już technologia 90 nm Już obecnie na jedną bramkę logiczną potrzeba mniej niż 1000 elektronów.
Jak długo prawo Moore a będzie jeszcze obowiązywać? Obecna technologia to 0.13 µm = 130 nm Przygotowana jest już technologia 90 nm Już obecnie na jedną bramkę logiczną potrzeba mniej niż 1000 elektronów. Czy istnieją fizyczne granice miniaturyzacji?
Jak długo prawo Moore a będzie jeszcze obowiązywać? Obecna technologia to 0.13 µm = 130 nm Przygotowana jest już technologia 90 nm Już obecnie na jedną bramkę logiczną potrzeba mniej niż 1000 elektronów. Czy istnieją fizyczne granice miniaturyzacji? Przewiduje się, że około roku 2020 technologia zejdzie do rozmiarów, przy których niezbędne jest uwzględnienie praw fizyki obowiązujących w mikroświecie, czyli mechaniki kwantowej.
Earth Simulator marzec 2002, Yokohama 5120 procesorów, 0.15µm 500 MHz NEC 640 węzłów po 8 CPU 40 TFLOPS, tera = 10 12 wysokość szafy 2m miniaturyzacja?
1.4 Zasada Landauera Rolf Landauer (1927-1999) Wymazanie jednego bitu informacji wymaga straty energii (wydzielenia ciepła) o wartości co najmniej kt ln 2 Informacja jest wielkością fizyczną!
2 Bit 2.1 Orzeł czy reszka?
2 Bit 2.1 Orzeł czy reszka?
2 Bit 2.1 Orzeł czy reszka?
2 Bit 2.1 Orzeł czy reszka?
2 Bit 2.1 Orzeł czy reszka?
2 Bit 2.1 Orzeł czy reszka?
2 Bit 2.1 Orzeł czy reszka?
2 Bit 2.1 Orzeł czy reszka?
2 Bit 2.1 Orzeł czy reszka?
2 Bit 2.1 Orzeł czy reszka? Rzut monetą pozwala wybrać losowo jedną z dwóch wykluczających się możliwości:
2 Bit 2.1 Orzeł czy reszka? Rzut monetą pozwala wybrać losowo jedną z dwóch wykluczających się możliwości: orzeł
2 Bit 2.1 Orzeł czy reszka? Rzut monetą pozwala wybrać losowo jedną z dwóch wykluczających się możliwości: orzeł albo reszka.
2 Bit 2.1 Orzeł czy reszka? Rzut monetą pozwala wybrać losowo jedną z dwóch wykluczających się możliwości: orzeł albo reszka. Kiedy poznajemy wynik rzutu monetą uzyskujemy jeden bit informacji.
2.2 Definicja Niech A będzie zdarzeniem losowym, które występuje z prawdopodobieństwem P (A) (w przypadku rzutu monetą P (A) = 1/2). Jeśli dowiadujemy się, że takie zdarzenie nastąpiło, to uzyskujemy bitów informacji. I(A) = log 2 1 P (A) = log 2 1 1 2 = log 2 2 = 1
2.2 Definicja Niech A będzie zdarzeniem losowym, które występuje z prawdopodobieństwem P (A) (w przypadku rzutu monetą P (A) = 1/2). Jeśli dowiadujemy się, że takie zdarzenie nastąpiło, to uzyskujemy bitów informacji. I(A) = log 2 1 P (A) = log 2 1 1 2 = log 2 2 = 1 Jeden bit to ilość informacji jaką uzyskujemy kiedy zachodzi jedna z dwóch alternatywnych, jednakowo prawdopodobnych możliwości.
2.3 Entropia Shannona Claude E. Shannon (1916-2001) Twórca matematycznych podstaw informatyki H = i P (A i ) log 2 1 P (A i ) = i P (A i ) log 2 P (A i ) określa średnią informację (entropię) źródła informacji
2.4 Zapisywanie (kodowanie) informacji
2.4 Zapisywanie (kodowanie) informacji
2.4 Zapisywanie (kodowanie) informacji
2.4 Zapisywanie (kodowanie) informacji
2.4 Zapisywanie (kodowanie) informacji
2.4 Zapisywanie (kodowanie) informacji
2.4 Zapisywanie (kodowanie) informacji
2.4 Zapisywanie (kodowanie) informacji
2.4 Zapisywanie (kodowanie) informacji
2.4 Zapisywanie (kodowanie) informacji
2.4 Zapisywanie (kodowanie) informacji
2.4 Zapisywanie (kodowanie) informacji
2.4 Zapisywanie (kodowanie) informacji
2.4 Zapisywanie (kodowanie) informacji
2.4 Zapisywanie (kodowanie) informacji
2.4 Zapisywanie (kodowanie) informacji
2.4 Zapisywanie (kodowanie) informacji
2.4 Zapisywanie (kodowanie) informacji 0
2.4 Zapisywanie (kodowanie) informacji 0 1
2.4 Zapisywanie (kodowanie) informacji 0 1 1
2.4 Zapisywanie (kodowanie) informacji 0 1 1 0
2.4 Zapisywanie (kodowanie) informacji 0 1 1 0 1
2.4 Zapisywanie (kodowanie) informacji 0 1 1 0 1 1
2.4 Zapisywanie (kodowanie) informacji 0 1 1 0 1 1 0
2.4 Zapisywanie (kodowanie) informacji 0 1 1 0 1 1 0 0
2.4 Zapisywanie (kodowanie) informacji 0 1 1 0 1 1 0 0 0 2 0
2.4 Zapisywanie (kodowanie) informacji 0 1 1 0 1 1 0 0 0 2 1 0 2 0
2.4 Zapisywanie (kodowanie) informacji 0 1 1 0 1 1 0 0 1 2 2 0 2 1 0 2 0
2.4 Zapisywanie (kodowanie) informacji 0 1 1 0 1 1 0 0 1 2 3 1 2 2 0 2 1 0 2 0
2.4 Zapisywanie (kodowanie) informacji 0 1 1 0 1 1 0 0 0 2 4 1 2 3 1 2 2 0 2 1 0 2 0
2.4 Zapisywanie (kodowanie) informacji 0 1 1 0 1 1 0 0 1 2 5 0 2 4 1 2 3 1 2 2 0 2 1 0 2 0
2.4 Zapisywanie (kodowanie) informacji 0 1 1 0 1 1 0 0 1 2 6 1 2 5 0 2 4 1 2 3 1 2 2 0 2 1 0 2 0
2.4 Zapisywanie (kodowanie) informacji 0 1 1 0 1 1 0 0 0 2 7 1 2 6 1 2 5 0 2 4 1 2 3 1 2 2 0 2 1 0 2 0
2.4 Zapisywanie (kodowanie) informacji 0 1 1 0 1 1 0 0 0 2 7 1 2 6 1 2 5 0 2 4 1 2 3 1 2 2 0 2 1 0 2 0 108
2.4 Zapisywanie (kodowanie) informacji 0 1 1 0 1 1 0 0 0 2 7 1 2 6 1 2 5 0 2 4 1 2 3 1 2 2 0 2 1 0 2 0 108 l
2.4 Zapisywanie (kodowanie) informacji 0 1 1 0 1 1 0 0 0 2 7 1 2 6 1 2 5 0 2 4 1 2 3 1 2 2 0 2 1 0 2 0 108 l Układając monety możemy (teoretycznie) zapisać dowolną informację.
Słowo bit zapisane w ten sposób
Słowo bit zapisane w ten sposób
Słowo bit zapisane w ten sposób
Słowo bit zapisane w ten sposób Bardzo kosztowny i bardzo wolny zapis informacji! Jedna litera = 1 bajt = 8 bitów = 8 Pamięć mojego komputera: 256 MB = 256 8 10 6 2 mld
2.5 Operacje na bitach bramki logiczne
2.5 Operacje na bitach bramki logiczne 2.5.1 Bramki jednobitowe??? Bramki jednobitowe są odwracalne
0 NOT 1
1 NOT 0
2.5.2 Bramki dwubitowe???? Nieodwracalne
????? Odwracalne
0 0 AND 0
0 1 AND 0
1 0 AND 0
1 1 AND 1
0 0 OR 0
0 1 OR 1
1 0 OR 1
1 1 OR 1
0 0 XOR 0
0 1 XOR 1
1 0 XOR 1
1 1 XOR 0
0 0 CNOT 0 0 Sterowane zaprzeczenie
0 1 CNOT 0 1
1 0 CNOT 1 1
1 1 CNOT 1 0
3 Kubit (qubit) 3.1 Definicja Klasyczny bit może przyjmować tylko dwie wartości {0, 1} ({orzeł,reszka}, {TAK,NIE}). Układ znajduje się albo w stanie 0 (orzeł,tak) albo w stanie 1 (reszka,nie).
3 Kubit (qubit) 3.1 Definicja Klasyczny bit może przyjmować tylko dwie wartości {0, 1} ({orzeł,reszka}, {TAK,NIE}). Układ znajduje się albo w stanie 0 (orzeł,tak) albo w stanie 1 (reszka,nie). Kwantowym odpowiednikiem klasycznego bitu jest dowolny układ dwustanowy: dwa poziomy atomu, spin połówkowy, foton o dwóch wzajemnie ortogonalnych stanach polaryzacji, itp.
3 Kubit (qubit) 3.1 Definicja Klasyczny bit może przyjmować tylko dwie wartości {0, 1} ({orzeł,reszka}, {TAK,NIE}). Układ znajduje się albo w stanie 0 (orzeł,tak) albo w stanie 1 (reszka,nie). Kwantowym odpowiednikiem klasycznego bitu jest dowolny układ dwustanowy: dwa poziomy atomu, spin połówkowy, foton o dwóch wzajemnie ortogonalnych stanach polaryzacji, itp. Taki układ to qubit (quantum bit); po polsku kubit.
Weźmy układ kwantowy o stanach 0 i 1. Kubit (qubit) to dowolna superpozycja tychże stanów
Weźmy układ kwantowy o stanach 0 i 1. Kubit (qubit) to dowolna superpozycja tychże stanów Ψ = A 0 0 + A 1 1
Weźmy układ kwantowy o stanach 0 i 1. Kubit (qubit) to dowolna superpozycja tychże stanów Ψ = A 0 0 + A 1 1 0 A 0 + 1 A 1 = Ψ
Weźmy układ kwantowy o stanach 0 i 1. Kubit (qubit) to dowolna superpozycja tychże stanów Ψ = A 0 0 + A 1 1 0 A 0 + 1 A 1 = Ψ Ψ Ψ = A 0 2 + A 1 2 = 1
Weźmy układ kwantowy o stanach 0 i 1. Kubit (qubit) to dowolna superpozycja tychże stanów Ψ = A 0 0 + A 1 1 0 A 0 + 1 A 1 = Ψ Ψ Ψ = A 0 2 + A 1 2 = 1 0 0 = 1 1 = 1 0 1 = 1 0 = 0
Weźmy układ kwantowy o stanach 0 i 1. Kubit (qubit) to dowolna superpozycja tychże stanów Ψ = A 0 0 + A 1 1 0 A 0 + 1 A 1 = Ψ Ψ Ψ = A 0 2 + A 1 2 = 1 0 0 = 1 1 = 1 0 1 = 1 0 = 0 Kubit reprezentuje obydwa stany: stan 0 z amplitudą A 0 stan 1 z amplitudą A 1
Weźmy układ kwantowy o stanach 0 i 1. Kubit (qubit) to dowolna superpozycja tychże stanów Ψ = A 0 0 + A 1 1 0 A 0 + 1 A 1 = Ψ Ψ Ψ = A 0 2 + A 1 2 = 1 0 0 = 1 1 = 1 0 1 = 1 0 = 0 Kubit reprezentuje obydwa stany: stan 0 z amplitudą A 0 stan 1 z amplitudą A 1 Pomiar w bazie { 0, 1 } daje: stan 0 z prawdopodobieństwem A 0 2 stan 1 z prawdopodobieństwem A 1 2
3.2 Sfera Blocha Kubitem jest np. spin połówkowy, który w stałym polu magnetycznym może ustawić się zgodnie z kierunkiem pola lub przeciwnie do tego kierunku. Mamy więc dwa stany i, które możemy też nazwać 0 i 1. Ewolucja takiego spinu to ruch jego końca po sferze o jednostkowym promieniu, zwanej sferą Blocha.
3.2 Sfera Blocha Kubitem jest np. spin połówkowy, który w stałym polu magnetycznym może ustawić się zgodnie z kierunkiem pola lub przeciwnie do tego kierunku. Mamy więc dwa stany i, które możemy też nazwać 0 i 1. Ewolucja takiego spinu to ruch jego końca po sferze o jednostkowym promieniu, zwanej sferą Blocha. Ale nie tylko spin połówkowy, ale dowolny kubit może graficznie być reprezentowany jako punkt na takiej sferze. Ewolucja kubitu to ruch punktu po sferze Blocha.
3.2 Sfera Blocha Kubitem jest np. spin połówkowy, który w stałym polu magnetycznym może ustawić się zgodnie z kierunkiem pola lub przeciwnie do tego kierunku. Mamy więc dwa stany i, które możemy też nazwać 0 i 1. Ewolucja takiego spinu to ruch jego końca po sferze o jednostkowym promieniu, zwanej sferą Blocha. Ale nie tylko spin połówkowy, ale dowolny kubit może graficznie być reprezentowany jako punkt na takiej sferze. Ewolucja kubitu to ruch punktu po sferze Blocha. A wygląda to tak...
0 z x y
z x y 1
z x y Ψ = 1 2 ( 0 + 1 )
Ψ = 1 2 ( 0 1 ) z x y
z x y Ψ = 1 2 ( 0 + i 1 )
Ψ = 1 2 ( 0 i 1 ) z x y
Ψ = cos θ 2 0 + eiϕ sin θ 2 1 z x y
z x y Ψ = sin θ 2 0 eiϕ cos θ 2 1
Przyjęliśmy tutaj następującą konwencję dotyczącą kolorowania kubitów:
Przyjęliśmy tutaj następującą konwencję dotyczącą kolorowania kubitów: Każdy kubit (punkt na sferze) ma własny kolor
Przyjęliśmy tutaj następującą konwencję dotyczącą kolorowania kubitów: Każdy kubit (punkt na sferze) ma własny kolor Dwa ortogonalne kubity (punkty na antypodach) mają kolory dopełniające (ich zmieszanie daje kolor biały lub odcień szarości)
Kubit jest kwantową monetą, której stan ewoluując w czasie reprezentuje jednocześnie orła i reszkę, 0 i 1.
Kubit jest kwantową monetą, której stan ewoluując w czasie reprezentuje jednocześnie orła i reszkę, 0 i 1. Podobnie jak koziołkująca w powietrzu moneta, dopóki nie spadnie na ziemię, reprezentuje zarówno orła jak i reszkę.
Kubit jest kwantową monetą, której stan ewoluując w czasie reprezentuje jednocześnie orła i reszkę, 0 i 1. Podobnie jak koziołkująca w powietrzu moneta, dopóki nie spadnie na ziemię, reprezentuje zarówno orła jak i reszkę. Dopiero pomiar w określonej bazie zmusza ją do wyboru jednej z dwóch możliwości.
Kubit jest kwantową monetą, której stan ewoluując w czasie reprezentuje jednocześnie orła i reszkę, 0 i 1. Podobnie jak koziołkująca w powietrzu moneta, dopóki nie spadnie na ziemię, reprezentuje zarówno orła jak i reszkę. Dopiero pomiar w określonej bazie zmusza ją do wyboru jednej z dwóch możliwości. Wybór bazy określa jaki stan będziemy mierzyli, ale w każdej bazie mamy tylko dwie alternatywne możliwości.
Kubit jest kwantową monetą, której stan ewoluując w czasie reprezentuje jednocześnie orła i reszkę, 0 i 1. Podobnie jak koziołkująca w powietrzu moneta, dopóki nie spadnie na ziemię, reprezentuje zarówno orła jak i reszkę. Dopiero pomiar w określonej bazie zmusza ją do wyboru jednej z dwóch możliwości. Wybór bazy określa jaki stan będziemy mierzyli, ale w każdej bazie mamy tylko dwie alternatywne możliwości. Kwantowe monety różnią się jednak od monet klasycznych!
1 50 % 0 0 50 % 1 Płytka światłodzieląca
1 50 % 0 0 50 % 1 Foton padający drogą 0...
1 50 % 0 0 50 % 1 z prawdopodobieństwem 50% zostanie zarejestrowany przez detektor 0...
1 50 % 0 0 50 % 1 lub przez detektor 1
1 50 % 0 0 50 % 1 Podobnie z fotonem padającym drogą 1
1 50 % 0 0 50 % 1
1 50 % 0 0 50 % 1 Wyniki są losowe, jak w przypadku rzutu monetą.
0 1 0 1 Interferometr Macha-Zehndera
0 1 0 1 Policzmy klasycznie prawdopodobieństwo zarejestrowania fotonu przez detektor 0 Foton padający drogą 0
0 1 0 1... przechodzi przez płytkę z prawdopodobieństwem 1 2
0 1 0 1... przechodzi przez drugą płytkę i dociera do detektora z prawdopodobieństwem 1 2 1 2 +
0 1 0 1 Ale jest też druga droga. Foton odbija się od pierwszej płytki... 1 2 1 2 + 1 2
0 1 0 1... i od drugiej płytki. Całkowite prawdopodobieństwo wynosi więc: 1 2 1 2 + 1 2 1 2 = 1 2
0 1 0 1 Podobnie dla detektora 1, mamy:
0 1 0 1 1 2
0 1 0 1 1 2 1 2 +
0 1 0 1 1 2 1 2 + 1 2
0 1 0 1 1 2 1 2 + 1 2 1 2 = 1 2 Wynik jest losowy, jak w przypadku rzutu monetą.
0 1 0 1 A w rzeczywistości, czyli kwantowo, może być tak:...
0 1 0 1 foton padający drogą 0 trafia z prawdopodobieństwem 100% do detektora 1...
0 1 0 1... a foton padający drogą 1...
0 1 0 1... trafia na pewno do detektora 0 Wynik jest drastycznie różny od klasycznego!
Co się dzieje? Złożenie dwóch płytek światłodzielących, z których każda daje wynik losowy (jak rzut monetą) dało w rezultacie wynik absolutnie pewny!
Co się dzieje? Złożenie dwóch płytek światłodzielących, z których każda daje wynik losowy (jak rzut monetą) dało w rezultacie wynik absolutnie pewny! Foton jest kubitem, a płytka światłodzieląca jest bramką kwantową!
Co się dzieje? Złożenie dwóch płytek światłodzielących, z których każda daje wynik losowy (jak rzut monetą) dało w rezultacie wynik absolutnie pewny! Foton jest kubitem, a płytka światłodzieląca jest bramką kwantową! Kwantowe monety różnią się od klasycznych!
Co się dzieje? Złożenie dwóch płytek światłodzielących, z których każda daje wynik losowy (jak rzut monetą) dało w rezultacie wynik absolutnie pewny! Foton jest kubitem, a płytka światłodzieląca jest bramką kwantową! Kwantowe monety różnią się od klasycznych! Jak więc działa płytka światłodzieląca?
0 1
i 2 ( 0 i 1 ) 0 1
i 2 ( 0 i 1 ) 0 1 2 ( 0 + i 1 ) 1 Płytka tworzy superpozycje stanów!
3.3 Reguła Feynmana W mechanice kwantowej dodają się amplitudy a nie prawdopodobieństwa. Richard P. Feynman (1918-1988) Tam na dole jest jeszcze dużo miejsca! W 1982 r. Feynman pokazał, że nie da się symulować efektywnie procesów kwantowych na komputerach klasycznych.
0 1 0 1 Foton padający drogą 0 jest kubitem w stanie 0 Dodajemy amplitudy!
0 1 0 1 Przejście przez pierwszą płytkę: 1 2
0 1 0 1 Zmiana fazy: e iθ 2
0 1 0 1 Przejście przez drugą płytkę: e iθ 2 1 2
0 1 0 1 Dodajemy druga drogę. Odbicie na pierwszej płytce: 1 2 eiθ 2 + i 2
0 1 0 1 I znowu odbicie: 1 2 eiθ 2 + i i 2 2 = 1 2 (eiθ 1)
Amplituda stanu 0 w detektorze 0 jest równa A 0 = 1 2 (eiθ 1)
Amplituda stanu 0 w detektorze 0 jest równa A 0 = 1 2 (eiθ 1) Prawdopodobieństwo zarejestrowania w detektorze 0 fotonu, który wpadł drogą 0 do interferometru wynosi więc: P 0 = 1 2 2 (eiθ 1) = 1 (1 cos θ) 2
Amplituda stanu 0 w detektorze 0 jest równa A 0 = 1 2 (eiθ 1) Prawdopodobieństwo zarejestrowania w detektorze 0 fotonu, który wpadł drogą 0 do interferometru wynosi więc: P 0 = 1 2 2 (eiθ 1) = 1 (1 cos θ) 2 Dla θ = 0 prawdopodobieństwo to jest równe zero.
Amplituda stanu 0 w detektorze 0 jest równa A 0 = 1 2 (eiθ 1) Prawdopodobieństwo zarejestrowania w detektorze 0 fotonu, który wpadł drogą 0 do interferometru wynosi więc: P 0 = 1 2 2 (eiθ 1) = 1 (1 cos θ) 2 Dla θ = 0 prawdopodobieństwo to jest równe zero. Foton nigdy nie trafi do detektora 0!
Amplituda stanu 0 w detektorze 0 jest równa A 0 = 1 2 (eiθ 1) Prawdopodobieństwo zarejestrowania w detektorze 0 fotonu, który wpadł drogą 0 do interferometru wynosi więc: P 0 = 1 2 2 (eiθ 1) = 1 (1 cos θ) 2 Dla θ = 0 prawdopodobieństwo to jest równe zero. Foton nigdy nie trafi do detektora 0! Zmieniając fazę θ możemy dowolnie zmieniać prawdopodobieństwo.
0 1 0 1 Teraz detektor 1. Znowu, foton padający drogą 0
0 1 0 1 Przejście przez pierwszą płytkę: 1 2
0 1 0 1 Zmiana fazy: e iθ 2
0 1 0 1 Odbicie: e iθ 2 i 2
0 1 0 1 I druga droga. Odbicie: e iθ 2 i 2 + i 2
0 1 0 Przejście: e iθ 2 1 i 2 + i 2 1 2 = i 2 (eiθ + 1)
Amplituda stanu 0 w detektorze 1 jest równa A 1 = i 2 (eiθ + 1)
Amplituda stanu 0 w detektorze 1 jest równa A 1 = i 2 (eiθ + 1) Prawdopodobieństwo zarejestrowania w detektorze 1 fotonu, który wpadł drogą 0 do interferometru wynosi więc: P 1 = i 2 2 (eiθ + 1) = 1 (1 + cos θ) 2
Amplituda stanu 0 w detektorze 1 jest równa A 1 = i 2 (eiθ + 1) Prawdopodobieństwo zarejestrowania w detektorze 1 fotonu, który wpadł drogą 0 do interferometru wynosi więc: P 1 = i 2 2 (eiθ + 1) = 1 (1 + cos θ) 2 Dla θ = 0 prawdopodobieństwo to jest równe jeden. Foton zawsze trafi do detektora 1!
Amplituda stanu 0 w detektorze 1 jest równa A 1 = i 2 (eiθ + 1) Prawdopodobieństwo zarejestrowania w detektorze 1 fotonu, który wpadł drogą 0 do interferometru wynosi więc: P 1 = i 2 2 (eiθ + 1) = 1 (1 + cos θ) 2 Dla θ = 0 prawdopodobieństwo to jest równe jeden. Foton zawsze trafi do detektora 1! Interferometr Macha-Zehndera dziala jak bramka logiczna NOT.
Skoro cały interferometr to bramka logiczna NOT, to jedna płytka światłodzieląca to NOT! NOT NOT = NOT NOT NOT
Interferencja kwantowa pozwala uzyskać operacje logiczne niedostępne w informatyce klasycznej
Interferencja kwantowa pozwala uzyskać operacje logiczne niedostępne w informatyce klasycznej Czy takie nielogiczne bramki logiczne mogą się do czegoś przydać?
Interferencja kwantowa pozwala uzyskać operacje logiczne niedostępne w informatyce klasycznej Czy takie nielogiczne bramki logiczne mogą się do czegoś przydać? Okazuje się, że tak!
3.4 Kwantowe, czyli nielogiczne bramki logiczne 0 NOT 1
1 NOT 0
a 0 + b 1 NOT a 1 + b 0
a 0 + b 1 θ a 0 + be iθ 1 Bramka fazowa
0 H 1 2 ( 0 + 1 ) Bramka Hadamarda
1 H 1 2 ( 0 1 )
0 NOT 1+i 2 0 + 1 i 2 1
1 NOT 1 i 2 0 + 1+i 2 1
Ψ U Ψ Ogólnie
3.5 Rejestry kwantowe Rzucając dwie monety możemy uzyskać cztery różne rezultaty:
3.5 Rejestry kwantowe Rzucając dwie monety możemy uzyskać cztery różne rezultaty:
3.5 Rejestry kwantowe Rzucając dwie monety możemy uzyskać cztery różne rezultaty:
3.5 Rejestry kwantowe Rzucając dwie monety możemy uzyskać cztery różne rezultaty:
3.5 Rejestry kwantowe Rzucając dwie monety możemy uzyskać cztery różne rezultaty:
Co możemy zapisać: 00 = 0 01 = 1 10 = 2 11 = 3
Co możemy zapisać: 00 = 0 01 = 1 10 = 2 11 = 3 Dla kubitów wygląda to tak: 00 = 0 01 = 1 10 = 2 11 = 3
Ale kubity mogą być w stanie superpozycji, i nasz dwukubitowy rejestr może wyglądać tak
Ale kubity mogą być w stanie superpozycji, i nasz dwukubitowy rejestr może wyglądać tak albo tak
Ale kubity mogą być w stanie superpozycji, i nasz dwukubitowy rejestr może wyglądać tak albo tak albo tak
W pierwszym przypadku mamy stan kwantowy Ψ = 1 2 ( 0 + 1 ) 1 2 ( 0 + 1 )
W pierwszym przypadku mamy stan kwantowy Ψ = 1 2 ( 0 + 1 ) 1 2 ( 0 + 1 ) = 1 2 ( 00 + 01 + 10 + 11 )
W pierwszym przypadku mamy stan kwantowy Ψ = 1 2 ( 0 + 1 ) 1 2 ( 0 + 1 ) = 1 2 ( 00 + 01 + 10 + 11 ) = 1 ( 0 + 1 + 2 + 3 ) 2
W pierwszym przypadku mamy stan kwantowy Ψ = 1 2 ( 0 + 1 ) 1 2 ( 0 + 1 ) = 1 2 ( 00 + 01 + 10 + 11 ) = 1 ( 0 + 1 + 2 + 3 ) 2 Mamy zatem dwukubitowy rejestr, który przechowuje z jednakowymi amplitudami jednocześnie cztery liczby, {0, 1, 2, 3}.
Klasycznie na przechowanie czterech liczb potrzebujemy czterech rejestrów dwubitowych każda liczba w innym rejestrze.
Klasycznie na przechowanie czterech liczb potrzebujemy czterech rejestrów dwubitowych każda liczba w innym rejestrze. Gdybyśmy dysponowali rejestrem kwantowym złożonym z N kubitów, to moglibyśmy przechować w takim rejestrze 2 N liczb!
Klasycznie na przechowanie czterech liczb potrzebujemy czterech rejestrów dwubitowych każda liczba w innym rejestrze. Gdybyśmy dysponowali rejestrem kwantowym złożonym z N kubitów, to moglibyśmy przechować w takim rejestrze 2 N liczb! Przy N = 300 liczba ta przekraczałaby liczbę atomów we wszechświecie!
Klasycznie na przechowanie czterech liczb potrzebujemy czterech rejestrów dwubitowych każda liczba w innym rejestrze. Gdybyśmy dysponowali rejestrem kwantowym złożonym z N kubitów, to moglibyśmy przechować w takim rejestrze 2 N liczb! Przy N = 300 liczba ta przekraczałaby liczbę atomów we wszechświecie! Komputer kwantowy wykonuje operacje na całym rejestrze, czyli na wszyskich 2 N liczbach jednocześnie. Nazywa się to kwantowym parallelizmem.
Klasycznie na przechowanie czterech liczb potrzebujemy czterech rejestrów dwubitowych każda liczba w innym rejestrze. Gdybyśmy dysponowali rejestrem kwantowym złożonym z N kubitów, to moglibyśmy przechować w takim rejestrze 2 N liczb! Przy N = 300 liczba ta przekraczałaby liczbę atomów we wszechświecie! Komputer kwantowy wykonuje operacje na całym rejestrze, czyli na wszyskich 2 N liczbach jednocześnie. Nazywa się to kwantowym parallelizmem. Kwantowe monety różnią się od klasycznych!
3.6 Stany splątane Przypuśćmy, że udało nam się przygotować rejestr dwukubitowy w stanie Ψ = 1 2 ( 01 10 )
3.6 Stany splątane Przypuśćmy, że udało nam się przygotować rejestr dwukubitowy w stanie Ψ = 1 2 ( 01 10 ) Taki stan nie daje się zapisać w postaci iloczynu dwóch kubitów!
3.6 Stany splątane Przypuśćmy, że udało nam się przygotować rejestr dwukubitowy w stanie Ψ = 1 2 ( 01 10 ) Taki stan nie daje się zapisać w postaci iloczynu dwóch kubitów! Kubity tworzące taki rejestr nie mają indywidualnych kolorów są białe w naszej konwencji (kolor biały można otrzymać na wiele sposobów mieszając ze sobą kolory dopełniające).
Wyobraźmy sobie, że mamy dwie kwantowe monety w stanie splątanym.
Wyobraźmy sobie, że mamy dwie kwantowe monety w stanie splątanym. Jedną ma Ala a drugą Bolek.
Wyobraźmy sobie, że mamy dwie kwantowe monety w stanie splątanym. Jedną ma Ala a drugą Bolek. Ala rzuca monetę i wypadł jej orzeł.
Wyobraźmy sobie, że mamy dwie kwantowe monety w stanie splątanym. Jedną ma Ala a drugą Bolek. Ala rzuca monetę i wypadł jej orzeł.
Wyobraźmy sobie, że mamy dwie kwantowe monety w stanie splątanym. Jedną ma Ala a drugą Bolek. Ala rzuca monetę i wypadł jej orzeł. Wtedy Bolek rzucając swoją monetę musi uzyskać reszkę, jakkolwiek daleko nie byłby oddalony od Ali.
I na odwrót:
I na odwrót:
I na odwrót:
I na odwrót: Mechanika kwantowa jest nielokalna!
I na odwrót: Mechanika kwantowa jest nielokalna! Kwantowe monety naprawdę różnią się od klasycznych!
I na odwrót: Mechanika kwantowa jest nielokalna! Kwantowe monety naprawdę różnią się od klasycznych! Jak uzyskać stan splątany?
0 0 CNOT 0 0 Sterowane zaprzeczenie
0 1 CNOT 0 1
1 0 CNOT 1 1
1 1 CNOT 1 0
1 2 ( 0 1 ) 1 CNOT??
1 2 ( 0 1 ) 1 CNOT } Ψ
Otrzymujemy taki właśnie stan splątany Ψ = 1 2 ( 01 10 )
Otrzymujemy taki właśnie stan splątany Ψ = 1 2 ( 01 10 ) Po co nam stany splątane?
Otrzymujemy taki właśnie stan splątany Ψ = 1 2 ( 01 10 ) Po co nam stany splątane? Stany splątane pozwalają np. na kwantową teleportację czy gęste kodowanie.
Otrzymujemy taki właśnie stan splątany Ψ = 1 2 ( 01 10 ) Po co nam stany splątane? Stany splątane pozwalają np. na kwantową teleportację czy gęste kodowanie. Potrafimy już wytwarzać stany splątane!
4 Algorytmy kwantowe Co potrafi komputer kwantowy?
4 Algorytmy kwantowe Co potrafi komputer kwantowy? Komputer kwantowy potrafi np.
4 Algorytmy kwantowe Co potrafi komputer kwantowy? Komputer kwantowy potrafi np. szybko faktoryzować liczby algorytm Shora,
4 Algorytmy kwantowe Co potrafi komputer kwantowy? Komputer kwantowy potrafi np. szybko faktoryzować liczby algorytm Shora, czy też przeszukiwać bazę danych algorytm Grovera.
4.1 Kwantowa faktoryzacja Peter Shor Twórca kwantowego algorytmu faktoryzacji liczb.
Systemy kryptograficzne (RSA) z kluczem publicznym wykorzystują fakt, że rozkład dużej liczby na czynniki jest trudny (czasochłonny)
Systemy kryptograficzne (RSA) z kluczem publicznym wykorzystują fakt, że rozkład dużej liczby na czynniki jest trudny (czasochłonny) Najszybszy obecnie algorytm wymaga czasu exp[( 64 9 )1/3 (ln ln N) 2/3 ] faktoryzacja liczby 400 cyfrowej wymagałaby 10 10 lat
Systemy kryptograficzne (RSA) z kluczem publicznym wykorzystują fakt, że rozkład dużej liczby na czynniki jest trudny (czasochłonny) Najszybszy obecnie algorytm wymaga czasu exp[( 64 9 )1/3 (ln ln N) 2/3 ] faktoryzacja liczby 400 cyfrowej wymagałaby 10 10 lat W 1994 r. RSA 129 został złamany na 1600 stacjach roboczych w ciągu 8 miesięcy
Systemy kryptograficzne (RSA) z kluczem publicznym wykorzystują fakt, że rozkład dużej liczby na czynniki jest trudny (czasochłonny) Najszybszy obecnie algorytm wymaga czasu exp[( 64 9 )1/3 (ln ln N) 2/3 ] faktoryzacja liczby 400 cyfrowej wymagałaby 10 10 lat W 1994 r. RSA 129 został złamany na 1600 stacjach roboczych w ciągu 8 miesięcy Algorytm kwantowy Petera Shora wymaga czasu (ln N) 2+ɛ komputer kwantowy, który faktoryzowałby liczbę 130 cyfrową w ciągu miesiąca, sfaktoryzowałby liczbę 400 cyfrową w czasie krótszym niż 3 lata
Chcemy sfaktoryzować liczbę N, N = 15. Wybieramy liczbę losową 1 < X < N 1 względnie pierwszą z N, tzn. taką, że NW D(N, X) = 1, powiedzmy X = 2.
Chcemy sfaktoryzować liczbę N, N = 15. Wybieramy liczbę losową 1 < X < N 1 względnie pierwszą z N, tzn. taką, że NW D(N, X) = 1, powiedzmy X = 2. Przygotowujemy rejestr kwantowy w stanie superpozycji wszystkich liczb od 0 do 15 A = 1 ( 0 + 1 + 2 + + 13 + 14 + 15 ) 4
Chcemy sfaktoryzować liczbę N, N = 15. Wybieramy liczbę losową 1 < X < N 1 względnie pierwszą z N, tzn. taką, że NW D(N, X) = 1, powiedzmy X = 2. Przygotowujemy rejestr kwantowy w stanie superpozycji wszystkich liczb od 0 do 15 A = 1 ( 0 + 1 + 2 + + 13 + 14 + 15 ) 4 Co zapisujemy dla skrótu tak: A 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
Wykonujemy operację X A mod N, wykorzystując kwantowy parallelizm i wyniki umieszczamy w rejestrze B.
Wykonujemy operację X A mod N, wykorzystując kwantowy parallelizm i wyniki umieszczamy w rejestrze B. Komputer kwantowy wykonuje taką operację w jednym kroku!
Wykonujemy operację X A mod N, wykorzystując kwantowy parallelizm i wyniki umieszczamy w rejestrze B. Komputer kwantowy wykonuje taką operację w jednym kroku! A 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
Wykonujemy operację X A mod N, wykorzystując kwantowy parallelizm i wyniki umieszczamy w rejestrze B. Komputer kwantowy wykonuje taką operację w jednym kroku! A 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 B 1 2 4 8 1 2 4 8 1 2 4 8 1 2 4 8
Wykonujemy operację X A mod N, wykorzystując kwantowy parallelizm i wyniki umieszczamy w rejestrze B. Komputer kwantowy wykonuje taką operację w jednym kroku! A 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 B 1 2 4 8 1 2 4 8 1 2 4 8 1 2 4 8 Zauważamy, że wyniki w rejestrze B są okresowe z okresem r = 4
Wykonujemy operację X A mod N, wykorzystując kwantowy parallelizm i wyniki umieszczamy w rejestrze B. Komputer kwantowy wykonuje taką operację w jednym kroku! A 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 B 1 2 4 8 1 2 4 8 1 2 4 8 1 2 4 8 Zauważamy, że wyniki w rejestrze B są okresowe z okresem r = 4 B
Wykonujemy operację X A mod N, wykorzystując kwantowy parallelizm i wyniki umieszczamy w rejestrze B. Komputer kwantowy wykonuje taką operację w jednym kroku! A 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 B 1 2 4 8 1 2 4 8 1 2 4 8 1 2 4 8 Zauważamy, że wyniki w rejestrze B są okresowe z okresem r = 4 B 1 2 4 8
Wykonujemy operację X A mod N, wykorzystując kwantowy parallelizm i wyniki umieszczamy w rejestrze B. Komputer kwantowy wykonuje taką operację w jednym kroku! A 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 B 1 2 4 8 1 2 4 8 1 2 4 8 1 2 4 8 Zauważamy, że wyniki w rejestrze B są okresowe z okresem r = 4 B 1 2 4 8 1 2 4 8
Wykonujemy operację X A mod N, wykorzystując kwantowy parallelizm i wyniki umieszczamy w rejestrze B. Komputer kwantowy wykonuje taką operację w jednym kroku! A 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 B 1 2 4 8 1 2 4 8 1 2 4 8 1 2 4 8 Zauważamy, że wyniki w rejestrze B są okresowe z okresem r = 4 B 1 2 4 8 1 2 4 8 1 2 4 8
Wykonujemy operację X A mod N, wykorzystując kwantowy parallelizm i wyniki umieszczamy w rejestrze B. Komputer kwantowy wykonuje taką operację w jednym kroku! A 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 B 1 2 4 8 1 2 4 8 1 2 4 8 1 2 4 8 Zauważamy, że wyniki w rejestrze B są okresowe z okresem r = 4 B 1 2 4 8 1 2 4 8 1 2 4 8 1 2 4 8 Komputer kwantowy potrafi szybko znajdować okres funkcji!
Jeśli r jest nieparzyste, to wybieramy inne X i zaczynamy procedurę od nowa.
Jeśli r jest nieparzyste, to wybieramy inne X i zaczynamy procedurę od nowa. Jeśli r jest parzyste, obliczamy P = X r/2 1 lub P = X r/2 + 1 i sprawdzamy czy P jest dzielnikiem N. W naszym przykładzie r = 4 i P = 2 4/2 1 = 3 lub P = 2 4/2 + 1 = 5.
Jeśli r jest nieparzyste, to wybieramy inne X i zaczynamy procedurę od nowa. Jeśli r jest parzyste, obliczamy P = X r/2 1 lub P = X r/2 + 1 i sprawdzamy czy P jest dzielnikiem N. W naszym przykładzie r = 4 i P = 2 4/2 1 = 3 lub P = 2 4/2 + 1 = 5. Hurra!!! 15/3 = 5 15/5 = 3
Jeśli r jest nieparzyste, to wybieramy inne X i zaczynamy procedurę od nowa. Jeśli r jest parzyste, obliczamy P = X r/2 1 lub P = X r/2 + 1 i sprawdzamy czy P jest dzielnikiem N. W naszym przykładzie r = 4 i P = 2 4/2 1 = 3 lub P = 2 4/2 + 1 = 5. Hurra!!! 15/3 = 5 15/5 = 3 Ten wynik udało się już uzyskać eksperymentalnie!
4.2 Komputer kwantowy liczy już do 15! Wiedza i Życie, maj 2002
Isaac L. Chuang i jego procesor kwantowy
5 Kilka uwag na koniec Kubit to nowa jednostka informacji informacji kwantowej
5 Kilka uwag na koniec Kubit to nowa jednostka informacji informacji kwantowej Informatyka kwantowa zajmuje się metodami przetwarzania informacji kwantowej
5 Kilka uwag na koniec Kubit to nowa jednostka informacji informacji kwantowej Informatyka kwantowa zajmuje się metodami przetwarzania informacji kwantowej Superpozycja i splątanie kubitów to podwaliny informatyki kwantowej
5 Kilka uwag na koniec Kubit to nowa jednostka informacji informacji kwantowej Informatyka kwantowa zajmuje się metodami przetwarzania informacji kwantowej Superpozycja i splątanie kubitów to podwaliny informatyki kwantowej Kwantowe monety różnią się od klasycznych!
Za lat 20 wielu z Was z pewnością będzie specjalistami w dziedzinie informatyki kwantowej Powodzenia! http://zon8.physd.amu.edu.pl/~tanas