Die Frage ist möglicherweise nicht vollständig definiert, in dem Sinne, dass Sie die Menge der Gatter angeben müssen, die Sie verwenden möchten, um aus einer Zerlegung von U zu berechnen . In der Tat ist es ein bekanntes Ergebnis, dass jedes n- Qubit-Gatter unter Verwendung von CNOT- und Single-Qubit-Operationen genau zerlegt werden kann , so dass eine naive Antwort auf die Frage wäre: Zerlegen Sie C ( U ) einfach unter Verwendung von Single-Qubit und CNOTs .C(U)UnCNOTC(U)CNOT
Eine andere Interpretation der Frage ist die folgende: gegeben , kann ich compute C ( U ) einen Satz einzelsträngiger Qubit - Operationen und die Verwendung CNOT s nicht auf der Steuer Qubit und CNOT s mit der Steuerung das erste Qubit zu sein? Dies kann durch Verallgemeinerung eines Ergebnisses aus Kapitel 4 von Nielsen & Chuang erreicht werden .UC(U)CNOTCNOT
Sei ein Single-Qubit-Gate. Es kann dann gezeigt werden , dass U immer als geschrieben werden kann , U = e i α A X B X C , wobei X das Pauli X - Gate ist und A , B und C sind Single-Qubit - Operationen derart , daß A B C = I ( siehe N & C für einen Beweis). Daraus folgt, dass
C ( U ) = ≤ 1 ( α ) A 2 C ( X ) BUUU=eiαAXBXCXA,BCABC=I
wobei Φ 1 ( α ) ≡ ( 1 0 0 e i α ) ⊗ I ist ein Phase Gate mit dem ersten Qubit aufgebracht und A 2 , B 2 , C 2 sind , A , B , C angewandt zum zweiten Qubit. Dies ist unmittelbar, wenn Sie feststellen, dass | das erste Qubit ist 0 ⟩ , dann C ( X )
C(U)=Φ1(α)A2C(X)B2C(X)C2,
Φ1(α)≡(100eiα)⊗IA2,B2,C2A,B,C|0⟩C(X)wird eine Identität, und auf dem zweiten Qubit haben Sie die Operationen
, die die Identität geben. Wenn andererseits das erste Qubit
| ist 1 ⟩ , dann auf der zweiten Schiene hat man
A X B X C , die (zusammen mit der Phase) gleich
U per Definition.
ABC|1⟩AXBXCU
Die obige Zerlegung kann verwendet werden, um einen naiven Weg zu finden, um für ein allgemeines einheitliches n- Bit-Gatter zu berechnen . Die Hauptbeobachtung ist , dass , wenn U = A 1 A 2 ⋯ A m für jede Gruppe von Gattern { A 1 , . . , A m } , dann
C ( U ) = C ( A 1 ) C ( A 2 ) ⋯ C ( A m )C(U)nU=A1A2⋯Am{A1,..,Am}
C(U)=C(A1)C(A2)⋯C(Am).
Wir wissen aber auch, dass jedes
Qubit
U in CNOTs und Single-Qubit-Operationen zerlegt werden kann. Daraus folgt, dass
C ( U ) eine Folge von CCNOT- und
C ( V ) -Operationen ist, wobei CCNOT hier ein
X- Gatter ist, das auf ein Qubit angewendet wird, das auf zwei andere Qubits konditioniert ist, die
| sind 1 ⟩ , und
V ist eine Single-Qubit - Operation an einem gewissen Qubit. Aber auch hier kann jede CCNOT-Operation (auch
Toffoli genannt ) zerlegt werden, wie in Abbildung 4.9 in N & C gezeigt, und die
C ( V )nUC(U)C(V)X|1⟩VC(V) werden wie im ersten Teil der Antwort gezeigt zerlegt.
Dieses Verfahren ermöglicht das Zerlegen eines allgemeinen einheitlichen Qubit-Gatters U unter Verwendung nur von CNOT- und Single-Qubit-Gattern. Sie können dann weiter gehen und dies verallgemeinern, um eine Zerlegung für den Fall mehrerer Kontroll-Qubits zu finden. Zu diesem Zweck benötigen Sie erst jetzt eine Möglichkeit, die Toffoli-Tore zu zerlegen, die wiederum in Abbildung 4.9 von N & C zu finden ist.nUCNOT