Aaronson과 Gottesman 의 향상된 안정화 회로 시뮬레이션 에서는 Clifford 회로가 작동 할 때 각 큐 비트의 X 및 Z가 매핑되는 Pauli 텐서 제품을 설명하는 테이블을 계산하는 방법에 대해 설명합니다.
Clifford 회로의 예를 들면 다음과 같습니다.
0: -------@-----------X---
| |
1: ---@---|---@---@---@---
| | | |
2: ---|---|---@---|-------
| | |
3: ---@---@-------Y-------
그리고 각 큐빗의 X 및 Z 관측 가능 객체에 어떻게 작용하는지 설명하는 표는 다음과 같습니다.
+---------------------+-
| 0 1 2 3 |
+------+---------------------+-
| 0 | XZ X_ __ Z_ |
| 1 | ZZ YZ Z_ ZZ |
| 2 | __ Z_ XZ __ |
| 3 | Z_ X_ __ XZ |
+------+---------------------+-
| sign | ++ ++ ++ ++ |
+------+---------------------+-
표의 각 열은 회로가 각 큐 비트의 X 관찰 가능 (왼쪽 절반) 및 Z 관찰 가능 (오른쪽 절반)에 어떻게 작용 하는지를 설명합니다. 예를 들어, 열 3의 왼쪽은 Z, Z, _, X이며, 회로 오른쪽의 X3 연산 (Qubit 3의 Pauli X)은 왼쪽의 Z1 * Z2 * X4 연산과 같습니다. 회로의 측면. '기호'행은 제품의 부호를 나타내며, 이는 측정을 시뮬레이트하려는 경우 중요합니다 (결과 반전 여부를 알려줍니다).
회로의 역수에 대한 테이블을 계산할 수도 있습니다. 내가 제시 한 사례에서 역표는 다음과 같습니다.
+---------------------+-
| 0 1 2 3 |
+------+---------------------+-
| 0 | XZ Y_ __ Z_ |
| 1 | _Z YZ Z_ _Z |
| 2 | __ Z_ XZ __ |
| 3 | Z_ Y_ __ XZ |
+------+---------------------+-
| sign | ++ -+ ++ ++ |
+------+---------------------+-
행과 열을 바꾸면 테이블이 거의 동일하게 보입니다 . 그러나 항목이 정확히 동일하지는 않습니다. 조옮김 외에도 문자를 비트 ( _
= 00, X
= 01, Z
= 10, Y
= 11)로 인코딩 한 다음 중간 비트를 교체 한 다음 디코딩해야합니다. 예를 들어, ZZ는 1010으로 인코딩하고 1100으로 바꾸고 Y_로 디코딩합니다.
내가 가진 질문은 : 역 테이블의 부호를 계산하는 간단한 규칙이 있습니까?
현재이 테이블을 회로로 분해하고 회로를 반전시킨 다음 다시 곱하여 표를 반전시킵니다. transpose + replace에 비해 비효율적이지만 transpose + replace를 사용하려면 부호 규칙이 필요합니다.