表面码

表面码（Surface Code）是一种重要且极具前景的量子纠错码（QECC），属于稳定子码和拓扑量子纠错码（topological quantum error correction code）的范畴。表面码因其具有较高的容错阈值、仅需最近邻相互作用以及对实际量子计算机硬件平台（特别是二维布局的量子比特阵列）的良好适应性而受到广泛研究。其核心思想是将逻辑量子比特的信息编码到分布于二维平面（“表面”）上的大量物理量子比特中，并通过测量局域的稳定子算符来检测和纠正发生的错误。这种编码方式使得逻辑信息受到拓扑性质的保护，对局域物理错误具有天然的鲁棒性。表面码被普遍认为是构建大规模容错量子计算机最有希望的候选方案之一。

## 历史与发展

表面码的概念起源于阿列克谢·基塔耶夫（Alexei Kitaev）在1997年提出的环面码（Toric Code），这是一种在具有周期性边界条件（环面拓扑）的二维晶格上定义的拓扑量子纠错码。随后，谢尔盖·布拉维伊（Sergey Bravyi）和基塔耶夫于1998年研究了具有开放边界（平面）的晶格，从而发展出严格意义上的表面码。埃里克·丹尼斯（Eric Dennis）、基塔耶夫、安德鲁·兰达尔（Andrew Landahl）和约翰·普雷斯基尔（John Preskill）在2001年进一步阐述了表面码作为拓扑量子存储器的性质及其解码机制。自那时起，表面码因其优越的性能和对实验实现的友好性，吸引了大量的理论和实验研究，包括对其容错阈值的精确计算、逻辑门操作方案的优化以及在各种物理系统中的实验验证。

## 核心原理

### 结构与编码

<image>

表面码通常定义在一个二维的量子比特晶格上，例如方格（或旋转方格）排列。物理量子比特可以放置在晶格的边（edge）上（如基塔耶夫最初提出的模型），也可以放置在顶点（vertex）或面（face/plaquette）上（在一些变体或对偶表示中）。最常见的构造是将物理量子比特置于晶格的边上。逻辑量子比特的信息则非局域地编码在这些物理量子比特的集体状态中。

一个码距为 $d$ 的表面码，通常需要 $\mathcal{O}(d^2)$ 个物理量子比特来编码一个或两个逻辑量子比特（取决于边界条件和具体设计）。码距 $d$ 与晶格的尺寸相关，它决定了编码能够检测和纠正的错误的数量。具体而言，一个码距为 $d$ 的码可以检测最多 $d-1$ 个任意单物理量子比特错误，并纠正最多 $t = \lfloor (d-1)/2 \rfloor$ 个此类错误。

### 稳定子算符

表面码是一种稳定子码，其编码空间（codespace，即逻辑量子比特的有效希尔伯特空间）被定义为一组称为稳定子生成元（stabilizer generators）的厄米算符的共同 $+1$ 本征空间。这些稳定子生成元由局域的泡利算符张量积构成，即每个生成元仅作用于晶格上少数几个（通常是几何上邻近的）物理量子比特。

在一个标准的、物理量子比特位于边的表面码中，主要有两种类型的稳定子算符：

- 顶点算符（Vertex Operators），也常称为星算符（Star Operators）：对于晶格中的每一个顶点 $s$（不包括某些边界上的顶点），关联一个顶点算符 $A_s$ (或 $S_s$)。该算符定义为作用在所有以该顶点 $s$ 为端点的边上的物理量子比特的泡利$X$算符的张量积：

$$A_s = \prod_{i \in \text{star}(s)} X_i$$

其中 $\text{star}(s)$ 表示以顶点 $s$ 为公共端点的边的集合，$X_i$ 是作用于第 $i$ 个量子比特（边 $i$）的泡利$X$算符。

- 面算符（Plaquette Operators），也常称为方格算符：对于晶格中的每一个面（或方格单元） $p$，关联一个面算符 $B_p$。该算符定义为作用在构成该面 $p$ 边界的所有边上的物理量子比特的泡利$Z$ 算符的张量积：

$$B_p = \prod_{j \in \text{boundary}(p)} Z_j$$

其中 $\text{boundary}(p)$ 表示构成面 $p$ 边界的边的集合，$Z_j$ 是作用于第 $j$ 个量子比特（边 $j$）的泡利$Z$算符。

所有这些顶点算符和面算符相互对易（$[A_s, A_{s'}] = 0$, $[B_p, B_{p'}] = 0$, $[A_s, B_p] = 0$），并且它们的平方均为单位算符（$A_s^2 = I$, $B_p^2 = I$）。逻辑上编码的量子态 $|\psi_L\rangle$ 必须满足对于所有的 $s$ 和 $p$，$A_s |\psi_L\rangle = |\psi_L\rangle$ 且 $B_p |\psi_L\rangle = |\psi_L\rangle$。

### 错误检测与综合征

