Bagaimana cara menurunkan matriks CNOT untuk sistem 3-qbit di mana kontrol & target qbits tidak berdekatan?


13

Dalam sistem tiga-qbit, mudah untuk mendapatkan operator CNOT ketika kontrol & target qb bersebelahan dalam signifikansi - Anda hanya membuat tensor operator 2-bit CNOT dengan matriks identitas pada posisi signifikansi qbit yang tak tersentuh:

C10|ϕ2ϕ1ϕ0=(I2C10)|ϕ2ϕ1ϕ0

Namun, tidak jelas bagaimana cara menurunkan operator CNOT ketika kontrol & target qbits tidak berdekatan secara signifikan:

C20|ϕ2ϕ1ϕ0

Bagaimana ini dilakukan?

Jawaban:


11

Untuk presentasi dari prinsip pertama, saya suka jawaban Ryan O'Donnell . Tetapi untuk perawatan aljabar tingkat yang sedikit lebih tinggi, inilah cara saya akan melakukannya.

Fitur utama dari operasi terkontrol , untuk setiap unitary U , adalah bahwa ia (secara koheren) melakukan operasi pada beberapa qubit tergantung pada nilai beberapa qubit tunggal. Cara kita dapat menulis ini secara aljabar (dengan kontrol pada qubit pertama) adalah: mana adalah matriks identitas dari dimensi yang sama seperti . Di sini, dan adalah proyektor ke status danUU1 U | 0

CU=|00|1+|11|U
1U| 1 |00|| 0 | 1 |11||0|1 dari qubit kontrol - tetapi kami tidak menggunakannya di sini sebagai elemen pengukuran, tetapi untuk menggambarkan efek pada qubit lain tergantung pada satu atau subruang lain dari ruang-negara dari qubit pertama.

