量子计算机和容错量子计算——概念、现状和展望( 三 )


量子计算所需的量子门是幺正变换 。在量子力学理论中,幺正变换描述了一个封闭系统的演化 。然而,在自然界中我们还没有发现真正的封闭系统:一个物理系统总是或多或少地与外界环境存在相互作用 。由于相互作用的影响,系统演化不仅由系统本身决定还取决于环境的状态 。其结果是系统演化一般不再是幺正变换 。我们用完全正定映射来描述量子系统最一般性的演化 。有些非幺正演化会使量子系统逐渐失去相干性,也就是量子叠加态无法持续,这个过程被称为退相干 。
退相干会导致量子算法失去优势 。1998年,本文作者之一及其合作者讨论了退相干对肖尔算法的影响,发现退相干会降低成功求解因数的概率[11] 。当概率过低时,量子算法的效率不再高于经典算法 。事实上,在物理系统中执行的量子门相对理想量子门的任何偏离都有可能导致量子计算的结果错误,进而量子算法失效 。
退相干在自然界中是广泛存在的 。与此同时,有一些物理机制可以用来抑制退相干 。当环境对系统的影响具有某些对称性的时候,可能存在一个不发生退相干的量子态子空间,因此存储在子空间内的量子信息可以不受退相干的影响[11-13] 。如果环境引起的噪声在时间上有关联,动态解耦等方法可以用来抑制退相干的发生[14,15] 。这些方法可以在很大程度上改进物理系统在量子计算中的性能,但计算错误的发生仍然是无法避免的 。因此,需要在算法的层面对计算错误进行处理:虽然在计算过程中还是会发生错误,但可以避免错误对最终计算结果的影响 。
退相干导致的两种计算错误
我们可以将量子计算机中的错误分为两种:比特错误和相位错误 。比特错误导致量子比特0 和1 的取值发生改变,相位错误导致叠加态的相位发生变化 。对于一个处于叠加态a |0> + b|1> 的量子比特,比特错误导致状态改变为a |1> + b|0> ,相位错误导致状态改变为a |0> - b|1>。在经典计算机中也存在比特错误,但相位错误是量子计算机独有的 。量子计算机中任何的错误都可以分解为两种错误的组合 。
量子纠错码和容错量子计算
量子纠错码可以用来解决退相干等硬件的不完美导致的计算错误问题 。在错误的分布满足某些条件的情况下,我们可以把最终计算结果出错的概率降得任意低,这被称作容错量子计算 。当然,量子纠错是有代价的 。为了降低最终出错率,需要使用很多的量子比特来进行编码 。进行容错量子计算的首要条件,也就是错误率低于容错阈值(亚阈值)的初始化、量子门以及读取等操作已经能够在实验中被演示 。目前看来,在错误率低于阈值的条件下,巨大的量子比特数量是最终实现容错量子计算的主要障碍 。
4.1 量子纠错码
量子纠错码是经典纠错码在量子信息的推广 。首先来了解什么是经典纠错码 。最简单的纠错码是重复码(repetition code),也就是将要保护的信息重复存储(图2) 。在日常生活中,我们会经常使用这种保护信息的方式,例如将重要的文件复制一份 。事实上,这同样也是经典信息比量子信息更稳定的原因之一 。在机械硬盘上,我们通过控制铁磁材料的极化方向来存储信息 。其中少数粒子极化方向的错误不会影响对整体信息的读取 。纠错码也是类似的 。如果只有少数比特的信息发生了错误,我们可以将出错的比特找出来,进而实现对信息的保护 。找出错误的方式有两种:一种是多数决定法,也就是数一数哪一种比特(0 或1)比较多,多的那一种应该代表了正确的信息;另一种是宇称查验,也就是查验相邻比特的取值是否相同,不同则意味着其中一个出错了 。对于经典纠错来说,两种纠错方式都有效 。
 

量子计算机和容错量子计算——概念、现状和展望

文章插图
 
 
图2 经典纠错码和经典信息存储
和经典纠错相比,量子纠错不仅需要处理比特错误,还需要处理相位错误 。1995 年,肖尔提出了第一个量子纠错码——肖尔(9 量子比特)码,通过两次利用重复码来处理两种错误[16] 。基于相同的思想,通过结合两个经典纠错码分别用来处理比特错误和相位错误,考得本克(R 。Calderbank)、肖尔和斯特恩(A 。Steane)提出了一系列的量子纠错码,并以他们三个人的名字命名为css码[17,18] 。当然,有的量子纠错码是以其他方式构造的 。
由于对量子比特的读取会破坏量子叠加态,量子信息不能以读取信息再按照多数决定的方式纠错 。在量子纠错中,纠错的方式是宇称查验,也就是通过查验量子比特之间的关系查找错误 。量子纠错中的宇称查验是对一组物理可观测量(厄米算符)的测量,一般来说是一组相互对易的泡利算符 。不同的量子纠错码对应了不同的一组算符 。任何一个量子比特上的错误都会反映为算符测量结果的改变,也就是说能够在测量中被观测到 。


推荐阅读