2026년 4월 19일 일요일
튜토리얼 목록
고급양자컴퓨팅AI 생성

표면 부호(Surface Code)의 구조와 원리

표면 부호는 2차원 격자 위에 물리 큐비트를 배열하고, 국소적인 안정자 측정만으로 양자 오류를 검출·정정하는 위상학적 오류 정정 부호다. 높은 오류 임계값(~1%)과 근방(nearest-neighbor) 연결만 요구하는 구조 덕분에 현재 가장 유력한 결함 허용 양자컴퓨팅 후보로 꼽힌다. 이 챕터에서는 안정자 형식론을 바탕으로 표면 부호의 격자 구조, 논리 큐비트 인코딩, 오류 증후군 측정 과정을 엄밀하게 다룬다.

개념 소개

양자 정보는 디코히런스와 게이트 오류에 취약하다. 고전 오류 정정이 비트를 반복 복사하는 전략을 쓰는 것과 달리, 양자 오류 정정은 복제 불가 정리(no-cloning theorem) 때문에 전혀 다른 접근이 필요하다. 해법은 하나의 **논리 큐비트(logical qubit)**를 다수의 물리 큐비트에 걸쳐 비국소적으로 인코딩하는 것이다.

표면 부호(Surface Code)는 Kitaev의 토릭 부호(Toric Code)를 평면 경계 조건으로 변형한 안정자 부호(stabilizer code)로, 2차원 격자 위에서 정의된다. 핵심 장점은 두 가지다.

  1. 국소성: 모든 안정자 측정이 인접 큐비트 4개(경계에서는 2~3개)만 포함한다.
  2. 높은 임계값: 물리 오류율이 약 $p_{th} \approx 1%$ 이하이면 임의로 긴 계산이 가능하다.

핵심 원리

회전 표면 부호의 격자

가장 널리 쓰이는 **회전 표면 부호(rotated surface code)**를 기준으로 설명한다. 거리(distance) $d$인 표면 부호는 다음과 같이 구성된다.

  • 데이터 큐비트: $d^2$개, 격자 꼭짓점에 배치
  • 보조(ancilla) 큐비트: $d^2 - 1$개, 플래킷(plaquette) 중심에 배치
    • X형 플래킷: $\lfloor d^2/2 \rfloor$개
    • Z형 플래킷: $\lceil d^2/2 \rceil - 1$개 (또는 $d$에 따라 대칭)

안정자 연산자

표면 부호의 안정자 그룹 $\mathcal{S}$는 두 종류의 4-체(4-body) 파울리 연산자로 생성된다.

X형 안정자 (버텍스/스타 연산자):

$$A_v = \bigotimes_{j \in \mathcal{N}(v)} X_j$$

Z형 안정자 (플래킷 연산자):

$$B_p = \bigotimes_{j \in \partial p} Z_j$$

여기서 $\mathcal{N}(v)$는 꼭짓점 $v$에 인접한 데이터 큐비트 집합, $\partial p$는 플래킷 $p$의 경계 큐비트 집합이다. 격자 내부에서는 4체 연산자, 경계에서는 2~3체로 줄어든다.

모든 안정자는 서로 교환 가능(commuting)하다.

$$[A_v, B_p] = 0 \quad \forall, v, p$$

두 플래킷이 공유하는 큐비트는 정확히 0개 또는 2개이므로, $X$와 $Z$의 반교환이 쌍으로 상쇄된다.

논리 큐비트와 논리 연산자

$d^2$개의 물리 큐비트 중 $2(d^2-1)/2 = d^2 - 1$개의 독립적인 안정자를 제거하면, 코드 공간(code space)의 차원은

$$\dim(\mathcal{C}) = 2^{d^2} / 2^{d^2-1} = 2^1$$

1개의 논리 큐비트를 인코딩한다. 논리 연산자는 격자를 가로지르는 **파울리 문자열(Pauli string)**이다.

$$\bar{X} = \prod_{j \in \text{수평 경로}} X_j, \qquad \bar{Z} = \prod_{j \in \text{수직 경로}} Z_j$$

$\bar{X}$와 $\bar{Z}$는 안정자와 교환하지만 서로 반교환($\bar{X}\bar{Z} = -\bar{Z}\bar{X}$)하므로 올바른 논리 파울리 연산자 쌍을 이룬다.

코드 거리 $d$는 가장 작은 가중치를 갖는 논리 연산자의 무게(weight)와 같다. 거리 $d$인 부호는 $\lfloor (d-1)/2 \rfloor$개의 오류를 정정할 수 있다.

오류 증후군 측정

물리 오류 $E$가 발생하면 일부 안정자의 측정값이 $-1$로 뒤집힌다. 이 패턴을 **증후군(syndrome)**이라 한다.

  • 비트 반전 오류 $X_j$: 인접한 Z형 안정자 2개를 자극
  • 위상 반전 오류 $Z_j$: 인접한 X형 안정자 2개를 자극
  • $Y_j = iX_jZ_j$: 두 종류 안정자 각 1쌍씩 자극

