用于使用量子计算机求解3SAT的系统和方法与流程

文档序号:14415946阅读:1082来源:国知局
用于使用量子计算机求解3SAT的系统和方法与流程

相关申请的交叉引用

本专利申请要求于2016年9月12日提交的美国专利申请第15/263,240号的权益,美国专利申请第15/263,240号要求于2015年11月2日提交的美国临时专利申请第62/249,438号的权益,并且还要求于2015年9月11日提交的美国临时专利申请第62/217,432号的权益,这两个美国临时申请通过引用的方式并入本文。

发明背景

1.发明领域

本发明大体上涉及计算、并且具体地涉及量子计算。

2.相关技术的描述

量子计算机通过在有限量子力学系统上执行物理变换以促使系统占据具有期望性质的状态来求解计算问题。量子计算机不是对必须确定性地采取为1或0的值的经典比特进行运算,而是对可以存在于任意叠加的两种状态中的量子力学“量子比特”进行运算。已知的是,量子计算机可以求解一些计算问题-尤其是其他量子系统的模拟-远远快过其经典对应物。然而,尚不知道的是可能有针对显著加速的一类问题。

由以合取范式或“cnf”中的命题逻辑公式的这种方式

将一组布尔变量x1,x2,x3...赋值为真或假组成每子句3个变量布尔可满足问题或3sat。这里,同一子句内的变量(xn)或其否定式用or(∨)运算符链接,而不同的子句通过and(∧)运算符链接。赋值必须满足所有子句以对问题求解。

3sat在计算机科学中众所周知的是np完全的[8,4]。这意味着它具有如下性质:其解可以在多项式时间(类“np”)中被检查的任何问题可以在多项式时间中被规约为3sat问题。因此,用于3sat的多项式时间解也可以被用来求解多项式时间中的np中的任何问题。相信但并未被证明的是经典计算机上的算法不能对多项式时间中的np完全问题求解;这是否属实的问题是数学中最著名的问题之一[3]。

这里的规约由一个问题的实例到另一个问题的实例的映射组成,以这样的方式,第二实例的解可以被映射至第一实例的解。计算问题由一系列问题参数、加上对问题求解必须满足的性质的声明组成[4]。通过为所有问题参数指定特定值来获得问题的实例。

计算问题的求解算法确定特定的实例是否有解或者被证明不存在解,但不一定产生解。只要存在一些解,则建设性的求解算法会产生至少一个有效的解。概率求解算法确定解存在或者不存在,并且误差概率不大于0与1/2之间的某个值∈,其按惯例通常被选择为1/3。概率算法可以运行多次以增加给定实例具有或不具有解的确定性。

发明概述

本发明包括一种新型的量子计算机,其使不可逆的物理变化发生在量子力学系统、一组物理变换或以在逻辑上有意义的方式改变系统的状态的“门(gate)”中,以及将量子概率从未能对一些感兴趣的3sat问题求解的物理状态转换至对这些感兴趣的3sat问题求解的状态或一组状态的算法。如果存在至少一个求解状态,则该算法使总无解概率以指数方式衰减,使得占据求解状态的概率变为任意地接近于1。

该新型量子计算机、新型量子计算机所使用的量子门以及用于将概率集中在求解状态中的算法全都背离了量子计算的传统原理,该传统原理认为在具有恢复原始波函数的明确定义的逆运算的意义上由计算机执行的任何运算都必须是可逆的。为了清楚起见,本新型计算机将被称为“不可逆”量子计算机。不可逆量子计算机并非如在传统量子计算机中将一个波函数映射到另一个波函数,而是将一个密度矩阵映射到另一个密度矩阵。如通过名称所指示的,此映射可以具有没有明确定义的逆。

用于实现这个目标的一般方法是将种群(population)从任意初始状态非连贯地转换到满足一些感兴趣的3sat问题的状态或一组状态。这是通过构造抽取门-实质上是纠错循环–来实现的,其将种群从使单独逻辑子句失效的状态转换到满足那些子句的状态。在伪代码中,该算法可以被描述为:

for问题中的每个子句do

将子句的满足性编码在临时抓取比特中

if子句不满足then

使用抓取比特来执行子句中变量的受控旋转

endif

通过测量清理临时抓取比特。

endfor

这里,受控旋转针对使特定子句失效的状态使种群损失。使很多子句失效的状态比仅使一些失效的状态更快地使种群损失,并且满足所有子句的求解状态充当种群容器。

因为量子计算机通过物理变换有限量子力学系统来运行,所以这里描述的所有方法都具有第二种用途,作为量子力学状态准备的手段。这具有在物理科学中的价值,其中常常需要准备在特定初始状态下的波函数以观察所期望的物理效果。

附图简述

为了更完整地理解本发明,参考以下描述和附图,其中:

图1-插入运算将感兴趣的系统1耦合到在期望状态下所准备的并且不与系统中已有的比特纠缠的新的比特2;

图2-删除运算符测量所选比特的状态,将n×n密度矩阵3投影到(n-1)×(n-1)子矩阵上。这里虚线表示沿某个轴的测量;

图3-单个比特旋转运算符使单个比特4围绕轴旋转。这里,直箭头表示所讨论的在bloch球面的xz平面内的比特的状态,而弯曲箭头表示旋转的方向。真被选择以与状态|+z>相一致,而假被选择为|-z>。这个图中z轴和x轴的方向同样用于其他图中;

图4-两个比特旋转运算符使用比特5在所期望的轴上的投影来控制比特6围绕y轴的旋转。这里,状态5在轴上的正投影使比特6围绕轴逆时针旋转;

图5-两个比特旋转运算符使用比特5在所期望的轴上的投影来控制比特6围绕y轴的旋转。这里,状态5在轴上的负投影使比特6围绕轴顺时针旋转;

