Tôi quan tâm đến một thuật toán lượng tử nhận đầu vào là một chuỗi n bit và nó tạo ra như là một phiên bản được xáo trộn lại (hoán vị) của chuỗi n bit này.
Ví dụ: nếu đầu vào là 0,0,1,1 (vì vậy n = 4 trong trường hợp này) thì các câu trả lời có thể là:
- 0,0,1,1
- 0,1,0,1
- 0,1,1,0
- 1,0,0,1
- 1,0,1,0
- 1,1,0,0
Lưu ý rằng chỉ có một đầu ra được tạo ngẫu nhiên trong số tất cả các đầu ra hợp lệ có thể.
Làm thế nào điều này có thể được thực hiện tốt nhất trong một thuật toán lượng tử ?
Một giải pháp cho vấn đề này đã được đề xuất như là một phần của một trong những câu trả lời cho Cách tạo thuật toán lượng tử tạo ra chuỗi 2 n bit với số lượng 1 bit bằng nhau? . Nhưng vấn đề với giải pháp này là điều này đòi hỏi khoảng qubit trợ giúp sẽ trở nên rất lớn nếu n lớn.
Ghi chú:
- Xin vui lòng, không cung cấp một thuật toán cổ điển mà không có bất kỳ lời giải thích nào về cách các bước của thuật toán cổ điển có thể được ánh xạ tới một máy tính lượng tử phổ quát.
- đối với tôi có 2 cách tốt để diễn giải "được chọn ngẫu nhiên trong số tất cả các kết quả đầu ra tốt" : (1) mỗi đầu ra tốt có thể có cơ hội được chọn như nhau. (2) mỗi đầu ra tốt có thể có cơ hội> 0 được chọn.