주 콘텐츠로 건너뛰기

9-qubit Shor 부호

이제 9-qubit Shor 부호로 넘어가겠습니다. 이는 이전 섹션에서 다룬 두 부호를 결합하여 얻은 양자 오류 정정 부호입니다. 즉, 단일 비트-플립 오류를 정정할 수 있는 3비트 반복 부호와 단일 위상-플립 오류를 정정할 수 있는 수정된 버전을 결합합니다.

부호 설명

9-qubit Shor 부호는 이전 섹션의 두 부호를 연결하여 얻은 부호입니다. 이는 먼저 하나의 qubit을 3개로 인코딩하는 인코딩을 적용한 다음, 첫 번째 인코딩에 사용된 3개 qubit 각각에 다른 인코딩을 적용하여 총 9개 qubit을 얻는다는 의미입니다.

더 정확히 말하면, 두 부호를 어느 순서로든 적용할 수 있지만, 먼저 수정된 3비트 반복 부호(위상-플립 오류를 감지)를 적용한 후, 결과로 나온 3개 qubit 각각을 원래의 3비트 반복 부호(비트-플립 오류를 감지)로 독립적으로 인코딩합니다. 다음은 이 인코딩의 회로도 표현입니다.

9-qubit Shor 부호의 인코딩 회로, 3개 블록 표시

그림에서 볼 수 있듯이, Shor 부호의 9개 qubit을 3개 qubit씩 3개 블록으로 나누어 생각합니다. 각 블록은 두 번째 인코딩 단계(일반적인 3비트 반복 부호)에서 얻어집니다. 여기서 3번 독립적으로 적용되는 일반적인 3비트 반복 부호를 이 맥락에서 내부 부호라고 부르며, 외부 부호는 위상-플립 오류를 감지하는 수정된 3비트 반복 부호인 첫 번째 인코딩 단계에서 사용되는 부호입니다.

우리는 원래 qubit의 두 표준 기저 상태가 어떻게 인코딩되는지 설명하여 부호를 지정할 수도 있습니다.

0122(000+111)(000+111)(000+111)1122(000111)(000111)(000111)\begin{aligned} \vert 0\rangle & \:\mapsto\: \frac{1}{2\sqrt{2}} (\vert 000\rangle + \vert 111\rangle) \otimes (\vert 000\rangle + \vert 111\rangle) \otimes (\vert 000\rangle + \vert 111\rangle) \\[4mm] \vert 1\rangle & \:\mapsto\: \frac{1}{2\sqrt{2}} (\vert 000\rangle - \vert 111\rangle) \otimes (\vert 000\rangle - \vert 111\rangle) \otimes (\vert 000\rangle - \vert 111\rangle) \end{aligned}

이를 알면 선형성으로 임의의 qubit 상태 벡터가 어떻게 인코딩되는지 결정할 수 있습니다.

비트-플립 및 위상-플립 오류 정정

오류와 CNOT 게이트

XXZZ 오류가 9-qubit Shor 부호를 비롯한 다른 부호들의 qubit 인코딩에 영향을 미치는 방식을 분석하기 위해, 이러한 오류와 CNOT 게이트 사이의 몇 가지 간단한 관계를 관찰하는 것이 도움이 될 것입니다. 9-qubit Shor 부호를 분석하기 시작할 때 이를 잠시 멈추고 다루기는 합리적입니다.

다음 회로도는 XX 게이트와 CNOT 게이트 사이의 3가지 기본 관계를 보여줍니다. 구체적으로, CNOT 이전에 대상 qubit에 XX 게이트를 적용하는 것은 순서를 바꾸고 먼저 CNOT을 수행하는 것과 동등합니다. 하지만 CNOT 이전에 제어 qubit에 XX 게이트를 적용하는 것은 CNOT 후에 두 qubit 모두에 XX 게이트를 적용하는 것과 동등합니다. 마지막으로, CNOT 이전에 두 qubit 모두에 XX 게이트를 적용하는 것은 먼저 CNOT을 수행한 다음 제어 qubit에 XX 게이트를 적용하는 것과 동등합니다. 이러한 관계는 필요한 행렬 곱셈을 수행하거나 회로가 표준 기저 상태에 미치는 영향을 계산하여 검증할 수 있습니다.