图6-测量运算符测量状态3在所期望的轴上的投影并将其投影到与测量值相对应的本征态上。这里虚线表示测量轴;

图7-用于自控旋转门scrot的量子电路图;

图8-自控旋转门scrot使用比特至所期望的轴上的投影来控制其自身围绕轴旋转。在i中,控制比特至轴上的正投影使抓取比特8逆时针旋转角度π/2。在ii中,抓取比特至轴上的正投影使控制比特逆时针旋转。在iii中,沿着与正交的轴测量抓取比特的状态,从而在控制比特上产生不可逆运算。因为沿着与“真值轴(axisoftruth)”轴正交的轴进行测量,所以这个信息不产生关于控制比特的状态的信息;

图9-自控旋转门scrot使用比特在所期望的轴上的投影来控制其自身围绕轴旋转。在i中,控制比特至轴上的负投影使抓取比特8顺时针旋转角度π/2。在ii中,抓取比特至轴上的负投影使控制比特顺时针旋转。在iii中,沿着与正交的轴测量抓取比特的状态,从而在控制比特上产生不可逆运算。因为沿着与“真值轴”轴正交的轴进行测量,所以这个信息不产生关于控制比特的状态的信息;

图10-用于qor门的量子电路图;

图11-qor门使用控制比特9和10的状态来控制抓取比特11的状态,使得如果9或10为真,则比特11的最终状态为真,否则为假。抓取比特12是临时抓取比特,用于确定偶数还是奇数数量的控制比特为真。在i中,9和10的状态控制比特11和12的旋转。在ii中,12在轴上的投影控制比特11的旋转。在iii中,比特11的状态被旋转π。在iv中,沿轴测量比特12的状态,从而不产生关于奇数还是偶数数量的控制比特为真的信息;

图12-qor门使用控制比特9和10的状态来控制抓取比特11的状态,使得如果9或10为真,则比特11的最终状态为真,否则为假。抓取比特12是临时抓取比特,用于确定偶数还是奇数数量的控制比特为真。在i中,9和10的状态控制比特11和12的旋转。在ii中,12在轴上的投影控制比特11的旋转。在iii中,比特11的状态被旋转π。在iv中,沿轴测量比特12的状态,从而不产生关于奇数还是偶数数量的控制比特为真的信息;

图13-qor门使用控制比特9和10的状态来控制抓取比特11的状态,使得如果9或10为真,则比特11的最终状态为真,否则为假。抓取比特12是临时抓取比特,用于确定偶数还是奇数数量的控制比特为真。在i中,9和10的状态控制比特11和12的旋转。在ii中,12在轴上的投影控制比特11的旋转。在iii中,比特11的状态被旋转π。在iv中,沿轴测量比特12的状态,从而不产生关于奇数还是偶数数量的控制比特为真的信息;

图14–用于qand门的量子电路图;

图15–qand门使用控制比特13和14的状态来控制抓取比特15的状态,使得如果13和14为真,则比特15的最终状态为真,否则为假。抓取比特16是临时抓取比特,用于确定偶数还是奇数数量的控制比特为真。在i中,13和14的状态控制比特15和16的旋转。在ii中,16在轴上的投影控制比特15的旋转。在iii中,比特15的状态被旋转π。在iv中,沿轴测量比特16的状态,从而不产生关于奇数还是偶数数量的控制比特为真的信息;

图16–qand门使用控制比特13和14的状态来控制抓取比特15的状态,使得如果13和14为真,则比特15的最终状态为真,否则为假。抓取比特16是临时抓取比特,用于确定偶数还是奇数数量的控制比特为真。在i中,13和14的状态控制比特15和16的旋转。在ii中,16在轴上的投影控制比特15的旋转。在iii中,比特15的状态被旋转π。在iv中,沿轴测量比特16的状态,从而不产生关于奇数还是偶数数量的控制比特为真的信息;

图17–qand门使用控制比特13和14的状态来控制抓取比特15的状态,使得如果13和14为真,则比特15的最终状态为真,否则为假。抓取比特16是临时抓取比特,用于确定偶数还是奇数数量的控制比特为真。在i中,13和14的状态控制比特15和16的旋转。在ii中,16至轴上的投影控制比特15的旋转。在iii中,比特15的状态被旋转π。在iv中,沿轴测量比特16的状态,从而不产生关于奇数还是偶数数量的控制比特为真的信息;

图18–用于qandor门的量子电路图;

图19–qandor门使用控制比特17和18的状态来控制抓取比特19的状态,使得如果17和18为真,则19的最终状态为真,如果17和18为假,则19的最终状态为假,否则为真和假的重叠。抓取比特20是临时抓取比特,用于确定偶数还是奇数数量的控制比特为真。在i中,17和18的状态控制比特19和20的旋转。在ii中,20至轴上的投影控制比特19的旋转。在iii中,比特19的状态旋转π。在iv中,沿轴测量比特20的状态,从而不产生关于奇数还是偶数数量的控制比特为真的信息;

图20–qandor门使用控制比特17和18的状态来控制抓取比特19的状态,使得如果17和18为真,则19的最终状态为真,如果17和18为假则19的最终状态为假,否则为真和假的重叠。抓取比特20是临时抓取比特,用于确定偶数还是奇数数量的控制比特为真。在i中,17和18的状态控制比特19和20的旋转。在ii中,20至轴上的投影控制比特19的旋转。在iii中,比特19的状态旋转π。在iv中,沿轴测量比特20的状态,从而不产生关于奇数还是偶数数量的控制比特为真的信息;

