Freigeben über


T-Tore und T-Fabriken

In diesem Artikel wird die Rolle von T-Gates und T-Fabriken beim fehlertoleranten Quantencomputing beschrieben. Bei einem Quantenalgorithmus wird die Schätzung der benötigten Ressourcen für den Betrieb der T-Gates und T-Fabriken von entscheidender Bedeutung.

Universeller Satz von Quantengates

Nach DiVincenzos Kriterien muss ein skalierbarer Quantencomputer in der Lage sein, einen universellen Satz von Quantengates zu implementieren. Ein universeller Satz enthält alle Gates, die zum Ausführen einer Quantenberechnung benötigt werden, d. h. jede Berechnung muss wieder in eine endliche Sequenz von universellen Gates zerlegen. Mindestens muss ein Quantencomputer in der Lage sein, einzelne Qubits an eine beliebige Position auf der Bloch-Kugel zu verschieben (mit Single-Qubit-Gates), sowie eine Verschränkung im System einzuführen, die ein Multi-Qubit-Gate erfordert.

Auf einem klassischen Computer gibt es nur vier Funktionen, die ein Bit auf ein Bit abbilden. Im Gegensatz dazu gibt es auf einem einzelnen Qubit eines Quantencomputers unendlich viele Einheitstransformationen. Daher kann kein endlicher Satz von primitiven Quantenvorgängen oder -gates genau den unendlichen Satz unitärer Transformationen replizieren, die im Quantencomputing zulässig sind. Das heißt, im Gegensatz zum klassischen Rechnen ist es für einen Quantencomputer unmöglich, jedes mögliche Quantenprogramm mit einer endlichen Anzahl von Gates exakt zu implementieren. Daher können Quantencomputer nicht im gleichen Sinne universell sein wie klassische Computer. Wenn wir also sagen, dass eine Reihe von Gates für Quantencomputing universell ist, meinen wir tatsächlich etwas schwächer als beim klassischen Computing.

Für die Universalität ist es erforderlich, dass ein Quantencomputer jede Einheitsmatrix innerhalb eines endlichen Fehlers nur mithilfe einer Gatesequenz mit endlicher Länge annähert.

Mit anderen Worten, eine Menge von Gates ist eine universelle Gate-Menge, wenn jede Einheitstransformation näherungsweise als ein Produkt von Gates aus dieser Menge geschrieben werden kann. Es ist erforderlich, dass für alle vorgeschriebenen Fehler gebundenen Gates $G_, G_{2}, \ldots, G_N$ aus dem Gatesatz{1} vorhanden sind, sodass

$$ G_N G_{N-1}\cdots G_2 G_1 \approx U. $$

Da die Konvention für die Matrixmultiplikation darin besteht, von rechts nach links zu multiplizieren, $ist der erste Gatevorgang in dieser Sequenz G_N$ tatsächlich der letzte, der auf den Quantenzustandsvektor angewendet wird. Formaler ausgedrückt wird eine Gate-Menge dieser Art als universell bezeichnet, wenn für jede Fehlertoleranz \$\epsilon>0$$G_1,\ldots, G_N$ vorhanden ist, sodass der Abstand zwischen $G_N\ldots G_1$ und $U$ maximal $ \epsilon$ ist. Idealerweise sollte der Wert von $N$, der benötigt wird, um diesen Abstand von $\epsilon$ zu erreichen, polylogarithmisch mit $1/\epsilon$ skalieren.

Beispielsweise ist die durch Hadamard-, CNOT- und T-Gates gebildete Gruppe eine universelle Menge, aus der jede Quantenberechnung (für eine beliebige Anzahl von Qubits) generiert werden kann. Die Hadamard- und die T-Gate-Gruppe generieren jedes Einzelne-Qubit-Gate:

$$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} $$

In einem Quantencomputer können Quantengates in zwei Kategorien eingeteilt werden: Clifford-Gates und Nicht-Clifford-Gates, in diesem Fall das T-Gate. Quantenprogramme, die nur aus Clifford-Gates hergestellt werden, können mit einem klassischen Computer effizient simuliert werden, und daher sind Nicht-Clifford-Gates erforderlich, um Quantenvorteile zu erhalten. In vielen QEC-Schemas (Quantum Error Correction, Quantenfehlerkorrektur) sind die so genannten Clifford-Gates leicht zu implementieren, d. h. sie benötigen sehr wenige Ressourcen in Bezug auf Vorgänge und Qubits, um Fehlertolerante zu implementieren, während Nicht-Clifford-Gates ziemlich kostspielig sind, wenn Fehlertoleranz erforderlich ist. In einer universellen Quantengate-Gruppe wird das T-Tor häufig als Nicht-Clifford-Tor verwendet.

Der Standardsatz von Single-Qubit-Clifford-Gates, die standardmäßig in Q#enthalten sind, umfasst

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

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

Zusammen mit dem Nicht-Clifford-Gate (dem T-Gate) können diese Vorgänge zusammengesetzt werden, um eine beliebige unitäre Transformation auf einem einzelnen Qubit anzunähern.

T-Fabriken im Azure Quantum Resource Estimator

Die Nicht-Clifford-T-Gate-Vorbereitung ist von entscheidender Bedeutung, da die anderen Quantengates für die universelle Quantenberechnung nicht ausreichen. Um Nicht-Clifford-Vorgänge für Algorithmen im praktischen Maßstab zu implementieren, sind T-Gates (oder T-Zustände) mit niedriger Fehlerrate erforderlich. Sie können jedoch schwierig sein, sie direkt in logischen Qubits zu implementieren, und sie können auch für einige physische Qubits schwierig sein.

