Pelajari komputasi kuantum dengan Quantum Katas

ka·ta | kah-tuh

Pola untuk belajar, berlatih, dan menerapkan keterampilan, metode, dan proses baru.

Kata Kuantum adalah tutorial sumber terbuka, mandiri, dan latihan pemrograman yang mengajarkan elemen komputasi kuantum dan Q# bahasa pemrograman secara bersamaan.

Belajar dengan melakukan

Tutorial dan latihan yang dikumpulkan dalam Kata Quantum menekankan pengalaman langsung untuk memperkuat pembelajaran konsep. Tugas pemrograman mencakup berbagai konsep kuantum yang berkembang dari sangat sederhana hingga cukup menantang. Untuk setiap tugas, Anda perlu mengisi beberapa kode yang hilang; kata pertama mungkin hanya memerlukan satu baris, sementara latihan selanjutnya mungkin memerlukan fragmen kode yang cukup besar.

Yang paling penting, kata termasuk kerangka kerja pengujian yang menjalankan dan memvalidasi solusi Anda untuk latihan. Ini memungkinkan Anda untuk mendapatkan umpan balik segera tentang solusi Anda dan mempertimbangkan kembali pendekatan Anda jika salah. Dan jika Anda terjebak, sebagian besar kata memiliki buku kerja yang menyertainya dengan solusi dan penjelasan yang benar.

Anda dapat menggunakan kata di lingkungan pilihan Anda:

  • Jupyter Notebooks di lingkungan Binder online yang telah dikonfigurasi sebelumnya, tanpa perlu penyiapan
  • Jupyter Notebooks yang berjalan di komputer lokal Anda
  • Visual Studio di komputer lokal Anda
  • Visual Studio Code di komputer lokal Anda

Konsep apa yang dicakup oleh Katas Kuantum?

Setiap kata mengeksplorasi konsep dasar komputasi kuantum, dengan beberapa mencakup dasar-dasar dan beberapa menyelam lebih dalam ke dalam algoritma dan protokol kuantum. Jalur pembelajaran berikut disarankan untuk memulai dan memastikan Anda memiliki pemahaman yang kuat tentang konsep dasar komputasi kuantum. Tentu saja, Anda dapat melewati topik yang nyaman dengan Anda dan menjelajahi kata-kata dalam urutan apa pun yang Anda inginkan.

Pengantar komputasi kuantum

Kata Deskripsi
Aritmetika kompleks Tutorial ini menjelaskan beberapa latar belakang matematika yang diperlukan untuk bekerja dengan komputasi kuantum, seperti bilangan imajiner dan kompleks.
Aljabar linier Aljabar linear digunakan untuk mewakili status kuantum dan operasi dalam komputasi kuantum. Tutorial ini mencakup dasar-dasarnya, termasuk matriks dan vektor.
Konsep qubit Pelajari tentang qubit - salah satu konsep inti dari komputasi kuantum.
Gerbang kuantum qubit tunggal Tutorial ini memperkenalkan gerbang kuantum qubit tunggal, yang bertindak sebagai blok bangunan algoritma kuantum dan mengubah status qubit kuantum dengan berbagai cara.
Sistem multi-qubit Tutorial ini memperkenalkan sistem multi-qubit, representasi mereka dalam notasi matematika dan kode Q#, serta konsep keterikatan.
Gerbang kuantum multi-qubit Tutorial ini mengikuti tutorial gerbang kuantum qubit tunggal, dan berfokus pada penerapan gerbang kuantum ke sistem multi-qubit.

Dasar-dasar komputasi kuantum

Kata Deskripsi
Mengenali gerbang kuantum Serangkaian latihan yang dirancang untuk membuat Anda terbiasa dengan gerbang kuantum dasar di Q#. Termasuk latihan untuk gerbang dasar qubit tunggal dan multi-qubit, gerbang yang adjoin dan terkendali, dan cara menggunakan gerbang untuk memodifikasi status qubit.
Membuat superposisi kuantum Gunakan latihan ini untuk membiasakan diri dengan konsep superposisi dan pemrograman di Q#. Termasuk latihan untuk gerbang qubit tunggal dan multi-qubit dasar, superposisi, dan kontrol alur dan rekursi dalam Q#.
Membedakan status kuantum menggunakan pengukuran Selesaikan latihan ini sambil belajar tentang pengukuran kuantum dan status ortogonal dan non-ortogonal.
Pengukuran gabungan Pelajari tentang pengukuran paritas bersama dan cara menggunakan operasi Ukur untuk membedakan status kuantum.

