掌桥专利:专业的专利平台
掌桥专利
首页

量子模数倍增运算方法、装置、电子装置及模数算术组件

文献发布时间:2023-06-19 19:00:17


量子模数倍增运算方法、装置、电子装置及模数算术组件

技术领域

本发明属于量子计算技术领域,特别是一种量子模数倍增运算方法、装置、电子装置及模数算术组件。

背景技术

量子计算机是一类遵循量子力学规律进行高速数学和逻辑运算、存储及处理量子信息的物理装置。当某个装置处理和计算的是量子信息,运行的是量子算法时,它就是量子计算机。量子计算机因其具有相对普通计算机更高效的处理数学问题的能力,例如,能将破解RSA密钥的时间从数百年加速到数小时,故成为一种正在研究中的关键技术。

在破密量子算法的实现过程中,通常需要借助各种量子逻辑门构建量子算法,但是,仅依靠各种量子逻辑门构建量子算法时,并没有对应经典模数运算例如模数加法、模数乘法、模数平方、模数乘逆的模数基本算术运算操作的量子逻辑门。因此,急需提供一种能够实现量子线路中的模数基本算术运算操作的技术,以填补相关技术空白。

发明内容

本发明的目的是提供一种量子模数倍增运算方法、装置、电子装置及模数算术组件,旨在实现量子线路中的模数倍增运算操作,以填补相关技术空白。

本申请的一个实施例提供了一种量子模数倍增运算方法,所述方法包括:

获取待运算的目标数据,并将所述待运算的目标数据转换为第一目标量子态;

对所述第一目标量子态执行模数倍增运算对应的量子态演化,获得演化后的存储模数倍增运算结果的第二目标量子态;

将最终获得的所述第二目标量子态作为所述待运算的目标数据的模数倍增运算结果进行输出。

可选的,在所述对所述第一目标量子态执行模数倍增运算对应的量子态演化,获得演化后的存储模数倍增运算结果的第二目标量子态方面,包括:

获取常数倍增器模块、常数模减法器模块和常数模加法器模块;

将所述常数倍增器模块、所述常数模减法器模块和所述常数模加法器模块进行级联,生成模数倍增器对应的目标量子线路;

通过所述目标量子线路对所述第一目标量子态的各量子比特进行模数倍增运算,生成第二目标量子态。

可选的,所述常数倍增器模块、所述常数模减法器模块和所述常数模加法器模块均包括三个输入项和三个输出项,在所述将所述常数倍增器模块、所述常数模减法器模块和所述常数模加法器模块进行级联,生成模数倍增器对应的目标量子线路方面,包括:

将所述常数倍增器模块的三个输出项作为所述常数模减法器模块的三个输入项,将所述常数模减法器模块的三个输出项作为所述常数模加法器模块的三个输入项,以及将所述常数倍增器模块、所述常数模减法器模块和所述常数模加法器模块进行级联,生成模数倍增器对应的目标量子线路。

可选的,所述常数倍增器模块的三个输入项包括一个待运算量子态输入项、一个进位输入项以及一个辅助输入项;所述常数倍增器模块的三个输出项包括一个第一中间结果输出项、一个第一中间进位输出项以及一个第一中间辅助输出项;

所述常数模减法器模块的三个输入项包括所述常数倍增器模块的一个第一中间结果输出项、一个第一中间进位输出项以及一个第一中间辅助输出项;所述常数模减法器模块的三个输出项包括一个第二中间结果输出项、一个第二中间进位输出项和一个第二中间辅助输出项;

所述常数模加法器模块的三个输入项包括所述常数模减法器模块的一个第二中间结果输出项、一个第二中间进位输出项和一个第二中间辅助输出项;所述常数模加法器模块的三个输出项包括一个模数倍增结果输出项、一个进位输出项和一个辅助输出项。

可选的,在所述通过所述目标量子线路对所述第一目标量子态的各量子比特进行模数倍增运算,生成第二目标量子态方面,包括:

制备进位输入量子态和辅助输入量子态;

将所述第一目标量子态作为所述待运算量子态输入项的输入,将所述进位输入量子态作为所述进位输入项的输入,将所述辅助输入量子态作为所述辅助输入项的输入,得到制备初态后的所述目标量子线路;

