第 10 章 量子纠错

用纠缠来对抗纠缠是可能的。

> John Preskill

犯错和被抛弃都是上帝设计的一部分。 ——William Blake

这一章,我们介绍在有量子噪声存在的情况下,如何可靠地进行量子信息处理。本章将主要涵盖三个主题:量子纠错码理论,容错量子计算和阈值定理。我们将首先建立量子纠错码的基本理论,它使得量子信息在噪声的影响下依然可以得到保护。这些纠错码的工作原理是,首先用一种特别的编码方案将量子态编码,使得编码后的量子态能够抵御噪声的影响,然后通过解码将量子态恢复出来。其中, 10.1 节介绍经典纠错码的基本原理,以及设计量子纠错码时将遇到的一系列概念性挑战。 10.2 节介绍一个量子纠错码的简单例子,然后我们在 10.3 节将其推广到量子纠错码的一套一般性理论。 10.4 节介绍经典线性码的基本想法,并介绍它们如何引申出一类有趣的 Calderbank-Shor-Steane(CSS)量子纠错码。 10.5 节总结我们关于量子纠错码的介绍,同时讨论稳定子量子纠错码,这是一类具有丰富结构,同时跟经典纠错码有密切联系的量子纠错码。

我们在讨论量子纠错码的时候,将假设量子态的编码和解码过程可以完美实现,也就是没有噪声干扰。这种假设在有时候是有用的,比如当我们希望通过一条有噪声的量子信道传递信息的时候,我们可以用几乎无噪声的量子计算机在信道的两端进行编码和解码操作。但是,当用来编码和解码的量子逻辑门本身有噪声的时候,我们就不能做这样的假设。幸运的是,在 10.6 节介绍的容错量子计算理论能让我们放弃编码和解码操作无噪声的假设。更有趣的是,容错允许我们在编码后的量子态上实现逻辑操作,这样被完成的量子操作也就实现了容错的功能。本章的最终目标是 10.6 . 4 小节介绍的量子计算阈值定理:如果量子计算中每个逻辑门的噪声低于某个阈值,则任意大规模的量子计算都可以被有效实现。当然,正确理解这个重要结论也需要很小心,我们将展开讨论。但无论如何,阈值定理是一个重要结论,它表明大规模量子计算的物理实现没有原则性障碍。

10.1 背景介绍

噪声是信息处理系统的重大障碍。当条件允许的时候,人们总是尽量彻底地消除噪声,当实在做不到时,人们则尝试保护有用信息,使其不受噪声影响。例如,现代电子计算机的部件极其可靠,错误率已经低到每完成 $10^{17}$ 次操作仅出现不到一次错误。在大部分实际计算任务中,我们可以将这些计算机当作彻底无噪声的。另一方面,许多广泛应用的信息系统却遭受着噪声的严重影响。例如,调制解调器和 CD 播放器都采用纠错码来抵御噪声的影响。实际上,现实生活中用来对抗噪声的技术经常有非常复杂的细节,但它们的基本原理一般都很好理解。如果我们希望保护一条信息免受噪声的影响,我们一般都会使用一些冗余信息来编码这条信息。如此一来,即使编码后的信息中的一部分被噪声破坏,编码信息依然拥有足够的冗余度使得我们能很好地解码和恢复原本的信息。

例如,假设我们希望通过一条有噪声的信道,将一个比特的信息从一个地方传递到另外一个地方。信道中噪声的影响是以 $p > 0$ 的概率翻转这个比特,同时以 $1-p$ 的概率让这个比特保持不变。这样的信道被称为二元对称信道,如图 10-1 所示。在二元对称信道中,保护被传递比特免受噪声影响的一个简单办法是将这个比特用它的三个拷贝代替:

$$ \begin{align*} & 0 \rightarrow 000 \tag{10.1}\\ & 1 \rightarrow 111 \tag{10.2} \end{align*} $$

比特串 000 和 111 有时候被称为逻辑 0 和逻辑 1 ,因为它们将分别扮演 0 和 1 的角色。我们将所有的三个比特都通过信道送出去,然后在接收方一端,接收方将根据他实际收到的比特来决定真正的待传递比特是什么。假如 001 是信道的输出,如果翻转比特的概率 $p$ 不是太大,则很可能是第三个比特被信道翻转,所以待传递的比特是 0 。

图 10-1 二元对称信道 这种解码方式叫多数者投票,因为我们根据信道输出的多数比特来确定真正传递的比特。如果有两个或者多个比特被信道翻转,则多数者投票方案将会失败,否则就可以成功解码。但两个或者多个比特被翻转的概率是 $3 p^{2}(1-p)+p^{3}$ ,所以失败的概率是 $p_{\mathrm{e}}=3 p^{2}-2 p^{3}$ 。因为如果不进行编码,发生错误的概率是 $p$ ,则只要 $p_{\mathrm{e}} < p$ ,上述编码会让信息传递更可靠,实际上只要 $p < 1 / 2$ ,这个关系都将成立。

因为是通过将信息拷贝多次的方式编码和传递,这种编码被叫作重复性编码。实际上千百年来,人们都在日常沟通中使用类似的技巧:如果我们在理解他人语言的时候有困难,比如他有外地口音,通常我们会请求他重复刚才的话。虽然我们可能不会每次都听懂所有的词语,但可以通

过这样多次尝试来整体理解一条逻辑清晰的信息。关于经典纠错码理论,已经有许多巧妙的技术被发展出来。但是,核心的想法都是通过增加冗余信息的方式来编码信息,使得我们能在传递过程中有噪声影响的情况下,依然很好地恢复原来的信息。而冗余信息的多少,将取决于信道中噪声的严重程度。

10.1.1 三量子比特的比特翻转编码

为了保护量子信息免受噪声的影响,我们需要基于类似的原理发展量子纠错码理论。但由于量子信息和经典信息的许多重要区别,量子纠错码的引人需要一些全新的想法。特别是,通过一些初步的思考,我们就可以想到这个任务将面临如下较大的困难。

1.不可克隆。一些人可能想到,也许我们也可以通过将量子信息重复多次的方式来实现量子重复性编码。实际上,专题 12.1 讨论的量子不可克隆原理表明,这是不可能的。而且,即使克隆是可行的,测量和比较这些不同的拷贝也是不可能的。

2.错误是连续的。可能发生在一个量子比特上的错误是连续的。因此,确定具体哪个错误确实发生了,然后再纠正它,似乎需要无限的精确度去分辨,因此将需要无限的资源。

3.测量破坏量子信息。在经典纠错中,我们先观察信道的输出,然后决定采用何种解码方案。但在量子纠错方案中,观察量子信息将破坏它,因而恢复原有信息就无从谈起。

幸运的是,我们下面将看到,所有这些困难都不是致命的。假设我们通过一个量子信道传递一个量子比特,在过程中量子比特以 $1-p$ 的概率保持不变,以 $p$ 的概率被翻转。也就是说,量子态 $|\psi\rangle$ 以 $p$ 的概率变成 $X|\psi\rangle$ ,这里 $X$ 是泡利 $\sigma_{x}$ 算子,或者比特翻转算子。这种信道被称为比特翻转信道。我们现在介绍翻转编码,它能使量子比特在这种信道中免受噪声的影响。

假设我们将单量子比特 $a|0\rangle+b|1\rangle$ 编码成 $a|000\rangle+b|111\rangle$ ,通常我们将这种编码方式表示为

$$ \begin{align*} |0\rangle \rightarrow\left|0_{L}\right\rangle & \equiv|000\rangle \tag{10.3}\\ |1\rangle \rightarrow\left|1_{L}\right\rangle & \equiv|111\rangle \tag{10.4} \end{align*} $$

这里,编码方案可以理解为将待编码量子比特中基矢态的叠加态,替换成编码态的对应叠加态。符号 $\left|0_{L}\right\rangle$ 和 $\left|1_{L}\right\rangle$ 分别表示这是逻辑比特 $|0\rangle$ 和 $|1\rangle$ ,而不是物理比特 0 和 1 。这种编码方案的一种电路实现见图 10-2。

图 10-2 三量子比特的比特翻转纠错码的编码电路 习题 10.1 验证图 10-2 中的编码电路与预期的功能一致。

假设初态 $a|0\rangle+b|1\rangle$ 已经被完美编码成 $a|000\rangle+b|111\rangle$ 。三个量子比特的每一个都被一个同样的比特翻转信道传送过去,同时假设比特翻转操作发生在一个或者更少的量子比特上。我们下面会看到,有一个简单的两阶段纠错程序能将原有信息正确恢复出来。