图21–qandor门使用控制比特17和18的状态来控制抓取比特19的状态,使得如果17和18为真,则19的最终状态为真,如果17和18为假,则19的最终状态为假,否则为真和假的重叠。抓取比特20是临时抓取比特,用于确定偶数还是奇数数量的控制比特为真。在i中,17和18的状态控制比特19和20的旋转。在ii中,20在轴上的投影控制比特19的旋转。在iii中,比特19的状态旋转π。在iv中,沿轴测量比特20的状态,从而不产生关于奇数还是偶数数量的控制比特为真的信息;

图22–用于qxor门的量子电路图;

图23–qxor门使用控制比特21和22的状态来控制抓取比特23的状态,使得如果21xor22为真则为真,否则为假。在i中,21至轴上的正投影导致逆时针旋转π。在ii中,22至轴上的正投影导致逆时针旋转π。在iii中,逆时针π产生至轴上的负投影;

图24–qxor门使用控制比特21和22的状态来控制抓取比特23的状态,如果21xor22为真则为真,否则为假。在i中,21至轴上的正投影导致23逆时针旋转π。在ii中,22至轴上的负投影不引起23的净旋转。在iii中,23逆时针旋转π以产生至轴上的正投影;

图25–qxor门使用控制比特21和22的状态来控制抓取比特23的状态,如果21xor22为真则为真,否则为假。在i中,21至轴上的负投影不引起23的净旋转。在ii中,22至轴上的负投影不引起23的净旋转。在iii中,23逆时针旋转π以产生至轴上的负投影;

图26–用于3or门的量子电路图;

图27–3or门组合两个qor门以产生的比特在输入比特24、25中的任何一个或25为真时则为真,否则为假。这里,使用24和25作为输入的qor门产生输出比特27。第二qor门使用27和26产生输出比特28。如果期望没有关于24和25的状态的信息,则可以通过正交于真值轴的测量来删除临时抓取比特27,或者可以通过正交于另一个轴的测量来删除临时抓取比特27以对24和25的状态执行部分测量;

图28–复合门采用比特29和30的状态作为输入并产生比特31作为输出。输入比特可以是可变比特或其他门的输出。在使用复合门后,输入比特的状态可以被删除或被保留供进一步使用;

图29–用于dec门的量子电路图;和

图30–dec门对不满足某些子句的状态的种群进行抽取。可变比特32、33和34通过图27中所示出的3or门来控制抓取比特35和36的状态。然后使用比特36的状态通过受控旋转(虚线)使可变比特的状态旋转。如果该子句被满足,则可变比特不旋转。如果子句不满足,则可变比特将旋转抽取角度θ。抓取比特35和36可以被删除或被保留供进一步使用。

优选实施例的详细描述

i.引言和环境

根据需要,本文公开了本发明的详细方面;然而,将理解的是,所公开的方面仅仅是本发明的示例,其可以以各种形式体现。因此,本文公开的具体结构和功能细节不应被解释为限制性的,而仅仅作为用于教导本领域技术人员如何以实际上任何适当的详细结构不同地实施本发明的基础和作为代表性基础。

为了方便起见,下面的描述中将仅使用某些术语作为参考而不是限制。所述术语将包括特别提及的词、其派生词和具有相似含义的词。

ii.不可逆量子计算

在1985年,deutsch[1,2]证明了一比特和两比特运算符的小集合或者“门”在n个量子比特上的任何幺正运算可以通过仅由这些门组成的量子电路近似于任意精度的意义上是通用的。

幺正算符u具有其逆与其厄米共轭相等的性质

其中是厄米共轭并且i是标识。幺正算符可以对波函数起作用以产生另一个波函数

ψ′=uψ(3)

或者对密度矩阵起作用以产生另一个密度矩阵

如通过名称“通用”所表明的,传统量子计算的核心原则在于任何计算都由应用于波函数的幺正运算组成,其可以在期望的初始状态下被准备。例如,参见[11]p171(“...存在通用的门的小集合,也就是说,任何量子计算无论如何都可以用这些门来表示。”)或[9]p36(“由于量子计算机必须可逆地运行以发挥它们的魔力(除了测量门),它们通常被设计为与输入和输出寄存器两者一起运行...除了输入和输出寄存器中的n+m外,计算过程通常将需要许多个量子比特,但现在我们应该忽略这些额外的量子比特,查看f的计算无非是将幺正变换uf应用于输入和输出寄存器的n+m个量子比特。”)。

下面描述的算法运行在一种新型量子计算机-“不可逆”量子计算机上。如通过其名称所表明的,不可逆计算机执行将初始密度矩阵映射到最终密度矩阵的运算,其原则上不能被反演以恢复系统的初始状态。这与由传统的“可逆”量子计算机执行的幺正运算u形成鲜明对比,该计算机其具有明确定义的逆可逆性和不可逆性之间的区别是基本的物理区别,其在热力学的背景下已经被认可了多于一个世纪[12]。

虽然物理学的基本方程是可逆的,但是通过允许感兴趣的系统与发挥环境作用的另一个系统相互作用而可以对感兴趣的系统执行不可逆运算[13]。当两个系统相互作用时,系统的状态与环境的状态纠缠在一起,使得两个系统的状态不能被独立描述。只描述系统的规约密度矩阵可以通过追踪所有环境自由度而从一起描述系统和环境的密度矩阵获得。

其中下标“e”表示环境的状态,“s”是系统的状态并且“se”是耦合到环境的系统的状态。一般来说,以这种方式追踪环境自由度将产生规约密度矩阵,该规约密度矩阵在通过不可逆变换与环境相互作用之前与系统的密度矩阵相关-不可能在唯一地给定最终规约密度矩阵的情况下恢复初始密度矩阵。

相比之下,传统的量子计算机以存在恢复初始状态的可逆变换这样的方式在感兴趣的系统上执行任意幺正运算u。通过下式给出在任意幺正运算之后的系统的状态:

