使用窗口化量子算术的量子电路优化制造技术

技术编号:30748719 阅读:13 留言:0更新日期:2021-11-10 11:59
用于执行窗口化量子算术的方法、系统以及装置。在一个方面中,一种用于执行乘积加法运算的方法包括:确定查找表的多个条目,包括:针对第一索引集合中的每个索引,将索引值乘以乘积加法运算的标量;针对第二索引集合中的每个索引,确定多个地址值,包括:提取和在i)第二索引集合中的索引与ii)第二索引集合中的索引加上预定窗口大小之间的索引对应的源寄存器值;以及基于查找表的所确定的多个条目和所确定的多个地址值来调整目标量子寄存器的值。的多个地址值来调整目标量子寄存器的值。的多个地址值来调整目标量子寄存器的值。

【技术实现步骤摘要】
【国外来华专利技术】使用窗口化量子算术的量子电路优化

技术介绍

[0001]本说明书涉及量子计算。
[0002]经典计算机具有由位组成的存储器,其中每个位可以表示零或一中的任一者。量子计算机维持被称作量子位的量子位序列,其中每个量子位可以表示零、一或零和一的任何量子叠加。量子计算机例如根据量子逻辑门的序列通过在初始状态下设置量子位并且控制量子位来操作。

技术实现思路

[0003]本说明书描述了用于使用窗口化量子算术来使量子计算加速的技术。
[0004]一般而言,本说明书中所描述的主题的一个创新方面可以在用于对量子位的目标量子寄存器和量子位的源量子寄存器执行乘积加法运算的方法中实施,该方法包括:确定查找表的多个条目,包括:针对第一索引集合中的每个索引,其中第一索引集合包括在零与作为预定窗口大小的函数的最大索引值之间的索引值,将索引值乘以乘积加法运算的标量;针对第二索引集合中的每个索引,其中第二索引集合包括在零与作为源量子寄存器的函数的最大索引值之间的索引值,其中索引值按预定窗口大小步进:确定多个地址值,包括:提取和在i)第二索引集合中的索引与ii)第二索引集合中的索引加上预定窗口大小之间的索引相对应的源寄存器值;以及基于查找表的所确定的多个条目和所确定的多个地址值来调整目标量子寄存器的值。
[0005]这些方面的其它实施方式包括对应计算机系统、装置以及记录在一个或多个计算机存储设备上的计算机程序,该对应计算机系统、装置以及计算机程序分别配置为执行方法的动作。一个或多个经典和/或量子计算机的系统可以配置为借助于使软件、固件、硬件或其组合安装在系统上来执行特定操作或动作,这些软件、固件、硬件或其组合在操作中致使执行动作或致使系统执行动作。一个或多个计算机程序可以配置为借助于包括指令来执行特定操作或动作,该指令在被数据处理装置执行时致使装置执行动作。
[0006]前述和其它实施方式可以分别可选地单独或组合地包括以下特征中的一个或多个。在一些实施方式中,作为预定窗口大小的函数的最大索引值等于2的预定窗口大小次幂。
[0007]在一些实施方式中,作为源量子寄存器的函数的最大索引值等于源寄存器的长度。
[0008]在一些实施方式中,预定窗口大小包括ln n,其中n表示目标量子寄存器中的逻辑量子位的数量。
[0009]在一些实施方式中,基于查找表的所确定的多个条目和所确定的多个地址值来调整目标量子寄存器的值包括:将所确定的多个条目添加到目标量子寄存器中。
[0010]在一些实施方式中,乘积加法运算执行x+=ky,其中x表示将第一值存储在目标量子寄存器中的变量,y表示将第二值存储在源量子寄存器中的对应变量,k表示乘积加法运算的经典恒定标量值。
[0011]在一些实施方式中,目标量子寄存器包括固定宽度2s补码寄存器。
[0012]在一些实施方式中,第一值包括经典整数或经典整数的叠加。
[0013]在一些实施方式中,第二值包括经典整数或经典整数的叠加。
[0014]一般而言,本说明书中所描述的主题的另一创新方面可以在用于使用量子位的目标量子寄存器和量子位的源量子寄存器执行模乘积加法运算的方法中实施,该方法包括:针对第一索引集合中的每个索引,其中第一索引集合包括在零与作为源量子寄存器的函数的最大索引值之间的索引值,其中索引值按预定窗口大小步进:确定多个地址值,包括:提取和在i)第一索引集合中的索引与ii)第一索引集合中的索引加上预定窗口大小之间的索引相对应的源寄存器值;确定多个对应表条目,包括:针对第二索引集合中的每个索引,其中第二索引集合包括在零与作为预定窗口大小的函数的最大表索引之间的索引值:确定包括i)乘积加法运算中的标量、ii)2的第一索引集合中的索引次幂以及iii)第二索引集合中的索引的乘积的表条目,且将模运算应用于所确定的表条目;以及基于所确定的多个表条目和所确定的多个地址值来调整目标量子寄存器的值。
[0015]这些方面的其它实施方式包括对应计算机系统、装置以及记录在一个或多个计算机存储设备上的计算机程序,该对应计算机系统、装置以及计算机程序分别配置为执行方法的动作。一个或多个经典和/或量子计算机的系统可以配置为借助于使软件、固件、硬件或其组合安装在系统上来执行特定操作或动作,这些软件、固件、硬件或其组合在操作中致使执行动作或致使系统执行动作。一个或多个计算机程序可以配置为借助于包括指令来执行特定操作或动作,该指令在被数据处理装置执行时致使装置执行动作。
[0016]前述和其它实施方式可以分别可选地单独或组合地包括以下特征中的一个或多个。在一些实施方式中,作为源量子寄存器的函数的最大索引值等于源量子寄存器的长度。
[0017]在一些实施方式中,作为预定窗口大小的函数的最大表索引等于2的预定窗口大小次幂。
[0018]在一些实施方式中,模乘积加法运算执行x+=ky(mod N),其中x表示将第一值存储在目标量子寄存器中的变量,y表示将第二值存储在源量子寄存器中的对应变量,k表示模乘积加法运算的经典恒定标量值,且N表示模乘积加法运算的经典恒模。
[0019]在一些实施方式中,x、y以及k的值为正且小于N。
[0020]在一些实施方式中,第一值包括经典整数或经典整数的叠加。
[0021]在一些实施方式中,第二值包括经典整数或经典整数的叠加。
[0022]在一些实施方式中,预定窗口大小包括ln n,其中n表示目标量子寄存器中的逻辑量子位的数量。
[0023]在一些实施方式中,基于所确定的多个表条目和所确定的多个地址值来调整目标量子寄存器的值包括:将所确定的多个表条目添加到目标量子寄存器中。
[0024]在一些实施方式中,该方法进一步包括:执行一系列模乘积加法运算以执行模乘运算。
[0025]一般而言,本说明书中所描述的主题的另一创新方面可以在用于将量子位的目标量子寄存器的值乘以奇整数的方法中实施,该方法包括:确定多个查找表条目,包括:针对第一索引集合中的每个索引,其中第一索引集合包括在零与作为预定窗口大小的函数的最大表索引之间的索引值:确定第一索引集合中的索引和奇整数的乘积;针对第二索引集合
中的每个索引,其中第二索引集合包括从作为目标量子寄存器的函数的最大索引值到零的索引值,其中索引值按预定窗口大小步进:提取在第二索引集合中的索引到第二索引集合中的索引加上预定窗口大小之间的目标量子寄存器的多个值;以及基于所确定的多个查找表条目和目标量子寄存器的所提取的多个值来调整目标量子寄存器的多个值,其中目标量子寄存器的多个值包括在第二索引集合中的索引加上预定窗口大小与目标量子寄存器的末端之间的值。
[0026]这些方面的其它实施方式包括对应计算机系统、装置以及记录在一个或多个计算机存储设备上的计算机程序,该对应计算机系统、装置以及计算机程序分别配置为执行方法的动作。一个或多个经典和/或量子计算机的系统可以配置为借助于使软件、固件、硬件或其组合安装在系统上来执行特定操作或动作,这些软件、固件、硬件或其组合在操作本文档来自技高网
...