1.错误探测或者征状诊断:我们通过一个测量来搞清楚,如果有错误,到底是哪个错误发生了。测量的结果称为错误征状。对于比特翻转信道,有四种不同的错误征状,对应四种不同的投影算子:

$$ \begin{align*} & P_{0} \equiv|000\rangle\langle 000|+|111\rangle\langle 111| \text { 没有错误 } \tag{10.5}\\ & P_{1} \equiv|100\rangle\langle 100|+|011\rangle\langle 011| \text { 量子比特 } 1 \text { 上发生比特翻转 } \tag{10.6}\\ & P_{2} \equiv|010\rangle\langle 010|+|101\rangle\langle 101| \text { 量子比特 } 2 \text { 上发生比特翻转 } \tag{10.7}\\ & P_{3} \equiv|001\rangle\langle 001|+|110\rangle\langle 110| \text { 量子比特 } 3 \text { 上发生比特翻转 } \tag{10.8} \end{align*} $$

例如,假设比特翻转发生在第一个量子比特上,则被影响的量子态成为 $a|100\rangle+b|011\rangle$ 。注意在这种情况下 $\langle\psi| P_{1}|\psi\rangle=1$ ,所以测量结果将确定为 1 。而且,征状测量将不对量子态产生任何影响:测量前后都是 $a|100\rangle+b|011\rangle$ 。注意,这里征状只包含何种错误发生的信息,并不揭示 $a$ 和 $b$ 的任何信息,因此,并不包含被保护量子态的任何信息。这是征状测量的一般性特征,因为为了获取被保护量子态的具体信息,一定要扰动它,这不是我们希望看到的。

2.恢复:我们使用错误诊断的结果来指示将使用何种操作来恢复原有信息。例如,如果错误征状是 1 ,表示第一个量子比特发生了翻转错误,那我们再次将其翻转,这样将完美恢复原有信息。四个可能的错误征状和每种情形的恢复程序是:0(没有错误)——什么也不做; 1 (第一个量子比特翻转)——再次将第一个量子比特翻转; 2 (第二个量子比特翻转) ——再次将第二个量子比特翻转;3(第三个量子比特翻转)——再次将第三个量子比特翻转。对错误征状的每一个值,如果对应的错误确实发生了,则很容易看到原有信息都被完美恢复。

只要三个量子比特中的至多一位发生翻转错误,则上面的纠错程序会有很好的效果。这种情况发生的概率是 $(1-p)^{3}+3 p(1-p)^{2}=1-3 p^{2}+2 p^{3}$ ,而不能纠正的错误发生的概率是 $3 p^{2}-2 p^{3}$ ,这正好跟之前我们讨论过的经典重复性编码一致。而且类似地,只要 $p < 1 / 2$ ,上述的编码和解码程序就可以改善量子态存储的可靠性。

更精细的错误分析

上述的错误分析是不够让人满意的,原因是量子系统中并不是所有的错误和量子态都平均地产生:量子态存在于一个连续的空间,所以有可能一些错误只对量子态有少许影响,而另外一些则彻底破坏掉量子态。一个极端的例子是比特翻转"错误"$X$ ,它完全不影响量子态 $(|0\rangle+|1\rangle) / \sqrt{2}$ ,但将翻转 $|0\rangle$ ,使其成为 $|1\rangle$ 。所以在第一种情况,我们完全不需要担心比特翻转错误,但在第二种情况则显然会担心错误是否会发生。

为了处理上述问题,我们将使用第 9 章中介绍的保真度概念。如前所述,一个混态与一个纯态之间的保真度定义为 $F(|\psi\rangle, \rho)=\sqrt{\langle\psi| \rho|\psi\rangle}$ 。量子纠错的目标就是在存储和传递量子信息时,尽可能达到最大的保真度 1 。我们现在做一个三量子比特在比特翻转纠错码下所能达到的最小保真度,和没有纠错的情况下达到的保真度的对比。假设我们考虑的量子态是 $|\psi\rangle$ ,在没有纠错码的情况下,通过信道的量子态可以表示为

$$ \begin{equation*} \rho=(1-p)|\psi\rangle\langle\psi|+p X|\psi\rangle\langle\psi| X \tag{10.9} \end{equation*} $$

因此,保真度可以表示为

$$ \begin{equation*} F=\sqrt{\langle\psi| \rho|\psi\rangle}=\sqrt{(1-p)+p\langle\psi| X|\psi\rangle\langle\psi| X|\psi\rangle} \tag{10.10} \end{equation*} $$

在这里,根号下的第二项是非负的,并且当 $|\psi\rangle=|0\rangle$ 时取 0 ,由此可见上述保真度的最小值为 $F=\sqrt{1-p}$ 。假设我们用三量子比特纠错码来保护 $|\psi\rangle=a\left|0_{L}\right\rangle+b\left|1_{L}\right\rangle$ ,在通过噪声信道并进行纠错之后的量子态为

$$ \begin{equation*} \rho=\left[(1-p)^{3}+3 p(1-p)^{2}\right]|\psi\rangle\langle\psi|+\cdots \tag{10.11} \end{equation*} $$

这里忽略的项对应两个或者三个量子比特发生翻转的情况。由于所有被忽略的项都是正定算子,我们计算的保真度将是其精确值的一个下界。于是,$F=\sqrt{\langle\psi| \rho|\psi\rangle} \geqslant \sqrt{(1-p)^{3}+3 p(1-p)^{2}}$ 。也就是说,这个过程的保真度至少是 $\sqrt{1-3 p^{2}+2 p^{3}}$ ,因此只要满足 $p < 1 / 2$ 的条件,量子态存储过程的保真度就可以得到提升,这与我们稍早做出的粗略分析结果完全一致。 习题 10.2 比特翻转信道的行为可以被量子操作 $\mathcal{E}(\rho)=(1-p) \rho+p X \rho X$ 描述。证明它也可以被下面的算子和形式描述,即 $\mathcal{E}(\rho)=(1-2 p) \rho+2 p P_{+} \rho P_{+}+2 p P_{-} \rho P_{-}$。这里,$P_{+}$和 $P_{-}$分别是到 $X$ 的 +1 特征态和 -1 特征态,即 $(|0\rangle+|1\rangle) / \sqrt{2}$ 和 $(|0\rangle-|1\rangle) / \sqrt{2}$ 上的投影算子。第二种表示可以理解为这样一种模型,该量子比特以 $1-2 p$ 的概率保持不变,同时以 $2 p$ 的概率被环境在

我们可以用一种不同的方式来理解上述三量子比特编码的征状测量。其实,与其测量四个投影算子 $P_{0}, P_{1}, P_{2}, P_{3}$ ,我们可以使用两个不同的测量:第一个是可观测量 $Z_{1} Z_{2}$(即 $Z \otimes Z \otimes I$ ),第二个是可观测量 $Z_{2} Z_{3}$ 。它们两个都有特征值 $\pm 1$ ,所以每次测量都提供一个比特的信息一一这将提供四种不同的征状,跟前面的情况类似。其中,第一个测量 $Z_{1} Z_{2}$ 可以看成是比较前两个量子比特,看它们是否一样。为了看出这一点,注意 $Z_{1} Z_{2}$ 有下面的谱分解:

$$ \begin{equation*} Z_{1} Z_{2}=(|00\rangle\langle 00|+|11\rangle\langle 11|) \otimes I-(|01\rangle\langle 01|+|10\rangle\langle 10|) \otimes I \tag{10.12} \end{equation*} $$

这对应投影算子 $(|00\rangle\langle 00|+|11\rangle\langle 11|) \otimes I$ 和 $(|01\rangle\langle 01|+|10\rangle\langle 10|) \otimes I$ 构成的投影测量。因此,测量 $Z_{1} Z_{2}$ 可以理解为比较头两个量子比特,当它们相同时给出结果 1 ,否则给出结果 -1 。类似地,测量 $Z_{2} Z_{3}$ 是比较第二和第三个量子比特,而且也是当它们相同的时给出结果 1 ,否则给出 -1 。当我们把这两个测量的结果结合起来看时,我们就可以判断这三个量子比特是否有一位被翻转,而且如果有,我们也能判断它的具体位置:如果两次测量结果都是 1 ,则没有错误发生的概率很