In einem fehlertoleranten Quantencomputer werden die erforderlichen T-Zustände mit niedriger Fehlerrate mithilfe einer T-Zustandsdestillationsfabrik, kurz T Factory, erzeugt. Bei diesen T-Fabriken handelt es sich in der Regel um eine Sequenz von Destillationsrunden, bei denen jede Runde viele verrauschte T-Zustände übernimmt, die in einem kleineren Entfernungscode codiert sind, sie mithilfe einer Destillationseinheit verarbeitet und weniger verrauschte T-Zustände ausgibt, die in einem Code mit größerer Entfernung codiert sind, wobei die Anzahl von Runden, Destillationseinheiten und Abständen parameter sind, die variiert werden können. Dieses Verfahren wird durchlaufen, wobei die Ausgabe-T-Zustände einer Runde als Eingaben in die nächste Runde eingespeist werden.

Basierend auf der Dauer der T-Factory bestimmt der Azure Quantum Resource Estimator , wie oft eine T-Factory aufgerufen werden kann, bevor sie die Gesamtlaufzeit des Algorithmus überschreitet, und damit, wie viele T-Zustände während der Laufzeit des Algorithmus erzeugt werden können. Normalerweise sind mehr T-Zustände erforderlich als das, was innerhalb der Aufrufe einer einzelnen T-Factory während der Algorithmuslaufzeit erzeugt werden kann. Um weitere T-Zustände zu erzeugen, verwendet der Resource Estimator Kopien der T-Fabriken.

Physische T Factory-Schätzung

Der Resource Estimator berechnet die Gesamtanzahl von T-Zuständen, die zum Ausführen des Algorithmus erforderlich sind, und die Anzahl der physischen Qubits für eine einzelne T-Factory und deren Laufzeit.

Das Ziel besteht darin, alle T-Zustände innerhalb der Algorithmuslaufzeit mit so wenigen T Factory-Kopien wie möglich zu erzeugen. Das folgende Diagramm zeigt ein Beispiel für die Laufzeit des Algorithmus und die Laufzeit einer T Factory. Sie können sehen, dass die Laufzeit der T Factory kürzer ist als die Laufzeit des Algorithmus. In diesem Beispiel kann eine T-Fabrik einen T-Zustand destillieren. Es stellen sich zwei Fragen:

  • Wie oft kann die T Factory vor dem Ende des Algorithmus aufgerufen werden?
  • Wie viele Kopien der T Factory-Destillationsrunde sind erforderlich, um die Anzahl der T-Zustände zu erstellen, die während der Laufzeit des Algorithmus erforderlich sind?
Diagramm, das die Laufzeit des Algorithmus (rot) im Vergleich zur Laufzeit einer T Factory (blau) zeigt. Vor dem Ende des Algorithmus kann die T Factory 8 Mal ausgeführt werden. Wenn wir 30 T-Zustände benötigen und T Factory während der Laufzeit 8-mal ausgeführt werden kann, benötigen wir 4 Kopien der T-Fabriken, die parallel ausgeführt werden, um 30 T-Zustände zu destillieren.

Vor dem Ende des Algorithmus kann die T-Factory achtMal aufgerufen werden, was als Destillationsrunde bezeichnet wird. Wenn Sie beispielsweise 30 T-Zustände benötigen, wird eine einzelne T-Factory achtmal während der Laufzeit des Algorithmus aufgerufen und erzeugt somit acht T-Zustände. Dann benötigen Sie vier Kopien der T-Factory-Destillationsrunde, die parallel läuft, um die benötigten 30 T-Zustände zu destillieren.

Hinweis

Beachten Sie, dass T Factory-Kopien und T-Factory-Aufrufe nicht identisch sind.

Die T-Zustandsdestillationsfabriken werden in einer Sequenz von Runden implementiert, wobei jede Runde aus einer Reihe von Kopien von Destillationseinheiten besteht, die parallel ausgeführt werden. Der Resource Estimator berechnet, wie viele physische Qubits erforderlich sind, um eine T Factory auszuführen, und wie lange die T Factory ausgeführt wird, neben anderen erforderlichen Parametern.

Sie können nur vollständige Aufrufe einer T-Factory ausführen. Daher kann es Situationen geben, in denen die akkumulierte Laufzeit aller T-Factory-Aufrufe kleiner ist als die Algorithmuslaufzeit. Da Qubits von verschiedenen Runden wiederverwendet werden, ist die Anzahl der physischen Qubits für eine T-Factory die maximale Anzahl physischer Qubits, die für eine Runde verwendet werden. Die Laufzeit der T Factory ist die Summe der Laufzeit in allen Runden.

Hinweis

Wenn die physische T-Gate-Fehlerrate niedriger ist als die erforderliche Fehlerrate des logischen T-Zustands, kann der Resource Estimator keine gute Ressourcenschätzung durchführen. Wenn Sie einen Ressourcenschätzungsauftrag übermitteln, können Sie feststellen, dass die T-Factory nicht gefunden werden kann, da die erforderliche Fehlerrate des logischen T-Zustands entweder zu niedrig oder zu hoch ist.

Weitere Informationen finden Sie unter Anhang C der Bewertung der Anforderungen für die Skalierung auf praktische Quantenvorteile.

Nächste Schritte