【技术保护点】

【技术特征摘要】
【国外来华专利技术】1.一种用于对量子位的目标量子寄存器和量子位的源量子寄存器执行乘积加法运算的方法,所述方法包括:确定查找表的多个条目,包括:针对第一索引集合中的每个索引,其中所述第一索引集合包括在零与作为预定窗口大小的函数的最大索引值之间的索引值,将所述索引值乘以所述乘积加法运算的标量;针对第二索引集合中的每个索引,其中所述第二索引集合包括在零与作为所述源量子寄存器的函数的最大索引值之间的索引值,其中所述索引值按所述预定窗口大小步进:确定多个地址值,包括:提取和在i)所述第二索引集合中的所述索引与ii)所述第二索引集合中的所述索引加上所述预定窗口大小之间的索引相对应的源寄存器值;以及基于所述查找表的所确定的多个条目和所确定的多个地址值来调整所述目标量子寄存器的值。2.根据权利要求1所述的方法,其中作为所述预定窗口大小的函数的所述最大索引值等于2的所述预定窗口大小次幂。3.根据权利要求1所述的方法,其中作为所述源量子寄存器的函数的所述最大索引值等于源寄存器的长度。4.根据权利要求1所述的方法,其中所述预定窗口大小包括ln n,其中n表示所述目标量子寄存器中的逻辑量子位的数量。5.根据权利要求1所述的方法,其中基于所述查找表的所确定的多个条目和所确定的多个地址值来调整所述目标量子寄存器的值包括:将所确定的多个条目添加到所述目标量子寄存器中。6.根据权利要求1所述的方法,其中所述乘积加法运算执行x+=ky,其中x表示将第一值存储在所述目标量子寄存器中的变量,y表示将第二值存储在所述源量子寄存器中的对应变量,k表示所述乘积加法运算的经典恒定标量值。7.根据权利要求6所述的方法,其中所述目标量子寄存器包括固定宽度2s补码寄存器。8.根据权利要求6所述的方法,其中所述第一值包括经典整数或经典整数的叠加。9.根据权利要求6所述的方法,其中所述第二值包括经典整数或经典整数的叠加。10.一种用于使用量子位的目标量子寄存器和量子位的源量子寄存器执行模乘积加法运算的方法,所述方法包括:针对第一索引集合中的每个索引,其中所述第一索引集合包括在零与作为所述源量子寄存器的函数的最大索引值之间的索引值,其中所述索引值按预定窗口大小步进:确定多个地址值,包括:提取和在i)所述第一索引集合中的所述索引与ii)所述第一索引集合中的所述索引加上所述预定窗口大小之间的索引相对应的源寄存器值;确定多个对应表条目,包括:针对第二索引集合中的每个索引,其中所述第二索引集合包括在零与作为所述预定窗口大小的函数的最大表索引之间的索引值:确定包括i)所述乘积加法运算中的标量、ii)2的所述第一索引集合中的所述索引次幂以及iii)所述第二索引集合中的所述索引的乘积的表条目,以及将模运算应用于所确定的表条目;以及基于所确定的多个表条目和所确定的多个地址值来调整所述目标量子寄存器的值。11.根据权利要求10所述的方法,其中作为所述源量子寄存器的函数的所述最大索引
值等于所述源量子寄存器的长度。12.根据权利要求10所述的方法,其中作为所述预定窗口大小的函数的所述最大表索引等于2的所述预定窗口大小次幂。13.根据权利要求10所述的方法,其中所述模乘积加法运算执行x+=ky(mod N),其中x表示将第一值存储在所述目标量子寄存器中的变量,y表示将第二值存储在所述源量子寄存器中的对应变量,k表示所述模乘积加法运算的经典恒定标量值,且N表示所述模乘积加法运算的经典恒模。14.根据权利要求13所述的方法,其中x、y以及k的值为正且小于N。15.根据权利要求13所述的方法,其中所述第一值包括经典整数或经典整数的叠加。16.根据权利要求13所述的方法,其中所述第二值包括经典整数或经典整数的叠加。17.根据权利要求10所述的方法,其中所述预定窗口大小包括ln n,其中n表示所述目标量子寄存器中的逻辑量子位的数量。18.根据权利要求10所述的方法,其中基于所确定的多个表条目和所确定的多个地址值来调整所述目标量子寄存器的值包括:将所确定的多个表条目添加到所述目标量子寄存器中。19.根据权利要求10所述的方法,所述方法进一步包括:执行一系列模乘积加法运算以执行模乘运算。20.一种用于将量子位的目标量子寄存器的值乘以奇整数的方法,所述方法包括:确定多个查找表条目,包括:针对第一索引集合中的每个索引,其中所述第一索引集合包括在零与作为预定窗口大小的函数的最大表索引之间的索引值:确定所述第一索引集合中的所述索引和所述奇整数的乘积;针对第二索引集合中的每个索引,其中所述第二索引集合包括从作为所述目标量子寄存器的函数的最大索引值到零的索引值,其中所述索引值按预定窗口大小步进:提取所述第二索引集合中的所述索引到所述第二索引集合中的所述索引加上所述预定窗口大小之间的所述目标量子寄存器的多个值;以及基于所确定的多个查找表条目和所述目标量子寄存器的所提取的多个值来调整所述目标量子寄存器的多个值,其中所述目标量子寄存器的所述多个值包括在所述第二索引集合中的所述索引加上所述预定窗口大小与所述目标量子寄存器的末端之间的值。21.根据权利要求20所述的方法,其中作为所述预定窗口大小的函数的所述最大表索引等于2的所述预定窗口大小次幂。22.根据权利要求20所述的方法,其中作为所述目标量子寄存器的函数的所述最大索引值等于所述目标量子寄存器的长度。23.根据权利要求20所述的方法,其中将量子位的目标量子寄存器的值乘以奇整数包括:执行x*=k,其中x表示将第一值存储在所述目标量子寄存器中的变量且k表示所述奇整数。24.根据权利要求23所述的方法,其中所述第一值包括经典整数或经典整数的叠加。25.根据权利要求20所述的方法...

【专利技术属性】
技术研发人员:C吉德尼
申请(专利权)人:谷歌有限责任公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1