高;如果测量 $Z_{1} Z_{2}$ 给出 1 ,而测量 $Z_{2} Z_{3}$ 给出 -1 ,则第三位量子比特被翻转的概率很高;如果测量 $Z_{1} Z_{2}$ 给出 -1 ,而测量 $Z_{2} Z_{3}$ 给出 1 ,则第一位量子比特被翻转的概率很高;最后,如果两次测量都给出 -1 ,则第二位量子比特被翻转的概率很高。注意,这里面一个关键的事实是,这些测量的结果都没有给出关于概率幅 $a$ 和 $b$ 的任何信息,因此每次测量都没有破坏我们编码所希望保护的目标量子叠加态。

习题10.3 通过具体计算,证明依次测量 $Z_{1} Z_{2}$ 和 $Z_{2} Z_{3}$ ,再对测量结果进行必要的重新标注,整体效果与测量(10.5)-(10.8)中定义的四个投影算子的效果相同。这里测量效果相同是指测量结果的统计,以及测量后的量子态均相同。

10.1.2 三量子比特的相位翻转编码

量子比特翻转编码虽然有趣,但相对经典纠错码来说似乎并无太大新意,同时很多遗留问题也尚未解决(例如,除了比特翻转错误,量子比特上的错误还有很多其他种类)。关于有噪声量子信道,一个更有趣的例子是关于量子比特的相位翻转错误模型。在这个模型中,量子比特以 $1-p$ 的概率保持不变,以 $p$ 的概率翻转基矢态 $|0\rangle$ 和 $|1\rangle$ 上的相对相位。具体来说,以 $p > 0$ 的概率相位翻转算子 $Z$ 被作用在该量子比特上,该操作将量子态 $a|0\rangle+b|1\rangle$ 改变为 $a|0\rangle-b|1\rangle$ 。注意相位翻转信道没有经典对应,因为经典信息并没有相位这个特征。但是,有一个非常简单的办法将相位翻转信道转化为比特翻转信道。假设我们将量子比特的基选择为 $|+\rangle \equiv(|0\rangle+|1\rangle) / \sqrt{2},|-\rangle \equiv(|0\rangle-|1\rangle) / \sqrt{2}$ ,则在这组基下,$Z$ 算子将 $|+\rangle$ 转变为 $|-\rangle$ ,反之亦然。因此,在这组基下,$Z$ 算子的效果就如同比特翻转。这暗示我们可以通过将逻辑 0 和逻辑 1 量子态选择为 $\left|0_{L}\right\rangle \equiv|+++\rangle$ 和 $\left|1_{L}\right\rangle \equiv|---\rangle$来对抗相位翻转错误的影响。于是,除了选择的基由 $|+\rangle,|-\rangle$ 变为 $|0\rangle,|1\rangle$ ,编码,错误探测和信息恢复这些纠错所必需的操作都将与比特翻转信道的情况相同。为了完成基的转换,我们只需要在适当的时候应用 H 门及其逆操作(也是阿达玛门)。

更精确地说,相位翻转信道的编码可以分为两步实现:首先,我们采用与比特翻转信道情形一样的方法,将目标量子比特用三个量子比特来编码;第二步,对每个量子比特作用一个阿达玛门(图 10-3)。则错误探测可以用跟之前一样的投影测量来实现,只是算子需要用阿达玛门做一个共轭调整:$P_{j} \rightarrow P_{j}^{\prime} \equiv H^{\otimes 3} P_{j} H^{\otimes 3}$ 。于是,征状测量等同于测量可观测量 $H^{\otimes 3} Z_{1} Z_{2} H^{\otimes 3}=X_{1} X_{2}$ ,以及 $H^{\otimes 3} Z_{2} Z_{3} H^{\otimes 3}=X_{2} X_{3}$ 。有趣的是,我们也可以对这些测量做类似比特翻转信道中 $Z_{1} Z_{2}$ 和 $Z_{2} Z_{3}$ 测量的解释。可观测量 $X_{1} X_{2}$ 和 $X_{2} X_{3}$ 对应的测量,实际上分别比较头两个量子比特和后两个量子比特的正负号。例如,测量 $X_{1} X_{2}$ 将在形如 $|+\rangle|+\rangle \otimes(\cdot)$ 或者 $|-\rangle|-\rangle \otimes(\cdot)$ 的量子态上给出结果 1 ,在形如 $|+\rangle|-\rangle \otimes(\cdot)$ 或者 $|-\rangle|+\rangle \otimes(\cdot)$ 的量子态上给出结果 -1 。最后,在纠错的信息恢复阶段,需要的操作也是与比特翻转信道同样的操作再加上一个阿达玛门的共轭调整。例如,如果我们发现第一个量子比特的正负号被翻转,导致 $|+\rangle$ 变成 $|-\rangle$ ,则我们只需要对其作用 $H X_{1} H=Z_{1}$ 来恢复信息。其他的错误征状也有类似的操作。

明显地,相位翻转信道和比特翻转信道的编码有类似的特征。特别是,相位翻转编码的最小保真度和比特翻转编码的情形相同,因此在何种参数情形下编码能相对无编码情形改善保真度,有相同的标准。由于这两个信道的行为只相差一个酉变换 $U$(在上面例子中是 H 门),即在一个

信道上作用一个 $U$ 之后再作用一个 $U^{\dagger}$ 就成为另一个信道,我们说这两个信道是酉等价的。其实,这些操作可以很容易地合并到编码和纠错的操作中。对于 $U$ 的一般形式,这些想法的实现可见问题 10.1。 $|\psi\rangle$ $|0\rangle$

图 10-3 相位翻转纠错码的编码电路 习题 10.4 考虑三量子比特的比特翻转编码。假设我们通过测量计算基状态对应的 8 个正交投影算子来实现错误的征状测量。1.写出测量对应的投影算子,解释为什么测量结果可以用来诊断错误征状:没有比特被翻转,或者第 $j$ 个比特被翻转,这里 $j$ 取值 1 到 3 。2.证明信息恢复程序只对计算基状态适用。3.此纠错程序的最小保真度是多少?

10.2 Shor 编码

实际上,有一种简单的编码能够有效对抗单量子比特上的任何错误!这种编码称为 Shor 编码,本质上是三量子比特相位翻转编码和比特翻转编码的一种结合。我们首先将量子比特做相位翻转编码:$|0\rangle \rightarrow|+++\rangle,|1\rangle \rightarrow|---\rangle$ 。接着,我们再将每一个量子比特做比特翻转编码:$|+\rangle$编码成 $(|000\rangle+|111\rangle) \sqrt{2},|-\rangle$ 编码成 $(|000\rangle-|111\rangle) \sqrt{2}$ 。结果,我们得到一个如下的九量子比特编码:

$$ \begin{align*} |0\rangle \rightarrow\left|0_{L}\right\rangle & \equiv \frac{(|000\rangle+|111\rangle)(|000\rangle+|111\rangle)(|000\rangle+|111\rangle)}{2 \sqrt{2}} \\ |1\rangle \rightarrow\left|1_{L}\right\rangle & \equiv \frac{(|000\rangle-|111\rangle)(|000\rangle-|111\rangle)(|000\rangle-|111\rangle)}{2 \sqrt{2}} \tag{10.13} \end{align*} $$

实现 Shor 编码的量子电路如图 10-4 所示。如前所述,电路的第一部分是三量子比特相位翻转编码,跟图 10-3 对比我们会发现它们是一样的。在电路的第二部分,再将三个量子比特的每一个按图 10-2 的方式替换成比特翻转编码。这种分层的编码方法,称为纠错码级联,是一种由已知纠错码生成新纠错码的重要技巧。后面,我们将使用这种技术证明关于量子纠错的一些重要结论。

Shor 编码可以对抗任何量子比特上的相位翻转错误和比特翻转错误。为了说明这一点,假设第一个量子比特上发生了比特翻转错误,按照比特翻转编码的设计,我们通过测量 $Z_{1} Z_{2}$ 来比较头两个量子比特,结果将会发现它们的不同,于是我们推测第一个或者第二个量子比特发生了错误。接着我们通过测量 $Z_{2} Z_{3}$ 来比较第二个和第三个量子比特。结果会发现它们是相同的,于是我们就得知不可能是第二个量子比特发生了翻转。就这样,我们得出结论,是第一个量子比特发

生了翻转,我们只需要再次翻转它即可恢复原本的量子信息。类似地,我们可以探测和恢复 9 个量子比特中任何位置的比特翻转错误。

