2
oracle ในอัลกอริทึมการค้นหาของโกรเวอร์มีการใช้งานอย่างไร
อัลกอริธึมการค้นหาของโกรเวอร์ให้ความเร็วในการหากำลังสองที่พิสูจน์ได้สำหรับการค้นหาฐานข้อมูลที่ไม่เรียงลำดับ อัลกอริทึมจะแสดงโดยวงจรควอนตัมต่อไปนี้: ในการแสดงมากที่สุดเป็นส่วนสำคัญของโปรโตคอลเป็น "ประตู oracle"ซึ่ง "อย่างน่าอัศจรรย์" ประสิทธิภาพการดำเนินงาน|อย่างไรก็ตามบ่อยครั้งที่มีคนพูดว่าความยากลำบากที่จะรู้ว่าประตูดังกล่าวเป็นอย่างไร ที่จริงแล้วอาจดูเหมือนว่าการใช้ "oracle" นี้เป็นเพียงวิธีการกวาดล้างความยากลำบากใต้พรมUωUωU_\omega|x⟩↦(−1)f(x)|x⟩|x⟩↦(−1)f(x)|x⟩|x\rangle\mapsto(-1)^{f(x)}|x\rangle เราจะรู้ได้อย่างไรว่าการดำเนินการดั้งเดิมนั้นเกิดขึ้นจริงหรือไม่? และถ้าเป็นเช่นนั้นความซับซ้อนของมัน (เช่นในแง่ของความซับซ้อนของการสลายตัวของประตู) คืออะไร?