运行制备初态后的所述目标量子线路,以及测量所述常数模加法器模块的一个模数倍增结果输出项对应的量子比特,得到第二目标量子态。

可选的,所述常数倍增器模块由目标个数的SWAP门级联构成,所述目标个数基于所述第一目标量子态对应的量子比特的个数确定;所述常数倍增器模块的三个输入项包括所述SWAP门的两个输入项,所述常数倍增器模块的三个输入项包括所述SWAP门的两个输出项。

本申请的又一实施例提供了一种量子模数倍增运算装置,所述装置包括:

获取单元,用于获取待运算的目标数据,并将所述待运算的目标数据转换为第一目标量子态;

演化单元,用于对所述第一目标量子态执行模数倍增运算对应的量子态演化,获得演化后的存储模数倍增运算结果的第二目标量子态;

输出单元,用于将最终获得的所述第二目标量子态作为所述待运算的目标数据的模数倍增运算结果进行输出。

可选的,在所述对所述第一目标量子态执行模数倍增运算对应的量子态演化,获得演化后的存储模数倍增运算结果的第二目标量子态方面,所述演化单元,具体用于:

获取常数倍增器模块、常数模减法器模块和常数模加法器模块;

将所述常数倍增器模块、所述常数模减法器模块和所述常数模加法器模块进行级联,生成模数倍增器对应的目标量子线路;

通过所述目标量子线路对所述第一目标量子态的各量子比特进行模数倍增运算,生成第二目标量子态。

可选的,所述常数倍增器模块、所述常数模减法器模块和所述常数模加法器模块均包括三个输入项和三个输出项,在所述将所述常数倍增器模块、所述常数模减法器模块和所述常数模加法器模块进行级联,生成模数倍增器对应的目标量子线路方面,所述演化单元,具体用于:

将所述常数倍增器模块的三个输出项作为所述常数模减法器模块的三个输入项,将所述常数模减法器模块的三个输出项作为所述常数模加法器模块的三个输入项,以及将所述常数倍增器模块、所述常数模减法器模块和所述常数模加法器模块进行级联,生成模数倍增器对应的目标量子线路。

可选的,所述常数倍增器模块的三个输入项包括一个待运算量子态输入项、一个进位输入项以及一个辅助输入项;所述常数倍增器模块的三个输出项包括一个第一中间结果输出项、一个第一中间进位输出项以及一个第一中间辅助输出项;

所述常数模减法器模块的三个输入项包括所述常数倍增器模块的一个第一中间结果输出项、一个第一中间进位输出项以及一个第一中间辅助输出项;所述常数模减法器模块的三个输出项包括一个第二中间结果输出项、一个第二中间进位输出项和一个第二中间辅助输出项;

所述常数模加法器模块的三个输入项包括所述常数模减法器模块的一个第二中间结果输出项、一个第二中间进位输出项和一个第二中间辅助输出项;所述常数模加法器模块的三个输出项包括一个模数倍增结果输出项、一个进位输出项和一个辅助输出项。

可选的,在所述通过所述目标量子线路对所述第一目标量子态的各量子比特进行模数倍增运算,生成第二目标量子态方面,所述演化单元,具体用于:

制备进位输入量子态和辅助输入量子态;

将所述第一目标量子态作为所述待运算量子态输入项的输入,将所述进位输入量子态作为所述进位输入项的输入,将所述辅助输入量子态作为所述辅助输入项的输入,得到制备初态后的所述目标量子线路;

运行制备初态后的所述目标量子线路,以及测量所述常数模加法器模块的一个模数倍增结果输出项对应的量子比特,得到第二目标量子态。

可选的,所述常数倍增器模块由目标个数的SWAP门级联构成,所述目标个数基于所述第一目标量子态对应的量子比特的个数确定;所述常数倍增器模块的三个输入项包括所述SWAP门的两个输入项,所述常数倍增器模块的三个输入项包括所述SWAP门的两个输出项。

本申请的又一实施例提供了一种存储介质,所述存储介质中存储有计算机程序,其中,所述计算机程序被设置为运行时执行上述任一项中所述的方法。

