Làm thế nào là tính toán được thực hiện trong một mảng mã bề mặt 2D?


10

Trong một mạng mã bề mặt 2D, có một số qubit dữ liệu và một số qubit đo lường. Giả sử chúng ta muốn thực hiện tính toán 2 qubit, ví dụ, giả sử một cổng X trên qubit-1 theo sau là cổng CNOT với qubit-1 là bit điều khiển và qubit-2 làm bit đích.

H: Làm thế nào tính toán này được thực hiện trong một máy tính lượng tử với sự sắp xếp mã bề mặt 2D của các qubit? tức là cổng nào được áp dụng và trên qubit nào?


Bạn có thể muốn làm rõ liệu bạn có nghĩa là tất cả các qubit nằm trong một mảng 2D hay chỉ là các qubit được mã hóa nằm trong các phân đoạn là các mảng 2D.
Niel de Beaudrap

Câu trả lời:


9

Tôi sẽ minh họa cách người ta có thể thực hiện các thao tác bằng cách sử dụng các thao tác logic trên các qubit và sử dụng phẫu thuật mạng cho các hoạt động hai qubit.

Trong các sơ đồ bên dưới, tất cả các 'dấu chấm' là các qubit dữ liệu: các qubit đo lường được bỏ qua để giúp thể hiện các nguyên tắc cơ bản rõ ràng hơn. Các qubit đo lường có sẵn khi bạn thực hiện các phép đo ổn định và chỉ tham gia vào các phép đo ổn định, vì vậy câu chuyện là về những gì bạn làm với các qubit dữ liệu - bao gồm những điều như các phép đo ổn định mà bạn thực hiện trên các qubit dữ liệu.

Mã bề mặt và các hoạt động Pauli qubit đơn logic

Người ta có thể sử dụng các mảnh vỡ của máy bay để lưu trữ qubit. Hình ảnh bên dưới cho thấy bốn qubit được mã hóa như một phần của mạng tinh thể lớn hơn: các chấm sáng có viền đen là các qubit không liên quan đến các qubit được mã hóa và về nguyên tắc có thể ở bất kỳ trạng thái nào bạn thích, không bị tách rời khỏi phần còn lại.


Trong mỗi phân đoạn này, qubit được xác định bởi các mối quan hệ ổn định (lý tưởng là trong trường hợp không có lỗi) giữ giữa các qubit. Đối với mã bề mặt với các loại điều kiện biên được minh họa ở đây, đây là một trong hai 3-qubit X hoặc Z ổn định xung quanh ranh giới, và một trong hai 4-qubit X hoặc Z ổn định trong 'bulk' hoặc cơ thể của mã này. Mô hình của các chất ổn định này được minh họa dưới đây. Lưu ý rằng mỗi bộ ổn định X trùng với bộ ổn định Z , làm như vậy ở hai qubit, để chúng đi lại với nhau. (Xin lỗi về kích thước hình ảnh: Tôi không thể quản lý để khiến nó hiển thị ở kích thước hợp lý.)



Lưu ý rằng bằng cách sử dụng tính đều đặn của các chất ổn định này, không cần thiết cho đoạn mã bề mặt là hình vuông (hoặc thậm chí theo nguyên tắc hình chữ nhật). * Điều này sẽ trở nên quan trọng sau này.

Có một số hoạt động (sản phẩm tenor) Pauli đi lại với tất cả các chất ổn định này. Chúng có thể được sử dụng để xác định các toán tử Pauli logic , mô tả các cách mà bạn có thể truy cậpchuyển đổi các qubit logic. Chẳng hạn, một sản phẩm của các toán tử Z trên bất kỳ hàng nào từ ranh giới đến ranh giới sẽ đi lại với tất cả các bộ ổn định và có thể được lấy để biểu diễn một toán tử Z logic ; một sản phẩm của các toán tử X trên bất kỳ cột nào từ ranh giới này sang ranh giới khác có thể được lấy tương tự để biểu diễn một toán tử X logic :



