Udostępnij za pośrednictwem


Rola bram T i fabryk T w obliczeniach kwantowych

W tym artykule opisano rolę bram T i fabryk T w obliczeniach kwantowych odpornych na uszkodzenia. Dając algorytm kwantowy, szacowanie wymaganych zasobów na potrzeby uruchamiania bram T i fabryk T staje się kluczowe dla określenia możliwości algorytmu. Narzędzie do szacowania zasobów usługi Azure Quantum oblicza liczbę stanów T potrzebnych do uruchomienia algorytmu, liczbę kubitów fizycznych dla pojedynczej fabryki T oraz środowisko uruchomieniowe fabryki T.

Uniwersalny zestaw bram kwantowych

Zgodnie z kryteriami DiVincenzo skalowalny komputer kwantowy musi być w stanie zaimplementować uniwersalny zestaw bram kwantowych. Zestaw uniwersalny zawiera wszystkie bramy potrzebne do wykonywania obliczeń kwantowych, czyli wszystkie obliczenia muszą rozkładać się z powrotem w skończoną sekwencję bram uniwersalnych. Co najmniej komputer kwantowy musi mieć możliwość przeniesienia pojedynczych kubitów do dowolnej pozycji w sferze Bloch (przy użyciu bram z jednym kubitem), a także wprowadzić splątanie w systemie, co wymaga bramy z wieloma kubitami.

Istnieją tylko cztery funkcje mapujące jeden bit na jeden bit na komputerze klasycznym. Z kolei na jednym kubitie na komputerze kwantowym istnieje nieskończona liczba przekształceń jednostkowych. W związku z tym żaden skończony zestaw pierwotnych operacji kwantowych lub bram może dokładnie replikować nieskończony zestaw przekształceń jednostkowych dozwolonych w obliczeniach kwantowych. Oznacza to, że w przeciwieństwie do obliczeń klasycznych, nie można zaimplementować każdego możliwego programu kwantowego dokładnie przy użyciu skończonej liczby bram. W związku z tym komputery kwantowe nie mogą być uniwersalne w tym samym sensie komputerów klasycznych. W rezultacie, gdy mówimy, że zestaw bram jest uniwersalny dla obliczeń kwantowych, oznacza to coś nieco słabszego niż w przypadku przetwarzania klasycznego.

W celu zapewnienia uniwersalności wymagane jest, aby komputer kwantowy przybliżył tylko każdą macierz jednostkową w ramach błędu skończonego przy użyciu sekwencji bramki o długości skończonej.

Innymi słowy, zestaw bram jest uniwersalnym zestawem bram, jeśli każda transformacja jednostkowa może być w przybliżeniu napisana jako produkt bram z tego zestawu. Wymagane jest, aby dla każdego określonego ograniczenia błędu istniały bramy $G_{1}, G_{2}, \ldots, G_N$ z zestawu bramy, tak aby

$${G_N G_N-1}\cdots G_2 G_1 \ok. U.$$

Ponieważ konwencja mnożenia macierzy polega na mnożeniu od prawej do lewej pierwszej operacji bramy w tej sekwencji, $G_N$, jest w rzeczywistości ostatnim zastosowanym do wektora stanu kwantowego. Bardziej formalnie, taki zestaw bramy mówi się, że jest uniwersalny, jeśli dla każdej tolerancji $błędów \epsilon>0$ istnieje $G_1, \ldots, G_N$ tak, że odległość między $G_N\ldots G_1$ i $U$ jest w większości $\epsilon$. Najlepiej, aby wartość $N$ potrzebna do osiągnięcia tej odległości $\epsilon$ powinna być skalowana polilogarycznie z wartością $1/\epsilon$.

Na przykład zestaw utworzony przez bramy Hadamard, CNOT i T jest uniwersalnym zestawem, z którego można wygenerować dowolne obliczenia kwantowe (na dowolnej liczbie kubitów). Zestaw bramy Hadamard i T generują dowolną bramę z jednym kubitem:

