Bit-Flip纠错¶
Bit-Flip代码¶
最大的一个问题困扰量子计算机的物理实现是量子位目前有一个非常短的“保质期”。不像经典比特在硬盘或光盘,持续多年,量子位元的叠加通常寿命的微秒之前他们“打破”,无意中状态改变,破坏你的计算。他们需要大量隔绝一切环境,因为单个交互与一只流浪粒子或光子可以放进一个完全不同的状态。这environment-driven误差不可避免地发生时,电路会产生荒谬的结果;它本质上是一样的有一个古典一些硬盘部门不再可靠地读或写,所以它产生的数据是损坏的和无用的。
当然,没有什么可以从它的环境完全隔离。今天的量子计算机基本操作与时间赛跑,在之前完成有意义的计算量子比特。有几种技术,科学家们采用延长这一次尽可能多。很多都是硬件技术,而是一个特定的方法实际上利用软件。这种方法使用我们称之为错误校正码通过卷入一个量子位与多个备用量子位,它们都是在同一个州。如果其中一个量子位遭受一个环境因素诱发的错误,纠错代码可以使用另一个量子位来“修复”它回到适当的状态。
许多经典系统中使用这种技术是在今天,从RAID阵列与奇偶校验比特通信通道,低信噪比。量子纠错借许多想法从经典纠错码来帮助保持量子比特尽可能“活着”。在这个实验室里,我们要学习最简单的一个:Bit-Flip代码。
第1部分:编码¶
bit-flip代码使用了两个备用量子位来保护一个原始的量子位。它能成功地识别并纠正单个bit-flip错误(意义的三个量子比特翻转,像X门)。它不能防止两个bit-flips和它不能正确phase-flip错误;有更复杂的算法提供的保护级别,但是我们要保持简单,因为这是一个介绍类。
bit-flip代码有三个部分:首先是编码一步,将一份正本量子位转换成一个量子位三量子比特组成的“逻辑”,都是在同一个国家。这个逻辑量子位可以传递和使用普通量子位,尽管它实际上是三个量子位。最初的量子位可以在任意状态,但两个备件都必须开始\ (\刃{0}
\)状态。这里有一个线路图的编码步骤:
最初的量子位是第一个量子位的图,和这两个备件是第二和第三。
第2部分:测量综合症¶
被称为第二部分综合症的测量的一步。这一步是用来检查量子比特的“平价”。奇偶校验,在这种情况下,是指是否都是一样的状态或相反的状态。例如,考虑一下这个简单的叠加:
第一和第二量子位据说有相同的奇偶校验,因为当测量时,他们总是会在同一状态。第三个量子位与第一和第二相反奇偶性,因为测量时,它总是会与他们都不同。综合征测量步骤是用来检查第一个和第二个量子位的平价,第一和第三个量子位。要做到这一点,它使用两个女仆量子位。它的电路:
综合症的测量可以在任何时间执行一次操作,甚至在一些复杂的计算。如果你觉得特别多疑,你的一个量子门造成了一个错误,您可以运行这张支票,门后立即使用。
两个女仆量子位最终不会纠缠与逻辑量子位多亏有两个把CNOT门,所以我们可以测量他们把CNOT门后不破坏逻辑量子位的叠加。解释什么这个测量,我们就考虑第一平价量子位简单性:
- 这个女仆纠缠与第一和第二量子位登记。
- 女仆是测量。
- 如果它给\ \(刃{0}\),然后第一个和第二个量子位有相同的奇偶校验。
- 如果它给\ \(刃{1}\)相反,那么第一个和第二个量子位平价。
- 测量可能部分崩溃逻辑量子位的叠加,但它的一个好方法。
- 如果逻辑量子位没有遭受任何一点翻转,测量不做任何事。
- 如果逻辑量子位遭受从一个完全干净的位翻转,翻转一个量子位(例如,转向\ \(刃{000}\)成\ \(刃{001}\)),测量不做任何事。
- 如果逻辑量子位的物理量子位部分翻转,产生叠加的翻转而不是(例如,把翻转\ \(刃{000}\)成\ \(压裂{\ sqrt {19}} {\ sqrt{20}} \刃{000}+ \压裂{1}{\ sqrt{20}} \刃{001}\)),测量将部分崩溃寄存器的叠加成一个州量子位是100%破碎或不是。它将删除任何“sort-of-broken”状态。
这个过程是相同的第二附属品,除了它的措施第一和第三个量子位的平价。
第3部分:校正¶
一旦你有奇偶校验的测量,可以执行的第三部分bit-flip代码:修正的一步。这就是你解释综合症测量结果,确定一个量子位的坏了,修理。
解释综合症如何测量结果揭示了破碎的量子位,让我们尝试几个例子。假设正确,完整的寄存器的状态\ \(刃{000}\)。这就是综合症测量结果报告将几个不同的破碎状态:
注册状态 | 0 - 1综合症测量 | 0 - 2综合症测量 |
---|---|---|
\ \(刃{000}\) | \ \(刃{0}\)(相同的奇偶校验) | \ \(刃{0}\)(相同的奇偶校验) |
\ \(刃{001}\) | \ \(刃{0}\)(相同的奇偶校验) | \ \(刃{1}\)(不同的奇偶校验) |
\ \(刃{010}\) | \ \(刃{1}\)(不同的奇偶校验) | \ \(刃{0}\)(相同的奇偶校验) |
\ \(刃{100}\) | \ \(刃{1}\)(不同的奇偶校验) | \ \(刃{1}\)(不同的奇偶校验) |
在这个例子中,足够方便,有四种可能的结果综合症的测量,和每一个对应于一个不同的破碎的量子位。在第二个例子中的寄存器的状态\ \(刃{001}\):在这种情况下,第一个和第二个量子位有相同的奇偶校验,所以第一综合症测量\ \(刃{0}\)。然而,第一个和第三个量子位有不同的平价,所以第二综合症测量\ \(刃{1}\)。从逻辑上讲,如果第一次和第二次都是相同的,但第一个和第三个是不同的,那么第三必须不同于第一和第二;因此,我们发现破碎的量子位。另外一个例子,如果两个综合症的测量结果\ \(刃{1}\),就意味着第一和第二量子位和第一个和第三个量子位是不同的,从逻辑上讲,第一必须不同于第二和第三,因此它必须被打破。
请注意,我们不去测量寄存器的状态在综合症测量,但事实证明,没关系;因为所有我们感兴趣的是两个量子位的平价双,我们可以使用综合症测量找到并修复一个破碎的量子位不管注册的“正确”的状态。
一旦你确定了破碎的量子位使用经典逻辑,您只需要修复它通过应用X门口。如果没有一个量子位都折断了,逻辑量子位不需要修正,所以你不需要做任何事。
实验室10¶
此时,您应该准备好应对实验室10,您将实现bit-flip代码在一个量子位保护它免受流浪bit-flip错误。玩得开心!