如果感兴趣的系统与诸如周围环境的另一个系统相互作用,则以附加系统的状态与感兴趣的系统的状态保持纠缠这样的方式执行计算[11,9],使得密度矩阵可以在

之前,以及在计算

之后被拆分成系统密度矩阵与环境密度矩阵两者的乘积。

因为用于系统和环境的密度矩阵可以以这样的方式书写,追踪环境的状态产生

这里,通过幺正变换使最终的规约密度矩阵与初始密度矩阵相关,并且存在明确定义的逆运算以恢复初始系统

可以看出,可逆量子运算是不可逆量子运算的特例,其中系统加环境的最终状态可以被分成系统状态和环境状态。

为了实现不可逆转性,需要两个新的运算。图1中所示的插入运算i在由用户所选的初始状态下引入先前不与感兴趣的系统中的比特缠结的新量子比特。这将n×n密度矩阵投影到(n+1)×(n+1)密度矩阵上。在图2中示出的删除运算d测量系统中的量子比特的状态。这将所测量出的量子比特投影到测量算符的本征态上并且将n×n密度矩阵投影到(n-1)×(n-1)子矩阵上。如果需要,则可以立即将所删除的比特重新插入问题中,从而保持密度矩阵的大小恒定。

第二种删除方法由将整个系统划分为经删除的比特d和剩余的系统s,以及在不测量其状态的情况下在删除之后保持已删除的比特不受影响组成。然后,在系统s上执行任何测量将跟踪所删除的比特的状态。这种删除方法不产生关于系统状态的信息,但会使所删除的比特与系统的比特纠缠在一起,从而使它们不适合在算法的后期重新插入。

插入算符和删除算符这两者通过允许改变感兴趣的系统中的比特的数目的运算而在形式上扩展量子计算机的能力。然而,可逆量子计算与不可逆量子计算的区别并不是形式上的,而是物理上的。如通过方程9和方程5所指示的,不可逆计算需要未被包含在感兴趣系统中的信息以恢复初始密度矩阵,而仅使用被包含在系统中的信息来反演可逆计算。

因此,尽管使用了插入和删除运算,但量子纠错是可逆计算的示例,该量子纠错引入了超出描述系统和执行中间测量所需要的比特的冗余比特,其目的是保持系统的状态不与周围环境的状态纠缠。相反,如果用于系统加环境的密度矩阵不能被分解为描述系统的密度矩阵和描述环境的密度矩阵的乘积,则执行缠绕n个系统和m个环境比特的幺正运算表示不可逆计算。使用自然退相干处理来实现对系统密度矩阵的不可逆的改变是第二种情况的特例,其中由于自然处理而非由用户引发的运算而产生使系统和环境相纠缠的幺正运算。

iii.旋转和测量门

量子门是应用于感兴趣的系统的一些比特的子集以实现一些所期望的物理变化的一系列量子运算。不可逆的门具有额外的性质,其不可能恢复系统的原始状态;例如,多个初始状态可以映射到相同的最终状态。这是3sat的上下文中特别理想的性质,其中潜在的状态的数量在指数上可能比具有诸如求解感兴趣的问题的期望性质的状态的子集更大。

表示单独量子比特的常用方法是在bloch球面的表面上映射两个状态系统。使用pauli自旋算符能够将量子比特投影到某个选定的轴上,或者围绕该轴旋转

尽管通常量子比特可以被映射到bloch球面上的任何向量,但是这个算法的优选实施例利用了始终局限于xz平面的比特,使得单个比特仅围绕y轴旋转。由于该算法不需要通过另一个极角所编码的信息,因此可以自由地用于其他目的,诸如量子纠错。如果量子比特具有在轴上的正投影,则被选定为真,并且如果具有负投影,则被选定为假。

a.一个和两个比特旋转门

比特n通过单个比特算符在xz平面中旋转

其被图示在图3中。

比特n在轴i上的投影可以被用于通过两个比特算符来旋转比特m

其中符号的选择取决于xn或的值是否被用于控制旋转。轴i上的正投影引起逆时针旋转,其被示出在图4中,而负投影引起顺时针旋转,其被示出在图5中。

除非另有说明,否则本文件中所定义的算符和门将被定义使得变量的状态而不是其否定式来充当控制参数。如果将变量的否定式用作控制参数更方便,则这可以通过改变指数内的符号来实现。

为了简化符号,定义受控旋转算符很有用

其中,如果比特n在轴i上具有正投影,则比特m旋转角度θ,并且如果比特n在该轴上具有负投影,则比特m保持不变。

因为方程16的算符可能难以在物理上实现,故受控旋转可能更直接地使用平面外旋转来实现。将围绕x轴的旋转定义为

方程16还可以被写成:

有条件旋转的第二变型是当控制比特为假时执行旋转,并且当控制比特为真时保持目标比特不旋转。定义:

可以看出

b.测量门

通过使用投影算符

投影到自旋矩阵的本征态|γ>来测量比特n至轴i上的投影

σi(θ,φ)=cos(θ)σz+sin(θ)cos(φ)σx+sin(θ)sin(φ)σy(21),

其中γi是与本征态|γi>相关联的本征值。这个运算符被图示在图6中。

遵循量子力学的规则,测量比特n至轴i上的投影促使该比特占据测量算符的本征态-在这里,本征态沿着被测量的轴具有正(|γi>=|1/2>)或负(|γi>=|-1/2>)投影。如果被测量的比特的状态与其他比特的状态纠缠在一起,则这个测量可以给出关于所讨论的比特的状态的部分信息。相反,在一些情况下,可以选择测量轴,以便不提供关于其他比特的状态的信息。这里,“部分测量”意味着关于一个或更多个比特的状态的一些信息被收集,但是没有足够的信息来唯一地确定它们的量子状态。

