ในการคำนวณควอนตัมและข้อมูลควอนตัมของไมค์และไอค์อัลกอริทึมของโกรเวอร์มีการอธิบายอย่างละเอียด อย่างไรก็ตามในหนังสือและในคำอธิบายทั้งหมดที่ฉันพบออนไลน์สำหรับอัลกอริทึมของ Grover ดูเหมือนจะไม่มีการเอ่ยถึงวิธีการสร้าง Oracle ของ Grover เว้นแต่ว่าเรารู้อยู่แล้วว่าเรากำลังค้นหาเอาชนะจุดประสงค์ของ ขั้นตอนวิธี โดยเฉพาะคำถามของฉันคือ: ให้ f (x) เช่นนั้นสำหรับบางค่า x, f (x) = 1 แต่สำหรับคนอื่น ๆ ทั้งหมด f (x) = 0 เราจะสร้าง oracle ได้อย่างไรจาก สถานะเริ่มต้นโดยพลการของเรา | x> | y> ถึง | x> | y + f (x)>? รายละเอียดที่ชัดเจนที่สุดเท่าที่จะเป็นไปได้ (อาจเป็นตัวอย่าง?) จะได้รับการชื่นชมอย่างมาก หากการก่อสร้างใด ๆ สำหรับฟังก์ชั่นใด ๆ เป็นไปได้ด้วย Hadamard, Pauli หรือประตูควอนตัมมาตรฐานอื่น ๆ