Algoritma Shor
Sekarang kita akan beralih ke masalah faktorisasi bilangan bulat, dan melihat bagaimana masalah ini bisa diselesaikan secara efisien di komputer kuantum menggunakan estimasi fase. Algoritma yang akan kita dapatkan adalah algoritma Shor untuk faktorisasi bilangan bulat. Shor tidak mendeskripsikan algoritmanya secara khusus dalam hal estimasi fase, tapi itu adalah cara yang alami dan intuitif untuk menjelaskan cara kerjanya.
Kita akan mulai dengan membahas masalah perantara yang dikenal sebagai masalah pencarian orde dan melihat bagaimana estimasi fase memberikan solusi untuk masalah ini. Kita kemudian akan melihat bagaimana solusi efisien untuk masalah pencarian orde memberikan kita solusi efisien untuk masalah faktorisasi bilangan bulat. (Ketika solusi untuk satu masalah memberikan solusi untuk masalah lain seperti ini, kita bilang bahwa masalah kedua mereduksi ke yang pertama — jadi dalam hal ini kita mereduksi faktorisasi bilangan bulat ke pencarian orde.) Bagian kedua dari algoritma Shor ini sama sekali tidak menggunakan komputasi kuantum; ini sepenuhnya klasik. Komputasi kuantum hanya diperlukan untuk menyelesaikan pencarian orde.
Masalah pencarian orde
Beberapa teori bilangan dasar
Untuk menjelaskan masalah pencarian orde dan bagaimana ia bisa diselesaikan menggunakan estimasi fase, akan sangat membantu untuk mulai dengan beberapa konsep dasar teori bilangan, dan memperkenalkan beberapa notasi yang berguna di sepanjang jalan.
Untuk memulai, untuk setiap bilangan bulat positif definisikan himpunan seperti ini.
Sebagai contoh, dan seterusnya.
Ini adalah himpunan bilangan, tapi kita bisa menganggapnya lebih dari sekadar himpunan. Khususnya, kita bisa memikirkan operasi aritmetika pada seperti penjumlahan dan perkalian — dan jika kita sepakat untuk selalu mengambil jawaban kita modulo (yaitu, membagi dengan dan mengambil sisa sebagai hasilnya), kita akan selalu tetap dalam himpunan ini ketika kita melakukan operasi ini. Dua operasi spesifik penjumlahan dan perkalian, keduanya diambil modulo mengubah menjadi sebuah ring, yang merupakan jenis objek yang sangat penting dalam aljabar.
Misalnya, dan adalah elemen dari dan jika kita mengalikannya kita mendapat yang meninggalkan sisa ketika dibagi Kadang kita mengekspresikan ini sebagai berikut.
Tapi kita juga bisa menulis asalkan sudah jelas bahwa kita bekerja dalam hanya untuk menjaga notasi kita sesederhana mungkin.
Sebagai contoh, berikut adalah tabel penjumlahan dan perkalian untuk
Di antara elemen dari elemen-elemen yang memenuhi adalah istimewa. Seringkali himpunan yang berisi elemen-elemen ini dinotasikan dengan tanda bintang seperti ini.
Jika kita memusatkan perhatian pada operasi perkalian, himpunan membentuk sebuah grup — khususnya sebuah grup abelian — yang merupakan jenis objek penting lainnya dalam aljabar. Ini adalah fakta dasar tentang himpunan-himpunan ini (dan grup hingga pada umumnya), bahwa jika kita memilih sembarang elemen dan berulang kali mengalikan dengan dirinya sendiri, kita akan selalu akhirnya mendapat angka
Untuk contoh pertama, ambil Kita punya bahwa karena dan jika kita mengalikan dengan dirinya sendiri kita mendapat seperti yang dikonfirmasi tabel di atas.
Sebagai contoh kedua, ambil Jika kita menelusuri bilangan dari hingga yang memiliki GCD sama dengan dengan adalah sebagai berikut.
Untuk setiap elemen ini, dimungkinkan untuk memangkatkan bilangan tersebut ke pangkat bilangan bulat positif untuk mendapat Berikut adalah pangkat terkecil yang berhasil:
Tentu saja kita bekerja dalam untuk semua persamaan ini, yang tidak kita tulis — kita anggap itu implisit untuk menghindari kerumitan. Kita akan terus melakukan itu di sepanjang sisa pelajaran.
Pernyataan masalah dan hubungan dengan estimasi fase
Sekarang kita bisa menyatakan masalah pencarian orde.
Atau, dalam hal notasi yang baru kita perkenalkan di atas, kita diberi dan kita mencari bilangan bulat positif terkecil sedemikian sehingga Bilangan ini disebut orde dari modulo
Untuk menghubungkan masalah pencarian orde dengan estimasi fase, mari kita pikirkan tentang operasi yang didefinisikan pada sebuah sistem yang keadaan klasiknya bersesuaian dengan di mana kita mengalikan dengan elemen tetap
Untuk jelasnya, kita melakukan perkalian dalam jadi tersirat bahwa kita mengambil hasil kali modulo di dalam ket pada sisi kanan persamaan.
Misalnya, jika kita ambil dan maka aksi