忍者ブログ
情報処理技術者試験の合格を目指す全受験者のための、1問1問「徹底解説」ブログです。単なる過去問の暗記ではなく、なぜその答えになるのかを本質的に理解できるよう解説します。書籍などでは学べない最新用語やトレンドを踏まえてご紹介します。

【量子コンピュータ】条件分岐で「量子もつれ」を生み出す!CNOTゲートの「制御」と「ターゲット」|情報処理問題1000本ノック

量子コンピュータのアルゴリズムにおいて、複数の量子ビットを連携させるために不可欠な「CNOT(制御NOT)ゲート」。このゲートが持つ、命令を出す側と受ける側という2つの役割の名称を正しく攻略しましょう。

1. 【 問題 】:量子コンピューティング(2量子ビットゲートの構造)

【 問題 】 2つの量子ビットを対象に処理を行う代表的な量子ゲート「CNOT(制御NOT)ゲート」に関する記述です。このゲートでは、1つ目の量子ビットの状態が「1」である場合のみ、2つ目の量子ビットの状態を反転(NOT演算)させます。このとき、条件判定に用いられる1つ目のビット[  A  ]と、操作の対象となる2つ目のビット[  B  ]の名称の組み合わせとして正しいものはどれでしょうか?

1. [A]制御量子ビット / [B]ターゲット量子ビット
2. [A]ターゲット量子ビット / [B]制御量子ビット
3. [A]ソース量子ビット / [B]デスティネーション量子ビット
4. [A]プライマリ量子ビット / [B]セカンダリ量子ビット

2. 正解:

正解: 1. [A]制御量子ビット / [B]ターゲット量子ビット

3. 解説:もし「制御」が1なら、「ターゲット」を狙い撃ちして反転する

CNOT(シーノット)ゲートは、従来のコンピュータにおける「IF文(条件分岐)」のような働きを量子ビット同士で行うゲートです。
制御(コントロール)量子ビットは、文字通り回路を「コントロール(制御)」するための鍵を握るビットです。このビットが「0」なら何もせず、「1」のときだけ発動トリガーを引きます。
ターゲット量子ビットは、制御ビットのトリガーによって「ターゲット(標的)」として操作される側のビットです。制御ビットが「1」だった場合のみ、このターゲットビットの状態(0と1)が綺麗に反転します。
もし制御ビット側が「0と1の重ね合わせ状態」のままCNOTゲートに突入すると、制御ビットとターゲットビットの運命が複雑にリンクし、量子コンピュータの最大の特徴である「量子もつれ(エンタングルメント)」という状態が完成します。

【CNOTゲートの入力と出力のルール(真理値表)】 ← ココが試験のポイント!

入力状態CNOTゲート通過後の出力状態ターゲットビットの変化
制御ビットターゲット制御ビットターゲット
0 0 0 0 変化なし(制御が0なのでスルー)
0 1 0 1 変化なし(制御が0なのでスルー)
1 0 1 1 0 から 1 へ反転!
1 1 1 0 1 から 0 へ反転!

1. 理解のコツ: 「お殿様と家来の主従関係」に例えてみましょう。
・1つ目の制御量子ビットは、命令を下す「お殿様」です。お殿様の機嫌(状態)が「1(やる気あり)」のときだけ、命令が下されます。
・2つ目のターゲット量子ビットは、その命令を受ける「家来」です。お殿様(制御)が「1」のサインを出したのを見て、家来(ターゲット)は自分の姿勢をゴロッと「反転」させます。お殿様が「0(寝ている)」のときは、家来は何もしません。このように『誰が指示を出して、誰がターゲットにされるのか』という主従関係で覚えるのがCNOTゲートをマスターするコツです。

2. 試験対策の視点: 量子回路の構造やマルチビット演算を問う問題において、非常によく狙われる基礎用語です。問題文の中に「1つ目の出力制御のためのビット」「2つ目の制御対象ビット」という役割の区別があれば、迷わず制御量子ビットターゲット量子ビットのペアを選択してください。
試験では、選択肢2のように名前をあべこべにして混乱を誘う引っかけが定番です。英語表記の「Control(コントロール)」と「Target(ターゲット)」の頭文字をそのまま取って「CNOT」と呼ばれているシステム名称そのものが最大のヒントになります。この2つの役割が噛み合うことで「量子もつれ」を生み出すという、量子アルゴリズム全体の重要なシナリオとセットで覚えておきましょう。


4. まとめ

「CNOTゲートにおいて、条件判定の役割を持つ1つ目のビットを『制御量子ビット』、その条件によって状態を反転させられる2つ目のビットを『ターゲット量子ビット』と呼ぶ」。量子計算における複数ビット制御の基本ルールとして、この2つの明確な名前と主従関係をしっかりと記憶に定着させておきましょう!


PR