Câu hỏi có thể không hoàn toàn được xác định rõ, theo nghĩa là để yêu cầu cách tính từ phân tách U, bạn cần chỉ định bộ cổng mà bạn sẵn sàng sử dụng. Thật vậy, một kết quả đã biết là bất kỳ cổng n -bit nào cũng có thể được phân tách chính xác bằng cách sử dụng CNOT và các hoạt động của một qubit, do đó, một câu trả lời ngây thơ cho câu hỏi sẽ là: chỉ phân tách C ( U ) bằng cách sử dụng một qubit và CNOT .C(U)UnCNOTC(U)CNOT
Một cách giải thích khác nhau của câu hỏi là những điều sau đây: cho , tôi có thể tính toán C ( U ) sử dụng một tập hợp các hoạt động đơn qubit và CNOT s không phải trên qubit kiểm soát , và CNOT s với sự kiểm soát là qubit đầu tiên? Điều này có thể được thực hiện khái quát hóa một kết quả được tìm thấy trong chương bốn của Nielsen & Chuang .UC(U)CNOTCNOT
Đặt là một cổng qubit đơn. Sau đó, có thể chứng minh rằng U luôn có thể được viết là U = e i α A X B X C , trong đó X là cổng Pauli X và A , B và C là các phép toán một qubit sao cho A B C = I ( xem N & C để biết bằng chứng). Theo sau
C ( U ) = Φ 1 ( α ) A 2 C ( X ) BUUU=eiαAXBXCXA,BCABC=I
trong đó Φ 1 ( α ) ≡ ( 1 0 0 e i α ) ⊗ I là cổng pha được áp dụng cho qubit đầu tiên và A 2 , B 2 , C 2 là A , B , C áp dụng cho qubit thứ hai. Điều này là ngay lập tức khi bạn nhận ra rằng, nếu qubit đầu tiên đó là | 0 ⟩ , sau đó C ( X )
C( U) = Φ1( α ) A2C( X) B2C( X) C2,
Φ1( α ) ≡ ( 100ei α) ⊗tôiMột2, B2, C2A , B , C| 0⟩C( X)trở thành một danh tính và trên qubit thứ hai, bạn có các hoạt động
, cung cấp danh tính. Mặt khác, nếu qubit đầu tiên là
| 1 ⟩ , sau đó trên đường sắt thứ hai bạn có
một X B X C , trong đó (cùng với giai đoạn) bằng
U theo định nghĩa.
A B C| 1⟩Một chữ XB XCBạn
Phân tách trên có thể được sử dụng để tìm ra một cách ngây thơ để tính cho một cổng đơn vị n -qubit chung . Các quan sát chính là nếu U = A 1 A 2 ⋯ Một m cho bất kỳ bộ cửa { Một 1 , . . , Một m } , sau đó
C ( U ) = C ( A 1 ) C ( A 2 ) ⋯ C ( A m )C( U)nBạn= A1Một2⋯ Mộtm{ A1, . . , Am}
Nhưng chúng ta cũng biết rằng bất kỳ n -bitbit U nào cũng có thể bị phân tách về mặt CNOT và các hoạt động của một qubit. Theo sau C ( U ) là một chuỗi các hoạt động CCNOT và C ( V ) , trong đó CCNOT ở đây mộtcổng X được áp dụng cho một số qubit có điều kiện cho hai qubit khác là | 1 ⟩ , và V là một hoạt động đơn lẻ qubit trên một số qubit. Nhưng một lần nữa, bất kỳ hoạt động CCNOT nào (còn được gọi làToffoli), có thể được phân tách như trong Hình 4.9 trong N & C và C ( V )
C( U) = C( Một1) C( Một2)⋯C(Am).
nUC(U)C(V)X|1⟩VC(V) được phân tách như thể hiện trong phần đầu tiên của câu trả lời.
Phương pháp này cho phép phân hủy một vị tướng -qubit cổng unita U chỉ sử dụng CNOT và single-qubit cửa. Sau đó, bạn có thể đi xa hơn và khái quát hóa điều này để tìm ra sự phân tách cho trường hợp có nhiều qubit kiểm soát. Đối với điều này, bây giờ bạn chỉ cần một cách để phân hủy các cổng Toffoli, một lần nữa được tìm thấy trong Hình 4.9 của N & C.nUCNOT