Algoritma kuantum

Kata Deskripsi
Teleportasi kuantum Kata ini mengeksplorasi teleportasi kuantum - protokol yang memungkinkan mengomunikasikan status kuantum hanya menggunakan komunikasi klasik dan keterikatan kuantum yang sebelumnya dibagikan.
Superdense coding Superdense coding adalah protokol yang memungkinkan transmisi dua bit informasi klasik dengan mengirimkan hanya satu qubit menggunakan keterikatan kuantum yang dibagikan sebelumnya.
Algoritma Deutsch–Jozsa Algoritma ini terkenal sebagai salah satu contoh pertama dari algoritma kuantum yang secara eksponensial lebih cepat daripada algoritma klasik deterministik.
Menjelajahi properti tingkat tinggi dari algoritma pencarian Grover Pengenalan tingkat tinggi ke salah satu algoritma paling terkenal dalam komputasi kuantum. Ia memecahkan masalah menemukan input ke kotak hitam (oracle) yang menghasilkan output tertentu.
Menerapkan algoritma pencarian Grover Kata ini menyelami lebih dalam algoritma pencarian Grover, dan mencakup penulisan oracle, pelaksanaan langkah-langkah algoritma, dan akhirnya penyatuan semuanya.
Memecahkan masalah nyata menggunakan algoritma Grover: Masalah SAT Serangkaian latihan yang menggunakan algoritma Grover untuk memecahkan masalah realistis, menggunakan masalah satisfiability boolean (SAT) sebagai contoh.
Memecahkan masalah nyata menggunakan algoritma Grover: Masalah pewarnaan grafik Kata ini lebih lanjut mengeksplorasi algoritma Grover, kali ini untuk memecahkan masalah kepuasan kendala, menggunakan masalah pewarnaan grafik sebagai contoh.

Protokol dan pustaka kuantum

Kata Deskripsi
Protokol BB84 untuk distribusi kunci kuantum Pelajari dan terapkan protokol distribusi kunci kuantum, BB84, menggunakan qubit untuk bertukar kunci kriptografi.
Kode koreksi kesalahan bit-flip Jelajahi koreksi kesalahan kuantum dengan kode koreksi kesalahan kuantum (QEC) yang paling sederhana - kode bit-flip tiga qubit.
Estimasi fase Algoritma estimasi fase adalah beberapa blok pembangun yang paling mendasar pada komputasi kuantum. Pelajari tentang estimasi fase dengan latihan-latihan ini yang mencakup estimasi fase kuantum dan bagaimana mempersiapkan dan menjalankan rutinitas estimasi fase di Q#.
Aritmetika kuantum: Membangun adder ripple-carry Serangkaian latihan mendalam yang mengeksplorasi penambahan ripple carry pada komputer kuantum. Bangun adder kuantum di tempat, perluas dengan algoritma yang berbeda, dan akhirnya, bangun subtraktor kuantum di tempat.

Permainan entanglemen kuantum

Kata Deskripsi
Permainan CHSH Jelajahi keterikatan kuantum dengan implementasi permainan CHSH. Permainan nonlokal ini menunjukkan bagaimana keterikatan kuantum dapat digunakan untuk meningkatkan peluang pemain untuk menang melampaui apa yang mungkin dengan strategi klasik murni.
Permainan GHZ Permainan GHZ adalah permainan nonlokal lainnya, tetapi melibatkan tiga pemain.
Permainan persegi ajaib Mermin-Peres Serangkaian latihan yang mengeksplorasi pseudo-telepati kuantum untuk memecahkan permainan persegi ajaib.

Langkah berikutnya