본문 바로가기

양자 컴퓨팅

Qiskit 예제 - 양자 위상 추정 (Quantum Phase Estimation, QPE) 이번 포스팅에서는 양자 위상 추정 방법에 대해 알아보도록 하겠습니다. 양자 위상 추정(Quantum Phase Estimation, QPE)은 고윳값 문제를 해결하는 알고리즘으로 양자 화학, 양자 기계 학습에서 활용되는 중요한 알고리즘입니다. 양자 위상 추정을 이용해 풀고 싶은 문제는 아래와 같은 고윳값 문제입니다\begin{eqnarray} A {\pmb x} = \lambda {\pmb x} \end{eqnarray} 양자 위상 추정은 이 문제에 대해서, 주어진 연산자가 유니타리 연산자일 때 고윳값을 찾는 문제입니다. 유니타리 연산자란?유니타리 연산자의 정의는 아래와 같습니다:\begin{eqnarray} U^\dagger U = I\end{eqnarray}여기서 $U^\dagger$는 주어진 연산.. 더보기
Qiskit을 이용한 양자 컴퓨팅 예제 (7) - 양자 푸리에 변환 (Quantum Fourier Transform) 이번 포스팅에서는 양자 푸리에 변환에 대해 알아보도록 하겠습니다. 양자 푸리에 변환(Quantum Fourier Transform, QFT)은 이산 푸리에 변환(Discrete Fourier Transform, DFT)을 큐비트 상태에 적용하여 위상에 대한 정보를 얻어내는 변환입니다.  이산 푸리에 변환 (Discrete Fourier Transform, DFT)어떠한 유한한 이산 신호(Sample data)가 있을때, 이를 주파수 도메인으로 변환하는 연산을 우리는 "이산 푸리에 변환"이라고 부릅니다. 주어진 데이터 샘플 $x_0, x_1, \cdots x_{N-1}$에 대해서, 이산 푸리에 변환에 대한 수학적 정의는 아래와 같습니다.\begin{eqnarray} y_k = \frac{1}{\sqrt{N.. 더보기
Qiskit을 이용한 양자 컴퓨팅 예제 (5) - 이진 연산자: CNOT, CZ 게이트 이번 포스팅에서는 CNOT 게이트 (Controlled-NOT Gate)와 CZ 게이트 (Controlled-Z Gate)에 대해 알아보겠습니다. CNOT 게이트CNOT 게이트는 두 개의 큐비트 상태에 대해 적용되는 연산자입니다. 첫번째 큐비트는 제어 큐비트(Control qubit), 두 번째 큐비트는 타겟 큐비트(Target qubit)로 정의됩니다. 이에 대해 CNOT 게이트는 제어 큐비트의 상태에 따라 타겟 큐비트에 연산을 수행할지 여부를 결정합니다. 제어 큐비트가 $|0\rangle$ 상태일 경우, 타겟 큐비트에는 아무런 연산도 적용되지 않습니다.제어 큐비트가 $|1\rangle$ 상태일 경우, 타겟 큐비트에는 NOT 연산자(즉, X 게이트)를 적용하여 상태를 반전시킵니다.이러한 CNOT 게이.. 더보기
Qiskit을 이용한 양자 컴퓨팅 예제 (4) - 이진 연산자: SWAP 게이트 이번 포스팅에서는 큐비트가 두 개인 경우에 대해 적용 가능한 이진 연산자중에서 SWAP 게이트에 대해 알아보겠습니다. 2큐비트 시스템2큐비트 시스템은 말 그대로 2개의 큐비트를 갖는 상태를 의미합니다. 하나의 큐비트가 0 또는 1을 가질 수 있으므로, 2 큐비트 상태는 $|00\rangle$, $|01\rangle$, $|1 0\rangle$, $|11\rangle$ 등 총 4개의 상태를 가질 수 있습니다. 이를 행렬로 표현하면 아래와 같습니다:\begin{eqnarray} |00\rangle = \begin{pmatrix} 1 \\ 0 \\ 0 \\ 0 \end{pmatrix}, \ \ \ \ |01\rangle = \begin{pmatrix} 0 \\ 1 \\ 0 \\ 0 \end{pmatrix}, .. 더보기