$$H=\frac{1}{\sqrt{ 1 amp; 1 &\\ 1 &-1\end{bmatrix}, \qquad T=\begin{bmatrix} 1 & 0 0 \\ & e^{i\pi/4\end{bmatrix}}.{2}}\begin{bmatrix} $$

W komputerze kwantowym bramy kwantowe można podzielić na dwie kategorie: bramy Clifforda i bramy spoza Cliffordu, w tym przypadku bramę T. Programy kwantowe wykonane tylko z bram Cliffordu mogą być symulowane wydajnie przy użyciu klasycznego komputera, a zatem bramy inne niż Clifford są wymagane do uzyskania przewagi kwantowej. W wielu schematach korekty błędów kwantowych (QEC) tak zwane bramy Cliffordu są łatwe do zaimplementowania, to znaczy, że wymagają one bardzo niewielu zasobów pod względem operacji i kubitów w celu zaimplementowania odpornego na uszkodzenia, podczas gdy bramy nieklifu są dość kosztowne w przypadku wymagania odporności na uszkodzenia. W uniwersalnym zestawie bram kwantowych brama T jest często używana jako brama niekliordowa.

Standardowy zestaw bram Cliffordów z jednym kubitem, dołączony domyślnie w systemie Q#, obejmują

$$H=\frac{{2}}\begin{bmatrix}{1}{\sqrt{ 1 amp; 1 &\\ 1 &-1 \end{bmatrix} , \qquad S =\begin{bmatrix} 1 & 0 0 \\ & i \end{bmatrix}= T^2, \qquad X=\begin{bmatrix} 0 & 1 \\ 1& 0 \end{bmatrix}= HT^4H,$$

$$Y =\begin{bmatrix} 0 & -i \\ i & 0 \end{bmatrix}=T^2HT^4 HT^6, \qquad Z=\begin{bmatrix}1& 0 0\\& amp;-1 \end{bmatrix}=T^4. $$

W połączeniu z bramą niekliordową (bramą T) te operacje można skomponować, aby przybliżyć dowolną transformację jednostkową na jednym kubitie.

Fabryki T w narzędziu do szacowania zasobów usługi Azure Quantum

Przygotowanie bramy innej niż Clifford T ma kluczowe znaczenie, ponieważ inne bramy kwantowe nie są wystarczające do obliczeń kwantowych. Aby zaimplementować operacje inne niż Clifford dla algorytmów o praktycznej skali, wymagana jest niska szybkość błędów bram T (lub stany T). Jednak mogą one być trudne do bezpośredniej implementacji na kubitach logicznych, a także mogą być trudne dla niektórych kubitów fizycznych.

W komputerze kwantowym odpornym na uszkodzenia wymagane stany T o niskim współczynniku błędów są produkowane przy użyciu fabryki destylacji stanu T lub fabryki T na krótko. Fabryki T zwykle obejmują sekwencję rund destylacji, gdzie każda runda przyjmuje wiele hałaśliwych stanów T zakodowanych w mniejszym kodzie odległości, przetwarza je przy użyciu jednostki destylacyjnej i generuje mniej hałaśliwych stanów T zakodowanych w większym kodzie odległości, z liczbą rund, jednostek destylowania i odległości wszystkich parametrów, które mogą być zróżnicowane. Ta procedura jest iterowana, gdzie wyjściowe stany T jednej rundy są przekazywane do następnej rundy jako dane wejściowe.

Na podstawie czasu trwania fabryki T narzędzie do szacowania zasobów usługi Azure Quantum określa, jak często można wywołać fabrykę T, zanim przekroczy całkowite środowisko uruchomieniowe algorytmu, a tym samym liczbę stanów T, które można wygenerować podczas wykonywania algorytmu. Zazwyczaj wymagana jest większa liczba stanów T niż to, co można utworzyć w ramach wywołań pojedynczej fabryki T podczas wykonywania algorytmu. Aby utworzyć więcej stanów T, narzędzie do szacowania zasobów używa kopii fabryk T.

Szacowanie fizyczne fabryki T

Narzędzie do szacowania zasobów oblicza łączną liczbę stanów T potrzebnych do uruchomienia algorytmu oraz liczbę kubitów fizycznych dla pojedynczej fabryki T i jej środowiska uruchomieniowego.

Celem jest wygenerowanie wszystkich stanów T w środowisku uruchomieniowym algorytmu z jak najmniejszą liczbą kopii fabrycznych T. Na poniższym diagramie przedstawiono przykład środowiska uruchomieniowego algorytmu i środowiska uruchomieniowego jednej fabryki T. Widać, że środowisko uruchomieniowe fabryki T jest krótsze niż środowisko uruchomieniowe algorytmu. W tym przykładzie jedna fabryka T może destylować jeden stan T. Pojawiają się dwa pytania:

  • Jak często można wywołać fabrykę T przed końcem algorytmu?
  • Ile kopii rundy destylowania fabryki T jest niezbędnych do utworzenia liczby stanów T wymaganych podczas wykonywania algorytmu?
Diagram przedstawiający środowisko uruchomieniowe algorytmu (czerwony) w porównaniu ze środowiskiem uruchomieniowym jednej fabryki T (niebieski). Przed końcem algorytmu fabryka T może działać 8 razy. Jeśli potrzebujemy 30 stanów T, a fabryka T może działać 8 razy w czasie wykonywania, potrzebujemy 4 kopii fabryk T działających równolegle do stanów destylowania 30 T.

Przed końcem algorytmu można wywołać fabrykę T osiem razy, która jest nazywana rundą destylowania. Jeśli na przykład potrzebujesz 30 stanów T, pojedyncza fabryka T jest wywoływana osiem razy w czasie wykonywania algorytmu, a tym samym tworzy osiem stanów T. Następnie potrzebne są cztery kopie rundy destylowania fabryki T działające równolegle do destylowania wymaganych stanów 30 T.

Uwaga

Należy pamiętać, że wywołania fabryki T i fabryki T nie są takie same.

Fabryki destylacji stanu T są implementowane w sekwencji rund, gdzie każda runda składa się z zestawu kopii jednostek destylacyjnych działających równolegle. Narzędzie do szacowania zasobów oblicza, ile fizycznych kubitów jest potrzebnych do uruchomienia jednej fabryki T i jak długo działa fabryka T, między innymi wymaganymi parametrami.

Można wykonywać tylko pełne wywołania fabryki T. W związku z tym mogą wystąpić sytuacje, w których skumulowane środowisko uruchomieniowe wszystkich wywołań fabryki T jest mniejsze niż środowisko uruchomieniowe algorytmu. Ponieważ kubity są ponownie używane przez różne rundy, liczba fizycznych kubitów dla jednej fabryki T jest maksymalną liczbą kubitów fizycznych używanych w jednej rundzie. Środowisko uruchomieniowe fabryki T jest sumą środowiska uruchomieniowego we wszystkich rundach.

Uwaga

Jeśli fizyczna szybkość błędów bramy T jest niższa niż wymagana liczba błędów stanu logicznego T, narzędzie do szacowania zasobów nie może wykonać dobrego oszacowania zasobów. Podczas przesyłania zadania szacowania zasobów może wystąpić, że nie można odnaleźć fabryki T, ponieważ wymagana liczba błędów stanu logicznego T jest zbyt niska lub zbyt wysoka.

Aby uzyskać więcej informacji, zobacz Dodatek C oceny wymagań do skalowania do praktycznych korzyści kwantowych.