logo

制御NOT(CNOT)ゲート

制御NOT(CNOT)ゲート

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

定義1

次のようなベクトル値ブール関数を**CNOT\operatorname{CNOT}ゲート**Controlled NOT(CNOT) gateという。

CNOT:{0,1}2{0,1}2 \operatorname{CNOT} : \left\{ 0, 1 \right\}^{2} \to \left\{ 0, 1 \right\}^{2}

CNOT(a,b)=(a,ab) \operatorname{CNOT} (a,b) = (a, a \oplus b)

  • ファインマンゲートFeynman gateとも呼ばれる。2

説明

CNOT\operatorname{CNOT}ゲートの入出力の具体的な計算は次のようになる。

CNOT(0,0)=(0,00)=(0,0)CNOT(0,1)=(0,01)=(0,1)CNOT(1,0)=(1,10)=(1,1)CNOT(1,1)=(1,11)=(1,0) \begin{align*} \operatorname{CNOT} (0,0) &= (0, 0 \oplus 0) = (0, 0) \\ \operatorname{CNOT} (0,1) &= (0, 0 \oplus 1) = (0, 1) \\ \operatorname{CNOT} (1,0) &= (1, 1 \oplus 0) = (1, 1) \\ \operatorname{CNOT} (1,1) &= (1, 1 \oplus 1) = (1, 0) \end{align*}

上の表を見ると、CNOT\operatorname{CNOT}可逆関数であることと、CNOT\operatorname{CNOT}を二回合成すると恒等関数になることが容易に分かる。

Id=CNOTCNOT \operatorname{Id} = \operatorname{CNOT} \circ \operatorname{CNOT}

出力の二番目の値だけを見ると、XOR\text{XOR}ゲートと同じであるため、可逆XOR\text{XOR}ゲートとも呼ばれる。

부울 함수기호진리표
CNOT\operatorname{CNOT}
입력출력
aabbaaaba \oplus b
00000000
00110011
11001111
11111100

  1. キム・ヨンフン・ホ・ジェソン, 量子情報理論 (2020), p88-89 ↩︎

  2. https://en.wikipedia.org/wiki/Controlled_NOT_gate ↩︎