本申请的又一实施例提供了一种电子装置,包括存储器和处理器,所述存储器中存储有计算机程序,所述处理器被设置为运行所述计算机程序以执行上述任一项中所述的方法。

本申请的又一实施例提供了一种量子模数算术组件,包括根据上述任一项中所述的方法确定的量子模数倍增器。

与现有技术相比,本发明提供的一种量子模数倍增运算方法,通过获取待运算的目标数据,并将所述待运算的目标数据转换为第一目标量子态;对所述第一目标量子态执行模数倍增运算对应的量子态演化,获得演化后的存储模数倍增运算结果的第二目标量子态;将最终获得的所述第二目标量子态作为所述待运算的目标数据的模数倍增运算结果进行输出,实现了量子线路中的模数倍增运算操作,填补了相关技术空白。

附图说明

图1为本发明实施例提供的一种量子模数倍增运算方法的计算机终端的硬件结构框图;

图2为本发明实施例提供的一种量子模数倍增运算方法的流程示意图;

图3为本发明实施例提供的一种常数倍增器对应的目标量子线路图;

图4为本发明实施例提供的一种模数倍增器对应的目标量子线路图;

图5为本发明实施例提供的一种量子模数倍增运算装置的结果示意图。

具体实施方式

下面通过参考附图描述的实施例是示例性的,仅用于解释本发明,而不能解释为对本发明的限制。

本发明实施例首先提供了一种量子模数倍增运算方法,该方法可以应用于电子设备,如计算机终端,具体如普通电脑、量子计算机等。

下面以运行在计算机终端上为例对其进行详细说明。图1为本发明实施例提供的一种量子模数倍增运算方法的计算机终端的硬件结构框图。如图1所示,计算机终端可以包括一个或多个(图1中仅示出一个)处理器102(处理器102可以包括但不限于微处理器MCU或可编程逻辑器件FPGA等的处理装置)和用于存储基于量子线路的量子模数倍增运算方法的存储器104,可选地,上述计算机终端还可以包括用于通信功能的传输装置106以及输入输出设备108。本领域普通技术人员可以理解,图1所示的结构仅为示意,其并不对上述计算机终端的结构造成限定。例如,计算机终端还可包括比图1中所示更多或者更少的组件,或者具有与图1所示不同的配置。

存储器104可用于存储应用软件的软件程序以及模块,如本申请实施例中的量子模数倍增运算方法对应的程序指令/模块,处理器102通过运行存储在存储器104内的软件程序以及模块,从而执行各种功能应用以及数据处理,即实现上述的方法。存储器104可包括高速随机存储器,还可包括非易失性存储器,如一个或者多个磁性存储装置、闪存、或者其他非易失性固态存储器。在一些实例中,存储器104可进一步包括相对于处理器102远程设置的存储器,这些远程存储器可以通过网络连接至计算机终端。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。

传输装置106用于经由一个网络接收或者发送数据。上述的网络具体实例可包括计算机终端的通信供应商提供的无线网络。在一个实例中,传输装置106包括一个网络适配器(Network Interface Controller,NIC),其可通过基站与其他网络设备相连从而可与互联网进行通讯。在一个实例中,传输装置106可以为射频(Radio Frequency,RF)模块,其用于通过无线方式与互联网进行通讯。

需要说明的是,真正的量子计算机是混合结构的,它包含两大部分:一部分是经典计算机,负责执行经典计算与控制;另一部分是量子设备,负责运行量子程序进而实现量子计算。而量子程序是由量子语言如QRunes语言编写的一串能够在量子计算机上运行的指令序列,实现了对量子逻辑门操作的支持,并最终实现量子计算。具体的说,量子程序就是一系列按照一定时序操作量子逻辑门的指令序列。

在实际应用中,因受限于量子设备硬件的发展,通常需要进行量子计算模拟以验证量子算法、量子应用等等。量子计算模拟即借助普通计算机的资源搭建的虚拟架构(即量子虚拟机)实现特定问题对应的量子程序的模拟运行的过程。通常,需要构建特定问题对应的量子程序。本发明实施例所指量子程序,即是经典语言编写的表征量子比特及其演化的程序,其中与量子计算相关的量子比特、量子逻辑门等等均有相应的经典代码表示。

