Khả năng của một cổng lượng tử thiết lập lại


8

Tôi muốn có một cổng "thiết lập lại". Cổng này sẽ có ảnh hưởng để mang lại một qubit đến nhà nước. Rõ ràng, một cổng như vậy không phải là đơn nhất (và vì vậy tôi không thể tìm thấy bất kỳ triển khai đáng tin cậy nào về các cổng phổ quát).|0

Bây giờ đối với các nhu cầu cụ thể của tôi, tôi cần khả năng này để đặt lại một qubit hoặc đăng ký lượng tử về trạng thái đó để người dùng luôn có thể bắt đầu từ . Tôi đang tạo một ngôn ngữ lập trình nhỏ chuyển mã sang QASM và khi một hàm bị thoát, tôi muốn tất cả các biến (lượng tử) cục bộ (qubit) được đặt lại thành để chúng có thể được sử dụng lại. Hướng dẫn đặt lại QASM không hoạt động trên bộ xử lý thực.|0|0

Tôi nghĩ rằng một cái gì đó cho hiệu ứng này có thể đạt được với ước tính pha lượng tử nhưng tôi tự hỏi liệu có cách nào khác không.


"Tôi muốn tất cả (lượng tử) các biến (qubit) thiết lập lại địa phương để để họ có thể được tái sử dụng" => hầu hết thời gian, điều này sẽ được thực hiện bởi uncomputation và không phải bởi Reseting tàn nhẫn các qubit không sử dụng. Nếu một trong những qubit "không sử dụng" này vẫn bị vướng vào một qubit "đang sử dụng", việc đặt lại cái không sử dụng cũng sẽ ảnh hưởng đến trạng thái của cái đã sử dụng, điều mà hầu hết không mong muốn. |0
Nensonee

@N006ee Tôi đồng ý. Đặt lại tàn bạo là không an toàn. Tôi bắt đầu giải quyết đơn giản là cảnh báo người dùng khi qubit (đăng ký) đã được sử dụng.
Ntwali B.

1
@N006ee Nếu chúng bị vướng víu, việc không tính toán cũng sẽ ảnh hưởng đến các qubit bị vướng víu theo cách này hay cách khác.
Norbert Schuch

@Blue cảm ơn đã chỉnh sửa. Thậm chí không nhận ra tiêu đề câu hỏi vô nghĩa như thế nào.
Ntwali B.

Câu trả lời:


6

Một cách đơn giản là đo qubit trong tiêu chuẩn, , cơ sở. Nếu bạn nhận được câu trả lời 0, thì bạn đã có trạng thái bạn muốn. Nếu không, bạn áp dụng một chút lật nó.Z

Thật vậy, nếu bạn muốn thực hiện một hoạt động đơn nhất, bạn cần một số hoạt động đo lường ở đâu đó, cho dù đó là phép đo trực tiếp, hoặc thực hiện bản đồ CP hoặc POVM (nhưng đối với các tùy chọn này, bạn cần giới thiệu ancillas của một trạng thái cố định, mà thay vào đó phủ nhận điểm). Hoặc bạn có thể sử dụng tiếng ồn trong hệ thống, nhưng bạn không có khả năng kiểm soát hoàn toàn nó - đó là tiếng ồn! Tất nhiên, không có tùy chọn nào trong số này chỉ đặt lại một qubit duy nhất; bất cứ điều gì qubit bị vướng vào cũng bị ảnh hưởng, nhưng đó là định nghĩa của "thiết lập lại" trong bối cảnh lượng tử.

Tùy chọn duy nhất khác là giải nén, nhưng đây không phải là một tùy chọn chung bởi vì, nói chung, bạn phải giải nén toàn bộ tính toán để đặt lại ngay cả một qubit duy nhất và điều đó đặt lại mọi thứ. Ngoại trừ nó không hoạt động hoàn hảo vì lỗi. Bạn sẽ tốt hơn khi bắt đầu một tính toán mới. Có các kịch bản cụ thể trong đó một qubit ancilla được sử dụng và nó có thể không được tính toán, nhưng điều này thường được tích hợp vào thuật toán vì bước không tính toán rất quan trọng để loại bỏ một số vướng mắc không mong muốn sẽ xuất hiện.


Điều này đã gần nhưng vì tôi đang nhắm mục tiêu QASM, nó không cho phép áp dụng các cổng tiếp theo cho các qubit sau khi đo. Và tất nhiên, bất kỳ qubit vướng víu nào cũng sẽ xác định trạng thái của chúng. Như đã nhận xét về các câu trả lời khác, nỗ lực của tôi là sai lầm nhưng tôi đánh giá cao tất cả các câu trả lời.
Ntwali B.

1
Bạn phải phân biệt giữa những gì QASM không cho phép và những gì phần cứng hiện tại không cho phép. Nghỉ ngơi hoặc áp dụng một cổng sau khi đo là hoàn toàn tốt trong QASM (tôi đang nói về OpenQASM). Nhưng đó là một hạn chế của phần cứng hiện tại mà các hoạt động này không thể diễn ra. Nếu bạn tạo QASM như vậy, bạn vẫn có thể mô phỏng nó. Và phần cứng của tương lai không xa cũng sẽ hỗ trợ nó.
Ali Javadi

|0

3

Tôi không nghĩ rằng bạn có thể đạt được điều này chỉ với một cổng duy nhất, nhưng điều thú vị của cổng lượng tử và biến đổi đơn nhất là chúng có thể đảo ngược, do đó, khi thực hiện một chức năng trong mạch lượng tử của bạn, tất cả những gì bạn cần làm là 'không tính toán' nó chỉ bằng cách đảo ngược các cổng mà bạn đã sử dụng.

|0

Điều này có nghĩa là bạn phải "thiết lập lại" theo một cách cụ thể cho từng chức năng.


4
chỉ hoạt động nếu bạn biết rằng không có lỗi xảy ra. Trong một hệ thống ồn ào, bạn không thể hoàn tác tiếng ồn.
DaftWullie

1
Đây không phải là một ý tưởng tồi. Và từ quan điểm lập trình, nó cũng có thể thực hiện được. Mặc dù sau nhiều suy nghĩ, nỗ lực này của tôi đã bị nhầm lẫn vì ba lý do: 1) sự không tính toán sẽ phục hồi tính toán hữu ích và đối với sự bất mãn của người dùng, chức năng sẽ xuất hiện không làm gì 2) chúng ta không thể giải mã một phép đo nếu có một. 3) như @DaftWulie vừa đề xuất, sự hiện diện của lỗi làm cho lược đồ bị rung và lỗi có thể sẽ xảy ra. Nhưng tôi rất vui vì bạn đã đề xuất này. Cảm ơn bạn.
Ntwali B.

2
@NtwaliB. Đối với logic cổ điển, luôn luôn có thể giải nén (= đặt lại) không gian làm việc ancilla trong khi vẫn giữ kết quả mong muốn, đó là điểm chính của tính toán đảo ngược cổ điển.
Norbert Schuch

@NorbertSchuch Đó là sự thật. Nhưng tôi đã nói về các qubit tùy ý không phải là ancilla cbit sau khi đo.
Ntwali B.
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.