CN113222150B - 一种量子态的变换方法及装置 - Google Patents
一种量子态的变换方法及装置 Download PDFInfo
- Publication number
- CN113222150B CN113222150B CN202010071897.2A CN202010071897A CN113222150B CN 113222150 B CN113222150 B CN 113222150B CN 202010071897 A CN202010071897 A CN 202010071897A CN 113222150 B CN113222150 B CN 113222150B
- Authority
- CN
- China
- Prior art keywords
- quantum
- quantum state
- module
- state
- matrix
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N10/00—Quantum computing, i.e. information processing based on quantum-mechanical phenomena
Landscapes
- Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Mathematical Analysis (AREA)
- Computing Systems (AREA)
- Evolutionary Computation (AREA)
- Condensed Matter Physics & Semiconductors (AREA)
- Computational Mathematics (AREA)
- Mathematical Optimization (AREA)
- Pure & Applied Mathematics (AREA)
- Data Mining & Analysis (AREA)
- General Engineering & Computer Science (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Artificial Intelligence (AREA)
- Optical Modulation, Optical Deflection, Nonlinear Optics, Optical Demodulation, Optical Logic Elements (AREA)
- Logic Circuits (AREA)
Abstract
本发明公开了一种量子态的变换方法及装置,方法包括:获得一组量子比特位、一矩阵的元素信息;其中,一组量子比特位的第一量子态编码有元素的第一类下标的目标取值;从矩阵的元素信息中,查找第一类下标的取值为目标取值的特定类元素的第二类下标的取值及元素数值,并将第二类下标的取值及元素数值信息,编码到一组量子比特位的第一比特位和第二比特位的量子态上;将特定类元素的元素数值信息,编码到所述一组量子比特位的第三比特位的量子态振幅上,以将第一量子态|j>变换为第一预设形式的第二量子态|Ψj>,其中,j为第一类下标。本发明将量子态变换为应用在量子随机行走中的相关量子态,用于量子计算的模拟,填补技术空白。
Description
技术领域
本发明属于量子计算技术领域,特别是一种量子态的变换方法及装置。
背景技术
量子计算机利用量子的叠加性,理论上在某些情形下有指数级加速的能力。譬如破解RSA密钥在经典计算机上需要数百年,而在量子计算机上执行量子算法只需数小时。但是目前量子计算机的受限于量子芯片硬件的发展导致的可操控的比特数有限,因此计算能力有限,并不能普遍地去运行量子算法。普遍地运行量子算法通常需要借助量子计算模拟方法。
在量子算法的模拟实现过程中,通常需要借助各种量子逻辑门构建量子算法。例如,量子随机行走技术在解决哈密顿量模拟以及解线性方程组的量子算法中得到了广泛的应用,但是,为了获得应用在量子随机行走中的相关量子态,还缺乏相应的量子线路。如果利用各种量子逻辑门构建实现该需求的等效量子逻辑门,所需要的量子逻辑门数量庞大,且构建的量子算法对应的量子线路会过于复杂,严重妨碍了量子计算的研究。
因此,急需提供一种能够将量子态变换为应用在量子随机行走中的相关量子态的技术,用于量子计算的经典模拟,以填补相关技术空白。
发明内容
本发明的目的是提供一种量子态的变换方法及装置,以解决现有技术中的不足,它能够将量子态变换为应用在量子随机行走中的相关量子态,用于量子计算的经典模拟,以填补相关技术空白。
本发明采用的技术方案如下:
一种量子态的变换方法,包括:
获得一组量子比特位、一矩阵的元素信息;其中,所述一组量子比特位的第一量子态编码有元素的第一类下标的目标取值;
从所述矩阵的元素信息中,查找所述第一类下标的取值为所述目标取值的特定类元素的第二类下标的取值及元素数值,并将所述第二类下标的取值及元素数值信息,编码到所述一组量子比特位的第一比特位和第二比特位的量子态上;
将所述特定类元素的元素数值信息,编码到所述一组量子比特位的第三比特位的量子态振幅上,以将所述第一量子态变换为第一预设形式的第二量子态。
可选的,所述第一类下标为:行下标,所述第二类下标为:列下标。
可选的,所述特定类元素为:非0元素。
可选的,所述从所述矩阵的元素信息中,查找所述第一类下标的取值与所述目标取值相同的特定类元素的第二类下标的取值及元素数值,并将所述第二类下标的取值及元素数值信息,编码到所述一组量子比特位的第一比特位和第二比特位的量子态上,包括:
将所述目标取值对应的目标行非0元素在该行所有非0中元素的序号,编码到所述一组量子比特位中的第一比特位,以将所述第一量子态变换为第三量子态;其中,所述第三量子态包含所述目标取值和序号信息,组成所述第三量子态的各本征态与各所述序号一一对应;
根据所述目标取值和所述序号,确定所述非0元素的列下标,并将所述列下标编码到所述第一比特位,以将所述第三量子态变换为第四量子态;其中,所述第四量子态包含非0元素的所述目标取值信息和所述列下标信息;
根据所述目标取值信息及所述列下标信息,确定所述非0元素的元素数值,并将所述元素数值编码到所述一组量子比特位中的第三比特位,以将所述第四量子态变换为包含所述目标取值信息、所述列下标信息和所述元素数值信息的第五量子态。
可选的,所述根据所述目标行的行下标和所述序号,确定所述非0元素的列下标,包括:
获得预先构建的、矩阵行非0元素在该行所有非0中元素的序号与列下标间的索引关系;
根据所述目标取值对应的目标行非0元素在该行所有非0中元素的序号以及所述索引关系,确定所述目标行非0元素的列下标。
可选的,所述将所述特定类元素的元素数值信息,编码到所述一组量子比特位的第三比特位的量子态振幅上,包括:
将当前所述一组量子比特位中的第三比特位的初始子量子态,变换为第二预设形式的子量子态;其中,所述第二预设形式由所述第一预设形式确定,所述第二预设形式的子量子态的振幅由所述特定类元素的元素数值确定。
可选的,所述一组量子比特位还包括:第四比特位;
所述方法还包括:
根据所述第四比特位,判断是否执行所述将所述第一量子态变换为第一预设形式的第二量子态的步骤。
可选的,所述根据所述第四比特位,判断是否执行所述将所述第一量子态变换为第一预设形式的第二量子态的步骤,包括:
获得所述第一量子态中对应所述第四比特位的子量子态;
当所述子量子态的所有位均为1时,执行所述将所述第一量子态变换为第一预设形式的第二量子态的步骤。
可选的,所述方法还包括:
执行所述将所述第一量子态变换为第一预设形式的第二量子态的步骤对应的转置共轭操作,以将所述第二量子态还原为所述第一量子态。
一种量子线路的构建方法,包括:
构建用于将第一量子态变换为第一预设形式的第二量子态的第一功能模块;其中,所述第一功能模块的第一矩阵形式T=∑j∈[N]|Ψj><j|,所述N为获得的矩阵的行数;
利用Oracle和量子逻辑门,构建实现第二功能模块的量子线路,其中,所述第二功能模块的第二矩阵形式所述S为交换操作模块的酉矩阵,所述T+为所述T的转置共轭,/>为4N2维单位矩阵。
可选的,所述利用Oracle和量子逻辑门,构建实现第二功能模块的量子线路,包括:
利用Oracle,分别构建第一功能子模块和第二功能子模块;其中,所述第一功能子模块的矩阵形式T1满足:T·|j>2N=|Ψj>,/>其中,/>为T1的转置共轭、且为所述第二功能子模块的矩阵形式;
利用Oracle或量子逻辑门,构建第三功能子模块,其中,所述第三功能子模块的矩阵形式N=2|0><0|-I2N;
构建一个交换操作模块,根据各功能子模块和所述交换操作模块分别操作的量子比特,将所述第二功能子模块、第三功能子模块、第一功能子模块和所述交换操作模块,依序插设到量子线路中。
可选的,所述利用Oracle或量子逻辑门,构建第三功能子模块,包括:
构建包含泡利-X门和泡利-Z门的第一子量子线路,作为第三功能子模块,其中,所述泡利-Z门处于第一受控状态。
可选的,所述利用Oracle或量子逻辑门,构建第三功能子模块,包括:
构建包含泡利-X门、H门和CNOT门的第二子量子线路,作为第三功能子模块,其中,所述CNOT门处于第二受控状态。
一种根据上述任一项方法构建的量子线路。
一种量子线路的运行方法,包括:
获得当前的待变换量子态;其中,所述待变换量子态为|α>;
将所述待变换量子态,变换为第一中间量子态;其中,所述第一中间量子态为
将所述第一中间量子态,变换为第二中间量子态;其中,所述第二中间量子态为
将所述第二中间量子态,变换为第三中间量子态;其中,所述第三中间量子态为
将所述第三中间量子态,经交换操作模块操作,以变换为末量子态;其中,所述末量子态为:
一种量子态的变换装置,包括:
获得模块,用于获得一组量子比特位、一矩阵的元素信息;其中,所述一组量子比特位的第一量子态编码有元素的第一类下标的目标取值;
第一编码模块,用于从所述矩阵的元素信息中,查找所述第一类下标的取值为所述目标取值的特定类元素的第二类下标的取值及元素数值,并将所述第二类下标的取值及元素数值信息,编码到所述一组量子比特位的第一比特位和第二比特位的量子态上;
第二编码模块,用于将所述特定类元素的元素数值信息,编码到所述一组量子比特位的第三比特位的量子态振幅上,以将所述第一量子态|j>变换为第一预设形式的第二量子态|Ψj>,其中,所述j为所述第一类下标。
可选的,所述第一类下标为:行下标,所述第二类下标为:列下标。
可选的,所述特定类元素为:非0元素。
可选的,所述第一编码模块,具体用于:
将所述目标取值对应的目标行非0元素在该行所有非0中元素的序号,编码到所述一组量子比特位中的第一比特位,以将所述第一量子态变换为第三量子态;其中,所述第三量子态包含所述目标取值和序号信息,组成所述第三量子态的各本征态与各所述序号一一对应;
根据所述目标取值和所述序号,确定所述非0元素的列下标,并将所述列下标编码到所述第一比特位,以将所述第三量子态变换为第四量子态;其中,所述第四量子态包含非0元素的所述目标取值信息和所述列下标信息;
根据所述目标取值信息及所述列下标信息,确定所述非0元素的元素数值,并将所述元素数值编码到所述一组量子比特位中的第三比特位,以将所述第四量子态变换为包含所述目标取值信息、所述列下标信息和所述元素数值信息的第五量子态。
可选的,所述第一编码模块,具体用于:
获得预先构建的、矩阵行非0元素在该行所有非0中元素的序号与列下标间的索引关系;
根据所述目标取值对应的目标行非0元素在该行所有非0中元素的序号以及所述索引关系,确定所述目标行非0元素的列下标。
可选的,所述第二编码模块,具体用于:
将当前所述一组量子比特位中的第三比特位的初始子量子态,变换为第二预设形式的子量子态;其中,所述第二预设形式由所述第一预设形式确定,所述第二预设形式的子量子态的振幅由所述特定类元素的元素数值确定。
可选的,所述一组量子比特位还包括:第四比特位;
所述装置还包括:
判断模块,用于根据所述第四比特位,判断是否执行所述将所述第一量子态变换为第一预设形式的第二量子态的步骤。
可选的,所述判断模块,具体用于:
获得所述第一量子态中对应所述第四比特位的子量子态;
当所述子量子态的所有位均为1时,执行所述将所述第一量子态变换为第一预设形式的第二量子态的步骤。
可选的,所述装置还包括:
转置共轭操作模块,用于执行所述将所述第一量子态变换为第一预设形式的第二量子态的步骤对应的转置共轭操作,以将所述第二量子态还原为所述第一量子态。
一种量子线路的构建装置,包括:
第一构建模块,构建用于将第一量子态变换为第一预设形式的第二量子态的第一功能模块;其中,所述第一功能模块的第一矩阵形式T=∑j∈[N]|Ψj><j|,所述N为获得的矩阵的行数;
第二构建模块,用于利用Oracle和量子逻辑门,构建实现第二功能模块的量子线路,其中,所述第二功能模块的第二矩阵形式 所述S为交换操作模块的酉矩阵,所述T+为所述T的转置共轭,/>为4N2维单位矩阵。
可选的,所述第二构建模块,包括:
第一构建单元,用于利用Oracle,分别构建第一功能子模块和第二功能子模块;其中,所述第一功能子模块的矩阵形式T1满足:|Ψj>,T·|j>2N=|Ψj>,/>其中,/>为T1的转置共轭、且为所述第二功能子模块的矩阵形式;
第二构建单元,用于利用Oracle或量子逻辑门,构建第三功能子模块,其中,所述第三功能子模块的矩阵形式N=2|0><0|-I2N;
第三构建单元,用于构建一个交换操作模块,根据各功能子模块和所述交换操作模块分别操作的量子比特,将所述第二功能子模块、第三功能子模块、第一功能子模块和所述交换操作模块,依序插设到量子线路中。
可选的,所述第二构建单元,具体用于:
构建包含泡利-X门和泡利-Z门的第一子量子线路,作为第三功能子模块,其中,所述泡利-Z门处于第一受控状态。
可选的,所述第二构建单元,具体用于:
构建包含泡利-X门、H门和CNOT门的第二子量子线路,作为第三功能子模块,其中,所述CNOT门处于第二受控状态。
一种量子线路的运行装置,包括:
第一运行模块,用于获得当前的待变换量子态;其中,所述待变换量子态为|α>;
第二运行模块,用于将所述待变换量子态,变换为第一中间量子态;其中,所述第一中间量子态为
第三运行模块,用于将所述第一中间量子态,变换为第二中间量子态;其中,所述第二中间量子态为
第四运行模块,用于将所述第二中间量子态,变换为第三中间量子态;其中,所述第三中间量子态为
第五运行模块,用于将所述第三中间量子态,经交换操作模块操作,以变换为末量子态;其中,所述末量子态为:
一种存储介质,所述存储介质中存储有计算机程序,其中,所述计算机程序被设置为运行时执行上述任一项中所述的方法。
一种电子装置,包括存储器和处理器,所述存储器中存储有计算机程序,所述处理器被设置为运行所述计算机程序以执行上述任一项中所述的方法。
与现有技术相比,本发明公开了一种量子态的变换方法及装置,方法包括:获得一组量子比特位、一矩阵的元素信息;其中,一组量子比特位的第一量子态编码有元素的第一类下标的目标取值;从矩阵的元素信息中,查找第一类下标的取值为目标取值的特定类元素的第二类下标的取值及元素数值,并将第二类下标的取值及元素数值信息,编码到一组量子比特位的第一比特位和第二比特位的量子态上;将所述特定类元素的元素数值信息,编码到所述一组量子比特位的第三比特位的量子态振幅上,以将所述第一量子态|j>变换为第一预设形式的第二量子态|Ψj>,其中,所述j为所述第一类下标。本发明将量子态变换为应用在量子随机行走中的相关量子态,用于量子计算的模拟,填补技术空白,进一步拓展针对量子算法及量子计算机的研究。
附图说明
图1是本发明实施例提供的一种量子态的变换方法的计算机终端的硬件结构框图;
图2是本发明实施例提供的一种量子态的变换方法的流程示意图;
图3是本发明实施例提供的一种量子态的变换方法对应的量子线路示意图;
图4是本发明实施例提供的一种量子线路的构建方法的流程示意图;
图5是本发明实施例提供的一种构建的量子线路示意图;
图6是本发明实施例提供的一种构建的第三功能子模块示意图;
图7是本发明实施例提供的一种量子线路的运行方法的流程示意图;
图8是本发明实施例提供的一种量子态的变换装置的结构示意图;
图9是本发明实施例提供的一种量子线路的构建装置的结构示意图;
图10是本发明实施例提供的一种量子线路的运行装置的结构示意图。
具体实施方式
下面通过参考附图描述的实施例是示例性的,仅用于解释本发明,而不能解释为对本发明的限制。
需要说明的是,本发明的说明书和权利要求书中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。
本发明的实施例提供了一种量子态的变换方法,用于在量子线路中模拟量子态的变换操作,该方法可以应用于电子设备,如移动终端,具体如手机、平板电脑;如计算机终端,具体如普通电脑、量子计算机等。
下面以运行在计算机终端上为例对其进行详细说明。图1是本申请实施例的一种量子计算模拟硬件结构框图。如图1所示,计算机终端10可以包括一个或多个(图1中仅示出一个)处理器102(处理器102可以包括但不限于微处理器MCU或可编程逻辑器件FPGA等的处理装置)和用于存储数据的存储器104,可选地,上述计算机终端还可以包括用于通信功能的传输装置106以及输入输出设备108。本领域普通技术人员可以理解,图1所示的结构仅为示意,其并不对上述计算机终端的结构造成限定。例如,计算机终端10还可包括比图1中所示更多或者更少的组件,或者具有与图1所示不同的配置。
存储器104可用于存储应用软件的软件程序以及模块,如本申请实施例中的量子计算模拟方法对应的程序指令/模块,处理器102通过运行存储在存储器104内的软件程序以及模块,从而执行各种功能应用以及数据处理,即实现上述的方法。存储器104可包括高速随机存储器,还可包括非易失性存储器,如一个或者多个磁性存储装置、闪存、或者其他非易失性固态存储器。在一些实例中,存储器104可进一步包括相对于处理器102远程设置的存储器,这些远程存储器可以通过网络连接至计算机终端10。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
传输装置106用于经由一个网络接收或者发送数据。上述的网络具体实例可包括计算机终端10的通信供应商提供的无线网络。在一个实例中,传输装置106包括一个网络适配器(Network Interface Controller,NIC),其可通过基站与其他网络设备相连从而可与互联网进行通讯。在一个实例中,传输装置106可以为射频(Radio Frequency,RF)模块,其用于通过无线方式与互联网进行通讯。
需要说明的是,真正的量子计算机是混合结构的,它包含两大部分:一部分是经典计算机,负责执行经典计算与控制;另一部分是量子设备,负责运行量子程序进而实现量子计算。而量子程序是由量子语言如QRunes语言编写的一串能够在量子计算机上运行的指令序列,实现了对量子逻辑门操作的支持,并最终实现量子计算。具体的说,量子程序就是一系列按照一定时序操作量子逻辑门的指令序列。
在实际应用中,因受限于量子设备硬件的发展,通常需要进行量子计算模拟以验证量子算法、量子应用等等。量子计算模拟即借助普通计算机的资源搭建的虚拟架构(即量子虚拟机)实现特定问题对应的量子程序的模拟运行的过程。通常,需要构建特定问题对应的量子程序。本发明实施例所指量子程序,即是经典语言编写的表征量子比特及其演化的程序,其中与量子计算相关的量子比特、量子逻辑门等等均有相应的经典代码表示。
量子线路作为量子程序的一种体现方式,也称量子逻辑电路,是最常用的通用量子计算模型,表示在抽象概念下对于量子比特进行操作的线路,其组成包括量子比特、线路(时间线),以及各种量子逻辑门,最后常需要通过量子测量操作将结果读取出来。
不同于传统电路是用金属线所连接以传递电压信号或电流信号,在量子线路中,线路可看成是由时间所连接,亦即量子比特的状态随着时间自然演化,在这过程中按照哈密顿运算符的指示,一直到遇上逻辑门而***作。
一个量子程序整体上对应有一条总的量子线路,本发明所述量子程序即指该条总的量子线路,其中,该总的量子线路中的量子比特总数与量子程序的量子比特总数相同。可以理解为:一个量子程序可以由量子线路、针对量子线路中量子比特的测量操作、保存测量结果的寄存器及控制流节点(跳转指令)组成,一条量子线路可以包含几十上百个甚至千上万个量子逻辑门操作。量子程序的执行过程,就是对所有的量子逻辑门按照一定时序执行的过程。需要说明的是,时序即单个量子逻辑门被执行的时间顺序。
需要说明的是,经典计算中,最基本的单元是比特,而最基本的控制模式是逻辑门,可以通过逻辑门的组合来达到控制电路的目的。类似地,处理量子比特的方式就是量子逻辑门。使用量子逻辑门,能够使量子态发生演化,量子逻辑门是构成量子线路的基础,量子逻辑门包括单比特量子逻辑门,如Hadamard门(H门)、Pauli-X门、Pauli-Y门、Pauli-Z门、RX门、RY门、RZ门;多比特量子逻辑门,如CNOT门、CR门、iSWAP门、Toffoli门。量子逻辑门一般使用酉矩阵表示,而酉矩阵不仅是矩阵形式,也是一种操作和变换。一般量子逻辑门在量子态上的作用是通过酉矩阵左乘以量子态右矢对应的矩阵进行计算的。假设,一量子态右矢为则对应量子态左矢为/>其中,c1,c2,...,cn均为复数,/>表示cn的共轭。可见,右矢表示一个1×n的列矢量,左矢表示一个n×1的行矢量,且这两个矢量互为转置共轭。
参见图2,图2为本发明实施例提供的一种量子态的变换方法的流程示意图,可以包括如下步骤:
S201,获得一组量子比特位、一矩阵的元素信息;其中,所述一组量子比特位的第一量子态编码有元素的第一类下标的目标取值;
具体的,可以通过用户输入获得一组量子比特位和一个矩阵H的元素信息,该组量子比特位的数量可由用户根据矩阵结构的大小进行设置。在计算资源充分的情况下,也可设置很大数量的量子比特位,无条件满足绝大部分情况下的量子比特需求。
并且,第一类下标可以为行下标、第二类下标则为列下标;或者,第一类下标为列下标、第二类下标则为行下标,以下均以前者为例进行说明,第一类下标的目标取值即为目标行,该组量子比特位的当前量子态(即第一量子态)编码有目标行信息。
本领域技术人员可以理解的是,在经典计算机中,信息的基本单元是比特,一个比特有0和1两种状态,最常见的物理实现方式是通过电平的高低来表示这两种状态。在量子计算中,信息的基本单元是量子比特,一个量子比特也有0和1两种状态,记为|0>和|1>,但它可以处于0和1两种状态的叠加态,可表示为其中,a、b为表示|0>态、|1>态振幅(概率幅)的复数,这是经典比特不具备的。测量后,量子比特的状态会塌缩至一个确定的状态(本征态,此处为|0>态、|1>态),其中,塌缩至|0>的概率是|a|2,塌缩至|1>的概率是|b|2,|a|2+|b|2=1,|>为狄拉克符号。
量子态,即指量子比特的状态,其本征态在量子算法(或称量子程序)中用二进制表示。例如,一组量子比特为q0、q1、q2,表示第0位、第1位、第2位量子比特,从高位到低位排序为q2q1q0,该组量子比特的量子态为23个本征态的叠加态,8个本征态(确定的状态)是指:|000>、|001>、|010>、|011>、|100>、|101>、|110>、|111>,每个本征态与量子比特位对应一致,如|000>态,000从高位到低位对应q2q1q0。简言之,量子态是各本征态组成的叠加态,当其他态的概率幅为0时,即处于其中一个确定的本征态。
例如,目标取值为2,一组量子比特位有5位,则其第一量子态可为|00010>,其中,最低位的两位为二进制10,用于表示目标行为第2行。有用信息为最低位的两位信息,故第一量子态也可简写为|2>=|10>。
S202,从所述矩阵的元素信息中,查找所述第一类下标的取值为所述目标取值的特定类元素的第二类下标的取值及元素数值,并将所述第二类下标的取值及元素数值信息,编码到所述一组量子比特位的第一比特位和第二比特位的量子态上;
具体的,特定类元素可以为非0元素。编码到量子比特位的量子态上,具体是指编码到量子态右矢上,如上述的形式,采用竖线与尖括号的组合描述一个量子态,表示量子态是一个矢量(称为态矢、基矢等等),/>表示右矢,/>表示左矢。
具体的,步骤S202可以包括:
步骤S2021:将所述目标取值对应的目标行非0元素在该行所有非0中元素的序号,编码到所述一组量子比特位中的第一比特位,以将所述第一量子态变换为第三量子态;其中,所述第三量子态包含所述目标取值和序号信息,组成所述第三量子态的各本征态与各所述序号一一对应;
在一种实现方式中,第三量子态的形式可以如下:
简写为:其中,j为目标取值,表示矩阵的第j行;/>表示张量积或张乘;d为第j行的非0元素总数;l为非0元素在第j行所有非0中元素的序号,表示第l个非0元素,|l>对应的量子比特位即为第一比特位。
示例性的,一个3维矩阵从计算机编程语言及文字语义结合的角度,下述各序号、标号等等均以0开始计数。当前获得的第一量子态中的目标取值信息为0,即目标行为第0行。并且该矩阵H中,d=2,l=0,1。将l的值0和1均编码到第一比特位的量子态右矢上,振幅均设为/>可得,第三量子态为:
其中,子量子态中的本征态|0>、|1>对应第0个、第1个非0元素。在实际应用中,可利用现有技术,如通过现有的Hadamard门对第一量子态进行变换得到第三量子态,在此不对其进行赘述。
S2022:根据所述目标取值和所述序号,确定所述非0元素的列下标,并将所述列下标编码到所述第一比特位,以将所述第三量子态变换为第四量子态;其中,所述第四量子态包含非0元素的所述目标取值信息和所述列下标信息;
在一种实现方式中,第四量子态的形式可以如下:
其中,l′为非0元素的列下标,Fj表示矩阵H中第j行非0元素列下标位置的集合,|l′>对应的量子比特位为第一比特位。
继续以上述为例,矩阵H中第0个、第1个非0元素的列下标为1、2,Fj={1,2}。将l′的值1和2均编码到第一比特位的量子态右矢上,可得第四量子态为:
在实际应用中,可以获得预先构建的、矩阵行非0元素在该行所有非0中元素的序号与列下标间的索引关系;根据所述目标取值对应的目标行非0元素在该行所有非0中元素的序号以及所述索引关系,确定所述目标行非0元素的列下标。
例如,第0行第0个、第1个非0元素列下标为1、2,第1行第0个非0元素下标为1,第2行第0个非0元素列下标为0,则用户可预先构建一个二维向量(即矩阵)作为索引关系。
其中,矩阵F第0行第0列、第1列的元素F(0,0)=1、F(0,1)=2,表示矩阵H第0行第0个、第1个非0元素的列下标为l′为1、2。由于矩阵H第0行只有2个非0元素,该2个非0元素的列下标可优先置于矩阵F第0行前面,后面冗余元素F(0,2)=0表示矩阵H第0行第0个0元素的列下标为0。矩阵F的其余行同理进行表示。
获得用户输入的该二维向量F,根据目标行第0行对应F中元素行下标为0、序号0对应F中元素列下标为0,则取出F(0,0)=1,即为矩阵H中第0行第0个非0元素的列下标。其余非0元素的列下标同理进行确定。
或者,为了节省计算资源,构建的索引可以是其中,“%”表示占位填充,无实义。
S2023:根据所述目标取值信息及所述列下标信息,确定所述非0元素的元素数值,并将所述元素数值编码到所述一组量子比特位中的第二比特位,以将所述第四量子态变换为包含所述目标取值信息、所述列下标信息和所述元素数值信息的第五量子态。
在一种实现方式中,第五量子态的形式可以如下:
其中,Hjl′为矩阵第j行第l′列的非0元素数值,|Hjl′>对应的量子比特位即为第二比特位。第二比特位在第三量子态、第四量子态中未体现,不代表其不存在,只是由于未参与之前量子态的变换,在形式上对其进行了忽略,下述第三比特位等等同理。
需要说明的是,如果Hjl′为复数,可以将实部和虚部编码到第二比特位上,即|Hjl′>=|real>|imag>,real表示实部,image表示虚部;如果Hjl′写成欧拉形式reiθ,则可将r和θ的信息编码到第二比特位,即|Hjl′>=|r>|θ>。
继续以上述为例,H01=1,H02=2。将1和2编码到第三比特位上,可得第五量子态为:
即为:
/>
S203,将所述特定类元素的元素数值信息,编码到所述一组量子比特位的第三比特位的量子态振幅上,以将所述第一量子态|j>变换为第一预设形式的第二量子态|Ψj>,其中,所述j为所述第一类下标。
具体的,上述一组量子比特位的第一量子态,作为变换前的初态,包括编码j的量子比特位的子量子态|j>和其余量子比特位的初始子量子态,包含的有用信息是目标取值j即第j行的信息,则第一量子态可简便表示为|j>,其余量子比特位的初始子量子态不限定,在此设为|0>态。
变换后的末态即为第二量子态,其形式|Ψj>由用户预设设定,也就是用户想要获得的特定量子态,用于量子随机行走技术领域,以解决哈密顿量的模拟及求解线性方程组等问题。该第二量子态|Ψj>的第一预设形式,可以为第一种形式:
或者为第二种形式:
令则/>
其中,Hjl′ *为矩阵H第j行第l′列的非0元素数值的共轭,Hmax为矩阵H中绝对值最大的元素数值。
具体的,可以将当前所述一组量子比特位中的第三比特位的初始子量子态,变换为第二预设形式的子量子态;其中,所述第二预设形式由所述第一预设形式确定,所述第二预设形式的子量子态的振幅由所述特定类元素的元素数值确定。
其中,第二预设形式可以为:
在第一预设形式为第一种形式的情况下,继续以上述为例,H00=1,H01=2,H00 *=1,H01 *=2,Hmax=4,第五量子态为:
此时,第五量子态形式上未体现第三比特位,假设第三比特位的初始子量子态为|0>态,则第五量子态实际上为:其中,|0>态对应的第三比特位作为辅助比特位,位数不做限定,为了节省量子比特资源,通常设1位即可。
基于|Hjl′>对应的第二比特位,将该辅助比特位对应的量子比特状态|0>(即初始子量子态)变换为叠加状态(即第二预设形式的子量子态),得到:
二进制表示为:
可见,该组量子比特位至少设为6位,可设为q5q4q3q2q1q0,q5编码j,q4q3编码l或l′,q2q1编码Hjl′,q0为第三比特位。为了满足矩阵所有行的普适情况:j最大值为2,需要2位编码;l或l′最大值为2,需要2位编码;Hjl′最大值为4,需要3位编码;第三比特位即辅助比特位,最低需要1位,可得,一组量子比特位共需要8位。对于任一M*N的矩阵,所设置的一组量子比特位的位数可概括为:/>其中,如果表示向上取整;s表示编码矩阵元素值所需的量子比特位数,1表示第三比特位数。
实际上,此时用户已不再需要矩阵元素数值本身的信息,在将|Hjl′>|0>变换为后,还可执行前述将第四量子态变换为第五量子态对应的逆变换操作(转置共轭操作),还原为变换前的态:从而释放编码Hjl′的第二比特位,减少资源占用。可见,第二种形式是由第一种形式进一步转化的形式,也是第一预设形式的优选形式。
进一步的,一组量子比特位还可以包括:第四比特位,用于模拟量子计算中的受控操作,具体是指:根据所述第四比特位,判断是否执行所述将所述第一量子态变换为第一预设形式的第二量子态的步骤。第二比特位作为受控标识位,无其他物理意义,对位数不做限定,为了减少计算资源的占用,优选一位即可。
具体的,可以获得所述第一量子态中对应所述第四比特位的子量子态;当所述子量子态的所有位均为1时,执行所述将所述第一量子态变换为第一预设形式的第二量子态的步骤。当然,子量子态的所有位也可以设置均为0时,执行该步骤,只是前者更为通用。
在实际应用中,该变换方案应用到量子线路整体中,在量子态随线路演化到第一量子态时,假设为|q6q5q4q3q2q1q0>=|1000000>,q6表示第四比特位,判断当前第一量子态中对应的第四比特位为1,则执行当前第一量子态到第二量子态的变换操作。
进一步的,为了方便后续还原,还可以对变换后的第二量子态进行逆变换操作,即:执行所述将所述第一量子态变换为第一预设形式的第二量子态的步骤对应的转置共轭操作,以将所述第二量子态还原为所述第一量子态。在实际的量子应用中,变换与转置共轭操作往往成对出现。
在量子应用中,可以通过构造一种Oracle或Oracle组合,该Oracle或组合的内部原理即为本发明的方法流程。具体的,Oracle可以理解为在量子算法中完成特定功能的模块(类似黑盒),在具体问题中会有具体的实现方式。
目前,现有的量子线路构建往往只能够利用现有的单量子逻辑门、双量子逻辑门等等,通常存在以下问题:
对于功能比较复杂的量子线路,需要用到的量子比特数量会非常多,使用经典计算机进行模拟的时候会消耗巨大的内存空间,需要用到的逻辑门数量会非常多,模拟耗时会非常长。并且,一些复杂的算法难以用量子线路进行实现。
基于此,通过改用Oracle模拟的方式实现特定的复杂功能,并实现受控和转置共轭操作。用户传入Oracle的参数,可以包括:Oracle名称(用于识别Oracle的功能用途)、前述的一组量子比特位、矩阵元素(可存储在一维向量V中)、索引关系(如前述二维向量M)等等。
这种方式的好处是,整体上将Oracle作为已知模块,无需关注其内部的实现细节,在量子应用场景例如量子线路的表示上,会非常的简单明了。由于可以将经典模拟的Oracle功能模块等效成量子逻辑门,使得构建的量子线路得以简化,因此节省了运行时所需的内存空间,并加快量子算法的模拟验证。
参见图3,图3为本发明实施例提供的一种量子态的变换方法对应的量子线路示意图。本领域技术人员可以理解的是,H表示H门,OF、OH、M表示不同功能的Oracle,表示OH的转置共轭,T表示H门及Oracle组合的整体功能模块,T模块的功能即为将|j>变换为|Ψj>。并且,获得的输入该T模块的矩阵为N阶矩阵,上方|j>处/>中的N表示行数,下方中的N表示列数,其余表示同上。构建的T模块在量子线路中可等效于量子逻辑门,其矩阵形式为:∑j∈[N]|Ψj><j|,其中,<j|为量子态左矢。
具体的,利用H门,构建叠加态:OF实现变换:OH实现变换:/>M实现变换:/>最后,再调用一次OH进行转置共轭操作,将编码Hjl′的量子比特回收,进而输出|Ψj>。
需要说明的是,该示意图只示出了与本申请相关的部分量子线路,图中各标识及连接关系,仅仅作为示例,并不构成对本发明的限定。
可见,通过获得一组量子比特位、一矩阵的元素信息,其中,一组量子比特位的第一量子态编码有元素的第一类下标的目标取值。从矩阵的元素信息中,查找第一类下标的取值为目标取值的特定类元素的第二类下标的取值及元素数值,并将第二类下标的取值及元素数值信息,编码到一组量子比特位的第一比特位,将特定类元素的元素数值信息,编码到一组量子比特位的第二比特位,以将第一量子态变换为第一预设形式的第二量子态,在实际应用中,将量子态的形式预设为量子随机行走相关,从而获得应用到量子随机行走中所需的特定量子态(即第二量子态),用于量子计算的经典模拟,并填补相关技术空白,进一步拓展针对量子算法及量子计算机的研究。
参见图4,图4为本发明实施例提供的一种量子线路的构建方法的流程示意图,可以包括如下步骤:
S401,构建用于将第一量子态变换为第一预设形式的第二量子态的第一功能模块;其中,所述第一功能模块的第一矩阵形式T=∑j∈[N]|Ψj><j|,所述N为获得的矩阵的行数;
具体的,构建用于将上述第一量子态|j>变换为第一预设形式的第二量子态|Ψj>的第一功能模块,其中,第一功能模块的第一矩阵形式T=∑j∈[N]|Ψj><j|,第一功能模块T的功能即为将|j>变换为|Ψj>。并且,获得的输入该T模块的矩阵为N阶矩阵,且N为获得的矩阵的行数,构建的T模块在量子线路中可等效于量子逻辑门,其矩阵形式为:∑j∈[N]|Ψj><j|,其中,<j|为量子态左矢。
S402,利用Oracle和量子逻辑门,构建实现第二功能模块的量子线路,其中,所述第二功能模块的第二矩阵形式所述S为交换操作模块的酉矩阵,所述T+为所述T的转置共轭,/>为4N2维单位矩阵。
具体的,可以只单独利用Oracle构建实现第二功能模块的量子线路,也可以利用Oracle和量子逻辑门的组合来实现第二功能模块的量子线路,包括如下:
S4021,利用Oracle,分别构建第一功能子模块和第二功能子模块;其中,所述第一功能子模块的矩阵形式T1满足:T·|j>2N=|Ψj>,其中,/>为T1的转置共轭、且为所述第二功能子模块的矩阵形式;T1和/>均为酉矩阵;
S4022,利用Oracle或量子逻辑门,构建第三功能子模块,其中,所述第三功能子模块的矩阵形式N=2|0><0|-I2N,为2N*2N的酉矩阵;
在一种实施方式中,可以构建包含泡利-X门和泡利-Z门的第一子量子线路,作为第三功能子模块,其中,所述泡利-Z门处于第一受控状态。
在另一种实施方式中,可以构建包含泡利-X门、H门和CNOT门的第二子量子线路,作为第三功能子模块,其中,所述CNOT门处于第二受控状态。
在另一种实施方式中,可以利用现有技术构建实现2|0><0|-I2N的变换的Oracle,作为第三功能子模块。
S4023,构建一个交换操作模块,用于对量子比特的量子态进行交换操作;根据各功能子模块和所述交换操作模块分别操作的量子比特,将所述第二功能子模块、第三功能子模块、第一功能子模块和所述交换操作模块,依序插设到量子线路中。
本领域技术人员能够理解的是,量子线路的本质是各个变换对应的矩阵形式按照时序对量子态矢量执行的操作,实现量子态的演化,不管是模拟量子线路上的Oracle变换还是量子逻辑门变换,其实都是对应矩阵与量子态的运算,正如前述所指,具体是通过酉矩阵左乘以量子态右矢进行计算的。
通过上述三个功能子模块和一交换操作模块,能够实现W对应量子线路的构建,是由于存在以下原理:
并且,
即可以得出一种如图5所示的量子线路,包括如下四部分:
(1):第一个时序上的对应的功能模块,其矩阵为T1的转置共轭(T1实现变换:对应的功能模块则实现其逆变换),可使用现有的Oracle技术构建,得到的所述第二功能子模块其实就是一个实现该特定变换功能的Oracle;
(2):第二个时序上的对应的功能模块,具体又可分为两部分:矩阵形式I2N对应的功能模块,实现单位操作,即保持量子态不变,可以忽略,即为空量子逻辑门;矩阵形式(2|0><0|2N-I2N)对应的功能模块即所述第三功能子模块,可使用Oracle技术构建实现该矩阵形式的变换,也可使用现有的量子逻辑门构建;
具体的,第三功能子模块的一种构建方式的示例如图6所示,可由左右两条子量子线路的任一条实现(等效),其中,左半部分图6(a)的第一子量子线路中各图标依次表示:泡利-X门、第一受控状态的泡利-Z门和泡利-X门,与Z门相连的空心点表示量子态为|0>时,执行Z门操作,第一受控状态记为0控或虚控;右半部分依次表示:泡利-X门、H门、第二受控状态的CNOT门(控制-NOT门)、H门和泡利-X门,与NOT门相连的实心点表示量子态为|1>时,执行NOT门操作,第二受控状态记为1控或实控。
对于右半部分图6(b)的第二子量子线路,其矩阵形式为:
为单位矩阵。需要说明的是,I4是4维的单位矩阵,目的是保持维度统一,其余的下标表示同理。
此为2量子比特的构建情况,可见,除了相差一个可忽略的总相位因子(-1)之外,该量子线路实现了2|0><0|4-I4的变换。对于多量子比特的情形,利用现有的数学归纳法同理对其扩展,得到所需求的、实现2|0><0|2N-I2N的变换的量子线路,例如图6(c)所示,本申请在此不对其赘述。
(3):第三个时序上的对应的功能模块,用于实现变换:/> 同样的,可以通过构建一个实现该具体变换功能的Oracle,即为所述第一功能子模块;
(4):第四个时序上的一个交换操作模块,实现交换操作,矩阵形式为S,对于j,k∈[2N],则S·|j,k>=|k,j>。交换操作模块可通过现有技术,由一系列CNOT门组合构建得到。现有的SWAP门,即为2量子比特情形的交换操作,其酉矩阵为
另外,图5中,|j>处的log2N=log22N,表示log2N个量子比特位用于编码j的值,|0>处表示同理。
总结来说,对于第二功能模块,其是一个4N2*4N2的酉矩阵;T=∑j∈[N]|Ψj><j|;/>|Ψj>为4N2维列向量;为2N维列向量,当j∈[N+1,2N]时,|φj>=0,矩阵H的信息在运行量子线路中的Oracle模块前,可由用户输入Oracle。
在实际应用中,将量子态看成是一个位置,则W变换前的量子态处于一个位置,经一次W变换后,得到处于另一位置的量子态,因此,W可以看做是离散量子行走的一步,其作为量子行走空间(quantum walk space)中的行走算子(walk operator),在解决哈密顿量模拟以及解线性方程组的量子算法中具有广泛的应用。
参见图7,根据上述方法构建的量子线路,对应一种量子线路的运行方法,可以包括:
S701,获得当前的待变换量子态;其中,所述待变换量子态为|α>;
其中,|α>的一种量子态可以为/>
S702,将所述待变换量子态,变换为第一中间量子态;其中,所述第一中间量子态为
具体的,第一中间量子态可以为
S703,将所述第一中间量子态,变换为第二中间量子态;其中,所述第二中间量子态为
具体的,第二中间量子态可以为
S704,将所述第二中间量子态,变换为第三中间量子态;其中,所述第三中间量子态为
具体的,;其中,所述第三中间量子态可以为
S705,将所述第三中间量子态,经交换操作模块操作,以变换为末量子态;其中,所述末量子态为:
具体的,所述末量子态可以为
关于该量子线路运行过程中各功能模块及量子逻辑门涉及的变换操作,前述已进行对应说明,在此不对其进行赘述。
可见,构建并运行实现变换W的简洁的量子线路,填补了相关技术空白,用于量子计算模拟,亦便于量子算法及量子计算机的拓展研究。
参见图8,图8为本发明实施例提供的一种量子态的变换装置的结构示意图,与图2所示的流程对应,可以包括:
获得模块801,用于获得一组量子比特位、一矩阵的元素信息;其中,所述一组量子比特位的第一量子态编码有元素的第一类下标的目标取值;
第一编码模块802,用于从所述矩阵的元素信息中,查找所述第一类下标的取值为所述目标取值的特定类元素的第二类下标的取值及元素数值,并将所述第二类下标的取值及元素数值信息,编码到所述一组量子比特位的第一比特位和第二比特位的量子态上;
第二编码模块803,用于将所述特定类元素的元素数值信息,编码到所述一组量子比特位的第三比特位的量子态振幅上,以将所述第一量子态变换为第一预设形式的第二量子态。
具体的,所述第一类下标为:行下标,所述第二类下标为:列下标。
具体的,所述特定类元素为:非0元素。
具体的,所述第一编码模块,具体用于:
将所述目标取值对应的目标行非0元素在该行所有非0中元素的序号,编码到所述一组量子比特位中的第一比特位,以将所述第一量子态变换为第三量子态;其中,所述第三量子态包含所述目标取值和序号信息,组成所述第三量子态的各本征态与各所述序号一一对应;
根据所述目标取值和所述序号,确定所述非0元素的列下标,并将所述列下标编码到所述第一比特位,以将所述第三量子态变换为第四量子态;其中,所述第四量子态包含非0元素的所述目标取值信息和所述列下标信息;
根据所述目标取值信息及所述列下标信息,确定所述非0元素的元素数值,并将所述元素数值编码到所述一组量子比特位中的第三比特位,以将所述第四量子态变换为包含所述目标取值信息、所述列下标信息和所述元素数值信息的第五量子态。
具体的,所述第一编码模块,具体用于:
获得预先构建的、矩阵行非0元素在该行所有非0中元素的序号与列下标间的索引关系;
根据所述目标取值对应的目标行非0元素在该行所有非0中元素的序号以及所述索引关系,确定所述目标行非0元素的列下标。
具体的,所述第二编码模块,具体用于:
将当前所述一组量子比特位中的第三比特位的初始子量子态,变换为第二预设形式的子量子态;其中,所述第二预设形式由所述第一预设形式确定,所述第二预设形式的子量子态的振幅由所述特定类元素的元素数值确定。
具体的,所述一组量子比特位还包括:第四比特位;
所述装置还包括:
判断模块,用于根据所述第四比特位,判断是否执行所述将所述第一量子态变换为第一预设形式的第二量子态的步骤。
具体的,所述判断模块,具体用于:
获得所述第一量子态中对应所述第四比特位的子量子态;
当所述子量子态的所有位均为1时,执行所述将所述第一量子态变换为第一预设形式的第二量子态的步骤。
具体的,所述装置还包括:
转置共轭操作模块,用于执行所述将所述第一量子态变换为第一预设形式的第二量子态的步骤对应的转置共轭操作,以将所述第二量子态还原为所述第一量子态。
可见,通过获得一组量子比特位、一矩阵的元素信息,其中,一组量子比特位的第一量子态编码有元素的第一类下标的目标取值。从矩阵的元素信息中,查找第一类下标的取值为目标取值的特定类元素的第二类下标的取值及元素数值,并将第二类下标的取值及元素数值信息,编码到一组量子比特位的第一比特位,将特定类元素的元素数值信息,编码到一组量子比特位的第二比特位,以将第一量子态变换为第一预设形式的第二量子态,在实际应用中,将量子态的形式预设为量子随机行走相关,从而获得应用到量子随机行走中所需的特定量子态(即第二量子态),用于量子计算的经典模拟,并填补相关技术空白,进一步拓展针对量子算法及量子计算机的研究。
参见图9,图9为本发明实施例提供的一种量子线路的构建装置的结构示意图,与图4所示的流程对应,可以包括:
第一构建模块901,构建用于将第一量子态变换为第一预设形式的第二量子态的第一功能模块;其中,所述第一功能模块的第一矩阵形式T=∑j∈[N]|Ψj><j|,所述N为获得的矩阵的行数;
第二构建模块902,用于利用Oracle和量子逻辑门,构建实现第二功能模块的量子线路,其中,所述第二功能模块的第二矩阵形式 所述S为交换操作模块的酉矩阵,所述T+为所述T的转置共轭,/>为4N2维单位矩阵。
具体的,所述第二构建模块,包括:
第一构建单元,用于利用Oracle,分别构建第一功能子模块和第二功能子模块;其中,所述第一功能子模块的矩阵形式T1满足: T·|j>2N=|Ψj>,/>其中,/>为T1的转置共轭、且为所述第二功能子模块的矩阵形式;
第二构建单元,用于利用Oracle或量子逻辑门,构建第三功能子模块,其中,所述第三功能子模块的矩阵形式N=2|0><0|-I2N;
第三构建单元,用于构建一个交换操作模块,根据各功能子模块和所述交换操作模块分别操作的量子比特,将所述第二功能子模块、第三功能子模块、第一功能子模块和所述交换操作模块,依序插设到量子线路中。
具体的,所述第二构建单元,具体用于:
构建包含泡利-X门和泡利-Z门的第一子量子线路,作为第三功能子模块,其中,所述泡利-Z门处于第一受控状态。
具体的,所述第二构建单元,具体用于:
构建包含泡利-X门、H门和CNOT门的第二子量子线路,作为第三功能子模块,其中,所述CNOT门处于第二受控状态。
参见图10,图10为本发明实施例提供的一种量子线路的运行装置的结构示意图,与图7所示的流程对应,可以包括:
第一运行模块1001,用于获得当前的待变换量子态;其中,所述待变换量子态为|α>;
第二运行模块1002,用于将所述待变换量子态,变换为第一中间量子态;其中,所述第一中间量子态为
第三运行模块1003,用于将所述第一中间量子态,变换为第二中间量子态;其中,所述第二中间量子态为
第四运行模块1004,用于将所述第二中间量子态,变换为第三中间量子态;其中,所述第三中间量子态为
第五运行模块1005,用于将所述第三中间量子态,经交换操作模块操作,以变换为末量子态;其中,所述末量子态为:
本发明实施例还包括一种存储介质,所述存储介质中存储有计算机程序,其中,所述计算机程序被设置为运行时执行上述任一项方法实施例中的步骤。
具体的,在本实施例中,上述存储介质可以被设置为存储用于执行以下步骤的计算机程序:
S1,获得一组量子比特位、一矩阵的元素信息;其中,所述一组量子比特位的第一量子态编码有元素的第一类下标的目标取值;
S2,从所述矩阵的元素信息中,查找所述第一类下标的取值为所述目标取值的特定类元素的第二类下标的取值及元素数值,并将所述第二类下标的取值及元素数值信息,编码到所述一组量子比特位的第一比特位和第二比特位的量子态上;
S3,将所述特定类元素的元素数值信息,编码到所述一组量子比特位的第三比特位的量子态振幅上,以将所述第一量子态变换为第一预设形式的第二量子态。
具体的,在本实施例中,上述存储介质可以包括但不限于:U盘、只读存储器(Read-Only Memory,简称为ROM)、随机存取存储器(Random Access Memory,简称为RAM)、移动硬盘、磁碟或者光盘等各种可以存储计算机程序的介质。
可见,通过获得一组量子比特位、一矩阵的元素信息,其中,一组量子比特位的第一量子态编码有元素的第一类下标的目标取值。从矩阵的元素信息中,查找第一类下标的取值为目标取值的特定类元素的第二类下标的取值及元素数值,并将第二类下标的取值及元素数值信息,编码到一组量子比特位的第一比特位,将特定类元素的元素数值信息,编码到一组量子比特位的第二比特位,以将第一量子态变换为第一预设形式的第二量子态,在实际应用中,将量子态的形式预设为量子随机行走相关,从而获得应用到量子随机行走中所需的特定量子态(即第二量子态),用于量子计算的经典模拟,并填补相关技术空白,进一步拓展针对量子算法及量子计算机的研究。
本发明实施例还包括一种电子装置,包括存储器和处理器,所述存储器中存储有计算机程序,所述处理器被设置为运行所述计算机程序以执行上述任一项方法实施例中的步骤。
具体的,上述电子装置还可以包括传输设备以及输入输出设备,其中,该传输设备和上述处理器连接,该输入输出设备和上述处理器连接。
具体的,在本实施例中,上述处理器可以被设置为通过计算机程序执行以下步骤:
S1,获得一组量子比特位、一矩阵的元素信息;其中,所述一组量子比特位的第一量子态编码有元素的第一类下标的目标取值;
S2,从所述矩阵的元素信息中,查找所述第一类下标的取值为所述目标取值的特定类元素的第二类下标的取值及元素数值,并将所述第二类下标的取值及元素数值信息,编码到所述一组量子比特位的第一比特位和第二比特位的量子态上;
S3,将所述特定类元素的元素数值信息,编码到所述一组量子比特位的第三比特位的量子态振幅上,以将所述第一量子态变换为第一预设形式的第二量子态。
可见,通过获得一组量子比特位、一矩阵的元素信息,其中,一组量子比特位的第一量子态编码有元素的第一类下标的目标取值。从矩阵的元素信息中,查找第一类下标的取值为目标取值的特定类元素的第二类下标的取值及元素数值,并将第二类下标的取值及元素数值信息,编码到一组量子比特位的第一比特位,将特定类元素的元素数值信息,编码到一组量子比特位的第二比特位,以将第一量子态变换为第一预设形式的第二量子态,在实际应用中,将量子态的形式预设为量子随机行走相关,从而获得应用到量子随机行走中所需的特定量子态(即第二量子态),用于量子计算的经典模拟,并填补相关技术空白,进一步拓展针对量子算法及量子计算机的研究。
以上依据图式所示的实施例详细说明了本发明的构造、特征及作用效果,以上所述仅为本发明的较佳实施例,但本发明不以图面所示限定实施范围,凡是依照本发明的构想所作的改变,或修改为等同变化的等效实施例,仍未超出说明书与图示所涵盖的精神时,均应在本发明的保护范围内。
Claims (17)
1.一种量子线路的构建方法,其特征在于,包括:
构建用于将第一量子态变换为第一预设形式的第二量子态的第一功能模块;其中,所述第一功能模块的第一矩阵形式,所述N为获得的矩阵的行数;
利用Oracle和量子逻辑门,构建实现第二功能模块的量子线路,其中,所述第二功能模块的第二矩阵形式,所述S为交换操作模块的酉矩阵,所述/>为所述/>的转置共轭,/>为/>维单位矩阵,所述第二功能模块的量子线路通过第二功能子模块、第三功能子模块、第一功能子模块和所述交换操作模块依序插设实现,所述第二功能子模块和所述第一功能子模块基于Oracle构建,所述第三功能子模块基于Oracle或量子逻辑门构建,所述第一功能子模块的矩阵形式/>和所述第二功能子模块的矩阵形式/>互为转置共轭,所述第三功能子模块为/>的酉矩阵。
2.根据权利要求1所述的方法,其特征在于,所述第三功能子模块基于Oracle或量子逻辑门构建,包括:
构建包含泡利-X门和泡利-Z门的第一子量子线路,作为第三功能子模块,其中,所述泡利-Z门处于第一受控状态。
3.根据权利要求2所述的方法,其特征在于,所述第三功能子模块基于Oracle或量子逻辑门构建,还包括:
构建包含泡利-X门、H门和CNOT门的第二子量子线路,作为第三功能子模块,其中,所述CNOT门处于第二受控状态。
4.一种量子线路,其特征在于,根据权利要求1-3任一项方法构建量子线路。
5.一种量子线路的运行方法,其特征在于,包括:
获得当前的待变换量子态;其中,所述待变换量子态为,满足/>;
将所述待变换量子态,变换为第一中间量子态;其中,所述第一中间量子态为,为酉矩阵,满足/>,/>为单位矩阵;
将所述第一中间量子态,变换为第二中间量子态;其中,所述第二中间量子态为;
将所述第二中间量子态,变换为第三中间量子态;其中,所述第三中间量子态为;
将所述第三中间量子态,经交换操作模块操作,以变换为末量子态;其中,所述末量子态为:,S为交换操作模块的酉矩阵。
6.一种量子态的变换方法,其特征在于,包括:
获得一组量子比特位、一矩阵的元素信息;其中,所述一组量子比特位的第一量子态编码有元素的第一类下标的目标取值,其中,所述第一类下标为行下标,第二类下标为列下标;
将所述矩阵的非0元素的元素数值信息,编码到所述一组量子比特位的第三比特位的量子态振幅上,以将所述第一量子态变换为第一预设形式的第二量子态/>,其中,所述j为所述第一类下标;
将所述目标取值对应的目标行非0元素在该行所有非0中元素的序号,编码到所述一组量子比特位中的第一比特位,以将所述第一量子态变换为第三量子态;
根据所述目标取值和所述序号,确定所述非0元素的列下标,并将所述列下标编码到所述第一比特位,以将所述第三量子态变换为第四量子态;
根据所述目标取值信息及所述列下标信息,确定所述非0元素的元素数值,并将所述元素数值编码到所述一组量子比特位中的第二比特位,以将所述第四量子态变换为包含所述目标取值信息、所述列下标信息和所述元素数值信息的第五量子态。
7.根据权利要求6所述的方法,其特征在于,所述第三量子态包含所述目标取值和序号信息,组成所述第三量子态的各本征态与各所述序号一一对应;
所述第四量子态包含非0元素的所述目标取值信息和所述列下标信息。
8.根据权利要求6所述的方法,其特征在于,所述根据所述目标取值和所述序号,确定所述非0元素的列下标,包括:
获得预先构建的、矩阵行非0元素在该行所有非0中元素的序号与列下标间的索引关系;
根据所述目标取值对应的目标行非0元素在该行所有非0中元素的序号以及所述索引关系,确定所述目标行非0元素的列下标。
9.根据权利要求6所述的方法,其特征在于,所述将所述矩阵的非0元素的元素数值信息,编码到所述一组量子比特位的第三比特位的量子态振幅上,包括:
将当前所述一组量子比特位中的第三比特位的初始子量子态,变换为第二预设形式的子量子态;其中,所述第二预设形式由所述第一预设形式确定,所述第二预设形式的子量子态的振幅由所述特定类元素的元素数值确定。
10.根据权利要求6所述的方法,其特征在于,所述一组量子比特位还包括:第四比特位;
所述方法还包括:
根据所述第四比特位,判断是否执行所述将所述第一量子态变换为第一预设形式的第二量子态的步骤。
11.根据权利要求10所述的方法,其特征在于,所述根据所述第四比特位,判断是否执行所述将所述第一量子态变换为第一预设形式的第二量子态的步骤,包括:
获得所述第一量子态中对应所述第四比特位的子量子态;
当所述子量子态的所有位均为1时,执行所述将所述第一量子态变换为第一预设形式的第二量子态的步骤。
12.根据权利要求6所述的方法,其特征在于,所述方法还包括:
执行所述将所述第一量子态变换为第一预设形式的第二量子态的步骤对应的转置共轭操作,以将所述第二量子态还原为所述第一量子态。
13.一种量子线路的构建装置,其特征在于,包括:
第一构建模块,用于构建用于将第一量子态变换为第一预设形式的第二量子态的第一功能模块;其中,所述第一功能模块的第一矩阵形式,所述N为获得的矩阵的行数;
第二构建模块,用于利用Oracle和量子逻辑门,构建实现第二功能模块的量子线路,其中,所述第二功能模块的第二矩阵形式,所述S为交换操作模块的酉矩阵,所述/>为所述/>的转置共轭,/>为/>维单位矩阵,所述第二功能模块的量子线路通过第二功能子模块、第三功能子模块、第一功能子模块和所述交换操作模块依序插设实现,所述第二功能子模块和所述第一功能子模块基于Oracle构建,所述第三功能子模块基于Oracle或量子逻辑门构建,所述第一功能子模块的矩阵形式/>和所述第二功能子模块的矩阵形式/>互为转置共轭,所述第三功能子模块为/>的酉矩阵。
14.一种量子线路的运行装置,其特征在于,包括:
第一运行模块,用于获得当前的待变换量子态;其中,所述待变换量子态为,满足;
第二运行模块,用于将所述待变换量子态,变换为第一中间量子态;其中,所述第一中间量子态为,/>为酉矩阵,满足/>,/>为单位矩阵;
第三运行模块,用于将所述第一中间量子态,变换为第二中间量子态;其中,所述第二中间量子态为;
第四运行模块,用于将所述第二中间量子态,变换为第三中间量子态;其中,所述第三中间量子态为;
第五运行模块,用于将所述第三中间量子态,经交换操作模块操作,以变换为末量子态;其中,所述末量子态为:,S为交换操作模块的酉矩阵。
15.一种量子态的变换装置,其特征在于,包括:
获得模块,用于获得一组量子比特位、一矩阵的元素信息;其中,所述一组量子比特位的第一量子态编码有元素的第一类下标的目标取值,其中,所述第一类下标为行下标,第二类下标为列下标;
第一编码模块,用于将所述矩阵的非0元素的元素数值信息,编码到所述一组量子比特位的第三比特位的量子态振幅上,以将所述第一量子态变换为第一预设形式的第二量子态/>,其中,所述j为所述第一类下标;
第二编码模块,用于将所述目标取值对应的目标行非0元素在该行所有非0中元素的序号,编码到所述一组量子比特位中的第一比特位,以将所述第一量子态变换为第三量子态;
第三编码模块,用于根据所述目标取值和所述序号,确定所述非0元素的列下标,并将所述列下标编码到所述第一比特位,以将所述第三量子态变换为第四量子态
第四编码模块,用于根据所述目标取值信息及所述列下标信息,确定所述非0元素的元素数值,并将所述元素数值编码到所述一组量子比特位中的第二比特位,以将所述第四量子态变换为包含所述目标取值信息、所述列下标信息和所述元素数值信息的第五量子态。
16.一种存储介质,其特征在于,所述存储介质中存储有计算机程序,其中,所述计算机程序被设置为运行时执行权利要求1至3或权利要求5至12任一项中所述的方法。
17.一种电子装置,包括存储器和处理器,其特征在于,所述存储器中存储有计算机程序,所述处理器被设置为运行所述计算机程序以执行权利要求1至3或权利要求5至12任一项中所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010071897.2A CN113222150B (zh) | 2020-01-21 | 2020-01-21 | 一种量子态的变换方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010071897.2A CN113222150B (zh) | 2020-01-21 | 2020-01-21 | 一种量子态的变换方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113222150A CN113222150A (zh) | 2021-08-06 |
CN113222150B true CN113222150B (zh) | 2023-08-08 |
Family
ID=77085346
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010071897.2A Active CN113222150B (zh) | 2020-01-21 | 2020-01-21 | 一种量子态的变换方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113222150B (zh) |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115809707B (zh) * | 2021-09-14 | 2024-06-14 | 本源量子计算科技(合肥)股份有限公司 | 量子比较运算方法、装置、电子装置及基础算术组件 |
CN114492816B (zh) * | 2022-01-28 | 2023-03-24 | 北京百度网讯科技有限公司 | 量子态处理方法、计算设备、计算装置及存储介质 |
CN114444704B (zh) * | 2022-02-22 | 2023-09-05 | 合肥本源量子计算科技有限责任公司 | 将原始数据编码到量子线路的方法、装置及存储介质 |
CN115169568B (zh) * | 2022-07-20 | 2023-03-10 | 北京百度网讯科技有限公司 | 量子计算处理方法、装置及电子设备 |
CN117991409A (zh) * | 2022-10-28 | 2024-05-07 | 本源量子计算科技(合肥)股份有限公司 | 一种数值天气预报方法、装置、存储介质及电子装置 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108154240A (zh) * | 2017-12-29 | 2018-06-12 | 合肥本源量子计算科技有限责任公司 | 一种低复杂度的量子线路模拟*** |
CN110188885A (zh) * | 2019-06-28 | 2019-08-30 | 合肥本源量子计算科技有限责任公司 | 一种量子计算模拟方法、装置、存储介质和电子装置 |
CN110705711A (zh) * | 2019-09-17 | 2020-01-17 | 合肥本源量子计算科技有限责任公司 | 一种量子态信息降维编码方法及装置 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20190102496A1 (en) * | 2017-09-29 | 2019-04-04 | International Business Machines Corporation | Interactive user interface for composing quantum circuits |
-
2020
- 2020-01-21 CN CN202010071897.2A patent/CN113222150B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108154240A (zh) * | 2017-12-29 | 2018-06-12 | 合肥本源量子计算科技有限责任公司 | 一种低复杂度的量子线路模拟*** |
CN110188885A (zh) * | 2019-06-28 | 2019-08-30 | 合肥本源量子计算科技有限责任公司 | 一种量子计算模拟方法、装置、存储介质和电子装置 |
CN110705711A (zh) * | 2019-09-17 | 2020-01-17 | 合肥本源量子计算科技有限责任公司 | 一种量子态信息降维编码方法及装置 |
Non-Patent Citations (1)
Title |
---|
谢可夫,罗安.量子启发数学形态学的研究.电子学报.2005,(第02期),全文. * |
Also Published As
Publication number | Publication date |
---|---|
CN113222150A (zh) | 2021-08-06 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN113222150B (zh) | 一种量子态的变换方法及装置 | |
CN111582491B (zh) | 一种量子线路的构建方法及装置 | |
CN112114776B (zh) | 一种量子乘法运算方法、装置、电子装置及存储介质 | |
CN112232513B (zh) | 一种量子态的制备方法及装置 | |
CN113850389B (zh) | 一种量子线路的构建方法及装置 | |
CN114764549B (zh) | 基于矩阵乘积态的量子线路模拟计算方法、装置 | |
CN113222153B (zh) | 一种量子态的模拟方法、装置、存储介质和电子装置 | |
CN113222159B (zh) | 一种量子态的确定方法及装置 | |
CN113222151B (zh) | 一种量子态的变换方法及装置 | |
CN113222160B (zh) | 一种量子态的转换方法及装置 | |
CN115809707B (zh) | 量子比较运算方法、装置、电子装置及基础算术组件 | |
CN117709415A (zh) | 一种量子神经网络模型的优化方法及装置 | |
CN114764618B (zh) | 一种针对线性***的量子预处理方法及装置 | |
CN114692879B (zh) | 一种基于稀疏线性***的量子预处理方法及装置 | |
WO2022143789A1 (zh) | 量子预处理方法、装置、存储介质及电子装置 | |
CN115879557B (zh) | 基于量子线路的数据大小比较方法、装置及量子计算机 | |
CN114819167B (zh) | 一种稀疏线性***的稀疏近似逆量子预处理方法及装置 | |
CN116432710B (zh) | 机器学习模型构建方法、机器学习框架及相关设备 | |
CN115713122B (zh) | 一种量子数据与经典数据的大小关系的确定方法及装置 | |
CN115907016B (zh) | 一种基于量子计算搜索目标范围值的方法及相关装置 | |
CN114638367B (zh) | 一种数据的读取方法、装置、存储介质及电子装置 | |
CN115879558B (zh) | 一种多个量子态之间的大小比较方法及装置 | |
CN114638366B (zh) | 量子地址数据的解析方法、装置、存储介质及电子装置 | |
CN116361961A (zh) | 量子全连接网络的实现方法、装置、电子设备及存储介质 | |
CN117877611A (zh) | 一种预测分子性质的方法及装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
CB02 | Change of applicant information |
Address after: 230088 6th floor, E2 building, phase II, innovation industrial park, 2800 innovation Avenue, high tech Zone, Hefei City, Anhui Province Applicant after: Benyuan Quantum Computing Technology (Hefei) Co.,Ltd. Address before: 230088 6th floor, E2 building, phase II, innovation industrial park, 2800 innovation Avenue, high tech Zone, Hefei City, Anhui Province Applicant before: ORIGIN QUANTUM COMPUTING COMPANY, LIMITED, HEFEI |
|
CB02 | Change of applicant information | ||
GR01 | Patent grant | ||
GR01 | Patent grant |