量子线路作为量子程序的一种体现方式,也称量子逻辑电路,是最常用的通用量子计算模型,表示在抽象概念下对于量子比特进行操作的线路,其组成包括量子比特、线路(时间线)、以及各种量子逻辑门,最后常需要通过量子测量操作将结果读取出来。

不同于传统电路是用金属线所连接以传递电压信号或电流信号,在量子线路中,线路可看成是由时间所连接,亦即量子比特的状态随着时间自然演化,在这过程中按照哈密顿运算符的指示,一直到遇上逻辑门而被操作。

一个量子程序整体上对应有一条总的量子线路,本发明所述量子程序即指该条总的量子线路,其中,该总的量子线路中的量子比特总数与量子程序的量子比特总数相同。可以理解为:一个量子程序可以由量子线路、针对量子线路中量子比特的测量操作、保存测量结果的寄存器及控制流节点(跳转指令)组成,一条量子线路可以包含几十上百个甚至成千上万个量子逻辑门操作。量子程序的执行过程,就是对所有的量子逻辑门按照一定时序执行的过程。需要说明的是,时序即单个量子逻辑门被执行的时间顺序。

需要说明的是,经典计算中,最基本的单元是比特,而最基本的控制模式是逻辑门,可以通过逻辑门的组合来达到控制电路的目的。类似地,处理量子比特的方式就是量子逻辑门。使用量子逻辑门,能够使量子态发生演化,量子逻辑门是构成量子线路的基础,量子逻辑门包括单比特量子逻辑门,如Hadamard门(H门,阿达马门)、泡利-X门(X门)、泡利-Y门(Y门)、泡利-Z门(Z门)、RX门、RY门、RZ门等等;多比特量子逻辑门,如CNOT门、CR门、iSWAP门、Toffoli门等等。量子逻辑门一般使用酉矩阵表示,而酉矩阵不仅是矩阵形式,也是一种操作和变换。一般量子逻辑门在量子态上的作用是通过酉矩阵左乘以量子态右矢对应的矩阵进行计算。

数论中,把一个计量单位称之为模或者模数,例如时钟是以12进制进行计数循环的,即以12为模。模运算在数论和程序设计中都有着广泛的应用,奇偶数的判别到素数的判别,从模幂运算到最大公约数的求法,从孙子问题到凯撒密码问题,无不充斥着模运算的身影。模数倍增运算是指任意一个数据的2倍求模的运算,例如任何对10的模数倍增运算,2×9mod 10=8。在量子计算领域中,急需提供一种能够实现量子线路中的模数倍增运算操作的技术,以填补相关技术空白。

参见图2,图2为本发明实施例提供的一种量子模数倍增运算方法的流程示意图。所述方法包括:

步骤201:获取待运算的目标数据,并将所述待运算的目标数据转换为第一目标量子态;

具体地,在所述获取待运算的目标数据,并将所述待运算的目标数据转换为第一目标量子态方面,可以是利用现有的振幅编码方式,将待运算的十进制数据转换为二进制的量子态表示。例如,一个目标数据为7,带符号的二进制表示0111;另一个目标数据为4,带符号的二进制表示011;其中,最高位为0表示正数,1表示负数。其中,目标量子态为目标量子比特对应的本征态,量子比特位对应的所有本征态表征的数量是2的量子比特位的个数次方。例如:例如一组量子比特为q

步骤202:对所述第一目标量子态执行模数倍增运算对应的量子态演化,获得演化后的存储模数倍增运算结果的第二目标量子态;

具体地,在所述对所述第一目标量子态执行模数倍增运算对应的量子态演化,获得演化后的存储模数倍增运算结果的第二目标量子态方面,包括:

获取常数倍增器模块、常数模减法器模块和常数模加法器模块;

将所述常数倍增器模块、所述常数模减法器模块和所述常数模加法器模块进行级联,生成模数倍增器对应的目标量子线路;

通过所述目标量子线路对所述第一目标量子态的各量子比特进行模数倍增运算,生成第二目标量子态。