图 10-4 九量子比特 Shor 纠错码的编码电路。为了强调编码的级联形式,一些 $|0\rangle$ 状态被有意画出来 我们以类似的方式处理相位翻转错误。假设第一个量子比特发生了相位翻转错误,则这个错误将会改变这些量子比特中第一个区块的符号,也即从 $|000\rangle+|111\rangle$ 变成 $|000\rangle-|111\rangle$ ,或者相反。实际上,头三个量子比特中任何一个位置发生相位翻转都有类似的效果,所以接下来描述的纠错程序将统一适用于这三种错误。我们首先通过征状测量比较头三个量子比特组成的区块的正负号和第二个三量子比特组成的区块的正负号,就如同正常相位翻转编码方案中比较第一个和第二个量子比特的正负号一样。例如,$(|000\rangle-|111\rangle)(|000\rangle-|111\rangle)$ 中,头两个区块拥有相同的正负号 $(-)$ ,但 $(|000\rangle-|111\rangle)(|000\rangle+|111\rangle)$ 中头两个区块的正负号不同。当头三个量子比特中任何一个上面发生了相位翻转错误,我们会发现头两个区块的正负号将会不同。在征状测量的第二阶段,我们比较第二和第三区块的正负号,结果将显示它们是相同的,于是,我们可以推测出,一定是第一区块发生了相位翻转错误,我们可以通过再次翻转其相位来恢复原本的量子信息。可以看出, 9 个量子比特中任何一个位置发生的相位翻转错误都可以用这种方法恢复。

习题10.5 证明在 Shor 编码中用来探测相位翻转错误的征状测量,对应着测量可观测量 $X_{1} X_{2} X_{3}$ $X_{4} X_{5} X_{6}$ 和 $X_{4} X_{5} X_{6} X_{7} X_{8} X_{9}$ 。

习题10.6 证明在头三个量子比特上任意位置的相位翻转,可以通过作用算子 $Z_{1} Z_{2} Z_{3}$ 来实现恢复。

假设比特翻转和相位翻转同时发生在第一个量子比特,也就是,$Z_{1} X_{1}$ 算子被作用在第一个量子比特上。不难看出,比特翻转编码的设置能探测出第一个量子比特上的比特翻转错误,并且纠正它,然后相位翻转编码的工作机制也能探测出第一个区块的相位翻转错误,并且纠正之。因此,Shor 编码能纠正单量子比特上的比特和相位翻转联合错误。

实际上,Shor 编码能对抗的错误远远不止比特翻转和相位翻转——我们现在证明,如果只有一个量子比特被错误影响,则 Shor 编码能纠正任何错误!也就是,这种错误可以很微小——比如绕 $Z$ 轴只旋转 $\pi / 263$ ——或者类似将整个量子比特彻底抛弃,代之以垃圾信息的毁灭性错误。有趣的事情是,为了对抗一般性的错误,并不需要其他步骤,上述程序就可以完成任务。这是一个揭示量子纠错本质的非凡事实,即发生在一个量子比特上的错误明显是连续的,但我们只要能纠正其中的一个离散真子集,那么一般性错误就可以被同样的步骤纠正!量子错误的这种离散化

是量子纠错能被成功实现的核心原因。值得注意的是,经典模拟系统的纠错没有类似的特征,这是一个本质的区别。

为了简化分析,假设一个任意类型的错误只发生在第一个量子比特,后面我们将考虑其他量子比特也被影响的一般性情形。按照第 8 章的思路,我们将噪声的操作描述为一个保迹量子操作 $\mathcal{E}$ 。实际上,将噪声的影响描述为算子元素 $\left\{E_{i}\right\}$ 所表示的一个算子和形式,将是一个非常方便的办法。假设噪声影响前的已编码量子态是 $|\psi\rangle=\alpha\left|0_{L}\right\rangle+\beta\left|1_{L}\right\rangle$ ,则噪声作用后的量子态为 $\mathcal{E}(|\psi\rangle\langle\psi|)=\sum_{i} E_{i}|\psi\rangle\langle\psi| E_{i}^{\dagger}$ 。为了分析纠错的效果,最容易的做法是先分析纠错在上述算子和中某一项上的效果,比如 $E_{i}|\psi\rangle\langle\psi| E_{i}^{\dagger}$ 。注意作用在第一个量子比特上的一个算子 $E_{i}$ 可以分解为单位阵 $I$ ,比特翻转 $X_{1}$ ,相位翻转 $Z_{1}$ 和比特相位联合翻转 $X_{1} Z_{1}$ 的线性组合:

$$ \begin{equation*} E_{i}=e_{i 0} I+e_{i 1} X_{1}+e_{i 2} Z_{1}+e_{i 3} X_{1} Z_{1} \tag{10.14} \end{equation*} $$

因此,(未归一化的)量子态 $E_{i}|\psi\rangle$ 可以写作四项 $|\psi\rangle, X_{1}|\psi\rangle, Z_{1}|\psi\rangle, X_{1} Z_{1}|\psi\rangle$ 的一个叠加态。测量错误征状,将使得这个叠加态塌缩到四种状态 $|\psi\rangle, X_{1}|\psi\rangle, Z_{1}|\psi\rangle, X_{1} Z_{1}|\psi\rangle$ 中的一种,然后我们根据不同的情况进行适当的恢复操作,就可以还原最后的状态 $|\psi\rangle$ 。对其他的算子元素 $E_{i}$ ,有类似的结论。因此,虽然在第一个量子比特上的错误可以是任意的,上述纠错可以将其恢复到原本的量子态。这是量子纠错的本质而深刻的一个特性:通过纠正一系列离散的量子错误一一比如比特翻转,相位翻转和比特相位联合翻转——量子纠错码可以自动纠正一大类量子错误,甚至是连续的错误。

如果噪声影响的不止是第一个量子比特怎么办?我们可以用两个不同的想法考虑这个问题。首先,在许多情形中,假设噪声独立地影响每个量子比特是一个很好的近似。只要噪声在每个量子比特上作用的效果很小,我们可以将噪声的整体效果分解为几种不同情形的总和:没有量子比特发生错误,一个量子比特发生错误,两个量子比特发生错误,等等。其中,相对其他项,没有错误发生和只有一个量子比特发生错误占据统治地位。因此,只要能合理地纠正 0 阶项和 1 阶项,即使不处理高阶项,整体上也会对噪声的影响实现有效抑制,后面我们会对此做更详尽的分析。当然,有时候假设噪声独立地作用于每个量子比特上并不合理,在这种情况下我们将使用另外一种思路——使用能纠正不止一个量子比特错误的量子纠错码。这些纠错码也可以用类似 Shor 编码的思路构造出来,实现这一点的基本想法我们将会在本章后面介绍。

10.3 量子纠错理论

我们能否建立一套量子纠错码的一般性理论?本节将发展出一个研究量子纠错码的一般性框架,其中包括量子纠错条件,这是量子纠错能成功实现所必须满足的一组必要条件。当然,拥有这样一个框架并不保证好的量子纠错码一定存在。这个问题将会在 10.4 节再涉及,但它确实为我们最终找到好的量子纠错码提供了很好的背景知识。

量子纠错码理论的基本想法就是自然推广 Shor 编码的思路。通过一个西变换,量子态被编码成量子纠错码,严格来说这是某个更大的希尔伯特空间的子空间 $C$ 。引入一个将量子态投影

到编码空间 $C$ 的投影算子是很有帮助的,我们将其记为 $P$ 。对于三量子比特的比特翻转编码, $P=|000\rangle\langle 000|+|111\rangle\langle 111|$ 。在噪声作用到编码后的量子态上之后,我们通过征状测量去诊断所发生的是何种错误,这称为错误诊断。一旦错误被确定,我们将进行恢复操作,将量子系统恢复到原本的编码状态。如图 10-5 所示,不同的错误诊断对应全空间不同的非形变,正交子空间。这些子空间必须正交,否则它们不能被征状测量精确地分辨开来。并且,这些子空间必须是原来编码空间的非形变版本,这意味着在不同子空间中,错误必须将正交的量子编码映射到正交的量子态上,只有这样才能最终完全恢复被保护的量子态。这也是下面即将讨论的量子纠错条件所描述的直觉图像。

图 10-5 量子编码中希尔伯特空间的填充:(A)坏的编码,编码形成的子空间扭曲,且不互相正交;(B)好的编码,子空间没有变形且互相正交(因此可互相分辨)