CNOT 게이트 전후의 X 오류

ZZ 게이트의 상황은 유사하지만, 제어 및 대상 qubit의 역할이 바뀝니다. 특히, 다음 양자 회로에서 볼 수 있는 3가지 관계를 갖습니다.

CNOT 게이트 전후의 Z 오류

비트-플립 오류 정정

이제 9-qubit Shor 부호를 사용하여 오류를 감지하고 정정하는 방법을 살펴보겠습니다. 먼저 비트-플립 오류부터 시작합니다. 간결함을 위해 이를 XX 오류라고 부르겠습니다.

XX 오류를 감지하고 정정하려면, 인코딩의 3개 블록을 각각 따로 취급하면 됩니다. 각 블록은 3비트 반복 부호를 사용하여 qubit을 인코딩한 것이며, 이는 XX 오류로부터 보호합니다. 따라서 이전에 설명한 syndrome 측정과 XX 오류 정정을 각 블록에 수행하면, 블록당 최대 하나의 XX 오류를 감지하고 정정할 수 있습니다. 특히, 인코딩의 9개 qubit 중 최대 하나의 XX 오류가 있는 경우, 이 오류는 이 절차로 감지되고 정정됩니다.

요약하면, 내부 부호가 비트-플립 오류를 정정하기 때문에, 이 부호에서 비트-플립 오류를 정정하는 것은 간단합니다.

위상-플립 오류 정정

다음으로 위상-플립 오류 또는 간단히 ZZ 오류를 살펴보겠습니다. 이번에는 외부 부호가 ZZ 오류를 감지하지만 내부 부호가 어떤 방식으로는 "방해가" 되어 이러한 오류의 감지 및 정정이 약간 더 어려우므로 무엇을 해야 할지가 명확하지 않습니다.

Shor 부호의 9개 qubit 중 하나에 ZZ 오류가 발생한다고 가정합시다. 예를 들어 이 다이어그램에 표시된 것과 같습니다.

9-qubit Shor 부호의 qubit에 대한 Z 오류

3비트 반복 부호를 사용할 때 ZZ 오류가 발생하면 어떤 일이 일어나는지 이미 관찰했습니다. 인코딩 이전에 ZZ 오류가 발생한 것과 동등합니다. 9-qubit Shor 부호의 맥락에서, 이는 블록 내 3개 qubit 중 임의의 하나에 대한 ZZ 오류가 항상 동일한 효과를 갖는다는 것을 의미합니다. 이는 내부 부호가 적용되기 전에 해당 qubit에 ZZ 오류가 발생한 것과 동등합니다.

예를 들어, 위의 회로도는 다음 다이어그램과 동등합니다. 이는 위에서 설명한 ZZ 및 CNOT 게이트 사이의 관계를 사용하거나, 임의의 qubit 상태 ψ\vert\psi\rangle에서 회로를 평가하여 추론할 수 있습니다.

9-qubit Shor 부호의 내부 부호 이전 Z 오류

이는 ZZ 오류를 감지하고 정정하는 한 가지 옵션을 제시합니다. 내부 부호를 디코딩하면 외부 인코딩에 사용된 3개 qubit과 6개의 초기화된 작업 qubit이 남습니다. 그 후 외부 부호의 이 3개 qubit을 ZZ 오류에 대해 확인할 수 있으며, 마지막으로 내부 부호로 다시 인코딩하여 Shor 부호에서 얻은 9-qubit 인코딩으로 돌아갈 수 있습니다. ZZ 오류를 감지하면, 내부 부호로 다시 인코딩하기 전에 정정하거나, 다시 인코딩한 후에 해당 블록의 qubit 중 하나에 ZZ 게이트를 적용하여 정정할 수 있습니다.

다음은 인코딩 회로, 위의 제시된 오류, 그리고 방금 설명한 단계들을 포함하는 회로도입니다(실제 정정 단계는 제외).

9-qubit Shor 부호의 Z 오류 감지

