Bramy T i fabryki T

W tym artykule opisano rolę bram T i fabryk T w obliczeniach kwantowych odpornych na uszkodzenia. Dając algorytm kwantowy, szacowanie wymaganych zasobów do uruchamiania bram T i fabryk T staje się kluczowe.

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 wykonania jakichkolwiek obliczeń kwantowych, czyli każde obliczenie musi rozkładać się z powrotem na skończoną sekwencję uniwersalnych bram. Co najmniej komputer kwantowy musi mieć możliwość przenoszenia pojedynczych kubitów do dowolnej pozycji w usłudze Bloch Sphere (przy użyciu bramek z pojedynczym 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 nie może dokładnie replikować nieskończonego zestawu przekształceń jednostkowych dozwolonych w obliczeniach kwantowych. Oznacza to, że w przeciwieństwie do klasycznego przetwarzania komputer kwantowy nie może zaimplementować każdego możliwego programu kwantowego dokładnie przy użyciu ograniczonej liczby bram. W związku z tym komputery kwantowe nie mogą być uniwersalne w tym samym sensie komputerów klasycznych. W rezultacie, kiedy 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 jakiekolwiek jednokrotne przekształcenie może być w przybliżeniu zapisane jako produkt bram z tego zestawu. Jest to wymagane, aby dla każdego określonego błędu wiązać, istnieją 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ż konwencją mnożenia macierzy jest pomnożenie od prawej do lewej pierwszej operacji bramy w tej sekwencji, $G_N$, jest w rzeczywistości ostatnim zastosowanym do wektora stanu kwantowego. Bardziej formalnie mówi się, że taki zestaw bramy jest uniwersalny, jeśli dla każdej tolerancji $błędów \epsilon>0$ istnieje $G_1, \ldots, G_N$ taki, że odległość między $G_N\ldots G_1$ i $U$ jest co najwyżej $\epsilon$. Idealnie wartość N wymagana $do osiągnięcia tej odległości $\epsilon$ powinna być skalowana polilogarycznie z $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 bram Hadamard i T generują dowolną bramę z pojedynczym 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 Clifforda 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 Clifforda są łatwe do zaimplementowania, to znaczy, że wymagają bardzo niewielu zasobów w zakresie operacji i kubitów w celu zaimplementowania odpornego na uszkodzenia, podczas gdy bramy inne niż Clifford są dość kosztowne w przypadku wymagania odporności na uszkodzenia. W uniwersalnym zestawie bram kwantowych brama T jest często używana jako brama spoza Cliffordu.

Standardowy zestaw bram Clifforda z jednym kubitem, dołączony domyślnie w Q#systemie , obejmuje

$$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 =0 amp; -i i &\\ amp; 0 \end{bmatrix}=T^2HT^4 HT^6, \qquad Z=\begin{bmatrix}1&&\begin{bmatrix} 0 0\\& amp;-1 \end{bmatrix}=T^4. $$

Wraz z bramą inną niż Clifford (brama T) operacje te mogą być złożone w celu przybliżenie dowolnej jednojerotnej transformacji 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 uniwersalnych 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średniego zaimplementowania na kubitach logicznych, a także mogą być trudne dla niektórych kubitów fizycznych.

W przypadku komputera kwantowego odpornego na błędy 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, a dane wyjściowe mniej hałaśliwych stanów T zakodowanych w większym kodzie odległości, z liczbą rund, jednostek destylacji i odległościami wszystkich parametrów, które mogą być zróżnicowane. Ta procedura jest iterowana, gdzie stany wyjściowe 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 przed przekroczeniem całkowitego czasu wykonywania algorytmu, a tym samym liczbę stanów T, które można wygenerować podczas wykonywania algorytmu. Zwykle wymagana jest większa liczba stanów T niż to, co można wygenerować w ramach wywołań pojedynczej fabryki T podczas wykonywania algorytmu. Aby wygenerować 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ę fizycznych kubitów 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 fabryka T może być wywoływana przed końcem algorytmu?
  • Ile kopii rundy destylacyjnej 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 destylujących 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 destylacyjnej fabryki T działającej równolegle do destylowania potrzebnych stanów 30 T.

Uwaga

Należy pamiętać, że kopie fabryczne T i wywołania 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 liczbę fizycznych kubitów potrzebnych do uruchomienia jednej fabryki T i czasu działania fabryki T, między innymi wymaganych parametrów.

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ą fizycznych kubitów używanych przez jedną rundę. Ś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 szybkość błędu stanu logicznego T, narzędzie do szacowania zasobów nie może wykonać dobrej szacowania zasobów. Podczas przesyłania zadania szacowania zasobów może wystąpić, że nie można odnaleźć fabryki T, ponieważ wymagany współczynnik błędów stanu logicznego T jest zbyt niski lub zbyt wysoki.

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

Następne kroki