Answers:
昆腾计算机能够运行算法的子例程比任何已知的经典对数快得多。这并不意味着经典计算机也无法快速完成,我们到目前为止还不知道经典算法能够像量子算法一样高效地运行
量子计算机擅长离散傅立叶变换。这里有很多事情并不能仅仅被“ 并行 ”或“ 快速 ”所捕获,所以让我们深入探讨一下野兽的鲜血。
该保理的问题是:给定一个数,其中是素数,你怎么恢复和?一种方法是注意以下几点:
如果我查看数字,则与N共享一个公因数,否则就不一样。
如果共享一个公因子,并且本身不是的倍数,那么我们可以轻松地询问和的公因子是什么(通过欧几里德算法获得最大的公因数)。N x N
现在不那么明显的事实:所有带不共享一个共同的因素形成乘法群。这意味着什么?您可以在Wikipedia中查看组的定义。让组运算相乘以填充细节,但是我们真正关心的是该理论的以下结果:序列N mod N
是周期性的,当不共享公因子(尝试,)时,将其第一手看成是:x = 2 N = 5
现在有多少自然数小于不会与共享任何公因子?这是由Euler的totient函数回答的,即。N N (p − 1 )(q − 1 )
最后,利用群体理论的主题,重复链的长度
将那个数字除。因此,如果您知道的幂序列的周期,则可以开始对是什么进行猜测。而且,如果您知道是什么,是什么(那是N,请不要忘记!),那么您就有2个方程组和2个未知数,可以通过基本代数求解以分离。x N(p − 1 )(q − 1 )(p − 1 )(q − 1 )p q p ,q
量子计算机从何而来?期间发现。有一个称为傅立叶变换的操作,该函数将函数编写为周期函数的总和,其中是数字,是周期为周期函数,并将其映射到新函数使得。a 1 e 1 + a 2 e 2。。。一个我ë 我p 我˚F ˚F(p 我)= 一个我
计算傅立叶变换,通常引入作为一个整体,但是当你只想把它应用到数据的阵列(在我个数组的元素是),您可以使用此工具称为离散傅立叶变换,其数量将您的“数组”当作一个向量乘以一个很大的unit矩阵。
强调unit一词:这里描述的是一个非常随意的属性。但是关键要点如下:
在物理学世界中,所有运算符都遵循相同的通用数学原理:统一性。
因此,这意味着将DFT矩阵操作复制为量子算符并非没有道理。
现在到了深处, Qubit数组可以表示可能的数组元素(可在网上的任何地方进行解释或发表评论)。
同样,一个 Qubit量子算子可以作用于整个量子空间,并产生一个我们可以解释的答案。
有关更多详细信息,请参见此Wikipedia文章。
如果我们可以仅使用 Qubit 来对指数级大的数据集进行傅立叶变换,则可以很快找到周期。
如果我们可以很快找到周期,则可以快速汇总的估计值
如果我们可以快速完成操作,那么根据我们对了解,我们可以进行检查。
这就是高水平的事情。
使量子计算机善于分解大量数据的原因是它们能够解决寻期问题(以及将主要因素与寻期相关的数学事实)的能力。简而言之,这基本上就是Shor的算法。但这仅是一个问题,是什么使量子计算机擅长于周期发现。
周期查找的核心是能够在整个函数范围内(即针对每个可能的输入)计算函数的值。这称为量子并行性。这本身还不够好,但是与干扰(以某种方式组合来自量子并行性的结果的能力)结合在一起就可以了。
我想这个答案可能有点悬念:一个人如何利用这些能力来实际分解?在Shor的算法上,在Wikipedia上找到答案。
首先,可以通过Shor算法在量子计算机上进行分解(使用“单一”量子门)。
Scott Aaronson撰写的这篇博客文章标题为“ Shor,我会做到的”,它不需要高级数学也不具备任何物理高级知识的解释。
他的想法的简要概述如下:
因此,我们奇怪的量子时钟可以帮助我们有效地进行分解!