ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • 양자 게이트 기초 (1) - 가역성, CNOT 게이트와 얽힘
    Category C/Linear Algebra 2023. 7. 9. 20:28

     

    유니타리 행렬과 가역게이트

    지난 포스팅을 통해 스핀의 측정과 큐비트의 표현에 대한 선형대수적 유도과정을 알아보았다.

    (https://old-lie.tistory.com/4)

     

    양자역학 기본원리에 대한 수식 해석에 있어서 매우 중요한 개념인 유니타리 행렬에 대해 정의하면 아래와 같다.

    [유니타리 행렬]
    복소 성분을 갖는 정사각행렬 A와 켤레전치 $A^{*}$에 대하여 $A^{-1}=A^{*}$
    즉, $A^{*}A$를 항등행렬로 갖는 정방행렬 A를 유니타리 행렬이라고 한다.

    A가 유니타리성을 갖는 것과 A의 행벡터가 정규직교집합을 이루는 것은 동치이다.

     

     

    그렇다면 전치행렬, 역행렬, 항등원의 개념이 양자 게이트와 어떤 연관성이 있는가?

    양자 게이트는 아래 두 가지 특성을 가진다.

     

    1. 모든 양자 게이트는 가역적이어야 한다.
    2. 양자 게이트는 구조적으로 데이터의 복제가 불가능하다.

     

    여기서 1번 항목의 '가역적'이라는 것은 다음과 같이 해석할 수 있다.

    • 출력값이 주어졌을 때 입력값을 역으로 추적할 수 있음
    • 게이트의 출력값을 다시 동일한 게이트에 통과시키면, 초기 입력값을 얻을 수 있음

     

    이는 전치행렬, 역행렬과 항등원의 개념이 그대로 논리 게이트에 적용되고 있음을 의미한다.


    가역게이트 예시 : 토폴리 게이트

    토마소 토폴리(Tommaso Toffoli)가 고안한 게이트로, 3개의 입력과 3개의 출력을 가진다.

    처음 2개의 입력을 제어비트로 사용하여 둘 다 1일 경우에만 세번째 비트를 반전시킨다.

     

    $T(x, y, z) = (x, y, (x.y)\oplus z)$

    입력 출력
    x y z x y $(x.y)\oplus z$
    0 0 0 0 0 0
    0 0 1 0 0 1
    0 1 0 0 1 0
    0 1 1 0 1 1
    1 0 0 1 0 0
    1 0 1 1 0 1
    1 1 0 1 1 1
    1 1 1 1 1 0

     

    토폴리 게이트는 가역성을 가지므로, 출력값을 알면 입력값을 추측할 수 있다.

    $T(x, y, (x.y)\oplus z)$ = $(x,y,(x.y)\oplus (x.y)\oplus z) = (x,y,z)$

     

    이러한 성질들을 팬아웃 개념을 도입해 정리하면,

    $$T(x, 1, 0) = (x, 1, x)$$

     

    즉 임의의 부울 회로를 토폴리 게이트만 사용하여 표현 가능하므로 가역 게이트 이자 범용 게이트이다.

     


    CNOT 게이트와 얽힘상태

    CNOT 게이트는 양자회로에서 쓰일 경우 큐비트를 얽힘 상태로 만들어주는 역할을 한다.

    어떻게 얽힘 상태로 만드지에 대한 검증도 진행할 예정이다.

     

    기본적으로 2개의 입력비트와 2개의 출력비트를 가지며

    입력 출력 간소화
    x y x $x\oplus y$ 출력
    $|0\rangle$ $|0\rangle$ $|0\rangle$ $|0\rangle$ $|00\rangle$
    $|0\rangle$ $|1\rangle$ $|0\rangle$ $|1\rangle$ $|01\rangle$
    $|1\rangle$ $|0\rangle$ $|1\rangle$ $|1\rangle$ $|11\rangle$
    $|1\rangle$ $|1\rangle$ $|1\rangle$ $|0\rangle$ $|10\rangle$

     

    위와 같은 테이블로 나타낼 수 있다. 

    CNOT 게이트의 선형조합을 알아보기 전, 큐비트의 얽힘 상태에 대한 선형대수적 표현에 대한 이해가 필요하다.

     

    [큐비트와 기저]  

    [1]

    Alice는 정규직교 기저 ($|a_0\rangle, |a_1\rangle$)를 사용하고, Bob은 정규직교 기저 ($|b_0\rangle, |b_1\rangle$)를 사용해 큐비트를 측정한다고 가정하자. 

     

    Alice의 큐비트 $|v\rangle$ = $c_0|a_0\rangle + c_1|a_1\rangle$

    Bob의 큐비트 $|w\rangle$ = $d_0|a_0\rangle + d_1|a_1\rangle$

     

    다입자 양자상태를 기술하기 위해 위의 두 상태벡터를 텐서곱으로 연산하면

    $$|v\rangle\oplus|w\rangle = (c_0|a_0\rangle + c_1|a_1\rangle) \oplus (d_0|a_0\rangle + d_1|a_1\rangle)$$

     

    (=) $c_0d_0|a_0\rangle|b_0\rangle+c_0d_1|a_0\rangle|b_1\rangle+c_1d_0|a_1\rangle|b_0\rangle+c_1d_1|a_1\rangle|b_1\rangle$ 

     

    위의 표현식은 기저벡터들로 이루어진 4개의 텐서곱 r=$|a_0\rangle|b_0\rangle$, s=$|a_0\rangle|b_1\rangle$, t=$|a_1\rangle|b_0\rangle$, u=$|a_1\rangle|b_1\rangle$ 을 포함하며 각각 정규직교 기저를 이룬다.

     

     

    $c_0d_0$과 같이 기저 앞 상수값은 확률진폭이므로, $c_0^2d_0^2$, $c_0^2d_1^2$, $c_1^2d_0^2$, $c_1^2d_1^2$은

     

    Alice와 Bob이 각각 00, 01, 10, 11을 얻을 확률과 같다.

     

    모든 확률의 합은 1이 되므로, $r^2+s^2+t^2+u^2=1$이 성립하며, ru와 st는 $c_0c_1d_0d_1$로 동치이다.

    즉 외항의 곱 ru = 내항의 곱 st 이다.

     

     

    [큐비트가 얽히지 않은 상태]

     

    Alice와 Bob의 큐비트가 아래와 같이 주어졌다고 하자  

    $$ \frac{1}{2\sqrt{2}}|a_0\rangle|b_0\rangle + \frac{\sqrt{3}}{2\sqrt{2}}|a_0\rangle|b_1\rangle+\frac{1}{2\sqrt{2}}|a_1\rangle|b_0\rangle+\frac{\sqrt{3}}{2\sqrt{2}}|a_1\rangle|b_1\rangle$$

     

    이 때 ru = st = $\frac{\sqrt{3}}{8}$ 이다. 

    Alice가 먼저 측정을 진행할 때의 기저 표현은 다음과 같다.

     

    $$|a_0\rangle(\frac{1}{2\sqrt{2}}|b_0\rangle+\frac{\sqrt{3}}{2\sqrt{2}}|b_1\rangle) + |a_1\rangle(\frac{1}{2\sqrt{2}}|b_0\rangle+\frac{\sqrt{3}}{2\sqrt{2}}|b_1\rangle)$$

     

    여기서 괄호 안의 공통인수를 추출하면

     

    $$ (\frac{1}{\sqrt{2}}|a_0\rangle+(\frac{1}{\sqrt{2}}|a_1\rangle)(\frac{1}{2}|b_0\rangle+\frac{\sqrt{3}}{\sqrt{2}}|b_1\rangle)$$ 

     

    이며 Alice는 0과 1을 같은 확률로 얻을 수 있고 앨리스의 측정행위가 밥의 큐비트 상태에 영향을 미치지 않으므로, 

    두 사람의 큐비트는 서로 얽히지 않았다.  (=) 외항과 내항의 곱이 같을 때 두 큐비트는 얽힘 상태가 아니다.

     

     

    [큐비트가 얽혀있는 상태]

    이번에는 Alice와 Bob의 큐비트가 아래와 같이 주어졌다고 하자 

    $$\frac{1}{2}|a_0\rangle|b_0\rangle + \frac{1}{2}|a_0\rangle|b_1\rangle+\frac{1}{\sqrt{2}}|a_1\rangle|b_0\rangle+0.|a_1\rangle|b_1\rangle$$

     

    이 때 ru = 0, st = $\frac{1}{2\sqrt{2}}$ 이다. 

    위에서 수행한 연산과 같이 Alice와 Bob의 큐비트에 대해 텐서곱 연산을 수행하면,

     

    $$ |a_0\rangle(\frac{1}{2}|b_0\rangle+\frac{1}{2}|b_1\rangle)+|a_1\rangle(\frac{1}{\sqrt{2}}|b_0\rangle+0.|b_1\rangle)$$

     

    이고, 수식을 다시 확률진폭을 기준으로 정렬하면 다음과 같다.

     

    $$\frac{1}{\sqrt{2}}|a_0\rangle(\frac{1}{\sqrt{2}}|b_0\rangle+\frac{1}{\sqrt{2}}|b_1\rangle)+\frac{1}{\sqrt{2}}|a_1\rangle(1.|b_0\rangle+0.|b_1\rangle)$$ 

     

    위의 수식에서 앨리스가 0을 관측하는 순간, 앨리스의 큐비트는 $|a_0\rangle$로 바뀐다. 

    그 후 물리계의 상태는 $|a_0\rangle(\frac{1}{\sqrt{2}}|b_0\rangle+\frac{1}{\sqrt{2}}|b_1\rangle)$으로 확정되고

    밥의 큐비트는 $(\frac{1}{\sqrt{2}}|b_0\rangle+\frac{1}{\sqrt{2}}|b_1\rangle)$이 된다.

     

    앨리스가 1을 관측하는 순간, 밥의 큐비트는 $|b_0\rangle$로 결정된다. 

    (=) 앨리스와 밥의 큐비트는 서로 얽혀있으며, 한쪽이 관측되는 순간 다른쪽의 상태도 결졍된다. 

     


    CNOT 게이트가 큐비트를 얽히게 만드는 원리

     

    $|R^4$ 4차원 공간의 표준 순서 기저는 다음과 같다. [2]

     

    $$(\begin{bmatrix}1 \\0 \\0 \\0 \end{bmatrix}, \begin{bmatrix}0 \\1 \\0 \\0 \end{bmatrix}, \begin{bmatrix}0 \\0 \\1 \\0 \end{bmatrix}, \begin{bmatrix}1 \\0 \\0 \\1 \end{bmatrix})$$

     

    이 때 위의 CNOT 게이트 입출력 테이블 결과를 선형조합으로 표현하면 아래와 같다.

    $$CNOT (r|00\rangle+s|01\rangle+t|10\rangle+u|11\rangle) = r|00\rangle+s|01\rangle+u|10\rangle+t|11\rangle$$

     

    즉 $|10\rangle$과 $|11\rangle$의 확률 진폭이 서로 바뀐 것을 알 수 있다.

    이것을 행렬로 표현하면 다음과 같다.

     

    CNOT 게이트 행렬식과 모형

     

    위 그림에서, 상단 입력값이 $\frac{1}{\sqrt{2}}|0\rangle+\frac{1}{\sqrt{2}}|1\rangle$ 이고,

    하단의 입력값이 $|0\rangle$일 때, 전체 입력 큐비트는 아래와 같이 표현 가능하다.

     

    $$ (\frac{1}{\sqrt{2}}|0\rangle+\frac{1}{\sqrt{2}}|1\rangle)\oplus|0\rangle $$

     

     

    이 입력값이 CNOT 게이트를 통과하면 

     

    $$ \frac{1}{\sqrt{2}}|00\rangle+\frac{1}{\sqrt{2}}|11\rangle $$ 상태가 된다.

     

     

    본 블로그의 첫번째 포스팅인 [슈테른-게를라흐 실험]에서 전자들의 스핀을 기술하는 상태벡터는

     

    $$ \frac{1}{\sqrt{2}}\begin{bmatrix}1 \\0 \end{bmatrix}\oplus\begin{bmatrix}0 \\1 \end{bmatrix}-\frac{1}{\sqrt{2}}\begin{bmatrix}0 \\1 \end{bmatrix}\oplus\begin{bmatrix}1 \\0 \end{bmatrix} $$

     

     

    위와 같이 나타낼 수 있는데, 

    이는 아래와 같이 CNOT 게이트를 통과시킨 큐비트와 동치임을 통해 유도할 수 있다.

     

    $$ \begin{bmatrix}1 & 0 &0 &0 \\0 & 1 &0 &0 \\ 0&0&0&1 \\ 0&0&1&0 \end{bmatrix}\begin{bmatrix}0 \\\frac{1}{\sqrt{2}} \\0 \\-\frac{1}{\sqrt{2}} \end{bmatrix}=\frac{1}{\sqrt{2}}\begin{bmatrix}0 \\1 \\-1 \\0 \end{bmatrix} $$

     


    참고자료

    [1] Quantum Computing for Everyone : 크리스 베른하트 지음, 이정문 옮김

    [2] 물리의 정석 - 양자 역학 편 : 레너드 서스킨드 지음, 이종필 역

Designed by Tistory.