11월 4일 (수)양자 뉴스·논문·데이터를 매일 검증해 한국어로 전합니다

튜토리얼 목록
Tutorial중급양자컴퓨팅

양자 오류 정정 입문: 3큐비트 반복 코드

양자 컴퓨터는 환경과의 상호작용으로 인해 필연적으로 오류가 발생한다. 3큐비트 반복 코드는 가장 단순한 양자 오류 정정 코드로, 하나의 논리 큐비트를 세 개의 물리 큐비트로 인코딩하여 비트 반전 오류를 탐지하고 복원하는 원리를 보여준다. 이 챕터에서는 코드의 구조, 신드롬 측정, 오류 복원 과정을 단계적으로 살펴본다.

난이도 중급4분 읽기연습문제 3개

먼저 읽으면 좋은 용어

개념 소개

양자 계산이 실용적이려면 오류에 강해야 한다. 고전 컴퓨터에서는 같은 비트를 여러 번 복사하여 다수결 원리로 오류를 수정한다. 예를 들어 0을 000으로, 1을 111로 저장하면, 하나의 비트가 뒤집혀도 나머지 두 비트를 보고 올바른 값을 복원할 수 있다.

양자 세계에서는 두 가지 근본적인 장벽이 존재한다.

  1. 복제 불가 정리(no-cloning theorem): 임의의 미지 양자 상태 를 완전히 복사하는 것은 불가능하다.
  2. 측정 붕괴: 큐비트를 직접 측정하면 중첩 상태가 파괴된다.

그럼에도 불구하고 양자 오류 정정은 가능하다. 핵심은 상태를 복사하지 않고, 오류의 종류(신드롬)만 간접 측정하는 것이다.


핵심 원리

인코딩

3큐비트 반복 코드는 비트 반전 오류( 오류)만을 다룬다. 논리 큐비트 상태를 다음과 같이 세 물리 큐비트로 인코딩한다.

임의의 논리 상태 는 아래와 같이 인코딩된다.

이 인코딩은 CNOT 게이트 두 개로 구현된다.

|ψ⟩ ──●──●──
|0⟩ ──⊕──|──
|0⟩ ──|──⊕──

오류 모델

하나의 큐비트에 비트 반전 오류 가 작용하면 세 가지 경우가 발생한다.

오류 상태 변화 예시
큐비트 1 오류
큐비트 2 오류
큐비트 3 오류

신드롬 측정

오류를 탐지하기 위해 두 개의 패리티 연산자를 보조 큐비트에 간접 측정한다.

각 연산자의 측정값(±1)은 어떤 큐비트에 오류가 있는지 알려주는 신드롬이 된다.

진단
오류 없음
큐비트 1 오류
큐비트 2 오류
큐비트 3 오류

핵심은 가 논리 정보()를 전혀 노출하지 않는다는 점이다. 이들은 오류의 위치만 알려준다.

오류 복원

신드롬에 따라 해당 큐비트에 게이트를 적용하면 원래 상태로 복원된다.


예시·응용

아래 Qiskit 코드는 3큐비트 반복 코드를 구현하고, 큐비트 0에 비트 반전 오류를 삽입한 뒤 신드롬을 측정한다.

from qiskit import QuantumCircuit, QuantumRegister, ClassicalRegister

# 레지스터 정의
data = QuantumRegister(3, 'data')
ancilla = QuantumRegister(2, 'anc')
syndrome = ClassicalRegister(2, 'syn')

qc = QuantumCircuit(data, ancilla, syndrome)

# 인코딩: |ψ⟩ = |+⟩ 준비 후 CNOT으로 확산
qc.h(data[0])
qc.cx(data[0], data[1])
qc.cx(data[0], data[2])

# 오류 삽입: 큐비트 0에 비트 반전
qc.x(data[0])

# 신드롬 측정 (Z1Z2, Z2Z3)
qc.cx(data[0], ancilla[0])
qc.cx(data[1], ancilla[0])
qc.cx(data[1], ancilla[1])
qc.cx(data[2], ancilla[1])
qc.measure(ancilla, syndrome)

# 신드롬에 따른 복원 (고전 제어)
with qc.if_test((syndrome, 0b01)):
    qc.x(data[0])
with qc.if_test((syndrome, 0b11)):
    qc.x(data[1])
with qc.if_test((syndrome, 0b10)):
    qc.x(data[2])

print(qc.draw('text'))

한계: 3큐비트 반복 코드는 위상 반전 오류( 오류)를 정정하지 못한다. 또한 두 개 이상의 동시 오류는 다수결 논리가 잘못 판단할 수 있다. 이 한계를 극복한 것이 **Shor 코드(9큐비트)**와 스태빌라이저 코드 계열이다.


정리

3큐비트 반복 코드는 양자 오류 정정의 세 가지 핵심 아이디어를 보여준다. 첫째, 논리 정보를 얽힘 상태로 분산 인코딩한다. 둘째, 상태를 직접 측정하지 않고 패리티(신드롬)만 추출한다. 셋째, 신드롬 결과에 따라 능동적으로 오류를 되돌린다. 이 세 원리는 더 복잡한 오류 정정 코드에서도 동일하게 작동하는 기반이 된다.

Exercises

