Qiskit Bosons
qiskit-bosons memperluas Qiskit SDK dengan alat untuk mengerjakan sistem bosonik. Dalam cakupannya, paket ini menyediakan hal-hal berikut:
-
Struktur data yang efisien untuk merepresentasikan dan memanipulasi operator bosonik
-
Framework untuk mengimplementasikan encoding boson-ke-qubit, dibangun di sekitar encoding level bersama (unary dengan atau tanpa proyektor, binary standar, Gray), plus library mapper yang umum dipakai
-
Framework dan library gate untuk mengekspresikan circuit bosonik
-
Pipeline transpilasi yang terintegrasi dengan proses Transpiler Qiskit untuk mensintesis circuit bosonik menjadi circuit berbasis qubit
Mulai
Paket ini mencakup seluruh alur dari operator bosonik sampai circuit qubit. Kamu bisa bekerja di rezim bosonik dengan representasi operator maupun circuit, sebelum memilih truncation dan encoding boson-ke-qubit yang masuk ke pipeline transpiler multi-representasi Qiskit.
Semua fitur ini dijelaskan di beberapa panduan untuk membantumu memulai. Untuk gambaran menyeluruh dari ujung ke ujung, mulai dengan panduan Bose-Hubbard.
Pembahasan teknis
Maksud desain
Paket ini sengaja dirancang agar selaras dengan Qiskit: dibangun di atas inti yang diimplementasikan dalam Rust dan menyediakan language binding first-party ke Python. API-nya berusaha menyerupai Qiskit agar terintegrasi mulus ke alur kerja pengguna yang berpengalaman memprogram Qiskit. Meski saat ini belum ada C API, arsitekturnya disiapkan untuk mendukungnya jika suatu saat dibutuhkan. Arsitektur paket ini juga sengaja dibuat analog dengan qiskit-fermions.
Prinsip inti dalam desain qiskit-bosons adalah memisahkan representasi circuit bosonik dari bentuk qubitisasinya. Lebih tepatnya: circuit bosonik bermakna dengan sendirinya dan tidak membutuhkan pemetaan ke ruang qubit agar bisa ditafsirkan. Selain itu, representasi circuit bosonik tidak boleh membuat asumsi apa pun tentang truncation dan encoding boson-ke-qubit yang diterapkan kemudian. Keduanya baru masuk saat waktu transpile.
Kebijakan deprecation
Kami mengikuti semantic versioning dan berpedoman pada prinsip dalam kebijakan deprecation Qiskit. Sesekali kami mungkin membuat perubahan yang merusak (breaking change) demi memperbaiki pengalaman pengguna. Jika memungkinkan, kami akan mempertahankan antarmuka lama dan menandainya sebagai deprecated, selama masih bisa berdampingan dengan yang baru. Setiap peningkatan besar, breaking change, atau deprecation akan didokumentasikan di catatan rilis.
Berkontribusi
Kode sumbernya tersedia di GitHub.
Panduan developer ada di CONTRIBUTING.md di root repositori proyek ini. Dengan berpartisipasi, kamu diharapkan menjunjung kode etik Qiskit.
Kami memakai GitHub issues untuk melacak permintaan dan bug.
Mengutip paket ini
Kalau kamu memakai paket ini dalam penelitianmu, gunakan file CITATION.bib di repositori proyek ini untuk mengutip referensi yang sesuai.