本实施例用于介绍如何在量子计算机中实现模数倍增运算的逻辑电路,并结合预先开发软件QPanda对每个模块进行说明。任何经典逻辑电路,也可以通过量子线路来表示。经典电路和量子线路一一对应,量子逻辑门/量子线路的输入与输出均是量子比特,且输入与输出的量子比特数量相等。量子线路允许量子态以叠加的方式输入,输出的状态即可以相同的方式叠加输出。可逆计算是量子计算的基本,即任何可逆线路存在逆线路,也就是说,将每个原有的输出作为输入,正好可以映射到原来的输入上。可逆线路意味着对于每一种输出,都正好有一种输入与之对应,这种映射是一一映射。例如非门是一个典型的可逆逻辑门,它的逆线路就是它自身。典型的不可逆逻辑门就是与门、或门。例如与门的输入是0,0;0,1;1,0的时候均输出0,这说明不存在从输出到输入的唯一映射。可逆计算意味着信息在计算过程中没有丢失,经过逆变换之后可以恢复原来的状态。不可逆计算意味着信息丢失了。例如从与门的输出,无法推知输入的状态。对于可逆计算来说,是可以推知的。任何连续执行的可逆逻辑门,合起来是一个可逆操作。量子逻辑门全部是可逆逻辑门,所以量子线路是可逆线路。但是量子测量不是可逆计算。

其中,普通加法器模块用于实现数据之间的求和,具体实现方式可以参见公开号为CN 112162723 A的专利文献;普通减法器模块用于实现数据之间的求差,具体实现方式可以参见公开号为CN 112214200 A的专利文献;当然,普通加法器模块和普通减法器模块的具体实现方式还可以有其他方式,在此不做限定。

上述常数模减法器模块为有一个输入项为模的普通减法器,常数模加法器模块为有一个输入项为模的普通加法器。

其中,所述常数倍增器模块由目标个数的SWAP门级联构成,所述目标个数基于所述第一目标量子态对应的量子比特的个数确定;所述常数倍增器模块的三个输入项包括所述SWAP门的两个输入项,所述常数倍增器模块的三个输入项包括所述SWAP门的两个输出项。

如图3所示,图3为本发明实施例提供的一种常数倍增器对应的目标量子线路图。常数倍增器包括两个输入项和两个输出项,第一个输入项用于输入目标数据x

除了上述这种方式实现常数倍增运算外,还可以直接在输入时进行错位编码,将目标数据x

具体地,所述常数倍增器模块、所述常数模减法器模块和所述常数模加法器模块均包括三个输入项和三个输出项,在所述将所述常数倍增器模块、所述常数模减法器模块和所述常数模加法器模块进行级联,生成模数倍增器对应的目标量子线路方面,包括:

将所述常数倍增器模块的三个输出项作为所述常数模减法器模块的三个输入项,将所述常数模减法器模块的三个输出项作为所述常数模加法器模块的三个输入项,以及将所述常数倍增器模块、所述常数模减法器模块和所述常数模加法器模块进行级联,生成模数倍增器对应的目标量子线路。

其中,所述常数倍增器模块的三个输入项包括一个待运算量子态输入项、一个进位输入项以及一个辅助输入项;所述常数倍增器模块的三个输出项包括一个第一中间结果输出项、一个第一中间进位输出项以及一个第一中间辅助输出项;

所述常数模减法器模块的三个输入项包括所述常数倍增器模块的一个第一中间结果输出项、一个第一中间进位输出项以及一个第一中间辅助输出项;所述常数模减法器模块的三个输出项包括一个第二中间结果输出项、一个第二中间进位输出项和一个第二中间辅助输出项;

所述常数模加法器模块的三个输入项包括所述常数模减法器模块的一个第二中间结果输出项、一个第二中间进位输出项和一个第二中间辅助输出项;所述常数模加法器模块的三个输出项包括一个模数倍增结果输出项、一个进位输出项和一个辅助输出项。

如图4所示,图4为本发明实施例提供的一种模数倍增器对应的目标量子线路图。n

待运算量子态输入项对应的输出项为第一中间结果输出项,进位输入项对应的输出项为第一中间进位输出项,第一中间结果输出项和第一中间进位输出项用于表示x