연습문제

  1. Q1오류가 없는 상태 $\alpha|000\rangle + \beta|111\rangle$에 $M_1 = Z_1Z_2$를 적용하면 어떤 고유값이 측정되는가? 그 이유를 설명하라.

    힌트 보기

    $Z|0\rangle = +|0\rangle$, $Z|1\rangle = -|1\rangle$ 임을 이용하라.

    해설 보기

    $Z_1Z_2$를 $|000\rangle$에 적용하면 $(+1)(+1)|000\rangle = +|000\rangle$, $|111\rangle$에 적용하면 $(-1)(-1)|111\rangle = +|111\rangle$이다. 두 기저 상태 모두 고유값 $+1$을 가지므로, 측정 결과는 항상 $+1$이다. 이는 두 큐비트 간 패리티가 일치함을 의미하며, 오류가 없음을 나타낸다.

  2. Q23큐비트 반복 코드로 위상 반전 오류 $Z$를 정정할 수 없는 이유를 논리적으로 서술하라.

    해설 보기

    위상 반전 오류 $Z$는 $|0\rangle \to |0\rangle$, $|1\rangle \to -|1\rangle$로 작용한다. 인코딩 상태 $\alpha|000\rangle + \beta|111\rangle$에 $Z_1$이 가해지면 $\alpha|000\rangle - \beta|111\rangle$이 된다. 이 상태는 $|000\rangle$과 $|111\rangle$의 상대 위상만 바뀐 것으로, $Z_1Z_2$나 $Z_2Z_3$ 패리티 측정으로는 감지되지 않는다. 위상 오류를 탐지하려면 Hadamard 기저에서의 패리티 측정이 추가로 필요하며, 이것이 Shor 코드가 두 종류의 반복 구조를 결합하는 이유다.

  3. Q3두 큐비트(큐비트 1과 큐비트 2)에 동시에 비트 반전 오류가 발생했을 때 신드롬을 계산하고, 다수결 복원이 올바른지 판단하라.

    해설 보기

    $M_1 = Z_1Z_2$: 두 큐비트 모두 뒤집혔으므로 $(-1)(-1) = +1$. $M_2 = Z_2Z_3$: 큐비트 2만 뒤집혔으므로 $(-1)(+1) = -1$. 신드롬 $(+1, -1)$은 표에 따라 "큐비트 3 오류"로 해석된다. 복원 시 큐비트 3에 $X$를 적용하면, 실제로는 큐비트 1·2가 뒤집힌 상태에 큐비트 3까지 추가로 뒤집히므로 세 큐비트 모두 잘못된 상태가 된다. 즉, 두 큐비트 이상의 동시 오류는 이 코드로 정정할 수 없으며, 이는 코드의 거리(code distance)가 3임을 의미한다.

관련 용어

이 챕터는 Claude (claude-sonnet-4-6)가 작성했습니다. · 발행 2026. 4. 21.

Keep Learning

다음으로 볼 튜토리얼

전체보기
중급

양자통신

포스트양자암호(PQC) 기초: 양자 시대를 대비하는 암호 설계

포스트양자암호(PQC)는 충분한 규모의 양자 컴퓨터가 등장해도 안전하도록 설계된 고전 알고리즘 기반 암호 체계다. RSA·ECC 등 현행 공개키 암호의 취약점을 수학적 난제로 보완하며, NIST의 표준화를 통해 실용화 단계에 진입했다.

4분 읽기

중급

양자통신

PQC(포스트양자암호) 기초: 양자 시대의 암호 보안

양자 컴퓨터의 발전으로 RSA, ECC 등 현재의 공개키 암호 체계가 근본적인 위협에 직면했다. 포스트양자암호(PQC)는 양자 컴퓨터로도 풀기 어려운 수학적 난제에 기반한 새로운 암호 방식으로, NIST의 표준화 작업을 통해 실용화 단계에 접어들었다. PQC는 기존 통신 인프라 위에서 동작하므로 양자키분배(QKD)와는 구별되는 상호 보완적인 접근이다.

4분 읽기

고급

양자컴퓨팅

변분 양자 고유값 계산(VQE): 원리와 구현

VQE(Variational Quantum Eigensolver)는 변분 원리를 기반으로 해밀토니안의 바닥 상태 에너지를 추정하는 양자-고전 하이브리드 알고리즘이다. 매개변수화 양자 회로(Ansatz)로 시험 상태를 준비하고 고전 최적화기로 에너지를 최소화하는 반복 루프를 구성한다. 깊이가 얕은 회로를 사용하므로 NISQ 장치에서 실행 가능한 현실적 양자 알고리즘으로 평가받는다.

6분 읽기

고급

양자컴퓨팅

QAOA: 조합 최적화를 위한 양자 근사 최적화 알고리즘

QAOA(Quantum Approximate Optimization Algorithm)는 조합 최적화 문제를 양자 회로로 근사 해결하는 변분 양자 알고리즘이다. 비용 해밀토니안과 혼합 해밀토니안을 교대로 적용하는 $p$층 회로를 구성하고, 고전 최적화기로 매개변수를 조율하는 하이브리드 방식을 채택한다. MaxCut, 포트폴리오 최적화 등 NP-난해 문제에 대한 근사 해를 NISQ 장치에서 탐색하는 데 활발히 연구되고 있다.

5분 읽기