Mówi się, że bramy kwantowe są jednolite i odwracalne. Jednak klasyczne bramki mogą być nieodwracalne, podobnie jak logiczne AND i logiczne OR. Jak zatem można modelować nieodwracalne klasyczne bramki AND i OR za pomocą bramek kwantowych?
źródło
Mówi się, że bramy kwantowe są jednolite i odwracalne. Jednak klasyczne bramki mogą być nieodwracalne, podobnie jak logiczne AND i logiczne OR. Jak zatem można modelować nieodwracalne klasyczne bramki AND i OR za pomocą bramek kwantowych?
Powiedzmy, że mamy funkcję która odwzorowuje n bitów na m bitów (gdzie m < n ).
Możemy oczywiście zaprojektować klasyczny obwód do wykonania tej operacji. Nazwijmy to . Przyjmuje jako wejściowe n- bity. Powiedzmy, że przyjmuje jako wejście X i wyprowadza f ( X ) .
Teraz chcielibyśmy zrobić to samo z wykorzystaniem obwodu kwantowego. Nazwijmy to , które przyjmuje się jako dane wejściowe | X ⟩ i wyjścia | f ( X ) ⟩ . Pamiętajmy teraz, że ponieważ mechanika kwantowa jest liniowa, kubity wejściowe mogą oczywiście znajdować się w superpozycji wszystkich ciągów n- bitowych. Zatem dane wejściowe mogą być w pewnym stanie ∑ X ∈ { 0 , 1 } n α X | X ⟩ . Przez liniowość wyjście będzie Σ X ∈ { 0 ,.
Ewolucja w mechanice kwantowej jest jednolita . A ponieważ jest jednolity, jest odwracalny. Zasadniczo oznacza to, że jeśli zastosujesz bramkę kwantową na wejściu | x ⟩ i uzyskać stan ouput U | x ⟩ , zawsze można zastosować bramę odwrotną U † wrócić do stanu | x ⟩ .
Zauważ ostrożnie na powyższym obrazku, że liczba linii wejściowych (tj. Sześć) jest dokładnie taka sama jak liczba linii wyjściowych na każdym kroku. Wynika to z jednolitości operacji. Porównaj to do klasycznych operacji, takich jak logiczne AND, gdzie daje pojedynczy bit wyjściowy 0 . Nie można zrekonstruować początkowych bitów 0 i 1 z wyjścia, ponieważ nawet 0 ∧ 0 i 1 ∧ 0 zostałyby zmapowane do tego samego wyjścia 0 . Ale rozważ klasyczną bramę NIE. Jeśli wejście ma wartość 0, to odpowiada 1 , a jeśli wejście jest wyprowadza 0 . Ponieważ to odwzorowanie jest jedno, może być łatwo zaimplementowane jako odwracalna jednolita brama, a mianowicie bramaPauli-X. Jednak, aby wdrożyć klasyczną bramkę AND lub klasyczną bramkę OR, musimy pomyśleć nieco więcej.
Rozważ bramę CSWAP . Oto ogólny schemat pokazujący schemat:
W bramce SWAP, w zależności od bitu kontrolnego, my dwaj pozostali możemy zostać zamienieni. Zauważ, że są trzy linie wejściowe i trzy linie wyjściowe. Można go więc modelować jako jednolitą bramę kwantową. Teraz, jeśli : Jeśli x = 0 , wyjście wynosi 0 , a jeśli x = 1 , wyjście to y .
To wszystko! Pamiętaj, że wszystkie klasyczne bramy można zbudować za pomocą bramki NAND , którą oczywiście można zbudować bramką AND i NOT. Skutecznie modelowaliśmy klasyczną bramkę NOT i klasyczną bramkę AND za pomocą odwracalnych bramek kwantowych. Dla pewności możemy również dodać bramę qauntum CNOT do naszej listy, ponieważ za pomocą CNOT możemy kopiować bity.
Stąd podstawową wiadomością jest to, że za pomocą kwantowych bramek CSWAP, CNOT i bramek NOT możemy powielić każdą klasyczną bramę. BTW, jest sprytna sztuczka, aby pozbyć się „śmieci” bitów, które powstają, gdy używane są bramy kwantowe, ale to inna historia.
PS: Bardzo ważne jest, aby pozbyć się „śmieciowych” bitów, w przeciwnym razie mogą powodować błędy obliczeniowe!
Referencje i kredyty obrazowe : Mechanika kwantowa i obliczenia kwantowe MOOC oferowane przez UC Berkeley na edX.