所述常数模减法器模块的三个输入项包括所述常数倍增器模块的一个第一中间结果输出项、一个第一中间进位输出项以及一个第一中间辅助输出项。第一中间结果输出项和第一中间进位输出项表示的常数倍增运算结果2x

所述常数模加法器模块的三个输入项包括所述常数模减法器模块的一个第二中间结果输出项、一个第二中间进位输出项和一个第二中间辅助输出项。第二中间进位输出项用于控制是否进行常数模加法运算,若量子态为|1>则进行常数模加法运算,若量子态为|0>则不进行常数模加法运算。通过常数模加法器进行常数模加法运算的原理与上述常数模减法器进行常数模减法运算的原理类似,在此不再详述。

具体地,所述通过所述目标量子线路对所述第一目标量子态的各量子比特进行模数倍增运算,生成第二目标量子态,包括:

制备进位输入量子态和辅助输入量子态;

将所述第一目标量子态作为所述待运算量子态输入项的输入,将所述进位输入量子态作为所述进位输入项的输入,将所述辅助输入量子态作为所述辅助输入项的输入,得到制备初态后的所述目标量子线路;

运行制备初态后的所述目标量子线路,以及测量所述常数模加法器模块的一个模数倍增结果输出项对应的量子比特,得到第二目标量子态。

举例说明,例如将进位输入量子态和辅助输入量子态的初始量子态均制备为|0>,分两种情况介绍各模块的量子态演化:

第一种2x

第二种2x

步骤203:将最终获得的所述第二目标量子态作为所述待运算的目标数据的模数倍增运算结果进行输出。

本实施例中,通过将待运算的目标数据转换后的第一目标量子态,输入模数倍增器(即所述目标量子线路)中,得到对应的二进制表示模数倍增结果的第二目标量子态。然后将二进制表示的表示模数倍增结果的第二目标量子态直接输出,完成目标数据的模数倍增运算。

与现有技术相比,本发明提供的一种量子模数倍增运算方法,通过获取待运算的目标数据,并将所述待运算的目标数据转换为第一目标量子态;对所述第一目标量子态执行模数倍增运算对应的量子态演化,获得演化后的存储模数倍增运算结果的第二目标量子态;将最终获得的所述第二目标量子态作为所述待运算的目标数据的模数倍增运算结果进行输出,实现了量子线路中的模数倍增运算操作,填补了相关技术空白。

本发明的另一实施例提供了一种量子模数倍增运算装置,如图5所示,所述装置包括:

获取单元501,用于获取待运算的目标数据,并将所述待运算的目标数据转换为第一目标量子态;

演化单元502,用于对所述第一目标量子态执行模数倍增运算对应的量子态演化,获得演化后的存储模数倍增运算结果的第二目标量子态;

输出单元503,用于将最终获得的所述第二目标量子态作为所述待运算的目标数据的模数倍增运算结果进行输出。

可选的,在所述对所述第一目标量子态执行模数倍增运算对应的量子态演化,获得演化后的存储模数倍增运算结果的第二目标量子态方面,所述演化单元502,具体用于:

获取常数倍增器模块、常数模减法器模块和常数模加法器模块;

将所述常数倍增器模块、所述常数模减法器模块和所述常数模加法器模块进行级联,生成模数倍增器对应的目标量子线路;

通过所述目标量子线路对所述第一目标量子态的各量子比特进行模数倍增运算,生成第二目标量子态。

可选的,所述常数倍增器模块、所述常数模减法器模块和所述常数模加法器模块均包括三个输入项和三个输出项,在所述将所述常数倍增器模块、所述常数模减法器模块和所述常数模加法器模块进行级联,生成模数倍增器对应的目标量子线路方面,所述演化单元502,具体用于:

将所述常数倍增器模块的三个输出项作为所述常数模减法器模块的三个输入项,将所述常数模减法器模块的三个输出项作为所述常数模加法器模块的三个输入项,以及将所述常数倍增器模块、所述常数模减法器模块和所述常数模加法器模块进行级联,生成模数倍增器对应的目标量子线路。