Không quan trọng bạn sử dụng hàng nào hoặc cột nào: điều này xuất phát từ thực tế là sản phẩm của hai hàng toán tử Z hoặc bất kỳ hai cột toán tử X nào , có thể được tạo như một sản phẩm của chất ổn định và do đó nhận ra hoạt động nhận dạng trên qubit được mã hóa (như máy phát điện ổn định mình là nhà khai thác mà thực hiện các hoạt động nhận dạng trên một trạng thái qubit được mã hóa, theo định nghĩa). Vì vậy: nếu bạn muốn áp dụng thao tác X cho qubit được mã hóa, một cách để làm như vậy là áp dụng thao tác X logic như vậy , bằng cách nhận ra X toán tử trên mỗi qubit trong một cột đạt giữa hai ranh giới. **

Các phép đo Pauli đơn qubit hợp lý

Một lợi thế của việc nghĩ về các qubit được mã hóa theo các toán tử logic là nó cho phép bạn cũng xác định cách bạn có thể thực hiện một 'phép đo logic' - nghĩa là, một phép đo không chỉ của (một số) các qubit trong mã, nhưng của dữ liệu mà họ mã hóa. Đi theo logic X điều hành trên, ví dụ: các nhà điều hành XX ⊗ ... ⊗ X là không chỉ đơn nhất, nhưng Hermitian, có nghĩa là nó là một quan sát mà bạn có thể đo lường . (Tất nhiên, cùng một ý tưởng được sử dụng với các bộ ổn định mã, tất nhiên, chúng tôi đo lường để cố gắng phát hiện lỗi.) Điều này có nghĩa là để nhận ra phép đo X logic , nó đủ để đo logic Xcó thể quan sát. (Điều tương tự cũng xảy ra đối với Z có thể quan sát được, nếu bạn muốn nhận ra phép đo cơ sở tiêu chuẩn trên qubit được mã hóa của mình; và mọi thứ tôi nói dưới đây cũng có thể được áp dụng cho các phép đo Z logic với các sửa đổi phù hợp.)

Bây giờ - đo lường mức logic X có thể quan sát được không hoàn toàn giống với việc đo từng toán tử X qubit đơn lẻ một lần. Nhà điều hành XX ⊗ ... ⊗ X chỉ có hai giá trị riêng, +1 và -1, vì vậy đo mà nhà điều hành chính xác chỉ có thể có hai kết quả, trong khi đo mỗi n qubit sẽ có 2 n kết quả. Ngoài ra, việc đo từng toán tử X qubit đơn sẽ không giữ bạn trong không gian mã: nếu bạn muốn thực hiện tính toán trên trạng thái sau đo lường dự kiến, bạn sẽ phải thực hiện nhiều công việc dọn dẹp để khôi phục qubit đến trạng thái được mã hóa đúng.

Tuy nhiên: nếu bạn không ngại thực hiện công việc dọn dẹp đó hoặc nếu bạn không quan tâm đến việc làm việc với trạng thái sau đo lường, bạn có thể mô phỏng phép đo X logic bằng cách thực hiện các phép đo một qubit đơn lẻ đó, đạt +1 và −1 kết quả, và sau đó tính toán các sản phẩm của họ để có được kết quả đo XX ⊗ ... X "sẽ là gì. (Chính xác hơn: đo tất cả các toán tử X qubit đơn đó là điều không làm xáo trộn trạng thái dẫn đến phép đo toán tử sản phẩm tenxơ XX ⊗ ... Xvà sản phẩm của các phép đo qubit đơn này sẽ phải mang lại kết quả nhất quán với toán tử sản phẩm tenxơ XX ⊗ ... X , vì vậy chúng ta có thể sử dụng phương pháp này để mô phỏng phép đo phức tạp hơn nếu chúng ta không ' t nhớ tất cả các qubit được chiếu lên các trạng thái cơ sở liên hợp như là một tác dụng phụ.)

Phẫu thuật mạng cho các hoạt động hai qubit hợp lý

Để thực hiện thao tác hai qubit, bạn có thể sử dụng một kỹ thuật được gọi là phẫu thuật mạng , trong đó bạn 'hợp nhất' và 'tách' các mảng khác nhau của mạng 2D để nhận ra các thao tác giữa các miếng vá đó (xem [ arXiv: 1111.4022 ], [ arXiv: 1612.07330 ] hoặc [ arXiv: 1704.08670 ] để mô tả đầy đủ các hoạt động này. Tiết lộ: Tôi là tác giả trên phần ba của các bài viết này.) Điều này có thể được nhận ra giữa hai bản vá liền kề của mạng phẳng (như minh họa ở trên) Các hàng và cột "chưa được giải quyết" ở trạng thái phù hợp, sau đó đo các chất ổn định mà trước đây bạn không đo đượcđể mở rộng bộ nhớ cho một hệ thống lớn hơn. (Trong sơ đồ bên dưới, khoảng cách ngang giữa các đoạn mã và cột qubit ở trạng thái | 0⟩ được phóng đại để có hiệu lực.)



