线性方程组的量子算法(HHL09):第1步-有关相位估计算法使用的困惑


11

一段时间以来,我一直试图绕过著名的(?)论文《线性方程组的量子算法》(Harrow,Hassidim和Lloyd,2009)(通常被称为HHL09算法论文)。

在第一页上,他们说

我们在这里草绘算法的基本概念,然后在下一节中对其进行详细讨论。给定一个埃尔米特矩阵 ,以及一个单位矢量,假设我们想找到 满足。(我们将讨论后面的效率问题,以及如何放宽对 和的假设。)首先,该算法将 为量子状态。接下来,我们使用哈密顿模拟[3,4]的技术将 应用于A b x A x = b A b b | b = Σ Ñ = 1 b | ê | b Ť | b λ Ĵ Σ Ĵ = Ñ Ĵ = 1个 β Ĵ | ü ĴN×NAbxAx=bAbb|b=i=1Nbi|ieiAt|bi对于不同时间的叠加。通过众所周知的相位估计技术[5–7],对求幂的能力可以分解本征 基的并找到对应的特征值 的能力。此阶段之后的系统接近,其中是的特征向量基础, 而。tA|bAλjü Ĵ一个| b = Σ Ĵ = Ñ Ĵ = 1个 β Ĵ | ü Ĵj=1j=Nβj|uj|λjujA|b=j=1j=Nβj|uj

到目前为止,一切都很好。如描述尼尔森&闯的章节中的“ 量子傅立叶变换及其应用 ”,则相位估计算法来估计在其是对应于特征向量的特征值单一运营商的。ë 2 π φ | ü üφei2πφ|uU

这是Nielsen&Chuang的相关部分:

相位估计算法使用两个寄存器。第一个寄存器包含初始状态为量子位。我们如何选择 取决于两件事:我们希望在的估计中希望具有的精度位数,以及我们希望相位估计过程成功的概率是多少。对这些数量的依赖性从以下分析中自然得出。| 0 φ t|0tφt

第二个寄存器从状态开始,并包含存储所需的数量的。相位估计分两个阶段执行。首先,我们应用图5.2所示的电路。该电路首先将Hadamard变换应用于第一个寄存器,然后在第二个寄存器上应用受控的操作,然后将提升为连续的2的幂。第一个寄存器的最终状态很容易看出:| ü ú ú|u|uUU

12t/2(|0+exp(2πi2t1φ)|1)(|0+exp(2πi2t2φ)|1)...(|0+exp(2πi20φ)|1)=12t/2k=02t1exp(2πiφk)|k

在此处输入图片说明

相位估计的第二阶段是在第一个寄存器上应用逆量子傅立叶变换。这是通过反转上一节中的量子傅立叶变换电路(练习5.5)而获得的,并且可以用步骤完成。相位估计的第三阶段也是最后阶段是通过在计算基础上进行测量来读取第一寄存器的状态。我们将证明这为提供了一个很好的估计。该算法的整体原理图如图5.3所示。φΘ(t2)φ

为了使我们更直观地了解相位估​​计的工作原理,假设 可以精确地表示为int位,如。然后,可以重写从第一阶段的相位估计得出的状态(5.20)φ = 0 φ 1φ Ťφφ=0.φ1...φt

