Wie konstruiere ich ein Multi-Qubit-gesteuertes Z aus Elementartoren?


9

Für die Implementierung eines bestimmten Quantenalgorithmus muss ich ein Multi-Qubit-Gatter (in diesem Fall ein Drei-Qubit-gesteuertes Z-Gatter) aus einem Satz von Elementargattern konstruieren, wie in der folgenden Abbildung gezeigt. Drei-Qubit-gesteuertes Z-Gatter. .

Die Tore, die ich benutzen kann, sind

  • die Pauli-Tore und alle ihre Kräfte (dh alle Pauli-Rotationen bis zu einem Phasenfaktor),X,Y,Z
  • | 11 11 |exp(iθ|1111|) (Drehung um Projektor),|1111|
  • H (Hadamard),
  • CX (Single-Qubit Controlled-X oder CNOT),
  • CZ (Single-Qubit Controlled-Z) und
  • S (SWAP).

Wie kann ich dieses Drei-Qubit-gesteuerte Z aus diesen Toren bauen? Ich habe mehrere Artikel über Schaltungszerlegungen gelesen, aber keiner von ihnen konnte mir eine klare und präzise Antwort geben.


Sollte Ihr 4. Register ein Z anstelle eines schwarzen Kreises haben?
user1271772

1
@ user1271772 Beide sind in Ordnung. Da gesteuerte Z-Gatter in den verwendeten Qubits symmetrisch sind (dh man kann zwei Qubits austauschen und die Wirkung des Gates bleibt gleich), wurde eine geordnete Notation wie die mit schwarzen Punkten in der neueren Literatur als geeigneter angesehen.
Dyon J Don Kiwi van Vreumingen

Antworten:


5

(EDIT: Verbessert auf 14 CNOTs.)

Dies kann mit 14 CNOTs plus 15 Z-Rotationen mit einem Qubit und ohne zusätzliche Qubits durchgeführt werden.

Die entsprechende Schaltung ist

Geben Sie hier die Bildbeschreibung ein

Dabei sind die Rotationen ±

Rz(±π/16)(1e±iπ/8)


Ableitung:

Unter Verwendung des in https://arxiv.org/abs/quant-ph/0303063 1 beschriebenen Verfahrens kann jedes diagonale Gate - also insbesondere das CCCZ-Gate - in z. B. CNOTs und diagonale Ein-Qubit-Gates zerlegt werden. Hier können die CNOTs nach einem klassischen Optimierungsverfahren selbst optimiert werden.

Die Referenz stellt eine Schaltung bereit, die 16 CNOTs für 4-Qubit-Gates mit beliebiger Diagonale verwendet (Fig. 4).

Dies kann verbessert werden, wenn beliebige Paare von Qubits mit 14 Qubits gekoppelt werden können. Für nächste Nachbarn mit periodischen (offenen) Randbedingungen kann dies mit 16 (18) CNOTs erfolgen. Die entsprechenden Schaltkreise finden Sie in https://epub.uni-regensburg.de/1511/ 1 , Abb. 5.2, 5.4 und 5.5 und können zB mit Methoden zum Aufbau kurzer Gray-Sequenzen erhalten werden.

Die Anzahl der Ein-Qubit-Gates beträgt immer 15.


Anmerkung: Während es im Prinzip eine einfachere Schaltung geben könnte (diese Schaltung wurde unter Berücksichtigung einer eingeschränkteren Schaltungsarchitektur optimiert), sollte sie nahezu optimal sein - die Schaltung muss alle Zustände der Form erstellen für jede nicht triviale Teilmenge , und es gibt 15 davon für 4 Qubits.iIxiI{1,2,3,4}

Beachten Sie auch, dass diese Konstruktion keinesfalls optimal sein muss.


1 Hinweis: Ich bin Autor


Und würde die Verwendung von Rx- (oder Ry-) Gates anstelle von Rz-Gates dieses Multi-Qubit-Gate mit gesteuertem X (oder gesteuertem Y) machen?
Sierox

@Sierox Sie müssen nur alles auf dem unteren Qubit Hadamard-transformieren, dh die entsprechenden CNOTs werden zu CZs, und die Rotationen auf dem unteren Qubit werden zu X-Rotationen.
Norbert Schuch

6

Sie können ein Qubit-gesteuertes durch die in dieser Antwort angegebene Schaltung implementieren . Ersetzen nur von . Dies erfordert jedoch CCNOT-Gatter (Toffoli), und Sie haben einige Optionen für die Implementierung von CCNOT mithilfe von Elementartoren .U U Z.nUUZ


2
Dies ergibt eine Schaltung mit möglicherweise übermäßiger Tiefe. Vielleicht möchte das OP eine flachere Schaltung mit diesem Gate-Set. Man kann ein automatisches Verfahren durchführen, um die Schaltungsgrößen moderat zu reduzieren.
AHusain

@AHusain: Was ist das automatische Verfahren?
user1271772

2
Es verwendet Ergebnisse aus der Theorie der automatischen Gruppen, das war also ein Wortspiel. Erklärung würde woanders hingehen; kein kurzer Kommentar.
AHusain

