CSS纠错码

在量子纠错中，CSS纠错码（Calderbank-Shor-Steane code，以其发明者Robert Calderbank、Peter Shor 和Andrew Steane的名字命名）是一种特殊的稳定子码（stabilizer code），它由具有某些特殊性质的经典纠错码构造而成。CSS码的一个例子是斯蒂恩码（Steane code）。

## 构造

设 $C_1$ 和 $C_2$ 为两个（经典）线性码，参数分别为 $[n, k_1]$ 和 $[n, k_2]$，且满足 $C_2 \subset C_1$。此外，要求 $C_1$ 和 $C_2^\perp$的最小距离（Minimum distance）都不小于 $2t+1$，其中$C_2^\perp$是$C_2$ 的对偶码（Dual code）。则 $C_1$ 基于 $C_2$ 的CSS码，记作 $\text{CSS}(C_1, C_2)$，是一个参数为 $[n, k_1 - k_2, d]$ 的量子纠错码，其最小距离 $d \ge 2t+1$。其构造方式如下：

对于 $x \in C_1$，定义态 $|x + C_2\rangle := \frac{1}{\sqrt{|C_2|}} \sum_{y \in C_2} |x+y\rangle$，其中 $+$ 表示按位模2加法。那么 $\text{CSS}(C_1, C_2)$ 码空间就是由这些态构成的集合：$\{ |x + C_2\rangle \mid x \in C_1 \}$。

## 横向门 (Transversal Gates)

在量子纠错和容错量子计算的理论框架中，逻辑量子门的实现方式对抵抗物理错误至关重要。其中，横向操作 (transversal operation) 提供了一种结构简单且通常具有良好容错特性的实现方式。对于一个将 $n$ 个物理量子比特编码为 $k$ 个逻辑量子比特的量子纠错码，一个作用在 $n$ 个物理量子比特上的幺正操作 $U$ 被称为是横向的，如果它可以分解为作用在每个独立物理量子比特上的相同操作 $u$ 的张量积，即 $U = u^{\otimes n}$；或者，对于涉及多个量子比特块的门（如 CNOT），该操作由作用在不同块中对应位置量子比特（对或组）上的相同基本操作构成。

一个物理操作 $U$ 若能在码空间 $\mathcal{G}$（编码的逻辑量子比特所在的状态子空间）上实现一个逻辑门 $U_L$，其必须保持码空间不变，即 $U\mathcal{G} = \mathcal{G}$。对于稳定子码，其码空间 $\mathcal{G}$ 是其稳定子群（stabilizer group） $S$ 所有元素的共同+1特征子空间（$\mathcal{G} = \left\{ |\psi\rangle \in \mathcal{H} \mid s |\psi\rangle = |\psi\rangle, \forall s \in S \right\}$）。在此情况下，幺正操作 $U$ 保持码空间不变的充分必要条件是 $U$ 将稳定子群 $S$ 整体映射到自身，即满足 $USU^\dagger = S$。这意味着对于任意稳定子 $s \in S$，其变换后的算子 $UsU^\dagger$ 必须仍然是 $S$ 中的一个（可能不同的）稳定子。CSS 码作为一类重要的稳定子码，其结构使得某些基础量子门具备横向实现。

### 泡利门 (Pauli Gates)

对于任何稳定子码，逻辑泡利算子（$X_L, Y_L, Z_L$）总能通过相应的横向物理泡利操作实现。这是因为逻辑泡利算子被定义为稳定子群 $S$ 在 $n$-量子比特泡利群 $P_n$ 中的正规化子 $N(S)$ 内的非平凡元素（模去 $S$ 本身与全局相位）。而 $P_n$ 中的所有元素（即泡利串）按其定义（单比特泡利门或单位门的张量积）都是横向操作。$\square$

### CNOT 门

对于任意满足 $C_2^\perp \subset C_1$ 条件的 CSS 码 $\mathcal{G} = \text{CSS}(C_1, C_2)$，将横向 CNOT 门（即在两个编码块的对应物理量子比特之间逐对执行 CNOT 操作）作用于这两个块上，能够精确实现逻辑 CNOT 门。

证明概要： CSS 码的稳定子群 $S$ 可由纯 $X$ 型生成元（其支撑集对应于 $C_2^\perp$ 中的向量）和纯 $Z$ 型生成元（其支撑集对应于 $C_1$ 中的向量）共同生成。记 $U_{CNOT}$ 为横向 CNOT 操作。它作用于两个码块的稳定子生成元时，其变换规则如下：

$$U_{CNOT} (g_x \otimes I) U_{CNOT}^\dagger = g_x \otimes g_x$$ $$U_{CNOT} (I \otimes g_x) U_{CNOT}^\dagger = I \otimes g_x$$ $$U_{CNOT} (g_z \otimes I) U_{CNOT}^\dagger = g_z \otimes I$$ $$U_{CNOT} (I \otimes g_z) U_{CNOT}^\dagger = g_z \otimes g_z$$ 其中 $g_x$ 和 $g_z$ 分别代表单个码块的 $X$ 型和 $Z$ 型稳定子生成元。若 $g_x, g_z \in S$，则变换后的所有算子（等式右侧）显然都属于两个码块稳定子群的乘积群 $S \times S$。由于 $S \times S$ 的所有生成元在 $U_{CNOT}$ 的共轭作用下仍然落在 $S \times S$ 内，因此整个稳定子群 $S \times S$ 保持不变。这表明横向 CNOT 操作在码空间上正确地实现了逻辑 CNOT 门。$\square$