이 특정 예에서 syndrome 측정은 1111이며, ZZ 오류가 중간 블록의 qubit 중 하나에 발생했음을 나타냅니다.

재인코딩 단계 이전에 ZZ 오류를 정정하는 대신 이후에 정정하는 한 가지 장점은 위의 회로를 단순화할 수 있다는 것입니다. 다음 회로는 동등하지만 4개의 CNOT 게이트가 더 적게 필요합니다.

9-qubit Shor 부호의 단순화된 Z 오류 감지

다시 한 번, syndrome은 어떤 qubit이 ZZ 오류의 영향을 받았는지를 나타내기보다는, 어떤 블록이 ZZ 오류를 경험했는지를 나타냅니다. 효과는 블록 내 어떤 qubit이 영향을 받았는지에 관계없이 동일합니다. 그 후 영향을 받은 블록의 3개 qubit 중 하나에 ZZ 게이트를 적용하여 오류를 정정할 수 있습니다.

부수적으로, 여기서 우리는 양자 오류 정정 부호의 퇴화의 예를 봅니다. 특정 오류(ZZ 오류의 경우)를 유일하게 식별할 수 없으면서도 정정할 수 있습니다.

동시 비트- 및 위상-플립 오류

이제 9-qubit Shor 부호를 사용하여 XXZZ 오류를 모두 감지하고 정정하는 방법을 보았으며, 특히 최대 하나의 XX 오류 또는 최대 하나의 ZZ 오류를 감지하고 정정할 수 있음을 보았습니다. 이제 비트-플립과 위상-플립 오류가 모두 발생한다고 가정해봅시다. 가능하면 같은 qubit에서요. 실제로, 이 상황에서는 이미 논의한 것과 다르게 할 필요가 없습니다. 부호는 추가 수정 없이 최대 하나의 XX 오류와 하나의 ZZ 오류를 동시에 감지하고 정정할 수 있습니다.

더 구체적으로, XX 오류는 일반적인 3비트 반복 부호 syndrome 측정을 적용하여 감지됩니다. 이는 3개 qubit의 3개 블록 각각에 따로 수행됩니다. ZZ 오류는 위에서 설명한 절차를 통해 감지됩니다. 이는 내부 부호를 디코딩하고, 위상-플립에 대한 수정된 3비트 반복 부호의 syndrome 측정을 수행한 후, 다시 인코딩하는 것과 동등합니다. 이 두 오류 감지 단계와 해당 정정 단계는 서로 완전히 독립적으로 수행할 수 있으며, 실제로 수행 순서는 중요하지 않습니다.

이것이 왜 그런지 보기 위해 다음 회로도에 표시된 예를 고려해봅시다. 여기서 XXZZ 오류가 모두 중간 블록의 아래쪽 qubit에 영향을 미쳤습니다.

9-qubit Shor 부호의 XZ 오류

먼저 오류의 순서는 중요하지 않다는 점을 관찰합시다. XXZZ 오류의 위치를 뒤집으면 동등한 회로를 얻습니다. 명확히 하기 위해, XXZZ는 교환되지 않으며, 반교환합니다:

XZ=(0110)(1001)=(0110)=(1001)(0110)=ZX.XZ = \begin{pmatrix} 0 & 1\\[1mm] 1 & 0 \end{pmatrix} \begin{pmatrix} 1 & 0\\[1mm] 0 & -1 \end{pmatrix} = \begin{pmatrix} 0 & -1\\[1mm] 1 & 0 \end{pmatrix} = - \begin{pmatrix} 1 & 0\\[1mm] 0 & -1 \end{pmatrix} \begin{pmatrix} 0 & 1\\[1mm] 1 & 0 \end{pmatrix} = -ZX.

이는 다음 회로가 위의 회로와 전역 위상 인수 1-1을 제외하고는 동등함을 의미합니다.

9-qubit Shor 부호의 ZX 오류

이제 이전처럼 ZZ 오류를 이동할 수 있어 또 다른 동등한 회로를 얻습니다.

9-qubit Shor 부호의 ZX 오류

