Sebuah oracle (setidaknya dalam konteks ini) hanyalah sebuah operasi yang memiliki beberapa properti yang Anda tidak tahu, dan sedang berusaha mencari tahu. Istilah "kotak hitam" digunakan secara setara, untuk menyampaikan gagasan bahwa itu hanya kotak yang tidak dapat Anda lihat di dalamnya, dan karenanya Anda tidak tahu apa yang dilakukannya. Yang Anda tahu adalah bahwa Anda dapat memasok input dan menerima output. Dalam diagram sirkuit yang Anda gambarkan, itu hanya kotak . Yang lainnya adalah hal-hal yang Anda tambahkan untuk membantu menginterogasi oracle dan menemukan propertinya.Uf
Untuk memberikan oracle, Anda dapat menulisnya dalam bentuk apa pun yang valid yang mendefinisikan peta dari semua input yang mungkin ke output. Ini bisa berupa matriks (mungkin dengan parameter yang tidak diketahui), atau bisa juga peta (ketat, ), karena diberikan salah satu deskripsi, Anda dapat mengerjakan yang lainnya.U: ( x , y) ↦ ( x , y⊕ f( x ) )∀ x , y∈ { 0 , 1 }