Điều này sẽ ảnh hưởng đến các toán tử logic của hệ thống một cách không đồng nhất, và thường được sử dụng (xem [ arXiv: 1612,07330 ] chẳng hạn) để nhận ra một mạch lạc XX hoặc ZZ đo lường, có thể được cấu tạo để nhận ra một hoạt động CNOT [arXiv: 1612.07330, Hình 1 (b)]:

Bằng cách này, bạn có thể nhận ra thao tác CNOT giữa một cặp qubit được mã hóa. ***

Chú thích

* Bạn cũng có thể sử dụng các sửa đổi nhỏ của mẫu ổn định thông thường, như Letinsky [ arXiv: 1808.02892 ] chứng minh, để đạt được các biểu diễn bề mặt phẳng linh hoạt hơn của các qubit được mã hóa.

** Trong thực tế, thay vì thực hiện rõ ràng các hoạt động (không hoàn toàn một qubit), bạn sẽ tận dụng thực tế là khung tham chiếu cho các qubit được mã hóa là một trong những quy tắc mà bạn đang sửa theo quy ước và cập nhật (hoặc 'biến đổi') khung tham chiếu thay vì trạng thái khi bạn muốn thực hiện thao tác Pauli. Đây cũng là một cách thông minh để sửa lỗi: xử lý các lỗi không phải là "lỗi" phải được "sửa", nhưng như một sự trôi dạt không kiểm soát được nhưng có thể quan sát được trong khung tham chiếu của bạn do kết quả của sự tương tác với môi trường. Sau đó, bạn hy vọng rằng sự trôi dạt này đủ chậm để bạn có thể theo dõi nó một cách chính xác và bù đắp cho sự thay đổi trong khung tham chiếu khi bạn thực hiện tính toán của mình. Đặc biệt trong bối cảnh theo dõi lỗi,Khung Pauli và công việc của nó là mô tả khung tham chiếu theo các hoạt động của Pauli sẽ được yêu cầu đặt hệ thống ở trạng thái thường được mô tả bằng mã sửa lỗi không có lỗi.

*** Nhiều tác giả sẽ mô tả công trình này là điểm phẫu thuật mắt cáo, và nó chắc chắn là ứng dụng cụ thể ban đầu của nó được mô tả trong bài viết gốc [ arXiv: 1111.4022 ]. Về nguyên tắc, có thể thực hiện các hoạt động phức tạp hơn bằng cách sử dụng phân tách và hợp nhất, bằng cách coi các phép hợp nhất và phân tách là hoạt động nguyên thủy theo cách riêng của chúng chứ không chỉ là các thành phần của CNOT và sử dụng các phép biến đổi linh hoạt hơn (nhưng không đặc biệt giống như mạch) - đây thực chất là điểm của bài viết của tôi với Dom Horsman [ arXiv: 1704.08670 ], mở ra khả năng tính toán ZX (một đại diện có phần không chính xác của tính toán lượng tử) thực sự hữu ích cho các ký ức mã bề mặt.


1
câu trả lời chính xác. Nhân tiện, trong trường hợp bạn không biết, bạn có thể tinh chỉnh kích thước của hình ảnh bằng cách sử dụng trực tiếp các thẻ html. Ví dụ:<img src="https://i.stack.imgur.com/H94nX.png" width="300"/>
glS

@gIS: cảm ơn, kỹ năng HTML của tôi không được sử dụng khi tôi thử nó ban đầu! Nó có vẻ tốt hơn bây giờ.
Niel de Beaudrap

1
@ AbdullahAsh-Saki: theo dõi câu hỏi của bạn trong các bình luận cho JamesWooton, tôi đã thêm một số nhận xét về các phép đo trạng thái được mã hóa.
Niel de Beaudrap

5