Okay @AHusain, ich werde eine Frage stellen, die nur für Sie bestimmt ist!
user1271772

5

Hier ist eine CCCZ-Konstruktion, die 29 Tore verwendet :

Schaltkreis

Wenn Sie die Messung und die klassische Vorwärtskopplung verwenden dürfen, kann die Gate-Anzahl auf 25 reduziert werden :

Schaltkreis

(Die Hadamard-Gates können bei Bedarf durch Quadratwurzeln von Y ersetzt werden, um die Gate-Set-Einschränkung zu erfüllen.)

Und wenn Sie mir erlauben, Controlled-S-Gates und Controlled-sqrt (X) -Gates durchzuführen und X-Basismessungen durchzuführen, kann ich es auf insgesamt 10 Gates reduzieren :

Schaltkreis


Sie verwenden jedoch am Ende ein Mess + bedingtes gesteuertes Gate. Ich würde sagen, das liegt außerhalb der "normalen" Spielregeln. (Wenn Sie dies beispielsweise durch ein kontrolliertes Tor ersetzen und die Messung verschieben würden, würden Sie immer noch einen Toffoli verwenden.)
Norbert Schuch

1
@NorbertSchuch Deshalb stelle ich dem zweiten Diagramm "Wenn Sie Messung und klassische Vorwärtskopplung verwenden dürfen" voran. Beachten Sie, dass das erste Diagramm diese Dinge nicht verwendet.
Craig Gidney

UPS. Es tut uns leid. Mea culpa. Ich hätte mir nicht nur die Bilder ansehen und ein bisschen scrollen sollen: - |
Norbert Schuch

Am Ende der ersten Schaltung wird das fünfte Qubit verworfen. Wie müsste ich dieses Qubit behandeln, wenn ich mehrere CCCZs nacheinander benötige?
Dyon J Don Kiwi van Vreumingen

Sie würden es in die nächste CCCZ einspeisen, aber die ersten beiden Operationen in der Schaltung der zweiten CCCZ ablegen. Diese Operationen bereiten es in einen T-Zustand vor, der der Endzustand des verworfenen Qubits ist. Das zweite CCCZ hätte also zwei Operationen weniger.
Craig Gidney

4

Ich poste hier eine weitere Zerlegung von CCCZ, nur für den Fall, dass es für andere nützlich ist, die versuchen, CCCZ zu kompilieren. Es erfordert eine geringere Anzahl von Gesamtgattern und nur 1 Hilfs-Qubit anstelle von 2, aber fünf weitere 2-Qubit-Gatter als die "offensichtliche" Antwort, sodass die Implementierung auf Hardware möglicherweise schlechter ist.

Es wurde von Benutzer @Rob in diesem Kommentar vorgeschlagen: Automatische Kompilierung von Quantenschaltungen und stammt aus diesem Artikel .

Geben Sie hier die Bildbeschreibung ein

Das GMS5 -Tor lautet wie folgt:(χ)

mit und all , was bedeutet, dass es sich um 10 Zwei-Qubit-Gatter handelt. Diese müssen dann in den in der Frage angegebenen Gate-Satz kompiliert werden. Daher sollte diese Zerlegung nur verwendet werden, wenn Sie versuchen, die Anzahl der zusätzlichen Qubits zu sparen, oder wenn es Ihnen nichts ausmacht, mehr 2-Qubit-Gates zu haben Reduzieren Sie die Schaltungstiefe etwas.n=5χij=χ


1
Das GMS5-Gate ist ein ziemlich globales Gate - schwer zu vergleichen mit einer herkömmlichen Gate-Anzahl. Und es ist sehr wahrscheinlich, dass Sie selbst in Szenarien, in denen dieses Gate implementiert werden kann, nicht in der Lage sind, auszuwählen . Warum nicht einfach den Logarithmus des CCCZ-Tors nehmen? χij
Norbert Schuch

@NorbertSchuch: Die Frage fragt nach CCCZ nicht protokollieren (CCCZ). Wenn wir log (CCCZ) machen würden, was Sie vermutlich vorschlagen, da GMS5 ein Exponential von Elementartoren ist und der Logarithmus davon möglicherweise einfacher zu implementieren wäre, wäre es einfach, die Ausgabe von CCCZ aus der Antwort auf log zu erhalten ( CCCZ)?
user1271772

Ich habe keine Ahnung, wovon Sie sprechen. Produktsummen oder Paulis sind NICHT einfach zu implementieren. Sie sind nicht einmal einheitlich. --- Aber Logarithmen von Unitariern sind Hamiltonianer. Wenn Sie sich also mit log (CCCZ) durch einen intelligenten Versuchsaufbau zeitlich weiterentwickeln können, erhalten Sie CCCZ mit "einem Tor" in dieser Zählung.
Norbert Schuch

2
@NorbertSchuch: Dein Kommentar "exp (-iHt) ist kaum adiabatisch" ist semantisch null und macht keinen Sinn. Warum haben Sie mich gefragt: "Warum nicht einfach den Logarithmus des CCCZ-Tors nehmen?" ?
user1271772