이 시점에서 XX 오류를 감지하고 정정하는 절차를 먼저 수행하면 XX 오류가 정정된 후, ZZ 오류를 감지하고 정정하는 절차를 수행하여 이전과 같이 ZZ 오류를 제거할 수 있음이 분명합니다.

또는, ZZ 오류를 감지하고 정정하는 절차를 먼저 수행할 수 있습니다. 이 절차가 하나 이상의 XX 오류가 있을 때도 예상대로 작동한다는 사실은 인코딩에 사용된 9개 qubit의 모든 XX 게이트가 ZZ 오류에 대한 syndrome을 측정하는 우리의 단순화된 회로의 모든 게이트와 교환된다는 사실에서 비롯됩니다. 따라서 이 syndrome 측정은 여전히 어떤 블록이 ZZ 오류의 영향을 받았는지를 올바르게 식별합니다. 블록의 임의의 qubit에 ZZ 게이트를 적용하여 블록의 ZZ 오류가 정정되므로, XX 오류도 발생했을 경우에도 작동한다는 사실은 XXZZ 게이트의 순서에 관한 위와 동일한 논의에서 비롯됩니다. 순서를 바꾸면 전역 위상을 제외하고는 동등한 회로를 얻습니다.

따라서 9-qubit Shor 부호는 이 부호에 사용된 9개 qubit 중 어떤 하나의 qubit에서든 XX 오류, ZZ 오류, 또는 둘 다를 정정할 수 있습니다. 실제로, 우리는 그보다 많은 오류를 정정할 수 있습니다. 여기에는 여러 개의 XX 오류(서로 다른 블록에 속하는 한) 또는 여러 개의 ZZ 오류(최대 하나의 블록이 홀수 개의 오류를 경험하는 한)가 포함됩니다. 하지만 앞으로 이 강의의 목적상 가장 관련 있는 것은 9개 qubit 중 어떤 하나에서든 XX 오류, ZZ 오류, 또는 둘 다를 정정할 수 있다는 것입니다.

무작위 오류에 대한 오류 감소

이 강의의 마지막 섹션으로 넘어가기 전에, 마지막 섹션은 임의의 양자 오류에 관한 것입니다. Pauli 행렬로 표현되는 오류가 qubit에 무작위로 발생할 때 9-qubit Shor 부호의 성능을 간단히 살펴봅시다.

더 구체적으로, 오류가 qubit에 독립적으로 발생하는 간단한 노이즈 모델을 고려해봅시다. 각 qubit은 확률 pp로 오류를 경험하며, 다른 qubit의 오류 간에는 상관관계가 없습니다. 고전 비트에 대한 이진 대칭 채널과 유사한 방식입니다. 우리는 X,X, Y,Y,ZZ 오류가 발생할 확률을 다르게 할당할 수 있지만, 일을 가능한 한 간단하게 유지하기 위해, 우리는 9-qubit Shor 부호에 대한 최악의 시나리오를 고려할 것입니다. 즉, YY 오류가 영향을 받는 각 qubit에 발생합니다. 그런데 YY 오류는 Y=iXZY = iXZ이므로, 같은 qubit에서 XX 오류와 ZZ 오류가 모두 발생한 것과 동등합니다(관련 없는 전역 위상 인수까지). 이것이 지금까지 YY 오류를 무시한 이유를 설명합니다.

이제 Q\mathsf{Q}가 오류로부터 보호하고 싶은 특정 상태의 qubit이라고 가정합시다. 9-qubit Shor 부호를 사용하는 옵션을 고려할 수 있습니다. 자연스러운 질문은 "사용해야 할까요?"입니다.

답은 반드시 "그렇습니다"는 아닙니다. 너무 많은 노이즈가 있다면, 즉 이 맥락에서 pp가 너무 크다면, Shor 부호를 사용하는 것은 실제로 상황을 악화시킬 수 있습니다. 마치 3비트 반복 부호가 pp가 1/2보다 크면 부호를 사용하지 않는 것보다 나쁜 것처럼요. 하지만 pp가 충분히 작으면, 답은 "그렇습니다. 부호를 사용해야 합니다." 왜냐하면 그것이 인코딩된 상태가 손상될 가능성을 감소시킬 것이기 때문입니다. 이것이 왜 그런지, 그리고 pp가 이 부호에 너무 크거나 충분히 작기 위해 의미하는 것이 무엇인지 봅시다.