Một cách để lưu trữ qubit trong mã bề mặt là cặp "lỗ". Một lỗ là một phần của bề mặt, thay vì thực hiện các phép đo ổn định được sử dụng để phát hiện xem có lỗi xảy ra hay không, thay vào đó bạn không làm gì cả.

Có hai loại lỗ khác nhau, tùy thuộc vào ranh giới của lỗ di chuyển dọc theo các qubit đo lường X hoặc dọc theo qubit đo Z. Một CNOT được thực hiện bằng cách đạp một lỗ của một loại xung quanh một lỗ của loại kia.

Nói theo sơ đồ, nó trông như thế này:

nhập mô tả hình ảnh ở đây

Trong sơ đồ (b), thời gian đang chuyển từ trái sang phải. Mỗi thanh tương ứng với vị trí của một lỗ theo thời gian. Mỗi qubit được lưu trữ giữa các cặp thanh trắng tương ứng. Thanh màu đen đại diện cho lỗ được sử dụng để thực hiện CNOT. Nó tránh được qubit giữa (không liên quan), bao quanh một trong các thanh của qubit dưới cùng (là mục tiêu) và đi xung quanh một "thanh chéo" được đưa vào qubit trên cùng (là điều khiển). Đó là những gì một mã bề mặt CNOT trông như thế nào.


Tôi có thể tìm hiểu thêm về hình (b) ở đâu? Tôi đã thấy những con số tương tự trong một trong những bài giảng của Austin Fowler. Tuy nhiên, nó vẫn còn rất khó nắm bắt.
Abdullah Ash- Saki

@ AbdullahAsh-Saki arxiv.org/abs/1208.0928 định nghĩa những gì tôi muốn nói là "lỗ hổng" trong khá nhiều chi tiết. Nếu bạn lấy các lát qua sơ đồ mỗi lần, nó sẽ hiển thị các lỗ ở đâu. Vì vậy, lấy các sơ đồ thời gian từ tờ giấy đó và hình dung chúng trông như thế nào được xếp chồng lên nhau và đó là một sơ đồ bện.
Craig Gidney

3

Có nhiều cách để lưu trữ thông tin trong mã bề mặt. Tùy thuộc vào phương pháp bạn sử dụng, sau đó có nhiều cách để làm cổng. Vì vậy, thực sự có rất nhiều điều để nói về vấn đề này!

Mặc dù có nhiều phương thức, nhưng về mặt thực tế, tất cả chúng đều có cùng một điều: nếu bạn muốn cổng của bạn được giữ bởi lỗi mã, bạn chỉ có thể thực hiện các cổng Clifford (như X, Z, H, CNOT , S). Đối với các cổng khác, bạn sẽ cần phải gọi các cơ chế bổ sung để trở thành khả năng chịu lỗi, chẳng hạn như chưng cất trạng thái ma thuật.

Nhưng bạn đã không yêu cầu bất cứ điều gì ngoài Clifford trong ví dụ của bạn. Bạn chỉ muốn một X và một CNOT. Vì vậy, làm cho mọi thứ dễ dàng.

Để có một ví dụ cụ thể, hãy lấy mã bề mặt 17 qubit được hiển thị bên dưới (như được mô tả trong bài viết này , trong đó tôi là một tác giả).

nhập mô tả hình ảnh ở đây

n=908

σxσx0σx1σx3σx4σx1σx2σz

σxσx0σx3σx6σxσz3σz4σz5

σxsigmazXZ

X=σx0σx3σx6,Z=σz3σz4σz5

X

AB0,1,2,0A0A

CNOT(A,B)AB

CNOT(0A,0B)CNOT(1A,1B)CNOT(1A,1B)

|0|1

|0~=|0n|0|1~=X|0~|1|0

|0|0~|0~|1|1~|1~

Bằng cách nghĩ về hành động của các CNOT ngang đối với các trạng thái này, bạn hy vọng có thể thấy nó hoạt động như một CNOT trên các qubit hợp lý.


2
X=σx0σx3σx6X=σx0σx3σx4

Bạn đúng rồi. Tôi sửa nó rồi.
James Wootton

Một câu hỏi bổ sung: Mối quan hệ giữa toán tử đo và đọc vật lý của một qubit là gì? (Tôi đã tìm thấy nhiều nơi trong đó đề cập đến "phép đo được xác định bởi toán tử đo Pauli-X".)
Abdullah Ash- Saki
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.