为了建立量子纠错的一般性理论,我们将对噪声的特性和纠错程序做尽量少的假设。也就是说,我们不必假设量子纠错的过程是一个探测-恢复的两阶段方法,我们也不再对作用在量子系统上的噪声做假设,甚至也不假设它们是弱的。取而代之的是,我们只做两个非常一般性的假设:噪声的行为被一个量子操作 $\mathcal{E}$ 描述,以及整个纠错的过程等效于一个保迹的量子操作 $\mathcal{R}$ ,我们称之为量子纠错操作。因此,量子纠错操作将之前描述的错误探测和信息恢复两个阶段合二为一。对于一个成功的纠错过程,我们要求,对支集位于编码空间 $C$ 中的任意量子态 $\rho$ ,

$$ \begin{equation*} (\mathcal{R} \circ \mathcal{E})(\rho) \propto \rho \tag{10.15} \end{equation*} $$

也许有人会问,为什么我们写作 $\propto$ ,而不是 $=$ 。如果 $\mathcal{E}$ 是一个保迹量子操作,那么对两边取迹我们就会发现,$\propto$ 实际上就是 $=$ 。但是,我们有时候也对非保迹的量子纠错操作 $\mathcal{E}$ 感兴趣,比如量

子测量,在这种情况下 $\propto$ 是合适的。当然,量子纠错操作 $\mathcal{R}$ 必须以概率 1 完成,这就是为什么我们要求 $\mathcal{R}$ 是保迹的。

量子纠错条件就是这样一组方程,它让我们能确认一个量子纠错码是否能够对抗一类特定的量子噪声 $\mathcal{E}$ 。我们将使用这个条件构造众多的量子纠错码,以及研究量子纠错码的一些一般性特性。

定理10.1(量子纠错条件)$C$ 是一组量子编码,$P$ 是映射到 $C$ 上的投影算子。假设 $\mathcal{E}$ 是一个算子元素 $\left\{E_{i}\right\}$ 描述的量子操作,那么基于量子编码 $C$ ,存在一个能对抗 $\mathcal{E}$ 描述的噪声的纠错操作 $\mathcal{R}$ 的充要条件是

$$ \begin{equation*} P E_{i}^{\dagger} E_{j} P=\alpha_{i j} \tag{10.16} \end{equation*} $$

对某个复元素的厄米矩阵 $\alpha$ 成立。 我们将算子元素 $\left\{E_{i}\right\}$ 称为噪声 $\mathcal{E}$ 导致的错误。如果这样的 $\mathcal{R}$ 存在,我们说 $\left\{E_{i}\right\}$ 构成一组可纠正的错误。

证明 我们先证明充分性,为此指出,只要式(10.16)满足,就可以构造出一个具体的纠错操作 $\mathcal{R}$完成纠错。我们的构造跟 Shor 编码的构造类似,将分为两个部分——错误探测和信息恢复,因此这个证明说明了纠错总可以用这样的两步程序实现。假设 $\left\{E_{i}\right\}$ 是满足纠错条件式(10.16)的一组操作元素。根据假设,$\alpha$ 是一个厄米矩阵,因此可以对角化,即 $d=u^{\dagger} \alpha u$ ,这里 $u$ 是西矩阵, $d$ 是对角阵。定义操作 $F_{k} \equiv \sum_{i} u_{i k} E_{i}$ ,回顾定理 8.2 ,我们知道 $\left\{F_{k}\right\}$ 也是实现 $\mathcal{E}$ 的操作元素。通过直接代人,我们有

$$ \begin{equation*} P F_{k}^{\dagger} F_{l} P=\sum_{i j} u_{k i}^{\dagger} u_{j l} P E_{i}^{\dagger} E_{j} P \tag{10.17} \end{equation*} $$

使用式(10.16)简化上式,得到 $P F_{k}^{\dagger} F_{l} P=\sum_{i j} u_{k i}^{\dagger} \alpha_{i j} u_{j l} P$ 。由于 $d=u^{\dagger} \alpha u$ ,我们有

$$ \begin{equation*} P F_{k}^{\dagger} F_{l} P=d_{k l} P \tag{10.18} \end{equation*} $$

由于 $d_{k l}$ 是对角的,上式实际上是量子纠错条件的简化版。 我们现在用上述的简化条件和极化分解(2.1.10 节)来定义征状测量。根据极化分解的定义,我们知道存在某个西矩阵 $U_{k}$ ,使得 $F_{k} P=U_{k} \sqrt{P F_{k}^{\dagger} F_{k} P}=\sqrt{d_{k k}} U_{k} P$ 。因此,$F_{k}$ 的作用就是将编码子空间旋转到投影算子 $P_{k} \equiv U_{k} P U_{k}^{\dagger}=F_{k} P U_{k}^{\dagger} / \sqrt{d_{k k}}$ 定义的子空间。式(10.18)表明,这些子空间是正交的,因为当 $k \neq l$ 时,

$$ \begin{equation*} P_{l} P_{k}=P_{l}^{\dagger} P_{k}=\frac{U_{l} P F_{l}^{\dagger} F_{k} P U_{k}^{\dagger}}{\sqrt{d_{l l} d_{k k}}}=0 \tag{10.19} \end{equation*} $$

征状测量就是投影算子 $P_{k}$ 定义的投影测量,有必要的话我们需要添加一个额外的投影算子使得完整关系 $\sum_{k} P_{k}=I$ 成立,而信息恢复则通过西变换 $U_{k}^{\dagger}$ 实现。为了明白这种设计行之有效,注意上述探测-恢复过程对应一个完整的量子操作 $\mathcal{R}(\sigma)=\sum_{k} U_{k}^{\dagger} P_{k} \sigma P_{k} U_{k}$ 。对一个编码空间内的

量子态 $\rho$ ,简单的计算表明:

$$ \begin{align*} U_{k}^{\dagger} P_{k} F_{l} \sqrt{\rho} & =U_{k}^{\dagger} P_{k}^{\dagger} F_{l} P \sqrt{\rho} \tag{10.20}\\ & =\frac{U_{k}^{\dagger} U_{k} P F_{k}^{\dagger} F_{l} P \sqrt{\rho}}{\sqrt{d_{k k}}} \tag{10.21}\\ & =\delta_{k l} \sqrt{d_{k k}} P \sqrt{\rho} \tag{10.22}\\ & =\delta_{k l} \sqrt{d_{k k}} \sqrt{\rho} \tag{10.23} \end{align*} $$

因此,

$$ \begin{align*} \mathcal{R}(\mathcal{E}(\rho)) & =\sum_{k l} U_{k}^{\dagger} P_{k} F_{l} \rho F_{l}^{\dagger} P_{k} U_{k} \tag{10.24}\\ & =\sum_{k l} \delta_{k l} d_{k k} \rho \tag{10.25}\\ & \propto \rho \tag{10.26} \end{align*} $$

证毕。 为了证明量子纠错条件式(10.16)的必要性,假设 $\left\{E_{i}\right\}$ 是一组能被算子元素 $\left\{R_{i}\right\}$ 定义的纠错操作 $\mathcal{R}$ 完美纠正的量子错误。定义一个量子操作 $\mathcal{E}_{C}(\rho) \equiv \mathcal{E}(P \rho P)$ ,因为对任意量子态 $\rho, P \rho P$都在编码空间中,于是有

$$ \begin{equation*} \mathcal{R}\left(\mathcal{E}_{C}(\rho)\right) \propto P \rho P \tag{10.27} \end{equation*} $$

对任意量子态 $\rho$ 成立。并且,如果这里的等式左边和右边都是线性的,则比例因子必须是一个与 $\rho$ 无关的常数 $c$ 。将上面的等式用操作元素展开,可以得到

$$ \begin{equation*} \sum_{i j} R_{j} E_{i} P \rho P E_{i}^{\dagger} R_{j}^{\dagger}=c P \rho P \tag{10.28} \end{equation*} $$

这个等式对任何 $\rho$ 都成立。于是,算子元素 $\left\{R_{j} E_{i}\right\}$ 决定的量子操作将与单操作算子 $\sqrt{c} P$ 决定的量子操作等价。根据定理 8.2,这意味着存在复数 $c_{k i}$ ,使得

$$ \begin{equation*} R_{k} E_{i} P=c_{k i} P \tag{10.29} \end{equation*} $$

成立。取共轭,我们有 $P E_{i}^{\dagger} R_{k}^{\dagger}=c_{k i}^{*} P$ ,因此 $P E_{i}^{\dagger} R_{k}^{\dagger} R_{k} E_{j} P=c_{k i}^{*} c_{k j} P$ 。但是 $\mathcal{R}$ 是一个保迹操作,所以 $\sum_{k} R_{k}^{\dagger} R_{k}=I$ 。将等式 $P E_{i}^{\dagger} R_{k}^{\dagger} R_{k} E_{j} P=c_{k i}^{*} c_{k j} P$ 对 $k$ 求和,我们得到