12t/2(|0+exp(2πi0.φt|1)(|0+exp(2πi0.φt1φt|1)...(|0+exp(2πi0.φ1...φt|1)

相位估计的第二阶段是应用逆量子傅立叶变换。但是,将前面的方程式与傅里叶变换的乘积形式方程式(5.4)进行比较,我们看到第二阶段的输出状态为乘积状态 。因此,在计算基础上进行测量就可以给我们!φ|φ1...φtφ

在此处输入图片说明

总之,给定对应的特征向量,相位估计算法允许人们估计one 算子的特征值的相位。此过程的核心要素是傅里叶逆变换执行变换的能力ü | φU|u

12t/2j=02t1exp(2πiφj)|j|u|φ~|u

让我们从这里开始。我在这里[ ]HHL09算法找到了一个不错的电路图

在此处输入图片说明

步骤1(阶段估算):

HHL09算法的第一步中,使用了相同的概念(如Nielsen和Chuang中所述的标准量子相位估计算法)。但是,我们必须记住,本身不是单一运算符。但是,如果我们假设是Hermitian,则指数是单一的(不用担心,如果不是Hermitian ,则存在变通方法!)。 A e i A t AAAeiAtA

在这里,我们可以写成。这里还有另一个微妙的问题。我们知道特征向量的事先(但我们知道,对于大小任何酉矩阵存在正交特征向量)。此外,我们需要提醒自己,如果的特征值是那么的特征值将是。如果将其与Nielsen和Chuang中针对给出的特征值形式进行比较,即 U=eiAt|ujUN×NNAλjeiAteiλjtUe2πiφeiλjt,我们会发现。在这种情况下,我们开始于状态(可以写为的特征向量的叠加,即)就的第二个寄存器而言,特定特征向量。如果我们以的状态开始,我们将以即(考虑到φ=λjt2π|bUj=1j=Nβj|uj|ujU|u(|0)t|u|φ~|uj|λjt2π~λj是特征值与特征向量相关的)。现在,如果我们从特征向量的叠加开始,我们应该以。|ujAj=1j=Nβj|ujj=1j=Nβj|uj|λjt2π~

题:

第1部分:在HHL09论文中,他们写了有关此阶段估计步骤为。但是,从我上面写的内容看来,系统状态应该为。j=1j=Nβj|uj|λ~jj=1j=Nβj|uj|λjt2π~

我在这里想念什么?他们的算法中的因子在哪里消失?t2π

编辑: 这里已经要求第2部分使各个问题更加集中。


我也对HHL09算法的第2步和第3步有一些困惑,但是我决定将它们发布为单独的问题线程,因为这个问题变得太长了。创建它们后,我将在这些帖子上添加指向这些问题线程的链接。

[ ]:IBM的Cloud Quantum计算平台上的同态加密实验 Huang等。(2016年)


1
@Nelimee来自公式。它表示代表每个或到位精度并具有精度的“第一寄存器”中的。顺便说一句,请注意,部分问题现在已经转移到这里6t=3+log2(2+12(0.1))=3+3=6|λj|λjt2π390%
Sanchayan Dutta

Answers:


5

这取决于论文,但我看到了两种方法:

  1. 在大多数有关HHL算法及其实现的文章中,我采用哈密顿进化时间来使该因子消失,即。tt=t0=2π

  2. 近似特征值通常写为。在某些论文中,这种表示法的真正含义是“真实特征值的近似值”,在其他论文中,它们似乎在此定义中包括,即“是近似值的近似值”。的值 ”。λ~λt2πλ~λt2π

以下是一些链接:

  1. 量子线性系统算法:入门(Dervovic,Herbster,Mountney,Severini,Usher和Wossnig,2018年):关于HHL算法的完整且非常好的文章,并发现了一些改进。该论文发布于2018年2月22日。您感兴趣的值首先在第30页上的图5的图注中给出,并固定为。t2π

  2. 求解线性方程组的量子电路设计(Cao,Daskin,Frankel和Kais,2013年)(采用v2而非v3):HHL算法针对固定4x4矩阵的详细实现。如果您打算使用该文章,请允许我警告您其中有一些错误。如果您有兴趣,我可以为您提供。的值(在本文中表示为)在第二页(在右列的开头)固定为。tt02π

  3. 用于解决线性方程组的实验量子计算(蔡,Weedbrook,Su,Chen,Gu,Zhu,Li,Liu,Lu&Pan,2013年):在实验装置上对2x2矩阵进行HHL算法的实现。他们在图1的图例中固定了。t=2π

  4. 求解线性方程组的量子算法的实验实现(潘,曹,姚,李,鞠,彭,凯斯和杜,2013):HHL在2x2矩阵上的实现。实现与上面第二点给出的实现类似,使用4x4矩阵。他们将固定在第3页中,项目符号点n°2。t0=2π


2

我在这里想念什么?他们的算法中的因子在哪里消失?t2π

请记住,用狄拉克(Dirac)表示法,您在ket中编写的任何内容都是一个随意的标签,表示更抽象的东西。因此,确实可以找到的(近似)特征向量,它的特征值为,因此要提取的是,但这就是与具有特征值的的特征向量相同,并且是在符号中引用的特征向量。但是,如果您想清楚一点,可以将其写为ë - λ λ /2 π λUeiλtλt/(2π)Aλ

| 特征值为的近似特征向量,如果为其特征值的近似特征向量,ë - λ λ UeiλtAλ

但是也许不是每次为简洁起见,我们可能只写!|λ~

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.