Untuk setiap chip kuantum IBM, seseorang dapat menulis kamus yang memetakan setiap kontrol qubit j ke daftar target yang diizinkan secara fisik, dengan anggapan j adalah kontrol dari CNOT. Sebagai contoh,
ibmqx4_c_to_tars = {
0: [],
1: [0],
2: [0, 1, 4],
3: [2, 4],
4: []} # 6 edges
untuk chip ibmqx4 mereka.
Apa yang akan menentukan untuk chip Bristlecone 72 qubit Google. Anda dapat menulis dikt sebagai pemahaman. Pertanyaan yang sama untuk chip qubit 19 milik Rigetti.
bristlecone
rigetti
cirq
rrtucci
sumber
sumber
Jawaban:
Operasi asli Bristlecone adalah CZ, bukan CNOT. Namun, Anda dapat mengubah antara keduanya dengan gerbang Hadamard jadi ini semacam perbedaan sepele.
Bristlecone dapat melakukan CZ antara pasangan qubit yang berdekatan di grid. Anda dapat melihat kisi dengan menginstal cirq dan mencetak perangkat Bristlecone:
Inilah cara Anda mendapatkan perangkat yang berisi operasi CZ yang diizinkan:
Set memiliki 121 elemen di dalamnya, dan agak acak apakah Anda mendapatkan CZ (x, y) atau CZ (y, x) di set, jadi saya tidak akan menyertakan cetakan set di sini.
Kendala tambahan yang perlu diingat adalah bahwa Anda tidak dapat melakukan dua CZs di samping satu sama lain secara bersamaan. Cirq memperhitungkan hal ini saat membuat sirkuit yang ditargetkan untuk Bristlecone. Sebagai contoh:
Dua operasi pertama terhuyung karena mereka adalah CZ yang berdekatan, tetapi dua yang kedua tidak karena tidak.
sumber
Dari posting blog asli yang menyajikan chip kuantum Bristlecone, berikut adalah peta konektivitas chip tersebut:
Peringatan : ungkapan di atas benar-benar tidak diverifikasi. Tampaknya berfungsi untuk qubit pertama, tampaknya logis bagi saya, tetapi terserah kepada Anda untuk memeriksa bahwa peta itu 100% benar.
Peringatan 2 : Posting blog Google tidak berbicara tentang orientasi koneksi antara qubit. Peta konektivitas yang diberikan di atas mengasumsikan bahwa koneksi bersifat bilateral.
sumber
Versi PyQuil saat ini menyediakan objek "ISA" yang menampung informasi yang Anda inginkan tentang prosesor kuantum Rigetti, tetapi tidak diformat seperti yang Anda minta. Saya seorang programmer Python yang buruk, jadi Anda harus memaafkan ketidakakuratan Pythonic saya — tetapi inilah cuplikan yang akan mengambil
device_name
dan memformat ulang pyQuil ISA ke dalam salah satu kamus Anda:Seperti dalam kasus Google, gerbang dua-qubit asli yang biasanya tersedia pada prosesor kuantum Rigetti adalah a
CZ
, yang (1) dua arah (†) dalam arti yangCZ q0 q1
sama denganCZ q1 q0
dan (2) mudah diubah menjadi salah satu pilihan AndaCNOT
s dengan menggulung target dengan gerbang Hadamard.† - Pelaksanaan fisik dari
CZ
gerbang dalam arsitektur superkonduktor yang diserahkan, yang mengapa Anda sering melihat deskripsi arsitektur termasukCZ q0 q1
tetapi tidakCZ q1 q0
. Ini adalah singkatan di mana qubit berpartisipasi di mana setengah dari interaksi fisik, bahkan jika hasilnya (mengabaikan efek kebisingan) sama dengan pemesanan.sumber