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

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

Deutsch-Jozsa 알고리즘 — 단 한 번의 평가로 결론짓기

Deutsch-Jozsa 알고리즘은 주어진 함수가 상수 함수인지 균형 함수인지를 단 한 번의 오라클 호출로 확정적으로 판별한다. 고전 컴퓨터가 최악의 경우 지수번의 평가를 요구하는 것과 대비되어, 양자컴퓨팅의 지수적 우위를 처음으로 엄밀히 증명한 알고리즘이다.

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

개념 소개

문제 정의: 비트 입력을 받는 함수 이 블랙박스(오라클)로 주어진다. 이 함수는 다음 두 경우 중 하나임이 보장된다.

  • 상수 함수(constant): 모든 입력에 대해 출력이 동일 (전부 0 또는 전부 1)
  • 균형 함수(balanced): 출력의 정확히 절반이 0, 나머지 절반이 1

어느 쪽인지 판별하는 것이 목표다. 고전 컴퓨터는 확실한 답을 얻으려면 최악의 경우 번 질의해야 한다. Deutsch-Jozsa 알고리즘은 단 한 번의 오라클 호출로 확정적 답을 낸다.


핵심 원리

알고리즘은 개의 입력 큐비트와 1개의 보조(ancilla) 큐비트, 총 개를 사용한다.

1단계 — 초기 상태 준비

입력 레지스터는 , 보조 큐비트는 로 설정한다.

2단계 — Hadamard 변환

전체 큐비트에 Hadamard 게이트를 적용하면 입력 레지스터는 모든 개 상태의 균일 중첩이 되고, 보조 큐비트는 가 된다.

3단계 — 오라클(위상 킥백) 적용

오라클 는 로 정의된다. 보조 큐비트가 일 때 위상 킥백(phase kickback) 현상으로 의 정보가 전역 위상 대신 상대 위상으로 인코딩된다.

4단계 — 두 번째 Hadamard 및 측정

입력 레지스터에 Hadamard를 재적용하면:

전부 0인 상태 를 측정할 확률은 다음과 같다.

  • 상수 함수: 모든 의 부호가 같으므로 합은 →
  • 균형 함수: 양수와 음수 항이 정확히 상쇄 →

측정 결과가 이면 상수 함수, 그 외이면 균형 함수로 오류 없이 결론짓는다.


예시·응용

n=1: Deutsch 알고리즘

가장 단순한 특수 경우로, 2큐비트 회로로 인지 아닌지를 한 번에 판별한다.

from qiskit import QuantumCircuit

def build_dj_circuit(oracle_circuit, n):
    qc = QuantumCircuit(n + 1, n)
    qc.x(n)           # 보조 큐비트 |1⟩ 초기화
    qc.h(range(n+1))  # 전체 Hadamard
    qc.compose(oracle_circuit, inplace=True)  # 오라클
    qc.h(range(n))    # 입력 레지스터에 Hadamard 재적용
    qc.measure(range(n), range(n))
    return qc

고급 알고리즘과의 연결

이 알고리즘의 구조—Hadamard → 오라클 → Hadamard → 측정—는 이후 Simon 알고리즘, Grover 알고리즘, Shor 알고리즘 설계의 원형이 된다. 위상 킥백과 간섭을 결합해 전역 함수 특성을 단번에 추출하는 방식은 양자 알고리즘 설계의 핵심 패턴이다.

단, Deutsch-Jozsa 문제 자체는 문제가 인위적으로 제한되어(상수/균형 보장) 실용적 쓸모는 크지 않다. 이 알고리즘의 의의는 양자 지수적 우위의 가능성을 최초로 엄밀하게 증명한 데 있다.


정리

Deutsch-Jozsa 알고리즘은 양자 중첩으로 개 입력을 동시에 평가하고, 위상 킥백으로 함수 정보를 위상에 인코딩한 뒤, 간섭으로 원하는 답만 보강·상쇄하는 세 단계 구조를 갖는다. 이 흐름은 양자 알고리즘을 이해하는 핵심 골격이다.

Exercises

연습문제

  1. Q1입력 비트 수가 n=3일 때, 고전 컴퓨터가 함수의 종류를 확실히 판별하기 위해 최악의 경우 몇 번 질의해야 하는가? 그 이유를 설명하라.

    힌트 보기

    상수 함수를 반증하려면 얼마나 많은 서로 다른 출력값이 필요한지 생각해보라.

    해설 보기

    최악 $2^{n-1}+1 = 5$번이다. 처음 $2^{n-1}=4$번 질의까지는 모두 같은 값이 나와도 상수 함수일 가능성이 남아 있다. 5번째 질의에서 비로소 상수 함수(모두 동일)인지 균형 함수(다른 값 등장)인지 확정된다.

  2. Q2오라클 적용 직후 입력 레지스터의 상태에서 $(-1)^{f(x)}$ 위상이 나타나는 이유(위상 킥백)를 수식으로 설명하라.

    힌트 보기

    보조 큐비트가 $|{-}\rangle$ 상태일 때 $|y \oplus f(x)\rangle$를 전개해보라.

    해설 보기

    $U_f|x\rangle|{-}\rangle = |x\rangle \cdot \frac{|f(x)\rangle - |1 \oplus f(x)\rangle}{\sqrt{2}}$. $f(x)=0$이면 $\frac{|0\rangle-|1\rangle}{\sqrt{2}} = |{-}\rangle$, $f(x)=1$이면 $\frac{|1\rangle-|0\rangle}{\sqrt{2}} = -|{-}\rangle$이 된다. 따라서 전체는 $(-1)^{f(x)}|x\rangle|{-}\rangle$이 되어, $f(x)$의 값이 보조 큐비트가 아닌 입력 레지스터의 전역 위상으로 이전(킥백)된다.

  3. Q3Deutsch-Jozsa 알고리즘이 확률적이 아닌 확정적(deterministic)으로 답을 내는 이유는 무엇인가?

    해설 보기

    측정 확률 $P(0^n)$이 상수 함수에서 정확히 1, 균형 함수에서 정확히 0이 되기 때문이다. 이는 간섭 현상이 완전한 보강(상수) 또는 완전한 상쇄(균형)를 만들어 중간값이 존재하지 않기 때문이다. 따라서 단 한 번의 측정으로 오류 가능성 없이 판별이 가능하다.

관련 용어

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

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