iv.不可逆的门

下面定义的不可逆的门的一般设计是引入被初始化为真(|+z>)的临时抓取比特,然后执行量子运算,使得如果逻辑表达式评估为真,则该比特在某个轴上具有正投影,如果表达式评估为假,则会在相同轴上具有负投影。这个轴被命名为“真值轴”。然后,可以将抓取比特的状态用作新的门的输入,或者控制问题中的其他变量的旋转。当不再需要时,通过与真值轴正交的测量破坏被包含在抓取比特中的信息。

这里选择哪个轴作为“真值轴”是完全任意的。然而,对测量沿着与此正交的轴的抓取比特的选择在物理上是有意义的。测量比特到以相对于真值轴的角度θ定向的轴上的投影产生关于逻辑表达式是否被满足的部分信息,当θ=π/2时根本无信息变化以在θ=0时完成信息。因此,本部分中所定义的所有不可逆的门都具有一般性,其中抓取比特的状态是沿着以相对于真值轴的角度θ≠π/2定向的轴测量的。

从这个模型的另一个物理上有意义的偏离是如果表达式评估为真,则将抓取比特投影到状态|α>上,并且如果表达式评估为假,将抓取比特投影到状态|β>上,其中|α>和|β>不正交。在这种情况下,不可能定义真值轴。然而,抓取比特的状态仍然可以用作至新的门的输入或者以这样的方式对问题中的其他变量起作用以在密度矩阵上产生不可逆的运算。

a.qcopy门

量子复制门在初始状态|+z>中引入新的比特s,并且旋转它,使得其复制现有比特c的状态

b.qnot门

量子not门在初始状态|+z>中引入新的比特s,并且将其旋转为与现有的比特c直接相对

c.自控旋转

临时抓取比特的使用允许用于比特的状态控制自身旋转或者用于有条件旋转。比特n的旋转根据其自身在轴i上的投影可以通过引入抓取比特s、初始化为真并且应用两个两比特旋转和测量以产生自控旋转来实现

这里,比特n的状态被用于使抓取比特旋转,该抓取比特继而被用于使状态n的比特旋转。如果比特n原始为真,则在第一步之后,抓取比特的状态是|+x>,使得第二步将比特n旋转角度θ。如果比特n原始为假,则第一步将抓取比特旋转到|-x>,并且第二步将比特n旋转-θ。由于比特n的状态现在被编码在抓取比特至x轴上的投影-“真值轴”-沿着与其正交的轴,例如z轴测量,使得旋转不可逆,而不测量任何关于比特n的状态的任何信息。这个门在图7、图8和图9中以图形示出,示出了量子电路图加上自控比特在控制轴上分别具有正投影和负投影时的情况下单独比特的演变。

写成密度矩阵运算,前两步映射为:

其中状态的顺序为|s,n>=|+z,+z>,|+z,-z>,|-z,+z>,|-z,-z>。沿轴测量抓取比特选择左上角或右下角2×2子矩阵。无论测量结果如何,如果它在轴上具有正投影,则比特n旋转角度θ,并且如果它具有负投影,则比特n旋转角度-θ。由下式实现通过其投影到除了以外的轴上来控制比特的旋转

d.不可逆的量子or门

通过将逻辑运算的输出编码至抓取比特的状态中可以使更复杂的状态操作成为可能。定义

这里,第二抓取比特被初始化为真,如果控制比特中的任一个或两个为真,则第二抓取比特保持为真,否则将其旋转为真。如前所述,变量的否定式可以通过的符号变化的适当集合来控制抓取比特的状态。在其测量之前,抓取比特s1在轴上的投影编码奇数或者偶数数量的输入变量c1和c2是否为真。如果仅一个为真,则s2被旋转额外的π/2,使得tt、tf和ft产生s2到轴上的相同投影。如前所述,变量的否定式可以被用于通过符号改变的适当集合来控制抓取比特的状态。这个门在图10、图11、图12、图13中以图形方式示出,示出了量子电路图以及在当两个输入比特分别为真、一个是真的并且另一个是假的以及两个都是假的情况下单独的比特的演变。表0.1给出了在qor门之前和应用门之后但在测量任何抓取比特之前的变量和抓取比特的状态。

通过省略抓取比特的最终旋转来构建量子nor门

表0.1qor门在s2的状态下编码(c1∨c2)的输出。在通过qor算符与c1和c2的状态纠缠之前,抓取比特s1和s2被初始化为真(|+z>)。这里|t>=|+z>并且|f>=|-z>。

e.不可逆的量子and门

使用类似于qor门的方法,通过将scr门的角度从π/2改变到-π/2可以获得不可逆的and门。

这个门以图形方式示出在图14、图15、图16和图17中,示出了量子电路图以及分别在两个输入比特为真、一个为真并且一个为假以及两个都为假的情况下的单独比特的演变。

通过省略抓取比特的最终旋转构建量子nand门

f.组合and和or字符的不可逆门andor门

通过在-π/2与π/2之间连续改变scr门的角度可以获得组合and和or的字符的门。

这个门以图形方式示出在图18、图19、图20和图21中,示出了量子电路图以及分别当两个输入比特为真时、一个为真并且一个为假以及两者都为假时的情况下的单独比特的演变。这里,抓取比特被初始化为真,如果两个输入均为真,则抓取比特保持为真,并且如果两个输入均为假,则抓取比特翻转为假。如果一个输入为真并且另一个输入为假,则该抓取比特将占据真和假的叠加

|s>=cos(π/4-θ/2)|+z>+sin(π/4-θ/2)|-z>(34)。