当物理量子比特发生错误时（例如，由于退相干或不完美的门操作），编码态可能会偏离 $+1$ 本征空间。通过周期性地测量所有稳定子生成元 $A_s$ 和 $B_p$ 的本征值，可以检测到错误的发生。如果某个稳定子算符的测量结果为 $-1$（而不是预期的 $+1$），则表明在其作用范围内的物理量子比特上发生了与其反对易的错误。例如，一个 $Z$ 错误作用在一个与顶点 $s$ 相连的边上，会使得 $A_s$ 的测量值从 $+1$ 翻转到 $-1$。类似地，一个 $X$ 错误作用在一个构成面 $p$ 边界的边上，会使得 $B_p$ 的测量值翻转。

所有稳定子测量的结果构成一个错误综合征（error syndrome）。这个综合征给出了关于错误类型及其位置（或更准确地说，错误链的端点）的信息，但重要的是，它并不泄露编码的逻辑量子信息本身。

### 逻辑算符

逻辑量子比特的信息由非局域的、跨越整个晶格的“弦”状（string-like）算符来表示和操作。这些逻辑算符（Logical Operators）必须与所有的稳定子算符（$A_s$ 和 $B_p$）对易，以确保它们不会将编码态移出码空间或改变稳定子测量结果。然而，逻辑算符对之间（例如逻辑 $\bar{X}$ 和逻辑 $\bar{Z}$）则需要满足与单量子比特泡利算符相似的代数关系（例如，逻辑 $\bar{X}$ 和逻辑 $\bar{Z}$ 应该反对易）。

对于一个在具有合适边界（例如，某些边界是“粗糙”的，某些是“平滑”的）的平面上编码单个逻辑量子比特的表面码：

- 逻辑 $\bar{Z}$ 算符（$Z_L$）可以是一条连接晶格两个相对“类型”的边界（例如，从一个“粗糙”边界到另一个“粗糙”边界）的泡利$Z$ 算符链。
- 逻辑 $\bar{X}$ 算符（$X_L$）则可以是一条类似地连接另外两个相对“类型”的边界（例如，从一个“平滑”边界到另一个“平滑”边界，通常在对偶格上或垂直方向上）的泡利 $X$ 算符链。

这些算符的非局域性是拓扑保护的关键：一个局域错误（作用于少数物理量子比特）不太可能同时改变一个完整的逻辑算符链从而导致逻辑错误。只有当错误链也连接了相同的两个边界时，才会发生逻辑错误。码距 $d$ 可以看作是形成这样一个最短的、非平凡的逻辑算符链（或等效的错误链）所包含的物理量子比特数。

## 容错特性

### 容错阈值

表面码的一个显著优势是其相对较高的容错阈值（fault-tolerance threshold）。这意味着只要物理量子比特的错误率（包括门操作错误、测量错误和存储错误）低于某个特定的阈值 $p_{th}$，就可以通过增加码距 $d$（即增大晶格尺寸）来任意降低逻辑错误率 $p_L$。即使仅依赖于物理量子比特之间的最近邻相互作用，表面码也能达到较高的阈值。

对于标准的电路级噪声模型，表面码的阈值估计值通常在 $0.5\%$ 到 $1.1\%$ 之间。具体阈值的大小依赖于诸多因素，如特定的噪声模型（例如，错误是独立同分布的，还是存在关联，或是偏置噪声）、所采用的解码器算法以及量子电路（特别是综合征提取电路）的具体实现细节。在存在偏置噪声（例如，$Z$ 错误远多于 $X$ 或 $Y$ 错误）的情况下，特定设计的表面码变体（如XZZX码）可以展现出更高的阈值。

近期的实验进展显著，例如已有研究在超导量子计算平台上成功运行了码距达到7的表面码，并观察到了逻辑错误率随码距增加而下降的趋势，且其性能表现已接近或低于理论预测的容错阈值要求。

### 解码

从测得的错误综合征推断出最可能发生的物理错误（或等效的错误链），并确定相应的校正操作（通常是应用泡利算符）的过程称为解码（decoding）。解码器的效率和准确性对表面码的整体性能至关重要。

由于表面码的错误检测可以映射到二维或三维（如果考虑时间上的错误传播）的匹配问题，最小权完美匹配（Minimum Weight Perfect Matching, MWPM）算法是表面码（特别是对于独立错误模型）最常用且非常有效的解码器之一。MWPM算法试图找到一组连接所有非平凡综合征测量结果（$-1$稳定子）的“弦”，使得这些弦的总“权重”（通常与错误的概率相关）最小。

其他解码算法包括基于置信传播（Belief Propagation）的解码器、基于机器学习的解码器、以及专门针对特定噪声模型（如偏置噪声或关联错误）优化的解码器。解码器的选择和优化是表面码研究中的一个活跃领域。

## 主要变体

为了优化性能、降低资源开销或适应特定硬件特性，已提出多种表面码的变体：