증후군은 오류 체인의 **끝점(endpoint)**만 드러낸다. 오류 체인이 닫힌 루프를 형성하거나 경계에 닿으면 증후군이 나타나지 않는다. 복호기(decoder)는 최소 가중치 완전 매칭(Minimum Weight Perfect Matching, MWPM) 알고리즘 등을 이용해 증후군으로부터 오류를 추정하고 정정 연산을 적용한다.


예시·응용

d=3 표면 부호 시뮬레이션 (개념 코드)

import numpy as np

# d=3 회전 표면 부호: 9개 데이터 큐비트, 8개 안정자
# 데이터 큐비트 인덱스 0~8 (3x3 격자)
# Z형 안정자 예시: 큐비트 {0,1,3,4} 에 ZZZZ 적용

def measure_stabilizer(state_vector, qubits, pauli_type='Z'):
    """단순 개념 예시 - 실제 구현은 양자 회로 필요"""
    # ZZZZ 측정: 파리티 계산
    parity = 0
    for q in qubits:
        parity ^= int(np.random.choice([0, 1]))  # 실제론 회로 측정
    return (-1)**parity  # +1 또는 -1

# Z형 플래킷 인덱스 (회전 d=3 격자)
z_stabilizers = [
    [0, 1, 3, 4],   # 내부 플래킷 1
    [1, 2, 4, 5],   # 내부 플래킷 2
    [3, 4, 6, 7],   # 내부 플래킷 3
    [4, 5, 7, 8],   # 내부 플래킷 4
]

syndromes = [measure_stabilizer(None, q, 'Z') for q in z_stabilizers]
print("Z 증후군:", syndromes)
# 출력 예: Z 증후군: [1, -1, 1, -1]  → -1 위치가 오류 끝점

하드웨어 구현

Google의 Willow 프로세서, IBM의 헤론(Heron) 계열 칩 등에서 표면 부호 실험이 진행 중이다. 특히 Google은 표면 부호에서 물리 오류율을 낮출수록 논리 오류율이 지수적으로 감소하는 오류 억제(error suppression) 현상을 실험적으로 확인했다.


정리

표면 부호는 2D 격자 위의 국소 안정자 측정만으로 1개의 논리 큐비트를 인코딩하고, 증후군을 통해 오류를 검출·정정한다. 코드 거리 $d$를 늘릴수록 오류 정정 능력은 향상되지만 필요한 물리 큐비트 수는 $d^2$에 비례한다. 결함 허용 양자컴퓨팅 실현을 위한 핵심 구성 요소로, 복호기 최적화와 물리 오류율 저감이 현재의 주요 연구 과제다.

연습문제

  1. Q1.거리 $d=5$인 회전 표면 부호에서 (1) 데이터 큐비트 수, (2) 독립 안정자 수, (3) 정정 가능한 최대 오류 수를 각각 구하시오.

    힌트 보기

    코드 차원 $= 2^{(\text{데이터 큐비트}) - (\text{독립 안정자})}$가 $2^1$임을 이용한다.

    해설 보기

    (1) 데이터 큐비트: $d^2 = 25$개. (2) 독립 안정자: $d^2 - 1 = 24$개 (X형 12개, Z형 12개). (3) 정정 가능한 오류: $\lfloor(d-1)/2\rfloor = \lfloor 2 \rfloor = 2$개.

  2. Q2.표면 부호에서 단일 큐비트 $Z_j$ 오류가 발생했을 때, 자극되는 안정자의 종류(X형 or Z형)와 그 이유를 안정자 교환 관계로 설명하시오.

    해설 보기

    $Z_j$는 같은 $Z$를 포함하는 Z형 안정자($B_p$)와는 교환하지만($[Z_j, Z_k]=0$), $X_j$를 포함하는 X형 안정자($A_v$)와는 반교환한다($\{X_j, Z_j\} = 0$). 따라서 큐비트 $j$를 공유하는 X형 안정자의 측정값이 $-1$로 뒤집히며, 이 두 X형 플래킷이 증후군으로 검출된다.

  3. Q3.논리 연산자 $\bar{X}$(수평 경로)와 $\bar{Z}$(수직 경로)가 반교환($\bar{X}\bar{Z} = -\bar{Z}\bar{X}$)함을 보이시오.

    힌트 보기

    $d \times d$ 격자에서 수평 경로와 수직 경로는 정확히 1개의 꼭짓점에서 교차한다.

    해설 보기

    $\bar{X} = \prod_{j \in H} X_j$, $\bar{Z} = \prod_{k \in V} Z_k$에서 수평 경로 $H$와 수직 경로 $V$는 정확히 1개의 큐비트 $j^*$에서 교차한다. $j \neq j^*$인 큐비트에서 $X$와 $Z$는 다른 큐비트에 작용하므로 교환하고, $j = j^*$에서만 $X_{j^*}Z_{j^*} = -Z_{j^*}X_{j^*}$의 반교환이 발생한다. 따라서 전체 부호로 보면 $\bar{X}\bar{Z} = -\bar{Z}\bar{X}$가 성립한다.

관련 용어

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