以相同的方式将nand和nor字符组合为qandor的门可通过省略抓取比特的最终旋转被构建

g.不可逆的量子xor门

使用类似于qor和qand门的方法,可以通过下式获得不可逆的xor门

这个门以图形方式示出在图22、图23、图24、图25中,示出了量子电路图以及分别在两个输入比特为真、一个为真并且一个为假以及两个都为假时的单独比特的演变。

通过省略抓取比特的最终旋转获得量子xnor门

表0.23or门在s4状态下对(c1∨c2∨c3)的输出进行编码,其中s1和s2是对应于方程38中第一qor门的抓取比特,并且s3和s4是对应于第二qor门的抓取比特。在与输入比特的状态纠缠之前,每个抓取比特被初始化为真(|+z>)。这里所有四个抓取比特的状态在测量之前给出,其中|t>=|+z>和|f>=|-z>。

h.不可逆的量子3or门

使用两个qor门和中间抓取比特允许第二抓取比特编码特定量子状态是否满足三个变量逻辑子句

初始化两个抓取比特为真,如果该子句被满足,则s2保持为真,否则将其旋转为假。该门以图形的方式示出在图26和图27中。更一般地,链接qor、qand和qandor门的输出产生复合门,其在图28中以图形的方式示出。编码变量m1或m2是否为真的比特s1可以通过利用如在方程38中的投影到轴被删除,或被保留用于在随后的逻辑运算中使用。表0.2给出了在施加任何旋转之前和在施加旋转之后但在测量任何抓取比特之前的变量和抓取比特两者的状态。

i.不可逆的量子抽取门

3sat问题仅能通过满足问题中每个子句的状态来求解。因为3or门编码了抓取比特s2的状态中的特定子句的满足性,因此它可以用于通过对包含在子句m中的所有变量的有条件旋转门而不满足子句的任何状态来实现种群的逐步抽取。

如果子句被满足,则变量xm1、xm2和xm3的状态是不受影响的。如果不是,则每个变量围绕y轴旋转角度θ。通过使每个变量的状态旋转到其相反的值,这个抽取算符减少了原始状态的种群,并且增加了除了子句m中的变量外的与原始状态相同的状态的数量。测量沿着轴的抓取比特在不给出有关该子句的满足性的任何信息的情况下使这种种群转移不可逆。这个门以图形形式示出在图29和图30中。

当在测量之后追踪抓取比特的状态时,其中特定抓取比特的状态在左矢侧上和右矢侧上不相同的所有项将汇总为零。写作

可以看出的是

并且

特别地,测量抓取比特s4消除了交叉项

等等,其中由于满足子句的初始状态而使右矢侧出现并且由于dec算符而左矢侧来自初始状态|fff>旋转,或者反之亦然。因为状态|fff>是产生s4=f的唯一状态,由于抽取门的有条件旋转而出现的所有交叉项对规约密度矩阵的贡献为零。

通过使用抽取过程将单个变量的状态翻转来说明抽取过程的简单示例。这里状态|α>对于特定子句评估为真,而状态|α'>评估为假。除了变量m的状态,|α>和|α'>是相同的。因为该子句的满足性被编码在抓取变量的状态中,所以在3or算符之后但是在有条件旋转之前的密度矩阵可以写成:

其中状态排序为|t,α>,|t,α'>,|f,α>,|f,α'>。

当根据crs→m将抓取比特的状态用于旋转可变比特xm的状态时,密度矩阵变为

种群从α'到α的转移由算符完成,测量沿着与正交的轴(“真值轴”)的抓取比特的状态以产生

其中种群的转移取决于α'的初始种群和旋转角度,但不取决于非对角线的相干项ραα′或ρα′α。因为这个旋转角度控制初始状态种群被抽取的程度,所以它也可以被称为“抽取角度”。

最后,追踪抓取比特的状态产生新的规约密度矩阵

其中种群的转移取决于旋转角度和α'的初始种群,但不取决于非对角线的相干项ραα′或ρα′α。

j.不可逆的全局抽取门

这个抽取过程现在可以被应用于问题中的每个子句,以创建全局抽取门

其中给出子句被抽取的顺序并且θm给出针对子句m的抽取角度。通过构造,通过satdec不改变满足每个子句的状态,而每个无解状态被至少一个子句抽取。

v.用于求解3sat的算法

如上所述,satdec门的应用对应于应用与感兴趣的3sat问题中的每一个逻辑子句相对应的抽取dec门。

通过下式给出由于单次应用satdec而导致的状态s的概率变化

其中转移矩阵t参数性地取决于子句的顺序和相关联的旋转角度:由于种群的转移伴随sin2(θ)前进至领头阶(leadingorder),它在抽取角度中是二次的。由最慢的本征向量衰减给出收敛到均衡的速度。请注意,因为ts'→s是非对称的,所以它的本征向量不是正交的。

总概率的守恒意味着具有非零本征值的任何本征态必须具有为零的迹,而对于所有的s,ps≤1的限制意味着所有非零本征值必须是负的。因为求解状态s*从不会被抽取,所以对于所有的s来说,

如果存在至少一个求解状态s*,则ts→s'的每一个本征向量必须包含至少一个求解状态。被包含在不能对问题求解的本征向量中的每个状态s必须使至少一个子句失效,并且由抽取算法将其投影到状态s'上,对于子句之外的变量被定义为等于s,并且对于子句内的变量被定义为s*。如果s'不是解,那么它反过来必须使某个子句失效并且投射到s”上,对于新子句之外的变量,s”等于s',并且对于其内的变量,s”等于s*。对于有限数量的子句,此过程必须以s*或其他求解状态结束。特别地,没有具有仅由无解状态组成的零本征值的本征向量。