### 阿达马门 (Hadamard Gate)

对于 CSS 码 $\mathcal{G} = \text{CSS}(C_1, C_2)$，若其构造所用的两个经典码相同，即 $C_1 = C_2$（这同时蕴含了 $C_1$ 必须包含其对偶码，$C_1^\perp \subset C_1$），则逐比特应用的横向阿达马门 $H^{\otimes n}$ 能够实现逻辑阿达马门。

证明概要：关键在于阿达马门在泡利算子上的作用：$HXH^\dagger = Z$ 和 $HZH^\dagger = X$。这意味着横向 $H$ 操作会将 $X$ 型稳定子 $g_x$ 变换为对应的 $Z$ 型稳定子 $g_z$，反之亦然。当 $C_1 = C_2$ 时，CSS 码的稳定子群 $S$ 展现出一种对称性：一个泡利串是 $X$ 型稳定子（由 $C_1^\perp$ 定义）当且仅当将其中的 $X$ 替换为 $Z$（$Z$ 替换为 $X$）后得到的串是 $Z$ 型稳定子（由 $C_1$ 定义）。因此，$H^{\otimes n}$ 的作用仅仅是在 $S$ 内部置换了生成元类型，稳定子群 $S$ 整体保持不变。故横向 $H$ 实现了逻辑阿达马门。$\square$

### 相位门 (Phase Gate)

对于 CSS 码 $\mathcal{G} = \text{CSS}(C_1, C_2)$，若满足 $C_1 = C_2$ 并且 $C_1$（或其对偶码 $C_1^\perp$）是一个双偶码（doubly-even code，即码中所有码字的汉明重量均为4的倍数），则逐比特应用的横向相位门 $P^{\otimes n}$（其中 $P = \begin{pmatrix} 1 & 0 \\ 0 & i \end{pmatrix}$）能够保持稳定子群 $S$ 不变。

证明概要：相位门 $P$ 与 $Z$ 算子对易（$PZP^\dagger = Z$），因此所有 $Z$ 型稳定子 $g_z$ 在 $P^{\otimes n}$ 作用下保持不变。对于 $X$ 型稳定子 $g_x$，其对应的经典向量属于 $C_1^\perp$（因为 $g_x$ 必须与所有 $Z$ 型生成元即 $C_1$ 中的码字对易）。单比特变换为 $PXP^\dagger = XZ$（忽略对稳定子群无关的全局相位）。因此，$P^{\otimes n} g_x (P^{\otimes n})^\dagger$ 的形式为 $i^{w(g_x)} g_x g_z'$，其中 $w(g_x)$ 是 $g_x$ 的权重（即其中 $X$ 算子的数量），$g_z'$ 是在 $g_x$ 的支撑集上作用 $Z$ 得到的算子。由于 $g_x$ 对应的向量属于双偶码 $C_1^\perp$，其权重 $w(g_x)$ 是4的倍数，故 $i^{w(g_x)} = 1$。于是变换结果为 $g_x g_z'$。又因为 $C_1=C_2$，对应的 $g_z'$ 也是 $S$ 中的（$Z$ 型）稳定子，所以 $g_x g_z'$ 仍然属于 $S$。综上，$P^{\otimes n}$ 保持了稳定子群 $S$。需要注意，虽然横向 $P$ 门保持了稳定子群，但其实现的逻辑操作不一定恰好是逻辑 $P$ 门；不过，它确实实现了克利福德群中的某个门，且应用两次横向相位操作等效于（可能相差全局相位）一个逻辑 $Z$ 操作。$\square$

### 斯蒂恩码示例 (Steane Code Example)

斯蒂恩码是一个著名的 $[[7,1,3]]$ 量子码，它是 CSS 码的一个实例，其构造满足 $C_1 = C_2 = \text{Ham}(3,2)$，即 汉明码 7,4,3。其对偶码 $C_1^\perp$ 是 7,3,4 码，这是一个双偶码。

基于上述性质和讨论：

- 逻辑泡利门是横向的（适用于所有稳定子码）。
- 逻辑 CNOT 门是横向的（适用于所有 CSS 码）。
- 逻辑阿达马门是横向的（因为 $C_1 = C_2$）。
- 横向相位门 $P$ 保持稳定子群不变（因为 $C_1 = C_2$ 且 $C_1^\perp$ 是双偶码），这意味着相关的逻辑门操作也是容错的。

因此，斯蒂恩码允许整个克利福德群 (Clifford group) 的逻辑门都通过横向物理操作来实现，这极大地简化了容错量子计算中这些常用门的实现。

### 横向性的局限 (Limitations on Transversality)

尽管横向门具有诸多优点，但伊思廷-尼尔定理 (Eastin-Knill theorem) 明确指出，任何非退化的量子纠错码都无法通过横向操作实现一个通用的逻辑门集合。通用性要求门集中至少包含一个非克利福德门。该定理意味着，对于包括斯蒂恩码、表面码等在内的许多重要量子纠错码，非克利福德门（如实现通用计算所需的 $T$ 门，也称 $\pi/8$ 门）不能简单地通过横向操作实现。要容错地实现这些关键的非克利福德门，必须采用如魔术态蒸馏 (magic state distillation) 等更为复杂的策略。