고전컴퓨터의 비트와 양자컴퓨터의 큐비트
고전컴퓨터는 정보를 0과 1의 이진수들의 집합으로 표현합니다. 물리적으로는 전류가 흐르지 않는 것이 0, 흐르는 것이 1에 해당하며, 이러한 디지털 기본 단위를 비트(Bit)라고 합니다. 비트가 컴퓨터 구성의 가장 기본이 되며, 수많은 비트가 모여 컴퓨터라는 하나의 복잡한 시스템을 구성하게 됩니다. 컴퓨터의 연산 또한 비트 단위로 진행이 되는데, 이때 필요한 것이 논리 게이트(Logic gate)와 게이트들로 구성된 논리 회로입니다. 논리 게이트는 여러 전기 신호를 입력받아 특정 조건에 따라 결과를 출력하는 장치로, 컴퓨터는 여러 논리 게이트들의 조합으로 연산을 수행할 수 있습니다.
양자 컴퓨터는 큰 틀에서 이러한 고전컴퓨터의 작동 방식을 따라갑니다. 다만 양자 컴퓨터는 고전컴퓨터의 비트 대신 큐비트 Qubit를 기본 단위로 사용하고, 논리 게이트 대신 양자 논리 게이트를 통해 연산을 수행합니다. 이때, 큐비트는 중첩된 양자 상태로 구성되어 있습니다. 이진수로 표현하자면, 비트가 0 또는 1로 표현되는 것과 달리, 큐비트는 0과 1이 중첩된 어떠한 값을 가집니다. 이렇게 0과 1이 중첩되어 있다는 것은 측정하기 전까지 해당 값을 정확히 알 수 없다는 것을 의미합니다. 하지만 동시에 중첩된 상태에서 계산을 수행할 수 있고, 여러 개의 이진수를 단 한 번에 처리할 수 있다는 것을 뜻하기도 합니다. 예를 들어 3개의 비트는 $2^3=8$가지의 정보 중 하나를 갖지만, 3개의 큐비트는 8가지의 정보를 동시에 표현하고, 계산할 수가 있는 것입니다. 큐비트를 이용하여 중첩된 정보를 한 번에 처리한다는 것이 양자 컴퓨터의 기본 원리이자, 상대적으로 느린 고전컴퓨터와의 가장 큰 차이점입니다.
기존 컴퓨터와 양자 컴퓨터의 비교
https://m.blog.naver.com/mage7th/221815321449
큐비트 연산 및 양자 게이트
빠른 연산을 가능하게 하는 큐비트는 중첩된 양자로 구성되는데, 물리적으로 원자나 전자와 같은 입자들을 특정 공간에 가두어 만들어집니다. 큐비트는 어떤 특정한 물질을 가리키는 말은 아니며 추상적인 개념으로, 2개의 양자 상태를 안정적으로 표현할 수 있는 것이라면 무엇이든 큐비트가 될 수 있습니다. 따라서 큐비트는 전자의 업 스핀(이진수 1에 해당)과 다운 스핀(이진수 0에 해당)이나 광자의 수평, 수직 편광 상태, 이온의 들뜬 상태 Excited state와 바닥 상태 Ground state 등 다양한 방식으로 만들어질 수 있습니다. 이러한 큐비트의 양자 상태를 양자 게이트를 통해 적절히 조작하여 연산을 수행하고, 계산의 결과를 측정하는 방식으로 양자 컴퓨터의 기능이 구현됩니다.
큐비트의 상태와 양자 게이트를 통한 연산 과정은 수학적으로 표현할 수 있습니다. 우선, 큐비트의 상태는 아래와 같이 $\alpha$와 $\beta$의 제곱 크기의 합이 1이 되는 2차원 열벡터로 표현됩니다. 실수 혹은 복소수의 2차원 열벡터는 큐비트가 가지고 있는 가능한 양자 상태를 나타냅니다. 큐비트를 나타내는 유효한 양자 상태 예시는 아래와 같습니다.
$$ \text{State of qubit: } \left[ \begin{array}{cc} \alpha & \beta \end{array} \right], |\alpha|^2 + |\beta|^2 = 1 $$
$$ \text{Example: } \left[ \begin{array}{cc} 1 & 0 \end{array} \right], \left[ \begin{array}{cc} 0 & 1 \end{array} \right], \left[ \begin{array}{cc} \frac{1}{\sqrt{2}} & \frac{1}{\sqrt{2}}\end{array} \right], \left[ \begin{array}{cc} \frac{1}{\sqrt{2}} & -\frac{1}{\sqrt{2}}\end{array} \right] $$
$\alpha$와 $\beta$는 실수 또는 복소수 값을 가질 수 있고, 물리적인 의미는 해당 상태를 관측할 확률로 생각할 수 있습니다. 큐비트는 양자 중첩 상태이므로 해당 양자 상태를 측정 전에는 알 수가 없고, 확률적인 접근만 가능합니다. 큐비트의 상태를 나타내는 다른 표기법으로는 영국의 물리학자 폴 디랙(Paul Dirac)이 제안한 브라켓 표기법 Bra-ket notation이 있습니다. 예를 들어 큐비트의 값이 0일 확률이 $\alpha$, 1일 확률이 $\beta$라면 아래와 같이 표현됩니다.
$$ \text{ket notation: } |\varphi\rangle = \alpha|0\rangle + \beta|1\rangle$$
$|\varphi\rangle$ : 큐비트의 양자 상태
$\alpha|0\rangle$ : 0일 확률 상태
$\beta|1\rangle$ : 1일 확률 상태
양자 게이트는 수학적으로 큐비트 상태 벡터의 조작으로 표현될 수 있으며, 양자 게이트를 통과한 큐비트는 양자 상태가 바뀝니다. 또한, 큐비트의 종류에 따라 다양한 방법으로 작동하며 앞서 언급한 전자의 스핀 방식 큐비트를 생각한다면 에너지를 가해 스핀 방향을 바꾸는 것이 양자 게이트의 한 종류가 될 수 있겠습니다. 실제로 현재 양자컴퓨터 작동에 쓰이는 양자 게이트의 종류에는 Hadamard, Pauli X/Y, T/S, SWAP, CNOT 게이트 등이 있습니다.
이제 큐비트의 연산 과정을 브라켓 표기법을 이용해 살펴봅시다. 우선, 두 개의 큐비트 연산을 예로 들면, 아래와 같은 과정을 통해서 큐비트가 양자 게이트를 통과하며 각각의 상태가 나올 확률들이 정해집니다. 그림과 같이 각 단계를 통과함에 따라 각 양자 상태를 가질 확률이 정해지며, 결국 이진수 00은 두 개의 게이트 통과 이후, 마지막 관측에 따라서 이진수 00, 01, 10, 11중 하나의 상태로 결정이 됩니다.
큐비트 두 개의 연산 예시
https://medium.com/quantum-ant/양자-컴퓨터-큐비트-2-2-c9723dd2c23b
큐비트의 제어와 측정 – 이온 트랩
양자 컴퓨터가 작동하기 위해서는 연산 과정에서 큐비트의 세밀한 제어가 필요합니다. 큐비트가 초기화되고, 양자 게이트를 통과하며 양자 상태가 바뀌며, 그것이 측정되어 연산 결과를 도출하는 일련의 과정에서 큐비트의 제어와 측정은 필수적입니다. 이때 큐비트의 제어에서 핵심적인 역할을 하는 것이 바로 이온 트랩입니다.
이온 트랩은 말 그대로 이온을 포획하는 장치로, 레이저 냉각된 이온으로 구성된 큐비트를 제어하는 데 쓰입니다. 여러 방식 중 RF(Radio Frequency) 전압과 정전기장에 의해 이온을 포획하는 파울(Paul) 트랩 방식을 많이 사용합니다. 선형 이온 트랩의 경우 선형으로 이온들을 포획하는데, 이때 중요한 것은 3차원 공간상에서 $x$, $y$, $z$ 세 방향에서 이온을 가두는 효과를 주는 퍼텐셜(Potential)을 형성하는 것입니다. 파울 트랩 방식은 4개의 막대 모양의 전극에 RF 고주파 전압을 걸어 x, y 방향의 퍼텐셜을 일으키고, 양쪽 두 개의 검은 엔드캡(Endcap) 전극은 직류 전압을 가해 $z$ 방향 퍼텐셜을 만듭니다. $x-y$ 방향 퍼텐셜의 경우 고주파 전압에 따라 진동하는데, 이 진동수를 이온의 운동주기보다 빠르게 전환되도록 조절하면 이온은 결과적으로 자신을 공간에 포획하도록 하는 유효 퍼텐셜을 느끼게 됩니다. 유효 퍼텐셜이 형성되면서, $x-y$ 평면 내의 전기장이 0이 되는 곳이 $z$축 방향을 따라 생기게 됩니다. 즉, $z$축 방향을 따라 이온을 선형으로 포획할 수가 있게 됩니다.
선형 이온 트랩 모식도와 이온 트랩에 포획된 8개의 $Ca^+$이온
https://doooob.tistory.com/64
마지막으로 양자 컴퓨터가 연산을 완성하기 위해서는 양자 상태를 측정하는 과정이 필수적입니다. 큐비트 연산이 모두 진행되어도 측정을 하기 전까지는 결과를 알 수가 없기 때문이죠. 레이저 냉각 이온 큐비트의 경우에는 이온의 들뜬 상태와 바닥 상태가 이진수 1과 0에 해당하는데, 공명하는 빛을 쏘여 이온에서 빛이 나오는지 여부로 양자의 상태를 확인합니다. 만약 이온이 바닥 상태라면 쏘여준 빛을 흡수 방출하며 빛을 낼 것이고, 들뜬 상태라면 그렇지 않을 것이니 해당 이온의 상태를 바로 알 수 있는 것입니다.
이렇게 양자 컴퓨터의 작동의 기본 요소인 큐비트에 대해 알아보았습니다. 간단하게 요약하자면 우리는 큐비트를 초기화, 제어, 조작하여 연산을 수행하며 이를 측정하여 결과를 얻는다고 할 수 있겠습니다. 다음 꼭지에서는 이런 원리를 가진 양자 컴퓨터가 어떻게 활용되는지, 앞으로의 미래는 어떨지 다뤄보도록 하겠습니다.
[NEXT] 기획특집 ③ - 양자컴퓨터의 미래