a.收敛于均衡

用于抽取算法的收敛速度受到存在具有小本征值的本征向量的限制。令θ0是与感兴趣问题中的子句相对应的最小抽取角度。将快速衰减的本征向量定义为具有可相当于或大于的λ,并且将缓慢衰减的特征向量定义为使尽管这样的本征值不存在最小量值,但是λ较小的要求唯一地确定缓慢衰减的特征向量。将方程51写作本征值方程

相对于ts→s'是可以忽略的,除非对于所有s'来说ts→s'=0-也就是说,除非s是求解状态。

用于缓慢衰减的本征向量的无解状态的种群可以通过针对所有的无解状态s和s'设定下式来构建

并且要求∑sps=1。用于这个本征向量的求解状态的种群可以通过针对对于所有的求解状态s*设置下式来构建

要求对于所有的s*来说δps*=-λps*并且∑s*ps*=-1。应注意,如果不存在解,则方程53定义了用于无解状态的均衡概率分布。

因为用于缓慢衰减的本征态的概率分布是通过选择抽取角确定的,所以缓慢衰减的概率的瓶颈可以通过在satdec的每次迭代上改变而中断。由于这种概率分布可能非常缓慢地衰减,因此它将被称为“准均衡分布”。

准均衡本征向量可以分两步构建。首先,方程53针对无解种群被求解并且被归一化,使得∑sps=1,通过设置下式针对所有的求解状态s*构建用于求解状态的种群

并且要求对于所有的s*来说δps*=-νps*并且∑s*ps*=-1,使得完整的本征分布是无痕迹的。

因为的条件唯一确定用于缓慢衰减的本征分布的概率分布,所以反过来也成立:任何无解本征分布不是由方程53和方程55确定的,而必须具有可相当于或大于的衰减速率。

b.无解概率的衰减

对给定的抽取角度的选择重复应用satdec导致概率分布在两个时间维度上演变。在给定时间的概率分布可以被写为本征分布上的总和

其中是由方程53和方程55定义的准均衡本征分布并且是其余的本征分布,其中衰变速率可相当于或大于重复应用相同的转移矩阵导致快速的“喷出(blowoff)”,其中包含在快速衰减的本征分布中的无解概率快速转移至求解状态的集合,随后是其中无解概率接近准均衡分布的长时间的停顿,从而导致缓慢转移至求解状态。

该准均衡分布的缓慢衰减可以通过改变与不同子句相对应的抽取角度而被加速。因为缓慢衰减的本征分布借助于方程53由确定,从而变化的将原始准均衡分布非绝热地投影到新的本征基中,其中准均衡分布可以基本上是不相同的。如果是用于转移矩阵t(1)的缓慢衰减的本征分布,并且是用于转移矩阵t(2)的缓慢衰减的本征分布以及是用于转移矩阵t(2)的快速衰减的本征分布,其中

从转移矩阵t(1)至t(2)的改变随着系数an衰减至零而导致第二次喷出。

通过将缓慢衰减的本征分布的衰减速率逼近为零可以构建系数av,使得

t(1)v(1)=v(1)(58)

t(2)v(2)=v(2)(59)。

令δt=t(2)-t(1)并且δv=v(2)-v(1),使得方程57可以被写成:

在t(2)的本征基中扩展种群差异

其后

使得在最不相似时喷出是最大的。

c.往复迭代

将种群从缓慢衰减的本征分布转移出来的简单过程用于随机地改变与用于satdec的一次迭代的特定子句相对应的抽取角度,然后还原到原始抽取角度以恢复用于下一次迭代的原始转移矩阵。令为对应于以下设定的转移矩阵

对于每一个子句c,并且其中

并且σc被选择为是1或-1并且具有相等的概率。

由于单独的子句c,将转移矩阵t=∏ct(c)写作转移矩阵的乘积,注意到t(c)是θc的二次方,

由于转移矩阵中的这种变化导致的缓慢衰减的本征分布的状态s的变化可以写成

其中,δv(c)是t(c)中的第一阶校正偏移改变,而δv(r)是实施新的准均衡分布服从方程53的残差校正。

对于领头阶,由于抽取角度中的小改变而导致状态s的种群变化通过设定下式而被构建

使得在忽略了相乘的小的项之后,

从方程66减去这些项产生用于其他校正的线性系统

其中右手侧具有期望值0。

往复迭代的第二步骤将所有抽取角度改变回它们的原始值,使得

δt(c)→-δt(c)(70)

并且

并且将衰减缓慢的本征分布投影到t(1)的本征基中。

随着种群从缓慢衰减转变为迅速衰减的本征分布,转移矩阵的两个变化都会导致总的无解概率的损失。在第二次转移之后的缓慢衰减本征分布的系数由下式给出

并且

使得

然后,

因为σc和σc'是平均值为0的独立随机变量,故

并且

其中是通过状态s而失效的子句的数目,使得针对每一个无解状态由此它遵循期望值

使得由于往复迭代循环而导致的从缓慢衰减的本征分布的种群的损失由用户控制的参数η控制。选定确保所有无解概率在相对于较大的时间维度上衰减。

vi.往复迭代的工作示例

通过求解其中|ttt>是唯一解的三个变量的3sat问题获得往复迭代的简单示例。这对应于执行用于表0.3的子句0-6的dec运算。不同于每个|ttt>的每个状态使单个子句失效,并且对于θc中的领头阶,这通过将种群转移到其中单个变量已被翻转的三个状态来抽取。针对所有的子句选择θc=θ0=0.1并且包括

表0.3八个三变量状态中的每一个使单个子句失效。对于领头阶,用于这个子句的dec算符使令子句失效的状态的种群减小并且通过单个变量填充不同于这个状态的三个状态。

