logo

양자 프레드킨/CSWAP 게이트 📂양자정보이론

양자 프레드킨/CSWAP 게이트

양자정보이론
[ 펼치기 · 접기 ]

정의1

(고전적 프레드킨 게이트 $(a, b, c) \mapsto \big(a, (\lnot a \land b) \lor (a \land c), (\lnot a \land c) \lor (a \land b) \big)$의 정의로부터) $3$큐비트 $\ket{a, b, c} = \ket{a} \otimes \ket{b} \otimes \ket{c}$에 대해서 양자 토폴리 게이트quantum Toffoli gate 를 다음과 같이 정의한다.

$$ \begin{align*} F_{q} : (\mathbb{C}^{2})^{\otimes 3} &\to (\mathbb{C}^{2})^{\otimes 3} \\ \ket{a, b, c} &\mapsto \ket{a, (\lnot a \land b) \lor (a \land c), (\lnot a \land c) \lor (a \land b)},\quad \forall a,b,c \in \left\{ 0, 1 \right\} \end{align*} $$

$$ F_{q}(\ket{a} \otimes \ket{b} \otimes \ket{c}) = \ket{a} \otimes \ket{(\lnot a \land b) \lor (a \land c)} \otimes \ket{(\lnot a \land c) \lor (a \land b)} $$

여기서 $(\mathbb{C}^{2})^{\otimes 3}$는 벡터공간의 텐서곱, $\ket{a} \otimes \ket{b} \otimes \ket{c}$는 곱벡터, $\land$는 논리곱, $\lor$은 논리합, $\lnot$은 논리부정이다.

설명

고전적 프레드킨 게이트의 양자 컴퓨터 버전이다. 고전적 프레드킨 게이트가 범용 게이트인 것에 반해 양자 프레드킨 게이트는 범용 게이트가 아니다. 양자 프레드킨 게이트 뿐 아니라 양자 컴퓨팅에서 범용 게이트를 찾을 수는 없다.

$F_{q}$의 구체적인 입출력은 다음과 같다. 입력이 $\ket{101}, \ket{110}$일 때만 출력이 바뀐다.

$$ F_{q} (\ket{000}) = \ket{0, (\lnot 0 \land 0) \lor (0 \land 0), (\lnot 0 \land 0) \lor (0 \land 0)} = \ket{000} \\[0.5em] F_{q} (\ket{001}) = \ket{0, (\lnot 0 \land 0) \lor (0 \land 1), (\lnot 0 \land 1) \lor (0 \land 0)} = \ket{001} \\[0.5em] F_{q} (\ket{010}) = \ket{0, (\lnot 0 \land 1) \lor (0 \land 0), (\lnot 0 \land 0) \lor (0 \land 1)} = \ket{010} \\[0.5em] F_{q} (\ket{011}) = \ket{0, (\lnot 0 \land 1) \lor (0 \land 1), (\lnot 0 \land 1) \lor (0 \land 1)} = \ket{011} \\[0.5em] F_{q} (\ket{100}) = \ket{1, (\lnot 1 \land 0) \lor (1 \land 0), (\lnot 1 \land 0) \lor (1 \land 0)} = \ket{100} \\[0.5em] F_{q} (\ket{101}) = \ket{1, (\lnot 1 \land 0) \lor (1 \land 1), (\lnot 1 \land 1) \lor (1 \land 0)} = \ket{110} \\[0.5em] F_{q} (\ket{110}) = \ket{1, (\lnot 1 \land 1) \lor (1 \land 0), (\lnot 1 \land 0) \lor (1 \land 1)} = \ket{101} \\[0.5em] F_{q} (\ket{111}) = \ket{1, (\lnot 1 \land 1) \lor (1 \land 1), (\lnot 1 \land 1) \lor (1 \land 1)} = \ket{111} $$

행렬표현은 다음과 같다.

$$ F_{q} = \begin{bmatrix} 1 & 0 & 0 & 0 & 0 & 0 & 0 & 0 \\ 0 & 1 & 0 & 0 & 0 & 0 & 0 & 0 \\ 0 & 0 & 1 & 0 & 0 & 0 & 0 & 0 \\ 0 & 0 & 0 & 1 & 0 & 0 & 0 & 0 \\ 0 & 0 & 0 & 0 & 1 & 0 & 0 & 0 \\ 0 & 0 & 0 & 0 & 0 & 0 & 1 & 0 \\ 0 & 0 & 0 & 0 & 0 & 1 & 0 & 0 \\ 0 & 0 & 0 & 0 & 0 & 0 & 0 & 1 \end{bmatrix} $$


  1. 김영훈·허재성, 양자 정보 이론 (2020), p97 ↩︎