Bukti Adleman bahwa terkandung dalam P / p o l y menunjukkan bahwa jika ada algoritma acak untuk masalah yang berjalan dalam waktu t ( n ) pada input ukuran n , maka ada juga algoritma deterministik untuk masalah tersebut. yang berjalan dalam waktu Θ ( t ( n ) ⋅ n ) pada input berukuran n [algoritma menjalankan algoritma acak pada Θ ( n )string keacakan independen. Harus ada keacakan untuk algoritma berulang yang baik untuk semua input yang mungkin]. Algoritma deterministik tidak seragam - mungkin berperilaku berbeda untuk ukuran input yang berbeda. Jadi argumen Adleman menunjukkan bahwa - jika seseorang tidak peduli tentang keseragaman - pengacakan hanya dapat mempercepat algoritma dengan faktor yang linier dalam ukuran input.
Apa saja contoh konkret di mana pengacakan mempercepat perhitungan (sejauh yang kami ketahui)?
Salah satu contoh adalah pengujian identitas polinomial. Di sini input adalah sirkuit aritmatika n-ukuran yang menghitung polinomial variate-m di atas bidang, dan tugasnya adalah untuk mengetahui apakah polinomialnya identik dengan nol. Algoritma acak dapat mengevaluasi polinomial pada titik acak, sedangkan algoritma deterministik terbaik yang kita tahu (dan mungkin yang terbaik yang ada) mengevaluasi polinomial pada banyak titik.
Contoh lain adalah minimum spanning tree, di mana algoritma acak terbaik oleh Karger-Klein-Tarjan adalah waktu linear (dan probabilitas kesalahan secara eksponensial kecil!), Sedangkan algoritma deterministik terbaik oleh Chazelle berjalan dalam waktu ( α adalah fungsi Ackermann terbalik, jadi percepatan pengacakan sangat kecil). Menariknya, dibuktikan oleh Pettie dan Ramachandran bahwa jika ada algoritma waktu linear deterministik yang tidak seragam untuk pohon rentang minimum, maka ada juga algoritma waktu linear deterministik seragam.
Apa saja contoh lainnya? Contoh mana yang Anda tahu di mana kecepatan pengacakan besar, tetapi ini mungkin hanya karena kami belum menemukan algoritma deterministik yang cukup efisien?