θ中的领头阶的项产生转移矩阵

其中从表0.3取得状态排序。这个转移矩阵的本征值和本征分布由表0.4给出。

表0.4t(1)的本征值和本征分布。

设定η=0.2并且将转移矩阵改变为

并且通过表0.5给出本征值和本征分布。

表0.5t(2)的本征值和本征分布。

注意,在表0.4和表0.5两者中,针对和v(2)的衰减速率相对于较小,同时本征分布的衰减速率可相当于这个值或大于这个值。

将转移矩阵从t(1)改变至t(2)将v(1)投影到新的本征基中,

一旦快速衰减的本征分布的系数已衰减至零,返回到原始转移矩阵将v(2)投影到原始本征基

使得的系数在往复迭代之后是1.005*.956=0.96≈1-η2

a.算法运行时间

恢复快速衰减本征向量具有以或更大的量级的本征值并且选择satdec迭代的数目要求实现总的求解概率α逼近

因为每次迭代要求每个子句的恒定数量的运算,所以用于算法的运行时间作为整体随着问题中的子句的数量线性缩放。

测量每个比特的对应于沿着轴的变量的投影,并且恢复对应于真的|+z>以及对应于假的|-z>,生成对感兴趣的3sat问题的潜在解,这能够简单明了地使用经典计算机检查正确性。如果问题是不可解的,则潜在解将一直无效。如果问题是可解的,则这个过程将生成具有概率为α的有效解和概率为1-α的无效解。遵循常规的概率算法,因此需要选择n迭代,使得1-α≤1/3。

vii.与现有算法的比较

a.与算法相比较

在上文描述的算法在精神上类似于的概率经典算法[14]。在算法中,每个变量的值随机地初始选择。然后测试每个子句的满足性,并且通过随机翻转子句中的变量中的一个变量的状态来解决任何子句的失效。如果在测试3nv子句之后发现不满足指定,则使用新的随机初始状态重新启动该过程。

两个算法之间的区别来自于正在运行的系统的量子性质。在当前的算法中,系统由许多不同状态的不相干叠加组成,同时经典算法被约束为一次占用单个状态。的算法可以在每一次抽取运算之后通过测量每个变量比特沿真值轴的状态来仿真,从而促使系统占用单个状态。因为当前算法并不将所有的概率转移出初始状态,紧随测量之后的抽取的步骤可以重复直至变量比特中的一个改变。

这里,测量行为根本上改变了算法的行为。将每个失效子句作为分支点处理,当前算法将一小部分概率转移到占据沿着每个分支的初始状态,而算法则将沿着随机选择的单个分支转移整个概率。在计算机科学的语言中,当前算法执行用于求解状态的平行宽度的第一次搜索,而算法执行随机深度第一次搜索–随机游动(randomwalk)。

在当前算法中由于单个dec门导致的种群的流动可以通过对所有随机游动和所有可能的初始状态进行求和来经典地仿真、通过占用状态的初始概率和采用特定游动的概率进行加权。然而,这种经典仿真算法非常低效。虽然量子算法需要恒定数量的运算以实现dec门,但该经典算法需要对所有的初始状态求和。因此,多项式时间量子算法的存在并不意味着存在多项式时间经典模拟算法。

b.与固定点量子搜索相比较

上文所描述的算法具有种群可以转移到求解状态的性质,但永远不会离开。因为求解状态满足所有子句,所以它是迭代的固定点。从概念上讲,这与tulsi等人的固定点量子搜索算法[5,15,10,7,6]类似,其中单个oracle比特被用于旋转在满足问题的由|s>和求解状态|s*>组成的2d子空间中的源状态|s>。如[15]中所描述的,固定点搜索具有所期望的性质,所期望的性质是即使算法没有运行完成但仍保证初始状态向目标状态演化,并且只要该状态仍然存在于限定空间的问题中,由于先前迭代中不完全变换导致的任何错误都将通过随后的迭代被清除。然而,现有的固定点搜索迄今未提供相对于非固定点算法的速度优势。[15]产生可相当于经典搜索的运行时间,而用于[10]的运行时间从grover搜索算法的运行时间特性(其中n是状态的总数)连续变化到具有阻尼参数变化的经典搜索的

本算法通过利用专用于不适用于无序数据库搜索的通用案例的3sat的信息而区别于现有的固定点算法-有效解必须满足问题中的每个子句的条件。它并非使用单个oracle比特来对整个问题的满足性进行编码,而是使用对单独子句的满足性进行编码的多个比特。并非直接将种群从源状态转移到目标状态,抽取算符用于使特定子句失效的状态种群减少,从而将种群转移至仅相差被包含在子句中的变量的其他状态。以这种方式,种群的流动模仿对满足感兴趣问题的状态的广度优先搜索。种群到该求解状态的最终转移仅间接发生,并且可以包括通过许多不同路径转移到许多中间状态。由于使单独子句失效而导致的种群减少的速率是没有先验最大值的用户控制的参数。

由于通过相对于无序数据库的纯搜索的3sat提供额外的问题特定信息而产生这些区别中的每一个,并且它们共同地考虑收敛时间上的差异。如在方程52中所示出和所附讨论,由于单独子句的失效而导致的最小部分的种群损失限定了无解种群分布的衰减的重要时间量度。本征分布衰减比此缓慢的条件唯一地限定了缓慢衰减的准均衡本征分布。在“往复迭代”中,改变由于单独子句失效而导致的一小部分种群损失的变化将缓慢衰减的准均衡分布投影到快速衰减本征分布,从而增加种群以其转移到求解状态集合的速度。

将理解的是,虽然已经示出和描述了本发明的某些实施例和/或方面,但是本发明不限于此并且涵盖各种其他实施例和方面。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1