旋转表面码（Rotated Surface Code） :通过将标准方格晶格旋转45度进行布局，可以在保持相同码距（纠错能力）的前提下，将所需的物理量子比特数量减少大约一半。这对于在物理量子比特资源有限的近期设备上实现具有重要意义，并且是当前实验中最常采用的表面码形式。

XZZX表面码 / XY表面码 :这些是表面码的变体，其稳定子定义与标准表面码不同。例如，XZZX表面码使用形如 $XZZX$ 的混合泡利算符作为其面算符（或顶点算符，取决于具体构造），而XY表面码则可能在其稳定子中包含 $Y$ 算符。这类变体的设计目标之一是更好地适应具有偏置噪声（biased noise）特性的物理系统，即系统中某一类型的错误（例如相位错误，即$Z$错误）远比其他类型的错误（例如比特翻转错误，即$X$错误）更为频繁。在这样的偏置噪声环境下，这些变体可以展现出比标准表面码更高的有效容错阈值或更低的逻辑错误率。

## 逻辑门操作

在编码的逻辑量子比特上执行计算操作是容错量子计算的关键。表面码支持一套通用的逻辑门操作，但不同类型的门实现方式和资源开销有所不同。

克利福德门（Clifford gates） :包括Hadamard门（H）、S门（相位门）、CNOT门、CZ门等。在表面码中，许多克利福德门可以通过编码形变（Code Deformation，也称辫操作或缺陷编织）或晶格手术（Lattice Surgery）等技术相对高效地实现。晶格手术是一种强大的技术，它通过合并（merging）和分割（splitting）不同的表面码片元（patches）来执行逻辑门。例如，通过特定方式合并和分割两个分别编码逻辑量子比特的表面码片元，可以实现逻辑CNOT门。这些操作通常可以保持容错性，即操作过程中发生的物理错误也可以被检测和纠正。

非克利福德门（例如T门） :通用的量子计算要求至少一个非克利福德门（如T门或CCZ门）来构成完备门集。然而，根据Eastin-Knill定理，任何量子纠错码都不可能拥有一整套通用的、横向实现（transversal）的容错逻辑门。在表面码中，非克利福德门通常不能直接通过简单的编码形变或晶格手术容错地实现。

实现非克利福德逻辑门（最典型的是T门）通常依赖于一种名为魔术态蒸馏（Magic State Distillation）的资源密集型协议。魔法态蒸馏过程利用大量的克利福德操作和测量，从多个带有噪声的“魔术态”（例如 $T$ 门的本征态 $|T\rangle = (|0\rangle + e^{i\pi/4}|1\rangle)/\sqrt{2}$）副本中，概率性地提纯出少量高保真度的魔术态。随后，这些高保真度的魔法态可以通过门隐形传态（gate teleportation）的方式与克利福德操作结合，间接实现非克利福德逻辑门，如 $T$ 门。由于魔法态蒸馏对物理量子比特和操作时间均有巨大开销，优化其效率是降低容错量子计算整体资源需求的关键研究方向。

逻辑测量 :逻辑量子比特的测量可以通过测量构成相应逻辑泡利算符（如$Z_L$或$X_L$）的所有物理量子比特来完成。测量结果需要进行解码以排除测量过程中可能发生的错误。

## 优势与挑战

表面码的核心优势在于其相对较高的物理错误容错阈值，通常在0.1%至1%之间，这主要源于其二维平面结构中稳定子的局部性，从而对物理量子比特的质量要求更为宽松。此特性与二维局部架构的天然兼容性相辅相成，表面码仅需近邻相互作用即可进行稳定子测量，完美契合超导量子比特和离子阱等主流硬件平台的固有架构，进而简化了器件设计并被Google、中国科学技术大学等团队采用。加之其受益于如最小权完美匹配（MWPM）等相对简单且高效成熟的解码算法，这些算法能利用错误的几何特性，在实践中表现接近最优并已实现实时解码。

然而，表面码的广泛应用也面临若干重大挑战。最为显著的是其巨大的量子比特开销，编码单个逻辑量子比特往往需数百至数千个物理量子比特，例如在0.1%物理错误率下，可能需要1000至10000个物理量子比特。其编码率随码距 $d$ 以约 $1/d^2$ 的速度下降，构建大规模量子计算机需要相当大的资源消耗。另一项关键挑战在于表面码对特定的关联错误较为敏感。尽管它对独立的泡利错误具有良好鲁棒性，但在面对空间或时间上存在统计相关性的错误时，其性能可能显著下降。某些关联错误模式甚至可能“灾难性地”影响逻辑错误率的指数级抑制，导致逻辑错误率不再随码距增加而改善，形成“本底噪声”。此外，表面码上逻辑门操作的复杂性与资源成本也不容忽视。虽然克利福德门可通过晶格手术等技术实现，但对于通用量子计算至关重要的非克利福德门（如T门），通常依赖于资源高度密集型的魔态蒸馏过程。这会消耗大量额外的物理量子比特和操作时间，其开销甚至可能主导整个算法的资源需求，是实现可扩展量子计算必须解决的关键问题。