$$ \begin{equation*} P E_{i}^{\dagger} E_{j} P=\alpha_{i j} P \tag{10.30} \end{equation*} $$

这里,$\alpha_{i j} \equiv \sum_{k} c_{k i}^{*} c_{k j}$ 是一个复数组成的共轭矩阵。显然,这就是我们期望的量子纠错条件。

直接验证量子纠错条件虽然不难,但比较费时费力。在 10.4 节和 10.5 节,我们将描述一个量子纠错条件,从量子纠错条件出发构造出一系列有趣量子编码的理论框架,它可以有效绕开一些直接验证量子纠错条件带来的困难。就目前来说,读者可以通过仔细分析下面的例子来了解量子纠错条件的工作细节。

专题 10.1 无测量的量子纠错

在正文中,我们将量子纠错描述为一个两阶段过程,量子测量驱动的错误探测,接着是条件西操作完成的信息恢复。实际上,只利用酉操作和被制备在标准状态的辅助系统就足以完成量子纠错,也就是,不再涉及量子测量。这样做的优势是,在现实生活中的一些量子系统中,完成量子纠错所需要的测量是十分困难的,所以需要替代方法。我们采用的技术其实跟第 8章中用来模拟一个任意的量子操作所用到的技术一样,现在我们回顾一下量子约错中的基本思路。

假设在作为纠错对象的主量子系统上的征状测量,可以用测量算子 $M_{i}$ 描述,对应的条件西操作是 $U_{i}$ 。我们为可能的错误征状引入一个对应基矢态为 $|i\rangle$ 的辅助系统,在纠错实施之前辅助系统的状态为标准纯态 $|0\rangle$ 。在主量子系统和辅助系统上定义一个操作 $U$ ,使得下式满足:

$$ \begin{equation*} U|\psi\rangle|0\rangle \equiv \sum_{i}\left(U_{i} M_{i}|\psi\rangle\right)|i\rangle \tag{10.31} \end{equation*} $$

则 $U$ 可以被扩充为全空间上的合法酉操作,因为

$$ \begin{align*} \langle\varphi|\langle 0| U^{\dagger} U|\psi\rangle|0\rangle & =\sum_{i j}\langle\varphi| M_{i}^{\dagger} M_{j}|\psi\rangle \delta_{i j} \tag{10.32}\\ & =\sum_{i}\langle\varphi| M_{i}^{\dagger} M_{i}|\psi\rangle \tag{10.33}\\ & =\langle\varphi \mid \psi\rangle \tag{10.34} \end{align*} $$

可见,$U$ 保持内积,所以可以扩展成为整个空间上的合法西操作。在主量子系统上,$U$ 的作用效果正是 $\mathcal{R}(\sigma)=\sum_{i} U_{i} M_{i} \sigma M_{i}^{\dagger} U_{i}^{\dagger}$ ,这正好与正文中量子纠错所需要的量子操作完全一致。注意为了量子纠错能顺利起作用,每次纠错都需要引入新的辅助量子系统。

习题 10.7 考虑 10.1.1 节中三量子比特的比特翻转编码对应的投影算子 $P=|000\rangle\langle 000|+|111\rangle\langle 111|$ 。此编码对抗的噪声作用过程可以由操作元素

$$ \left\{\sqrt{(1-p)^{3}} I, \sqrt{p(1-p)^{2}} X_{1}, \sqrt{p(1-p)^{2}} X_{2}, \sqrt{p(1-p)^{2}} X_{3}\right\} $$

描述,这里 $p$ 是比特翻转的概率。注意此量子操作不保迹,因为我们忽略了两个或者三个量子比特上同时发生比特翻转的操作元素。针对此编码和噪声作用过程,验证量子纠错条件。

10.3.1 错误的离散化

我们已经讨论了如何在特定噪声 $\mathcal{E}$ 的影响下保护量子信息。但是,在一般情况下我们并不知道是何种噪声在干扰量子系统。因此,如果有一种特定的量子编码 $C$ 和纠错过程 $\mathcal{R}$ 来对抗一整类噪声,将会非常有价值。幸运的是,我们可以通过对量子纠错条件做适当调整来实现这种保护。定理10.2 假设 $C$ 是一个量子编码, $\mathcal{R}$ 是定理 10.1 的证明中所构造的纠错操作,它被用来恢复操作元素 $\left\{E_{i}\right\}$ 所描述的噪声作用过程 $\mathcal{E}$ 的影响。假设 $\mathcal{F}$ 是另一个量子操作,且它的操作算子 $\left\{F_{i}\right\}$ 是 $\left\{E_{i}\right\}$ 的线性组合,即 $F_{j}=\sum_{i} m_{j i} E_{i}$ ,这里 $m_{j i}$ 构成一个复数矩阵。那么, $\mathcal{R}$ 也能纠正噪声作用过程 $\mathcal{F}$ 对编码 $C$ 的影响。

证明

根据定理 10.1 可知,操作元素 $\left\{E_{i}\right\}$ 必须满足量子纠错条件,即 $P E_{i} E_{j}^{\dagger} P=\alpha_{i j} P$ 。如定理 10.1 的证明所示,不失一般性我们可以假设 $\mathcal{E}$ 的操作算子被恰当选取,使得 $\alpha_{i j}=d_{i j}$ 是元素为实数的对角阵。纠错程序 $\mathcal{R}$ 的操作算子可以选为 $U_{k}^{\dagger} P_{k}$ ,这里根据式(10.23)$U_{k}$ 和 $P_{k}$ 可以合理选取,使得对任意编码空间中的量子态 $\rho$ ,有

$$ \begin{equation*} U_{k}^{\dagger} P_{k} E_{i} \sqrt{\rho}=\delta_{k i} \sqrt{d_{k k}} \sqrt{\rho} \tag{10.35} \end{equation*} $$

代人 $F_{j}=\sum_{i} m_{j i} E_{i}$ ,可得

$$ \begin{align*} U_{k}^{\dagger} P_{k} F_{j} \sqrt{\rho} & =\sum_{i} m_{j i} \delta_{k i} \sqrt{d_{k k}} \sqrt{\rho} \tag{10.36}\\ & =m_{j k} \sqrt{d_{k k}} \sqrt{\rho} \tag{10.37} \end{align*} $$

因此,

$$ \begin{align*} \mathcal{R}(\mathcal{F}(\rho)) & =\sum_{k j} U_{k}^{\dagger} P_{k} F_{j} \rho F_{j}^{\dagger} P_{k} U_{k} \tag{10.38}\\ & =\sum_{k j}\left|m_{j k}\right|^{2} d_{k k} \rho \tag{10.39}\\ & \propto \rho \tag{10.40} \end{align*} $$

证毕。

上述结果让我们可以引入一种更强大的语言来描述量子纠错。与其讨论编码 $C$ 和纠错程序 $\mathcal{R}$ 所能纠正的噪声作用过程 $\mathcal{E}$ 的种类,我们现在改为讨论可以纠正的噪声算子 $\left\{E_{i}\right\}$(或者简单就说噪声)。这意味着,对这些算子来说,量子纠错条件成立,即

$$ \begin{equation*} P E_{i} E_{j}^{\dagger} P=\alpha_{i j} P \tag{10.41} \end{equation*} $$

将定理 10.1 和 10.2 结合起来,可知对于一个任意的噪声作用过程 $\mathcal{E}$ ,只要其操作元素由这些噪声算子 $\left\{E_{i}\right\}$ 的线性组合构成,那么 $\mathcal{E}$ 就能被 $\mathcal{R}$ 纠正!

这是一个非常强大的新视角,我们现在来看一个例子。假设 $\mathcal{E}$ 是一个作用在单量子比特上的量子操作,所以它的操作算子 $\left\{E_{i}\right\}$ 可以被写成泡利矩阵 $\sigma_{0}, \sigma_{1}, \sigma_{2}, \sigma_{3}$ 的线性组合。因此,为了 Shor 编码可以纠正作用在第一个量子比特上的任何错误,我们只需要验证下式成立:

$$ \begin{equation*} P \sigma_{i}^{1} \sigma_{j}^{1} P=\alpha_{i j} P \tag{10.42} \end{equation*} $$

