(Napisałem wprowadzenie do obliczeń kwantowych, które można znaleźć tutaj. Jeśli jesteś zupełnie nowy w tej dziedzinie, będzie to lepsze miejsce do rozpoczęcia.)
Jeśli chcesz się zająć obliczeniami kwantowymi, nie ma sposobu, aby to obejść: będziesz musiał opanować mętne pojęcie bramy kwantowej. Jak wszystko w informatyce kwantowej, nie wspominając o mechanice kwantowej, bramy kwantowe są owiane nieznaną mgłą żargonu i matematyki macierzowej, która odzwierciedla tajemnicę kwantów. Moim celem w tym wpisie jest obranie kilku warstw tej tajemnicy. Ale oszczędzę wam napięcia: nikt nie jest w stanie pozbyć się jej całkowicie. Przynajmniej nie w 2018 roku. Wszystko, co możemy dziś zrobić, to ujawnić uderzające podobieństwa i alarmujące różnice między bramkami klasycznymi i kwantowymi oraz zbadać implikacje dla bliskiej i dalekiej przyszłości informatyki.
Uderzające podobieństwa
Jeśli nic innego, klasyczne bramki logiczne i kwantowe bramki logiczne są bramkami logicznymi. Zacznijmy więc od tego. Bramka logiczna, czy to klasyczna czy kwantowa, jest dowolną strukturą fizyczną lub systemem, który przyjmuje zestaw wejść binarnych (czy to 0s i 1s, jabłka i pomarańcze, elektrony spin-up i elektrony spin-down, jak kto woli) i wypluwa pojedyncze wyjście binarne: 1, pomarańczę, elektron spin-up, lub nawet jeden z dwóch stanów superpozycji. Tym, co rządzi wyjściem jest funkcja Boole’a. Brzmi to fantazyjnie i groźnie, ale uwierz mi, tak nie jest. Możesz myśleć o funkcji boole’owskiej jako o niczym więcej niż regule, jak odpowiadać na pytania Tak/Nie. To jest tak proste. Bramki są następnie łączone w obwody, a obwody w procesory lub inne komponenty obliczeniowe. Dotyczy to zarówno silnika różnicowego Babbage’a, ENIAC-a, emerytowanego mistrza szachowego Deep Blue, jak i najnowszego, wypełniającego salę, mrożącego krew w żyłach komputera kwantowego.
Rozbrajające różnice
Klasyczne bramki działają na klasycznych bitach, podczas gdy bramki kwantowe działają na bitach kwantowych (qubitach). Oznacza to, że bramki kwantowe mogą wykorzystywać dwa kluczowe aspekty mechaniki kwantowej, które są całkowicie poza zasięgiem bramek klasycznych: superpozycję i splątanie. Są to dwa pojęcia, o których najczęściej słyszy się w kontekście obliczeń kwantowych, i oto dlaczego. Istnieje jednak mniej znana koncepcja, która jest być może równie ważna: odwracalność. Mówiąc prościej, bramki kwantowe są odwracalne. Dowiesz się wiele o odwracalności, gdy zagłębisz się bardziej w obliczenia kwantowe, więc warto naprawdę się w to zagłębić. Na razie można o tym myśleć w ten sposób – wszystkie bramki kwantowe mają przycisk cofania, podczas gdy wiele bramek klasycznych nie ma go, przynajmniej jeszcze nie teraz. Oznacza to, że, przynajmniej w zasadzie, bramki kwantowe nigdy nie tracą informacji. Qubity, które są splątane w drodze do bramy kwantowej, pozostają splątane w drodze powrotnej, zachowując swoją informację bezpiecznie zapieczętowaną podczas całego przejścia. Z drugiej strony, wiele klasycznych bramek stosowanych w konwencjonalnych komputerach traci informacje, a zatem nie może odtworzyć swoich kroków. Co ciekawe, informacja ta nie jest ostatecznie tracona na rzecz wszechświata, ale raczej przenika do twojego pokoju lub na kolana jako ciepło w twoim klasycznym komputerze.
V jak wektor
Nie możemy mówić o bramkach kwantowych bez mówienia o macierzach, a nie możemy mówić o macierzach bez mówienia o wektorach. Zajmijmy się więc tym. W języku mechaniki kwantowej i informatyki wektory są przedstawiane w dość dziwnym opakowaniu zwanym ket, co pochodzi od drugiej połowy słowa braket. I wyglądają one tak, jak wyglądają. Oto wektor ket: |u>, gdzie u reprezentuje wartości w wektorze. Na początek użyjemy dwóch ketów, |0> i |1>, które będą reprezentować qubity w postaci elektronów w stanach spin-up (|0>) i spin-down (|1>). Wektory te mogą obejmować dowolną liczbę cyfr, że tak powiem. Ale w przypadku stanów binarnych, takich jak spin up/down qubit elektronowy, mają one tylko dwie wartości. Więc zamiast wyglądać jak potężne wektory kolumnowe, wyglądają one jak liczby ułożone po dwie. Oto jak wygląda |0>:
/ 1
0 /
Teraz, to co robią bramki/macierze to przekształcanie tych stanów, tych wektorów, tych ketów, tych kolumn liczb, w zupełnie nowe. Na przykład, bramka może przekształcić stan „w górę” (|0>) w stan „w dół” (|1>), jak magia:
/ 1 \ → / 0 \
0 / \ 1 /
M jest dla macierzy
Ta transformacja jednego wektora w inny odbywa się poprzez ledwie zrozumiałą magię mnożenia macierzy, która jest zupełnie inna niż rodzaj mnożenia, którego wszyscy uczyliśmy się w szkole przed-kwantowej. Jednakże, gdy już opanujesz ten rodzaj matematyki, jest ona niezwykle satysfakcjonująca, ponieważ możesz ją stosować wielokrotnie do niezliczonych, skądinąd niezrozumiałych równań, które wprawiają niewtajemniczonych w osłupienie. Jeśli potrzebujesz więcej motywacji, przypomnij sobie, że to właśnie za pomocą języka matematyki macierzowej Heisenberg odkrył tajemnice wszechogarniającej zasady niepewności.
Wszystko jedno, jeśli nie jesteś zaznajomiony z tym paliwem odrzutowym narzędzia matematycznego, oczy ci się zamydlą, jeśli zacznę wypełniać ten post wielkimi kwadratowymi tablicami liczb w tym momencie. A nie możemy do tego dopuścić. Poczekajmy więc jeszcze kilka akapitów na matematykę macierzową i notację. Na razie wystarczy powiedzieć, że generalnie używamy macierzy jako zamiennika bramy kwantowej. Rozmiar macierzy i jej współczynnik strachu zależy od liczby qubitów, na których ona działa. Jeśli do przekształcenia jest tylko jeden qubit, macierz będzie miła i prosta, po prostu tablica 2 x 2 z czterema elementami. Jednak rozmiar macierzy rośnie wraz z liczbą dwóch, trzech lub więcej qubitów. Dzieje się tak dlatego, że rozmiar macierzy (a tym samym stopień skomplikowania bramki kwantowej) zależy od pewnego wykładniczego równania, które warto zapamiętać:
2^n x 2^n = the total number of matrix elements
Tutaj n jest liczbą qubitów, na których działa bramka kwantowa. Jak widać, liczba ta wzrasta wraz z liczbą qubitów (n). Z jednym qubitem jest to 4. Z dwoma jest to 16. Przy trzech – 64. Z czterema jest to… beznadziejne. Więc na razie trzymam się jednego qubitu, który ma na sobie napis Pauli.
Bramy Pauliego
Bramy Pauliego zostały nazwane na cześć Wolfganga Pauliego, który nie tylko ma fajne imię, ale zdołał uwiecznić się w dwóch najbardziej znanych zasadach współczesnej fizyki: słynnej zasadzie wykluczenia Pauliego i strasznym efekcie Pauliego.
Bramy Pauliego są oparte na bardziej znanych macierzach Pauliego (aka macierze spinowe Pauliego), które są niezwykle przydatne do obliczania zmian w spinie pojedynczego elektronu. Ponieważ spin elektronu jest preferowaną właściwością qubitów w dzisiejszych bramkach kwantowych, macierze Pauliego i bramki są jak najbardziej na miejscu. W każdym razie, istnieje zasadniczo jedna bramka/macierz Pauliego dla każdej osi w przestrzeni (X, Y i Z).
Można więc sobie wyobrazić, że każda z nich ma moc zmiany kierunku spinu elektronu wzdłuż odpowiadającej jej osi w przestrzeni 3D. Oczywiście, jak wszystko inne w świecie kwantów, jest pewien haczyk: nie jest to nasza zwykła przestrzeń 3D, ponieważ zawiera ona wymiar urojony. Ale zostawmy to na razie, dobrze?
Na szczęście bramki Pauliego są najprostszymi bramkami kwantowymi, jakie kiedykolwiek spotkasz. (Przynajmniej bramki X i Z. Bramka Y jest trochę dziwna.) Więc nawet jeśli nigdy w życiu nie widziałeś macierzy, Pauli sprawia, że są one łatwe do opanowania. Jego bramki działają na jeden, i tylko jeden qubit na raz. Przekłada się to na proste macierze 2 x 2 o tylko 4 elementach na sztukę.
Brama Pauliego X
Brama Pauliego X jest spełnieniem marzeń dla tych, którzy boją się matematyki macierzowej. Żadnych urojonych liczb. Żadnych znaków minus. I prosta operacja: negacja. Jest to zupełnie naturalne, ponieważ X-gate Pauliego odpowiada klasycznej bramce NOT. Z tego powodu bramka X jest często nazywana również bramką kwantowego NOT.
W rzeczywistym świecie bramka X generalnie zmienia stan spin-up |0> elektronu w stan spin-down |1> i vice-versa.
|0> --> |1> OR |1> --> |0>
Wielka litera „X” często oznacza bramkę X Pauliego lub samą matrycę. Oto jak wygląda X:
/ 0 1 /
1 0 /
Pod względem poprawnej notacji, zastosowanie bramki kwantowej do qubitu jest kwestią pomnożenia wektora ket przez macierz. W tym przypadku mnożymy wektor spin-up ket |0> przez bramkę Pauliego X lub macierz X. Oto jak wygląda X|0>:
/ 0 1 /
1 0 /
Zauważ, że zawsze umieszczasz macierz po lewej stronie ket. Jak być może słyszałeś, mnożenie macierzy, w przeciwieństwie do zwykłego mnożenia, nie jest komutowane, co jest sprzeczne ze wszystkim, czego uczono nas w szkole. To tak, jakby 2 x 4 nie zawsze było równe 4 x 2. Ale tak właśnie działa mnożenie macierzowe, a kiedy już się w tym połapiesz, zobaczysz dlaczego. Tymczasem, pamiętając o uporządkowaniu elementów, pełna notacja dla zastosowania kwantowego NOT-gate do naszego qubitu (w tym przypadku spin-up elektronu), wygląda tak:
X|0> = / 0 1 \ /1\ = /0\ = |1>
\ 1 0 / \0/ \1/
Zastosowana do wektora spin-down, pełna notacja wygląda tak:
X|1> = / 0 1 \ = /1\ = |0>
1 0 / \1/ \0/
Pomimo całej obcej notacji, w obu tych przypadkach to, co faktycznie się tutaj dzieje, to fakt, że qubit w postaci pojedynczego elektronu przechodzi przez bramkę kwantową i wychodzi po drugiej stronie z całkowicie odwróconym spinem.
Bramy Pauliego Y i Z
Oszczędzę ci matematyki w przypadku tych dwóch. Ale powinieneś o nich przynajmniej wiedzieć.
Z trzech bramek Pauliego, bramka Pauliego Y jest najbardziej fantazyjna. Wygląda podobnie jak bramka X, ale z i (tak, szalony pierwiastek kwadratowy z -1) zamiast zwykłej 1 i ujemnym znakiem w prawym górnym rogu. Oto jak wygląda Y:
/ 0 -i
i 0 /
Bramka Pauliego Z jest o wiele łatwiejsza do naśladowania. Wygląda jak lustrzane odbicie bramy X powyżej, ale z ujemnym znakiem wrzuconym do mieszanki. Oto jak wygląda Z:
/ 1 0 \u0026apos;
0 -1 /
Bramka Y i bramka Z również zmieniają spin naszego qubitu elektronowego. Ale prawdopodobnie musiałbym zagłębić się w ezoteryczne tajemnice sfery Blocha, aby naprawdę wyjaśnić jak, a mam inną bramkę do przejścia w tej chwili…
Bramka Hadamarda
Pod pewnymi względami bramki Pauliego są podobne do klasycznych bramek logicznych, ale bramka Hadamarda, lub bramka H, jest prawdziwą kwantową bestią. Pojawia się wszędzie w obliczeniach kwantowych, i nie bez powodu. Bramka Hadamarda ma charakterystyczną kwantową zdolność do przekształcania określonego stanu kwantowego, takiego jak spin-up, w mętny, taki jak superpozycja zarówno spin-up i spin-down w tym samym czasie.
Po wysłaniu elektronu spin-up lub spin-down przez bramkę H, stanie się on jak grosz stojący na swoim końcu, z dokładnie 50/50 szansami, że skończy się na głowie (spin-up) lub na ogonie (spin-down), kiedy zostanie obalony i zmierzony. Bramka H jest niezwykle przydatna do wykonywania pierwszych obliczeń w każdym programie kwantowym, ponieważ przekształca ustawione lub zainicjalizowane qubity z powrotem w ich naturalny płynny stan, aby wykorzystać ich pełną moc kwantową.
Inne bramki kwantowe
Istnieje wiele innych bramek kwantowych, na które na pewno natrafisz. Wiele z nich działa na kilku qubitach naraz, co prowadzi do matryc 4×4 lub nawet 8×8 z elementami o złożonych liczbach. Są to dość trudne zadania, jeśli nie masz jeszcze umiejętności posługiwania się macierzami. Więc oszczędzę ci szczegółów.
Główne bramy, które będziesz chciał znać, to te, które omówiliśmy na poniższym wykresie:
Jak wskazuje niedawny artykuł Quanta Magazine, komputery kwantowe 2018 roku nie są jeszcze całkiem gotowe na prime time. Zanim będą mogły stanąć do walki z klasycznymi komputerami o miliardy razy większej liczbie bramek logicznych, będą musiały zmierzyć się z kilkoma własnymi demonami. Najbardziej śmiercionośnym z nich jest prawdopodobnie demon dekoherencji. W tej chwili dekoherencja kwantowa zniszczy twoje obliczenia kwantowe w ciągu zaledwie „kilku mikrosekund”. Jednak im szybciej wasze bramy kwantowe wykonują swoje operacje, tym większe prawdopodobieństwo, że wasz algorytm kwantowy pokona demona dekoherencji do mety i tym dłużej będzie trwał wyścig. Obok szybkości innym ważnym czynnikiem jest sama liczba operacji wykonywanych przez bramki kwantowe w celu zakończenia obliczeń. Jest to znane jako głębokość obliczeń. Dlatego też kolejnym aktualnym zadaniem jest pogłębienie kwantowego pola gry. Zgodnie z tą logiką, gdy szybko rozwijający się komputer kwantowy staje się coraz szybszy, jego obliczenia coraz głębsze, a odliczanie do dekorelacji coraz dłuższe, klasyczny komputer w końcu stanie przed groźnym przeciwnikiem, jeśli nie następcą, w (całkiem możliwe) niedalekiej przyszłości.
Jeśli podobał Ci się ten artykuł, byłbym bardzo podekscytowany, gdybyś wcisnął przycisk „klaśnij” 🙂 lub podzielił się nim z ciekawskimi przyjaciółmi. Mam dużo więcej podobnych artykułów na moim osobistym blogu (jasonroell.com) lub możesz po prostu zasubskrybować mój profil na medium i otrzymywać wszystkie moje artykuły wysyłane do Ciebie tak szybko jak je napiszę! (jak niesamowite?!)
Anyway, dzięki jeszcze raz za czytanie, miłego dnia!
.