Trong "Thông tin lượng tử và thông tin lượng tử" của Mike và Ike, thuật toán của Grover được giải thích rất chi tiết. Tuy nhiên, trong cuốn sách và trong tất cả các giải thích tôi đã tìm thấy trực tuyến về thuật toán của Grover, dường như không có đề cập nào về cách thức xây dựng Oracle của Grover, trừ khi chúng ta đã biết chúng ta đang tìm kiếm trạng thái nào, đánh bại mục đích của thuật toán. Cụ thể, câu hỏi của tôi là: đưa ra một số f (x) sao cho với một số giá trị x, f (x) = 1, nhưng đối với tất cả những người khác, f (x) = 0, làm thế nào một người xây dựng một nhà tiên tri sẽ đưa chúng ta từ trạng thái ban đầu, tùy ý của chúng tôi | x> | y> đến | x> | y + f (x)>? Càng nhiều chi tiết rõ ràng càng tốt (có lẽ là một ví dụ?) Sẽ được đánh giá rất cao. Nếu việc xây dựng như vậy cho bất kỳ chức năng tùy ý nào là có thể với Hadamard, Pauli hoặc các cổng lượng tử tiêu chuẩn khác,