这里 $\sigma_{i}^{1}$ 是作用在第一个量子比特上的泡利矩阵( $I, X, Y, Z$ )。对于作用在第一个量子比特上的任意噪声,只要上式满足,它都可以被纠正!(注意这里涉及的计算非常简单,它是习题 10.10 的一部分。)实际上这解释了对初识量子纠错的读者来说经常感觉神秘的一个要点:许多文献的作者经常显露出对去极化噪声的莫名偏爱,即 $\mathcal{E}(\rho)=(1-p) \rho+\frac{p}{3}(X \rho X+Y \rho Y+Z \rho Z)$ 。可能很容易认为,这种设定很明显地限制了纠错模型的合理性。但如上面讨论所暗示的,其实不然,因为纠错过程如果能纠正去极化信道造成的错误,自然就能纠正单量子比特上任意量子操作的影响。

总结一下,我们已经知道,量子噪声是可以离散化的,所以为了对抗单量子比特上具有连续可能的错误,只需要纠正一个离散集合的错误,即四个泡利矩阵,而且高维量子系统也有类似结论。与经典模拟系统相比,这是一个根本性的差别,因为在经典模拟系统中,原则上有无限种可能的错误征状,因此实现纠错极其困难。经典信息处理的数字化纠错则相当成功,因为它只涉及有限种可能的错误征状。所以,我们体会到了一件惊人的事实,量子纠错似乎跟经典数字化系统的纠错类似,而与经典模拟系统的状况迥异。

习题 10.8 针对噪声算子集合 $\left\{I, Z_{1}, Z_{2}, Z_{3}\right\}$ ,验证三量子比特的相位翻转编码 $\left|0_{L}\right\rangle=|+++\rangle$ , $\left|1_{L}\right\rangle=|---\rangle$ 满足量子纠错条件。 习题10.9 继续考虑三量子比特的相位翻转编码,令 $P_{i}$ 和 $Q_{i}$ 分别是映到第 $i$ 个量子比特状态 $|0\rangle$和 $|1\rangle$ 上的投影算子。证明三量子比特的相位翻转编码可以对抗噪声集合 $\left\{I, P_{1}, Q_{1}, P_{2}, Q_{2}, P_{3}, Q_{3}\right\}$ 。 习题 10.10 对包含 $I$ 和噪声算子 $X_{j}, Y_{j}, Z_{j}(1 \leqslant j \leqslant 9)$ 的噪声集合,仔细验证 Shor 编码满足量子纠错条件。

习题 10.11 对如下单量子比特上的量子操作 $\mathcal{E}$ 构造操作元素,即对输人的任意量子态 $\rho$ ,将其替换为完全随机状态 $I / 2$ 。非常神奇的是,即使这样的噪声也可以被类似 Shor 编码的纠错码纠正。

10.3.2 独立错误模型

我们如何建立量子纠错和第 9 章介绍的实现可靠量子信息处理的判据之间的联系呢?在本节,我们将介绍一个能实现这一点的想法,它基于一个假设,那就是作用于不同量子比特上的噪声互相独立。直观上看,如果编码中噪声独立作用于不同的量子比特上,那么如果噪声足够微弱,则相对于不使用编码,通过编码保护的量子信息的存储保真度应该得到改善。为了说明这一点,我们从去极化信道的例子开始讨论,这个例子很简单,而且足以揭示基本的思路,后面我们再将它扩展到其他信道的讨论。

根据前面的讨论,去极化信道可以被一个单独的参数概率 $p$ 描述。去极化信道对一个单量子比特的作用可以描述为 $\mathcal{E}(\rho)=(1-p) \rho+p / 3[X \rho X+Y \rho Y+Z \rho Z]$ ,它可以解释为这个量子比特以 $1-p$ 的概率什么都不会发生,然后以 $p / 3$ 的概率分别被作用算子 $X, Y, Z$ 。在量子纠错中分析去极化信道是非常方便的,因为它可以用 $I, X, Y, Z$ 这 4 个在量子编码分析中最常见的基本错误来刻画。我们将解释这种分析的思路,然后回到如果噪声不能被这 4 个基本操作 $I, X, Y, Z$ 解释的问题上来。通过简单计算,我们可以看到量子态通过去极化信道后的最小保真度为 $F=\sqrt{1-2 p / 3}=1-p / 3+O\left(p^{2}\right)$ 。 习题 10.12 证明状态 $|0\rangle$ 和 $\mathcal{E}(|0\rangle\langle 0|)$ 之间的保真度是 $\sqrt{1-2 p / 3}$ ,并利用此结果证明去极化信道的最小保真度是 $\sqrt{1-2 p / 3}$ 。

假设我们将一个量子比特用 $n$ 个量子比特进行编码,并且编码能纠正任何单量子比特上的错误。假设参数为 $p$ 的去极化信道独立作用在每一个量子比特上,则在 $n$ 个量子比特上行为可以描述为

$$ \begin{equation*} \mathcal{E}^{\otimes n}(\rho)=(1-p)^{n} \rho+\sum_{j=1}^{n} \sum_{k=1}^{3}(1-p)^{n-1} \frac{p}{3} \sigma_{k}^{j} \rho \sigma_{k}^{j}+\cdots \tag{10.43} \end{equation*} $$

这里,"..."是正定且后面的分析会放弃的高阶项。在纠错完成之后,上述求和项中的每一项都将被恢复成 $\rho$ ,只要原来的 $\rho$ 在编码空间中,

$$ \begin{equation*} \left(\mathcal{R} \otimes \mathcal{E}^{\otimes n}\right)(\rho)=\left[(1-p)^{n}+n(1-p)^{n-1} p\right] \rho+\cdots \tag{10.44} \end{equation*} $$

因此,保真度满足

$$ \begin{equation*} F \geqslant \sqrt{(1-p)^{n-1}(1-p+n p)}=1-\frac{\binom{n}{2}}{2} p^{2}+O\left(p^{3}\right) \tag{10.45} \end{equation*} $$

所以,只要错误的概率 $p$ 足够小,量子纠错码确实可以提升被保护信息的保真度。 并不是所有的噪声都可以方便地解释成没有错误,比特翻转,相位翻转及两者结合的随机组合,很多自然发生的量子信道就没有这样的解释。考虑振幅阻尼的例子( 8.3.5节),这种噪声由两个算子元素 $E_{0}$ 和 $E_{1}$ 描述:

$$ E_{0}=\left[\begin{array}{cc} 1 & 0 \tag{10.46}\\ 0 & \sqrt{1-\gamma} \end{array}\right] ; \quad E_{1}=\left[\begin{array}{cc} 0 & \sqrt{\gamma} \\ 0 & 0 \end{array}\right] $$

参数 $\gamma$ 是一个小的正数,刻画了振幅阻尼过程的强度——当 $\gamma$ 接近 0 的时候,强度逐渐降低,直到最后成为一个无噪声信道。我们可能会猜测,也许振幅阻尼信道可以用一个等价的量子操作描述,它对应的操作元素有一项正比于单位阵,即组成为 $\left\{f(\gamma) I, E_{1}^{\prime}, E_{2}^{\prime}, \cdots\right\}$ ,这里 $f(\gamma) \rightarrow 1$ 当 $\gamma \rightarrow 0$ 。如果果真如此,则对振幅阻尼信道独立作用于多量子比特上这种情形的纠错分析,我们可以使用类似去极化信道中的处理方法。让人意外的是,这样的等价描述是不存在的!回顾定理 8.2 ,当 $\gamma > 0$ 时,$E_{0}$ 和 $E_{1}$ 的任何线性组合都不会正比于单位阵,因此,没有任何一个振幅阻尼信道的等价描述包含一个正比于单位阵的算子元素。

类似地,许多其他量子力学中的噪声过程在物理意义上接近单位阵,但没有任何一个算子和描述能包含一个类单位阵的成分。直观上看,只要噪声的强度足够弱,就应该可以通过纠错提升量子信息存储的保真度。我们现在证明,事实确实如此。为了让叙述更具体,我们就采用振幅阻尼的例子。通过简单计算,可以发现单量子比特通过振幅阻尼信道后的最小保真度为 $\sqrt{1-\gamma_{0}}$ 。现在假设这个量子比特被编码成 $n$ 个量子比特,而且每个量子比特独立通过参数为 $\gamma$ 的振幅阻尼信道。下面我们指出,在这种情形下,量子纠错的效果是将保真度提升至 $1-O\left(\gamma^{2}\right)$ 。因此,只要 $\gamma$ 足够小,本例中量子编码可以有效抑制噪声的影响。 习题10.13 当 $\mathcal{E}$ 是参数为 $\gamma$ 的振幅阻尼信道,证明最小保真度 $F(|\psi\rangle, \mathcal{E}(|\psi\rangle\langle\psi|))$ 是 $\sqrt{1-\gamma}$ 。 我们使用 $E_{j, k}$ 表示 $E_{j}$ 在第 $k$ 个量子比特上的行为,则噪声在编码量子比特上的作用效果可以描述为

