是因为我们不确切地知道如何创建量子计算机(以及它们必须如何工作),还是因为我们不知道如何在理论上进行创建,但是没有在实践中实际执行它的工具?是以上两种的混合吗?还有其他原因吗?
是因为我们不确切地知道如何创建量子计算机(以及它们必须如何工作),还是因为我们不知道如何在理论上进行创建,但是没有在实践中实际执行它的工具?是以上两种的混合吗?还有其他原因吗?
Answers:
从理论上讲,我们确切地知道如何构造量子计算机。但是从本质上讲,这比建造经典计算机要困难得多。
在经典计算机中,您不必使用单个粒子对位进行编码。相反,您可能会说少于十亿个电子的任何事物都是0,多于十亿个电子的事物都是1,并且目标是例如使二十亿个电子正常地编码为1。这使您具有固有的容错能力:即使有成千上万个电子比预期的多或少,您仍将获得正确的分类,即数字0或1。
在量子计算机中,由于非克隆定理,这种技巧是不可能的:您不能轻易地使用一个以上的粒子来编码qubit(量子位)。取而代之的是,您必须使所有的门操作得如此好,以至于它们不仅精确到单个粒子水平,甚至精确到它们作用在单个粒子上的微小部分(达到所谓的量子误差校正阈值)。这比仅使栅极精确到数亿个电子以内要精确得多。
同时,我们确实拥有仅能使量子计算机达到所需精确度的工具。但是到目前为止,还没有人设法制造出一个大的传感器,它可以精确地实现可能需要实现数十个逻辑量子位的数十万个物理量子位,然后不可否认地在量子计算机击败的领域中运行。经典计算机处于选择问题(量子至上)。
从理论上和实现上,都有很多原因使量子计算机更难构建。
最简单的可能是:虽然很容易制造出表现出经典行为的机器,但量子行为的演示却需要真正的冷机和精确控制的机器。量子态的热力学条件很难获得。当我们最终实现量子系统时,很难将其与试图将其分解并使其重新成为经典的环境隔离开来。
可伸缩性是一个大问题。我们的计算机越大,保持量子的难度就越大。纠缠使量子计算机真正强大的现象,如纠缠,要求量子位能够以受控方式相互交互。允许这种控制的架构很难设计,也很难扩展。没有人同意设计!
正如@pyramids指出的那样,我们用于纠正经典机器中的错误的策略通常涉及克隆信息,这是量子信息理论所禁止的。尽管我们有一些策略可以通过巧妙的量子方式来减轻误差,但它们要求量子位已经非常无噪声,并且我们有很多。如果我们不能将工程技术提高到某个阈值以上,就不能采用这些策略-它们会使情况变得更糟!
重要的一点是,量子计算机包含经典计算机。因此,建立量子计算机至少必须像传统计算机一样困难。
为了具体说明,值得考虑通用门装置。在经典计算中,您可以通过仅一种类型的门的组合来创建所需的任何电路。人们经常谈论NAND门,但是出于这种观点,谈论Toffoli门(也称为受控非门)比较容易。每个经典(可逆)电路都可以用一大堆Toffoli来表示。可以将任意量子计算写成两种不同类型门的组合:Toffoli和Hadamard。
这具有直接后果。显然,如果您要问两种不同的事物,其中之一是古典物理学中不存在的,那肯定比仅制造一件确实存在于古典物理学中的事物要难。而且,利用Hadamard意味着您必须考虑的可能状态集不再是正交的,因此您不能简单地查看状态并确定如何进行处理。这与Toffoli尤其相关,因为它的结果是变得更难实现:之前,您可以安全地测量不同的输入,并根据它们的值对输出进行某些操作。但是,如果输入不是正交的(或者即使它们是正交的,但是在未知的基础上!),您也可以冒险测量它们,因为您将破坏状态,特别是,
我必须不同意无克隆定理会使重复代码的纠错变得困难的想法。假设您的输入是在计算基础上提供的(即,您输入的不是任意叠加,几乎总是这样,尤其是在解决诸如Schor算法之类的经典问题时),则可以使用受控非门将其克隆,在所有副本上并行运行计算,然后更正错误。唯一的技巧是确保在纠错过程中不进行测量(可能的校正子除外),而要做的就是继续使用量子门。
量子计算机的纠错并不比传统计算机困难得多。线性可以解决大多数已知的困难。
我还要提及的是,与重复代码相比,量子纠错的效率更高。并且您需要两个pauli矩阵来生成其余矩阵,因此,如果您要使用效率低下但概念上很简单的重复代码路由,则需要两种类型的重复代码(一种用于位翻转,一种用于相位翻转) 。
量子纠错表明,与传统情况一样,每个逻辑量子位的物理量子位数量的线性增加以指数方式提高了错误率。
尽管如此,我们距离100个物理量子比特还很遥远。这是真正的问题。我们需要能够将更多半准确的qubit粘合在一起,然后再开始进行处理。