可选的,所述常数倍增器模块的三个输入项包括一个待运算量子态输入项、一个进位输入项以及一个辅助输入项;所述常数倍增器模块的三个输出项包括一个第一中间结果输出项、一个第一中间进位输出项以及一个第一中间辅助输出项;

所述常数模减法器模块的三个输入项包括所述常数倍增器模块的一个第一中间结果输出项、一个第一中间进位输出项以及一个第一中间辅助输出项;所述常数模减法器模块的三个输出项包括一个第二中间结果输出项、一个第二中间进位输出项和一个第二中间辅助输出项;

所述常数模加法器模块的三个输入项包括所述常数模减法器模块的一个第二中间结果输出项、一个第二中间进位输出项和一个第二中间辅助输出项;所述常数模加法器模块的三个输出项包括一个模数倍增结果输出项、一个进位输出项和一个辅助输出项。

可选的,在所述通过所述目标量子线路对所述第一目标量子态的各量子比特进行模数倍增运算,生成第二目标量子态方面,所述演化单元502,具体用于:

制备进位输入量子态和辅助输入量子态;

将所述第一目标量子态作为所述待运算量子态输入项的输入,将所述进位输入量子态作为所述进位输入项的输入,将所述辅助输入量子态作为所述辅助输入项的输入,得到制备初态后的所述目标量子线路;

运行制备初态后的所述目标量子线路,以及测量所述常数模加法器模块的一个模数倍增结果输出项对应的量子比特,得到第二目标量子态。

可选的,所述常数倍增器模块由目标个数的SWAP门级联构成,所述目标个数基于所述第一目标量子态对应的量子比特的个数确定;所述常数倍增器模块的三个输入项包括所述SWAP门的两个输入项,所述常数倍增器模块的三个输入项包括所述SWAP门的两个输出项。

本发明的再一实施例提供了一种存储介质,所述存储介质中存储有计算机程序,其中,所述计算机程序被设置为运行时执行上述任一项中方法实施例中的步骤。

具体的,在本实施例中,上述存储介质可以被设置为存储用于执行以下步骤的计算机程序:

获取待运算的目标数据,并将所述待运算的目标数据转换为第一目标量子态;

对所述第一目标量子态执行模数倍增运算对应的量子态演化,获得演化后的存储模数倍增运算结果的第二目标量子态;

将最终获得的所述第二目标量子态作为所述待运算的目标数据的模数倍增运算结果进行输出。

具体的,在本实施例中,上述存储介质可以包括但不限于:U盘、只读存储器(Read-Only Memory,简称为ROM)、随机存取存储器(Random Access Memory,简称为RAM)、移动硬盘、磁碟或者光盘等各种可以存储计算机程序的介质。

本发明的再一实施例还提供了一种电子装置,包括存储器和处理器,所述存储器中存储有计算机程序,所述处理器被设置为运行所述计算机程序以执行上述任一项中方法实施例中的步骤。

具体的,上述电子装置还可以包括传输设备以及输入输出设备,其中,该传输设备和上述处理器连接,该输入输出设备和上述处理器连接。

具体的,在本实施例中,上述处理器可以被设置为通过计算机程序执行以下步骤:

获取待运算的目标数据,并将所述待运算的目标数据转换为第一目标量子态;

对所述第一目标量子态执行模数倍增运算对应的量子态演化,获得演化后的存储模数倍增运算结果的第二目标量子态;

将最终获得的所述第二目标量子态作为所述待运算的目标数据的模数倍增运算结果进行输出。

本申请的又一实施例提供了一种量子模数算术组件,包括根据上述任一项中所述的方法确定的量子模数倍增器。

以上依据图式所示的实施例详细说明了本发明的构造、特征及作用效果,以上所述仅为本发明的较佳实施例,但本发明不以图面所示限定实施范围,凡是依照本发明的构想所作的改变,或修改为等同变化的等效实施例,仍未超出说明书与图示所涵盖的精神时,均应在本发明的保护范围内。

相关技术
  • 一种基于模数转换器的高速数据传输方法及装置
  • 一种基于光电时空转换的微波信号模数转换方法及装置
  • 量子模数加法运算方法、装置、电子装置及模数算术组件
  • 量子比较运算方法、装置、电子装置及基础算术组件
技术分类

06120115760162