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

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

Deutsch-Jozsa 알고리즘 — 단 한 번의 오라클 호출로 판별하기

Deutsch-Jozsa 알고리즘은 블랙박스 함수가 상수 함수인지 균형 함수인지를 단 한 번의 양자 오라클 호출로 결정론적으로 판별한다. 고전 결정론적 알고리즘이 최악의 경우 지수 번의 평가를 요구하는 것과 대비되어, 양자 컴퓨터의 지수적 우위를 최초로 수학적으로 증명한 이정표적 알고리즘이다.

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

개념 소개

다음 문제를 생각하자. 함수 가 블랙박스(오라클) 형태로 주어졌을 때, 이 함수가 **상수 함수(constant function)**인지 **균형 함수(balanced function)**인지 판별하라.

  • 상수 함수: 입력에 무관하게 출력이 항상 0이거나 항상 1이다.
  • 균형 함수: 정확히 절반의 입력에 대해 0, 나머지 절반에 대해 1을 출력한다.

함수의 내부 구조는 알 수 없고 오직 입출력을 통해서만 접근할 수 있다. 고전적으로 최악의 경우 번 평가해야 확실한 결론을 낼 수 있다. 예를 들어 이면 최대 5회가 필요하다. Deutsch-Jozsa 알고리즘은 이 문제를 단 한 번의 오라클 호출로 해결한다.


핵심 원리

알고리즘은 개의 입력 레지스터 큐비트와 1개의 보조 큐비트로 구성된다.

알고리즘 단계

초기 상태 준비

1단계: 균등 중첩 생성

모든 큐비트에 아다마르(Hadamard) 게이트를 적용한다.

2단계: 오라클 적용

오라클 는 로 정의된다. 보조 큐비트가 상태일 때 위상 되차기(phase kickback) 현상이 일어난다.

오라클 적용 후 입력 레지스터는 다음 상태가 된다.

3단계: 두 번째 아다마르 변환

입력 레지스터에 다시 을 적용하면:

여기서 는 비트 내적이다.

판별 기준

상태의 진폭은 을 대입하면:

  • 상수 함수이면: 모든 항의 부호가 동일하므로 . 측정 결과는 반드시 이다.
  • 균형 함수이면: 양수 항과 음수 항이 정확히 상쇄되어 . 이 측정될 확률이 0이다.

따라서 측정 결과가 모두 0이면 상수 함수, 하나라도 1이 있으면 균형 함수로 결정된다.


예시·응용

: Deutsch 알고리즘

의 경우 균형 함수 는 CNOT 게이트로 구현된다. 아래 Qiskit 코드는 이 경우를 시뮬레이션한다.

from qiskit import QuantumCircuit, transpile
from qiskit_aer import AerSimulator

qc = QuantumCircuit(2, 1)  # 큐비트 0: 입력, 큐비트 1: 보조

qc.x(1)       # 보조 큐비트 |1⟩ 초기화
qc.h(0)       # 입력 레지스터 H 게이트
qc.h(1)       # 보조 큐비트 H 게이트

# 오라클: f(x)=x (균형 함수) → CNOT
qc.cx(0, 1)

qc.h(0)       # 두 번째 H 게이트
qc.measure(0, 0)

sim = AerSimulator()
result = sim.run(transpile(qc, sim), shots=1024).result()
print(result.get_counts())
# 출력: {'1': 1024}  → 균형 함수

오라클을 항등(아무 게이트 없음)으로 교체하면 출력은 {'0': 1024}가 되어 상수 함수임을 알 수 있다.

알고리즘의 위치와 의의

Deutsch-Jozsa 문제 자체의 실용적 중요성은 크지 않다. 그러나 이 알고리즘은 중첩 → 오라클 위상 인코딩 → 간섭에 의한 전역 성질 추출이라는 구조를 최초로 명확히 보여주었다. 이 구조는 이후 Simon 알고리즘, 양자 푸리에 변환, Shor 알고리즘 등 실용적 양자 알고리즘의 공통 뼈대가 된다.


정리

Deutsch-Jozsa 알고리즘의 핵심은 두 가지 양자 현상의 협력이다. 위상 되차기는 의 정보를 진폭의 위상으로 인코딩하고, 양자 간섭은 두 번째 아다마르 변환에서 전역적 성질(상수/균형)에 따라 진폭을 선택적으로 강화하거나 소거한다. 고전적으로 번 필요한 평가를 단 한 번으로 줄이는 이 과정은, 양자 병렬성이 단순히 "여러 계산을 동시에 수행"하는 것이 아니라 간섭을 통해 유용한 정보를 추출하는 과정임을 보여준다.

Exercises

연습문제

  1. Q1$n=4$일 때 고전 결정론적 알고리즘이 상수/균형을 판별하기 위해 최악의 경우 몇 번의 오라클 호출이 필요한가? 그리고 왜 그 횟수가 필요한지 논리적으로 설명하라.

    힌트 보기

    $k$번 조회해서 모두 같은 값이 나왔을 때, 아직 결론을 낼 수 없는 최대 $k$는 얼마인가?

    해설 보기

    $2^{4-1}+1 = 9$번이다. 8번 조회해서 모두 같은 값이 나왔더라도, 균형 함수이면서 나머지 8개의 출력이 모두 반대 값인 경우가 존재하므로 결론을 낼 수 없다. 9번째 조회에서 처음과 다른 값이 나오면 균형 함수임이 확정되고, 같은 값이 나오면 상수 함수임이 확정된다.

  2. Q2오라클 적용 후 입력 레지스터 상태 $|\psi_2\rangle = \frac{1}{\sqrt{2^n}}\sum_x (-1)^{f(x)}|x\rangle$에 $H^{\otimes n}$을 적용했을 때, $|z\rangle = |00\cdots0\rangle$의 진폭이 상수 함수에서 $\pm 1$이 되고 균형 함수에서 0이 됨을 직접 계산으로 확인하라.

    해설 보기

    $H^{\otimes n}|x\rangle = \frac{1}{\sqrt{2^n}}\sum_z (-1)^{x\cdot z}|z\rangle$이므로, $z=0$일 때 진폭은 $\frac{1}{2^n}\sum_x (-1)^{f(x)}$이다. 상수 함수 $f\equiv c$이면 합은 $(-1)^c \cdot 2^n$이 되어 진폭의 절댓값은 1이다. 균형 함수이면 $(-1)^{f(x)}=+1$인 항이 $2^{n-1}$개, $-1$인 항이 $2^{n-1}$개이므로 합은 0이 된다.

  3. Q3위상 되차기(phase kickback)가 발생하려면 보조 큐비트가 반드시 $\frac{|0\rangle-|1\rangle}{\sqrt{2}}$ 상태여야 한다. 보조 큐비트가 $|0\rangle$ 상태일 때 오라클을 적용하면 어떤 일이 일어나는지 설명하고, 왜 판별이 불가능해지는지 논하라.

    해설 보기

    보조 큐비트가 $|0\rangle$이면 $U_f|x\rangle|0\rangle = |x\rangle|f(x)\rangle$이 된다. $f(x)$의 정보가 보조 큐비트의 값으로 저장될 뿐, 입력 레지스터의 위상에는 아무런 변화가 생기지 않는다. 따라서 두 번째 아다마르 변환 후 모든 $z$에 대한 진폭이 균등해져 간섭 효과가 사라지고, 측정 결과로부터 상수/균형 여부를 구별할 수 없게 된다.

관련 용어

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

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분 읽기