Kita dapat menggunakan ini untuk menurunkan matriks untuk gate yang melakukan operasi pada qubit 3, dikondisikan secara koheren pada keadaan qubit 1, dengan menganggap ini sebagai control- pada qubit 2 dan 3: X( 1 2CX1,3XC X 1 , 3(12X)

CX1,3=|00|14+|11|(12X)=[140404(12X)]=[12020202021202020202X02020202X],
mana yang terakhir adalah representasi matriks blok untuk menghemat ruang (dan kewarasan).

Lebih baik lagi: kita dapat mengenali bahwa - pada tingkat matematika di mana kita membiarkan diri kita menyadari bahwa urutan faktor tensor tidak harus dalam urutan tetap - kontrol dan target operasi dapat berada pada dua tensor faktor, dan kita bisa mengisi deskripsi operator di semua qubit lain dengan . Ini akan memungkinkan kita untuk melompat langsung ke representasi C X 1 , 312C X 3 , 1

CX1,3=|00|control12uninvolved12target+|11|control12uninvolvedXtarget=[12020202021202020202020202020202]+[02020202020202020202X02020202X]
dan juga memungkinkan kita untuk segera melihat apa yang harus dilakukan jika peran kontrol dan target dibalik:
CX3,1=12target12uninvolved|00|control+Xtarget12uninvolved|11|control=[|00||00||00||00|]+[|11||11||11||11|]=[1000000000100000000001000000000100000100000000011000000000100000].
Tetapi yang terbaik dari semuanya: jika Anda dapat menuliskan operator ini secara aljabar, Anda dapat mengambil langkah pertama menuju pengeluaran matriks raksasa sepenuhnya, alih-alih menalar tentang operator ini secara aljabar menggunakan ekspresi seperti dan CX1,3=|00|1212+|11|12XCX3,1=1212|00|+X12|11|. Akan ada batasan seberapa banyak yang dapat Anda lakukan dengan ini, tentu saja - perubahan sederhana dalam representasi tidak akan membuat algoritma kuantum yang sulit dipecahkan secara efisien, apalagi ditelusuri dengan perhitungan manual - tetapi Anda dapat menggunakan sirkuit sederhana dengan lebih efektif. menggunakan ekspresi ini daripada dengan matriks pemakan luar angkasa raksasa.

Oh ya, saya ingat proyektor dari awal di buku Mermin. Proyektor dan penambahan matriks adalah cara penyandian logika bersyarat dalam matriks!
ahelwer

"perubahan sederhana dalam representasi tidak mungkin membuat algoritma kuantum sulit dipecahkan secara efisien" - bagaimana dengan dalam kasus rotasi sumbu?
meowzz

1
@meowzz: Sekali-sekali, perubahan notasi seperti itu memungkinkan Anda membuat kemajuan konseptual dan membantu Anda memecahkan masalah dengan lebih mudah. Tetapi tidak sering, dan mungkin tidak dalam kasus perubahan notasi khusus ini, yang cukup terkenal. Mengenai kasus spesifik rotasi Sumbu, bagaimanapun, pertanyaan yang akan saya tanyakan adalah kemajuan spesifik apa yang dimungkinkan untuk menyelesaikan masalah, dan masalah apa yang membantu untuk itu.
Niel de Beaudrap

7

Ini pertanyaan yang bagus; itu salah satu buku teks yang tampaknya menyelinap di sekitar. Saya mencapai pertanyaan yang tepat ketika mempersiapkan kuliah komputasi kuantum beberapa hari yang lalu.

Sejauh yang saya tahu, tidak ada cara untuk mendapatkan matriks 8x8 yang diinginkan menggunakan produk Kronecker notasi untuk matriks. Yang dapat Anda katakan adalah: Operasi Anda menerapkan CNOT ke tiga qubit, dengan kontrol menjadi yang pertama dan target menjadi yang ketiga, memiliki efek berikut:

|000|000

|001|001

|010|010

|011|011

|100|101

|101|100

|110|111

|111|110

dan karena itu diberikan oleh matriks berikut:

U=[1000000001000000001000000001000000000100000010000000000100000010]

Matriks ini memang bukan atau . Tidak ada notasi berbasis produk Kronecker yang ringkas untuknya; hanya apa adanya.UI2CNOTCNOTI2


1

Sebagai ide umum CNOT membalik target berdasarkan kontrol. Saya memilih untuk membalik target jika kontrol , Anda dapat memilihnya juga. Jadi asumsikan keadaan multi-bagian umum apa pun . Sekarang Anda memilih kontrol dan target Anda, katakanlah is control dan is target. Menerapkan CNOT di akan menjadi hanya (=[1 0]T)(=[0 1]T)|ϕ=|123....n1nithkth|ϕ

CNOT|ϕ=CNOT|12...i...k...n1n=|12...i...k...n1n

Untuk membangun matriks gerbang CNOT seperti itu, kami menerapkan ( -Pauli matrix) jika keadaan ke- sudah naik dan kami menerapkan ( identitas ) jika keadaan ke- sedang turun. Kami menerapkan matriks ini pada posisi , yang merupakan target kami. Secara matematis, σxxithI2×2ithkth

CNOT=[|1...i...k11...i...k1|σx|k+1...nk+1...n|+all permutations of states other then ith]+[|1...i...k11...i...k1|I|k+1...nk+1...n|+all permutations of states other then ith]

Catatan state (target) dikecualikan saat membuat matriks permutasi dan pada posisi operator atau ditulis.kthkthσxI

Ambil contoh lima qubit di mana qubit adalah target dan adalah kontrol. Mari kita membangun matriks permutasi . Saya ambil, jika kontrol balik target. Anda dapat mengambil sebaliknya juga.2nd4thCNOT

CNOT=|11|σx|345345|+|11|σx|345345|+|11|σx|345345|+|11|σx|345345|+|11|σx|345345|+|11|σx|345345|+|11|σx|345345|+|11|σx|345345|+|11|I|345345|+|11|I|345345|+|11|I|345345|+|11|I|345345|+|11|I|345345|+|11|I|345345|+|11|I|345345|+|11|I|345345|
Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.