Shor 부호는 YY 오류를 포함하여 단일 qubit의 모든 Pauli 오류를 정정합니다. 하지만 2개 이상의 YY 오류를 제대로 정정하지는 못합니다. 명확히 하기 위해, 우리는 이전에 설명한 XXZZ 오류 정정을 사용하고 있다고 가정합니다. (물론, 미리 YY 오류만 걱정하면 된다는 것을 알았다면, 자연스럽게 우리의 정정을 다르게 선택할 것입니다. 하지만 이는 노이즈 모델을 속이는 것이며, 우리는 항상 서로 다른 Pauli 오류를 선택하여 2개 이상의 qubit이 오류의 영향을 받을 때마다 이 새로운 정정 선택이 실패하도록 모델을 변경할 수 있습니다.)

따라서 부호는 최대 9개 qubit 중 하나가 오류의 영향을 받을 때 Q\mathsf{Q}를 보호합니다. 이는 확률

(1p)9+9p(1p)8(1-p)^9 + 9 p (1-p)^8

로 발생합니다.

그렇지 않으면, 확률

1(1p)99p(1p)81 - (1-p)^9 - 9 p (1-p)^8

로 부호가 Q\mathsf{Q}를 보호하지 못합니다.

특히, 이 맥락에서 의미하는 바는 우리의 qubit Q\mathsf{Q}(논리 qubit으로)에 전역 위상까지 비항등 Pauli 연산이 적용될 것이라는 뜻입니다. 즉, Shor 부호에 대해 이전에 설명한 대로 XXZZ 오류가 감지되고 정정되면, 우리는 원래 Q\mathsf{Q}의 상태에 비항등 Pauli 연산을 적용한 상태의 인코딩과 동등한(전역 위상까지) 상태의 인코딩으로 남게 됩니다. 이를 말하는 더 간결한 방법은 논리 오류가 발생했다는 것입니다. 이것이 원래 Q\mathsf{Q}의 상태에 영향을 미칠 수도 있고 아닐 수도 있습니다. 다시 말해, 우리가 9개의 물리 qubit으로 인코딩한 논리 qubit에 영향을 미칠 수도 있고 아닐 수도 있습니다. 하지만 이 분석의 목적을 위해 이 이벤트를 실패로 간주합니다.

반면, 부호를 사용하지 않으면, 우리의 유일한 qubit은 비슷한 운명을 마주하게 됩니다(비항등 Pauli 연산을 받을 수 있음) 확률 pp로 말입니다. 부호는 첫 번째 확률이 두 번째보다 작을 때 도움이 됩니다:

1(1p)99p(1p)8<p.1 - (1-p)^9 - 9 p (1-p)^8 < p.

다음은 아주 작은 pp 값에 대해 부호가 이점을 제공함을 보여주는 그래프입니다. 손익분기점은 약 0.03230.0323에서 발생합니다.

Shor 부호를 사용한 독립적인 Y 오류에 대한 오류 확률 그래프

pp가 이 손익분기점보다 작으면 부호가 도움이 됩니다. 손익분기점에서 확률은 같으므로, 부호를 사용하면 우리의 시간과 8개 qubit을 낭비하고 있습니다. 손익분기점을 넘어서면 이 부호를 절대 사용해서는 안 됩니다. Q\mathsf{Q}에 대한 논리 오류의 가능성을 증가시키기 때문입니다.

약 3.25%는 특히 고전 정보에 대한 3비트 반복 부호의 유사한 손익분기점인 50%와 비교할 때 매우 좋은 손익분기점으로 보이지 않을 수 있습니다. 이러한 차이는 주로 양자 정보가 고전 정보보다 더 섬세하고 보호하기 어렵다는 사실 때문입니다. 하지만 또한, 9-qubit Shor 부호가 세계 최초의 양자 오류 정정 부호로서 뛰어난 발견을 나타낸다는 점을 인식하면서, 실질적으로는 그것이 실제로 매우 좋은 부호는 아니라는 점을 인정해야 합니다.