
大衛·多伊奇 (David Deutsch)。英國物理學家,被譽為量子計算理論的奠基人之一。他在 1985 年正式提出了通用量子圖靈機模型,並在理論上確立了 CNOT 閘 與單一量子閘的組合是實現所有量子運算的通用閘集合(Universal Quantum Gate Set)。
我們掌握了量子資訊的語言、狀態空間(2N 的潛能)以及單一量子閘(如 X, Z, H 閘)的旋轉能力。然而,單一量子閘只能讓 Qubit 獨立運作。要將 2N 的巨大狀態空間轉化為實際的計算加速,我們必須引入一種能力,讓 Qubit 們彼此互動和影響。
古典與量子的根本差異:通用閘的法則
在正式進入多 Qubit 閘之前,我們必須在心裡建立一個古典計算的基準點,這將幫助我們理解量子世界的核心限制與關鍵選擇。
經典世界的通用閘:NAND
在經典電腦中,邏輯設計有一個奇蹟:通用閘 NAND。只要有 NAND 一個閘,你就能建出所有的邏輯運算(AND, OR, XOR, NOT, 加法器,乃至 CPU)。NAND 是經典計算的最小生成元(Minimal Universal Gate)。
量子世界的限制
- 可逆性(Reversibility): 操作必須能被反向執行。
- 么正性(Unitary): 保證系統總機率守恆。
- 資訊守恆: 保持基態的正交性。
NAND 是不可逆的。例如,NAND 閘的輸出結果為 1 時,對應的輸入組合可能是 00, 01, 10 三種之一。從輸出 1 我們無法反推出確定的輸入。這就違反了量子運算必須可逆的原則。因此,NAND 在量子世界是「非法」閘。這個巨大的差異,是量子計算架構的根基。
量子世界的通用閘集合
由於一個閘無法同時滿足可逆性與通用性,量子電腦的設計必須尋找一個通用閘集合:CNOT 閘 + 單一量子閘 (如 H, Z, T)。我們已經掌握了單一量子閘的旋轉能力,現在,我們需要找出負責連結與控制的關鍵核,這就是 CNOT 閘(Controlled-NOT Gate) 的使命。
CNOT 閘:Qubit 之間的條件邏輯
CNOT 閘是我們遇到的第一個作用於兩個 Qubit 的邏輯閘,也是量子世界中負責創造關聯的基礎閘。
CNOT 閘由兩個 Qubit 組成
- 控制 Qubit (Control Qubit, C): 決定操作是否發生
- 目標 Qubit (Target Qubit, T): 實際被翻轉的 Qubit
CNOT 的運作規則

- CNOT 閘在量子線路圖上用一個垂直線連接。控制 Qubit 線路用一個實心黑點(•)表示;目標 Qubit 線路用一個圓圈和中間的十字(⊕)表示,代表 NOT 運算。
- 如果 控制 Qubit C 是 |0>: 對目標 Qubit T 不執行任何操作。
- 如果 控制 Qubit C 是 |1>: 對目標 Qubit T 執行 X 閘(即 NOT 閘,翻轉 0 ↔ 1)。
CNOT 閘作用於兩個 Qubit,因此它是一個 4 X 4 的么正矩陣 UCNOT,作用在 4 維的狀態向量 |00>, |01>, |10>, |11> 上。

矩陣分為四個 2 X 2 區塊。
- 左上角(C=0): 是 2 X 2 的單位矩陣 I,表示 C=0 時不操作。
- 右下角(C=1): 是 2 X 2 的 X 閘矩陣,表示 C=1 時對目標 T 執行翻轉。
CNOT 閘在疊加態上的作用:生成第一個關聯態
CNOT 閘的真正威力,是在對疊加態操作時展現的。我們將用矩陣乘法,嚴謹證明 CNOT 閘如何將兩個獨立的 Qubit 狀態,轉化為量子計算中最核心的資源貝爾態(Bell State)。
準備疊加態並寫成向量
我們從 |00> 開始,對第一個 Qubit 應用 H 閘,得到均勻疊加態:

寫成向量形式(基底順序為 |00>, |01>, |10>, |11>):

執行矩陣乘法 UCNOT ∣ψ⟩
我們將 CNOT 矩陣應用於 ∣ψ⟩:

逐行相乘:
- 第 1 行: 1⋅1 + 0⋅0 + 0⋅1 + 0⋅0 = 1
- 第 2 行: 0⋅1 + 1⋅0 + 0⋅1 + 0⋅0 = 0
- 第 3 行: 0⋅1 + 0⋅0 + 0⋅1 + 1⋅0 = 0
- 第 4 行: 0⋅1 + 0⋅0 + 1⋅1 + 0⋅0 = 1
最後結果

轉回ket表示

原始狀態
- 第一 qubit 是 0 → |00⟩ 不變
- 第一 qubit 是 1 → |10⟩ 的第二 qubit 被翻轉,變成 |11⟩
CNOT 閘成功地將原本獨立的疊加態轉化成了著名的貝爾態,這是一個無法被分解為兩個獨立 Qubit 狀態乘積的高度相關複合狀態。
