1
@ user1271772 nur um das hinzuzufügen, was (glaube ich) Norbert in den Kommentaren sagt: Das Problem, zeitunabhängige Hamiltonianer zu finden, die direkt nichttriviale Tore erzeugen (CCX und andere werden in dem Artikel berücksichtigt), wurde in arxiv.org/ untersucht. abs / 1803.07119 . Das Problem bei dieser Einstellung besteht darin, Hamiltonianer zu finden, die nur mögliche Wechselwirkungen enthalten und dennoch das Zielgatter erzeugen. Die Ressource wird somit zu dem, was Hamiltonsche Interaktionen erlaubt sind, und nicht zu dem, was Elementartore erlaubt sind
glS

4

Es gibt einige große Einsparungen, die basierend auf dem angegebenen Gate-Set erzielt werden können. Wenn Sie beispielsweise in der typischen ccnot-Konstruktion das Gatter durch ersetzen , benötigen Sie nicht die Phasenkorrektur, die die letzten paar Gatter zwischen den beiden Steuer-Qubits darstellt. Diese Konstruktion, die dem in der Frage angegebenen Gate-Set entspricht, besteht aus 21 Gates, von denen 10 2-Qubit sind (Sie benötigen nicht das letzte Gate in der folgenden Schaltung).TZ1/4

Geben Sie hier die Bildbeschreibung ein

Um es klar auszudrücken (als Antwort auf mehrere Kommentare): Normalerweise schauen wir uns Toffoli an und versuchen, es mit dem Gate zu machen . Falls beide Kontrollen , dann auf dem Ziel - Qubit die Gate - Sequenz ist . Da nun , vereinfacht sich die Sequenz zu , und man muss den beiden Steuer-Qubits ein kompensierendes gesteuertes S-Gatter hinzufügen. Wenn wir stattdessen , dann ist , und keine dieser lästigen Phasen kommt hinein, und es erspart Ihnen zwei - Qubit Gates!| 1 H X T X T X T X T H X T X = T e - i π / 4 - i H T 4 H = - i X Z 1 / 4 X Z - 1 / 4 X = Z 1 / 4T|1HXTXTXTXTHXTX=Teiπ/4iHT4H=iXZ1/4XZ1/4X=Z1/4

Beachten Sie außerdem, dass die beiden Toffoli-Gates nur Toffoli sind, da sie auf den 0-Status abzielen. Normalerweise benötigen Sie ein zusätzliches Zwei-Qubit-Gate.

Ich habe nicht so effizient eine Konstruktion in bestehenden Literatur, obwohl dies gefunden Papier behauptet , eine Konstruktion unter Verwendung von nur 11 2-Qubit - Gattern, aber ich habe keine vollständige Gatterzahl geschehen , sobald es in die Frage der eingeschränkten Gatesatz umgewandelt wird .


Fühlt sich an, als ob Sie nicht ohne Berechnung sind. in der unteren Hälfte der Strecke - aber ich habe nicht sehr viel darüber nachgedacht;)
Norbert Schuch

Ich habe die Ancilla berechnet, abgesehen von einer irrelevanten Einzel-Qubit-Rotation. Das macht der letzte Toffoli. Ich nehme an, Toffoli sollte in Anführungszeichen gesetzt werden, da das 1 Tor am Ende fehlt.
DaftWullie

Sind Sie sicher, dass der erste Block ein Toffoli ist - oder ist es nur ein Toffoli auf der Ancilla? (Ich erinnere mich, dass das Beste, was man für Toffoli tun konnte, ungefähr 8 CNOTs waren).
Norbert Schuch

Ich denke, Sie vermissen eine CS-Phasenkorrektur an den beiden oberen Qubits im mittleren Block. Sie sollten in der Lage sein, die CZ ganz links von jedem der Seitenblöcke abzulegen.
Craig Gidney

Ich werde am Dienstag sorgfältig prüfen. Ich dachte, diese Formulierung vermeidet das cS.
DaftWullie

2

Während meine andere Antwort die naheliegendste "Lehrbuch" -Methode ist (unter Verwendung der CCCZ-Zerlegung von Nielsen & Chaung in CCNOTs , dann einer anderen Lehrbuchzerlegung zur Kompilierung der CCNOTs ), könnte eine kreativere Methode es uns ermöglichen, die Arbeit mit weniger Gates zu erledigen.

Schritt 1:

Ersetzen Sie alle CNOTs in der Schaltung von Nielsen & Chuang durch dieses Gadget:

Geben Sie hier die Bildbeschreibung ein

Schritt 2:

Jetzt haben wir eine Reihe von CCZs anstelle von CCNOTs, und sie können wie folgt zerlegt werden (mit freundlicher Genehmigung dieses Dokuments ):

Geben Sie hier die Bildbeschreibung ein

Schritt 3:

Beachten Sie, dass , so dass sich einige dieser Hadamards gegenseitig aufheben und wir noch mehr von einer Reduktion bekommen :)H2=I


Was ist die Anzahl der Tore?
Norbert Schuch
Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.