$$ \begin{align*} \mathcal{E}^{\otimes n}(\rho) & =\left(E_{0,1} \otimes E_{0,2} \otimes \cdots \otimes E_{0, n}\right) \rho\left(E_{0,1}^{\dagger} \otimes E_{0,2}^{\dagger} \otimes \cdots \otimes E_{0, n}^{\dagger}\right) \\ & +\sum_{j=1}^{n}\left[E_{1, j} \otimes\left(\bigotimes_{k \neq j} E_{0, k}\right)\right] \rho\left[E_{1, j}^{\dagger} \otimes\left(\bigotimes_{k \neq j} E_{0, k}^{\dagger}\right)\right] \tag{10.47}\\ & +O\left(\gamma^{2}\right) \end{align*} $$

如果记 $E_{0}=(1-\gamma / 4) I+\gamma Z / 4+O\left(\gamma^{2}\right), E_{1}=\sqrt{\gamma}(X+\mathrm{i} Y) / 2$ ,则将它们代人式(10.47)可得

$$ \begin{array}{r} \mathcal{E}^{\otimes n}(\rho)=\left(1-\frac{\gamma}{4}\right)^{2 n} \rho+\frac{\gamma}{4}\left(1-\frac{\gamma}{4}\right)^{2 n-1} \sum_{j=1}^{n}\left(Z_{j} \rho+\rho Z_{j}\right) \\ +\frac{\gamma}{4}\left(1-\frac{\gamma}{4}\right)^{2 n-2} \sum_{j=1}^{n}\left(X_{j}+\mathrm{i} Y_{j}\right) \rho\left(X_{j}-\mathrm{i} Y_{j}\right)+O\left(\gamma^{2}\right) \tag{10.48} \end{array} $$

假设 $\rho$ 是编码空间中的状态,则明显地,在 $\rho$ 上纠错的效果是保持其不变!事实上,在类似 $Z_{j} \rho$和 $\rho Z_{j}$ 的项上,纠错的效果很容易通过考虑其在 $Z_{j}|\psi\rangle\langle\psi|$ 上的效果来理解,这里 $|\psi\rangle$ 是编码空间的一个状态。假设编码被设计成错误 $Z_{j}$ 将 $|\psi\rangle$ 变换到一个正交的子空间中,那么在实施征状测量时,形如 $Z_{j}|\psi\rangle\langle\psi|$ 的项将消失。(注意即使没有正交的假设,通过使用将编码映到正交空间的错误算子,也可以得到类似的结论。)因此,在纠错后,形如 $Z_{j} \rho$ 的项会消失,$\rho Z_{j}, X_{j} \rho Y_{j}$ 和 $Y_{j} \rho X_{j}$ 也是类似。并且,由于编码能纠正单量子比特上的错误,纠错将会把形如 $X_{j} \rho X_{j}$ 和 $Y_{j} \rho Y_{j}$的项变回 $\rho$ 。所以,纠错后系统的状态就成为

$$ \begin{equation*} \left(1-\frac{\gamma}{4}\right)^{2 n} \rho+2 n \frac{\gamma}{4}\left(1-\frac{\gamma}{4}\right)^{2 n-2} \rho+O\left(\gamma^{2}\right)=\rho+O\left(\gamma^{2}\right) \tag{10.49} \end{equation*} $$

因此,在 $\gamma^{2}$ 的误差内,纠错将把系统的状态恢复到 $\rho$ ,于是对于足够弱的噪声(小的 $\gamma$ ),纠错像在去极化信道中一样可以有效抑制噪声的影响。我们在这里的分析是针对振幅阻尼噪声模型,但不难将其推广到其他噪声模型中。但是,一般来说,在本章剩余部分我们将跟分析去极化噪声类似,把噪声理解为随机地作用泡利矩阵,这种处理使得我们可以使用来自经典概率论的熟悉概念。但是我们需要牢记,使用类似的原则,我们可以将基于这个简单噪声模型的分析推广到范围

更大的噪声模型上。

10.3.3 简并编码

就很多方面来说,量子纠错编码跟经典编码很类似——跟经典情形一样,错误是通过征状测量被确定下来,然后再做合理的纠正。但是,有一类被称作简并编码的量子纠错码,拥有一些经典情形下未曾出现的奇特性质。实际上,Shor 编码是一个展示这种现象的合适例子。考虑噪声 $Z_{1}$ 和 $Z_{2}$ 对 Shor 编码中码字的影响,如前所述,它们的效果在两个码字上是完全相同的。但是,对经典纠错码来说,不同比特上的错误一定会导致不同的受影响码字。简并纠错码的存在,对量子纠错来说既是一个好消息,也是一个坏消息。坏消息是经典情形下行之有效的一些证明上下界的技术在量子情形下不再适用,我们将在下一节的量子汉明界中看到这种例子;好消息是简并编码似乎是量子编码中一个最有趣的现象。某种意义上说,相对经典情形这种现象让我们有机会将更多的信息打包进量子编码,因为不同的错误不一定将编码空间映射到正交空间,因此一个可能的结果是相对非简并编码,简并编码可以更有效地存储量子信息。

10.3.4 量子汉明界

在实际应用中,我们自然倾向于使用性能最好的量子编码。但是,在给定场景下什么叫最好,取决于不同的应用需求。为此,我们非常希望拥有一个判据,来方便地判断一个具有给定特征的量子编码是否真实存在。本节中我们将发展一种称为量子汉明界的技术,这是一种能为理解量子编码的一般特征提供角度的简单技术。不幸的是,量子汉明界只适用于非简并编码,但它也为得到一般情形下的界限提供了思路。假设一个量子编码将 $k$ 个量子比特编码成 $n$ 个量子比特,而且它能纠正 $t$ 个或者更少量子比特任意组合上的错误。假设发生了 $j$ 个错误,这里 $j \leqslant t$ ,则发生错误的位置有 $\binom{n}{j}$ 种不同的可能组合。对应任何一种此类组合,每个量子比特上的错误有三个可能 ——泡利阵 $X, Y, Z$ ,于是,有 $3^{j}$ 种不同的错误可能。因此,发生在 $t$ 个或者更少量子比特上不同错误的可能总数为

$$ \begin{equation*} \sum_{j=0}^{t}\binom{n}{j} 3^{j} \tag{10.50} \end{equation*} $$

(注意 $j=0$ 对应没有错误发生的情况,即错误 $I$ )。为了将 $k$ 个量子比特以非简并的方式编码,这些错误中的每一个都需要对应一个正交的 $2^{k}$ 维子空间,而且这些子空间都能嵌人到 $n$ 个量子比特对应的 $2^{n}$ 维状态空间中。于是,

$$ \begin{equation*} \sum_{j=0}^{t}\binom{n}{j} 3^{j} 2^{k} \leqslant 2^{n} \tag{10.51} \end{equation*} $$

这就是量子汉明界。比如,如果我们希望将一个量子比特编码到 $n$ 个量子比特上,而且单个量子比特上的任意错误能被纠正,则量子汉明界表明,

$$ \begin{equation*} 2(1+3 n) \leqslant 2^{n} \tag{10.52} \end{equation*} $$

代人验证表明,当 $n \leqslant 4$ 时上式不能被满足,而 $n \geqslant 5$ 时可以。因此,没有任何非简并编码能将一个量子比特以少于 5 个量子比特的方式编码,而且还能纠正单个量子比特上的任意错误。

当然,并不是所有的量子纠错码都是非简并的,因此量子汉明界类似一个经验法则,而不是一个量子编码存在性的严格界限。(实际上,在写作本文时,还没有任何量子编码能违背量子汉明界,即使允许简并发生。)在后面,我们将有机会看到一些适用于所有量子编码的界限,而不是仅仅针对非简并量子编码。例如,在 12.4.3节,我们将证明量子辛格顿界限,它指出任何将 $k$个量子比特的量子信息编码到 $n$ 个量子比特上,并且能纠正 $t$ 个量子比特错误的方案必须满足条件 $n \geqslant 4 t+k$ 。这意味着能编码一个量子比特,并且能纠正一个单量子比特上任何错误的编码方案,将至少需要 $n \geqslant 4+1=5$ 个量子比特。实际上,我们很快就将展示这样一个五量子比特编码方案。