CN113222156A - 一种待执行操作的量子模拟方法、装置 - Google Patents

一种待执行操作的量子模拟方法、装置 Download PDF

Info

Publication number
CN113222156A
CN113222156A CN202010072072.2A CN202010072072A CN113222156A CN 113222156 A CN113222156 A CN 113222156A CN 202010072072 A CN202010072072 A CN 202010072072A CN 113222156 A CN113222156 A CN 113222156A
Authority
CN
China
Prior art keywords
quantum
qubit
state
representing
sub
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.)
Granted
Application number
CN202010072072.2A
Other languages
English (en)
Other versions
CN113222156B (zh
Inventor
李叶
安宁波
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Origin Quantum Computing Technology Co Ltd
Original Assignee
Origin Quantum Computing Technology Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Origin Quantum Computing Technology Co Ltd filed Critical Origin Quantum Computing Technology Co Ltd
Priority to CN202310771106.0A priority Critical patent/CN116702913A/zh
Priority to CN202310771107.5A priority patent/CN116796848A/zh
Priority to CN202010072072.2A priority patent/CN113222156B/zh
Publication of CN113222156A publication Critical patent/CN113222156A/zh
Application granted granted Critical
Publication of CN113222156B publication Critical patent/CN113222156B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N10/00Quantum computing, i.e. information processing based on quantum-mechanical phenomena
    • G06N10/20Models of quantum computing, e.g. quantum circuits or universal quantum computers
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F30/00Computer-aided design [CAD]
    • G06F30/20Design optimisation, verification or simulation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N10/00Quantum computing, i.e. information processing based on quantum-mechanical phenomena
    • G06N10/60Quantum algorithms, e.g. based on quantum optimisation, quantum Fourier or Hadamard transforms
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02EREDUCTION OF GREENHOUSE GAS [GHG] EMISSIONS, RELATED TO ENERGY GENERATION, TRANSMISSION OR DISTRIBUTION
    • Y02E60/00Enabling technologies; Technologies with a potential or indirect contribution to GHG emissions mitigation

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Evolutionary Computation (AREA)
  • General Engineering & Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • Mathematical Physics (AREA)
  • Mathematical Analysis (AREA)
  • Mathematical Optimization (AREA)
  • Pure & Applied Mathematics (AREA)
  • Computing Systems (AREA)
  • Computational Mathematics (AREA)
  • Condensed Matter Physics & Semiconductors (AREA)
  • Software Systems (AREA)
  • Artificial Intelligence (AREA)
  • Computer Hardware Design (AREA)
  • Geometry (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)
  • Complex Calculations (AREA)

Abstract

本发明公开了一种待执行操作的量子模拟方法、装置,方法包括:获取运算标识符,用于表示待执行操作对应的具体运算;获取辅助标识符,用于表示待执行操作是否处于转置共轭状态;获取一组量子比特位及其表示的量子态空间;一量子比特位包括第一量子比特位和第二量子比特位;第一量子比特位用于表示具体运算的运算对象,第二量子比特位用于表示具体运算的运算对象和/或表示具体运算的运算结果;根据待执行操作是否处于转置共轭状态,对量子态空间各本征态中表示第一量子比特位的子量子态对应的数值和/或第二量子比特位的子量子态对应的数值执行具体运算或具体运算的逆运算。本发明建立了待执行操作运算与量子比特位的关系,填补了技术空白。

Description

一种待执行操作的量子模拟方法、装置
技术领域
本发明属于量子计算领域,特别是一种待执行操作的量子模拟方法、装置、电子装置及存储介质。
背景技术
量子计算机利用量子的叠加性,理论上在某些情形下有指数级加速的能力。譬如破解RSA密钥在经典计算机上需要数百年,而在量子计算机上执行量子算法只需数小时。但是目前量子计算机的受限于量子芯片硬件的发展导致的可操控的比特数有限,因此计算能力有限,并不能普遍地去运行量子算法。普遍地运行量子算法通常需要借助量子计算模拟方法。
在量子算法的模拟实现过程中,通常需要借助各种量子逻辑门构建量子算法,但是,仅依靠各种量子逻辑门构建量子算法时,并没有对应数值的例如加、减、乘、除等基本算术运算功能及其对应逆运算操作的量子逻辑门操作,也没有能够实现数值的例如幂函数、指数函数、对数函数、三角函数和反三角函数等基本初等函数运算功能及其对应逆运算操作的量子逻辑门操作。而依靠各种量子逻辑门构建实现以上所描述的相应功能的等效量子逻辑门时,会存在所需要的各种量子逻辑门数量庞大,构建的量子算法对应的量子线路过于复杂,严重妨碍了量子计算的研究。
因此,急需提供一种能够量子模拟方法,用于量子线路中模拟上述功能运算操作,以填补相关技术空白。
发明内容
本发明的目的是提供一种待执行操作的量子模拟方法、装置、电子装置及存储介质,以解决现有技术中的不足,它能够填补相关技术空白,用于量子线路中模拟待执行操作。
本发明采用的技术方案如下:
一种待执行操作的量子模拟方法,所述方法包括:
获取运算标识符,所述运算标识符用于表示待执行操作对应的具体运算;
获取辅助标识符,所述辅助标识符用于表示待执行操作是否处于转置共轭状态;
获取一组量子比特位及其表示的量子态空间;所述一量子比特位包括第一量子比特位和第二量子比特位;所述第一量子比特位用于表示所述具体运算的运算对象,所述第二量子比特位用于表示所述具体运算的运算对象和/或表示所述具体运算的运算结果;
根据所述待执行操作是否处于转置共轭状态,对所述量子态空间各本征态中表示所述第一量子比特位的子量子态对应的数值和/或所述第二量子比特位的子量子态对应的数值执行所述具体运算或所述具体运算的逆运算。
如上所述的待执行操作的量子模拟方法,其中,优选的是,所述具体运算用于两个运算对象的运算;
所述第一量子比特位用于表示所述具体运算的一运算对象,所述第二量子比特位用于表示所述具体运算的另一运算对象和表示所述具体运算的运算结果。
如上所述的待执行操作的量子模拟方法,其中,优选的是,所述具体运算为加法运算、减法运算、乘法运算和除法运算之一。
如上所述的待执行操作的量子模拟方法,其中,优选的是,所述根据所述待执行操作是否处于转置共轭状态,对所述量子态空间各本征态中表示所述第一量子比特位的子量子态对应的数值和/或所述第二量子比特位的子量子态对应的数值执行所述具体运算或所述具体运算的逆运算,具体包括:
根据所述辅助标识符判断所述待执行操作是否处于转置共轭状态;
当所述待执行操作不处于转置共轭状态时,对所述量子态空间各本征态中表示所述第一量子比特的子量子态对应的数值和所述第二量子比特位的子量子态对应的数值执行所述具体运算,并把运算结果编至所述第二量子比特位。
如上所述的待执行操作的量子模拟方法,其中,优选的是,当所述待执行操作处于转置共轭状态时,对所述量子态空间各本征态中表示所述第一量子比特位的子量子态对应的数值和所述第二量子比特位的子量子态对应的数值执行所述具体运算的逆运算,并把运算结果编至所述第二量子比特位。
如上所述的待执行操作的量子模拟方法,其中,优选的是,所述具体运算用于两个运算对象的运算;
所述第一量子比特位用于表示所述具体运算的两运算对象,所述第二量子比特位用于表示所述具体运算的运算结果。
如上所述的待执行操作的量子模拟方法,其中,优选的是,所述具体运算为加法运算、减法运算、乘法运算和除法运算之一。
如上所述的待执行操作的量子模拟方法,其中,优选的是,所述根据所述待执行操作是否处于转置共轭状态,对所述量子态空间各本征态中表示所述第一量子比特位的子量子态对应的数值和/或所述第二量子比特位的子量子态对应的数值执行所述具体运算或所述具体运算的逆运算,具体包括:
根据所述辅助标识符判断所述待执行操作是否处于转置共轭状态;
当所述待执行操作不处于转置共轭状态时,对所述量子态空间各本征态中表示所述第一量子比特位的子量子态对应的数值执行所述具体运算,并把运算结果编至所述第二量子比特位。
如上所述的待执行操作的量子模拟方法,其中,优选的是,当所述待执行操作处于转置共轭状态时,将所述量子态空间各本征态中表示所述第二量子比特位的子量子态恢复为初始子量子态。
如上所述的待执行操作的量子模拟方法,其中,优选的是,所述具体运算用于一个运算对象的运算;
所述第一量子比特位用于表示所述具体运算的一运算对象,所述第二量子比特位用于表示所述具体运算的运算结果。
如上所述的待执行操作的量子模拟方法,其中,优选的是,所述具体运算为幂函数运算、指数函数运算、对数函数运算、三角函数运算和反三角函数运算之一。
如上所述的待执行操作的量子模拟方法,其中,优选的是,所述根据所述待执行操作是否处于转置共轭状态,对所述量子态空间各本征态中表示所述第一量子比特位的子量子态对应的数值和/或所述第二量子比特位的子量子态对应的数值执行所述具体运算或所述具体运算的逆运算,具体包括:
根据所述辅助标识符判断所述待执行操作是否处于转置共轭状态;
当所述待执行操作不处于转置共轭状态时,对所述量子态空间各本征态中表示所述第一量子比特位的子量子态对应的数值执行所述具体运算,并把运算结果编至所述第二量子比特位。
如上所述的待执行操作的量子模拟方法,其中,优选的是,当所述待执行操作处于转置共轭状态时,将所述量子态空间各本征态中表示所述第二量子比特位的子量子态恢复为初始子量子态。
一种待执行操作的量子模拟装置,所述装置包括:
运算标识符获取模块,用于获取运算标识符,所述运算标识符用于表示待执行操作对应的具体运算;
辅助标识符获取模块,用于获取辅助标识符,所述辅助标识符用于表示待执行操作是否处于转置共轭状态;
第一获取模块,连接所述运算标识符获取模块,用于获取一组量子比特位及其表示的量子态空间;所述一量子比特位包括第一量子比特位和第二量子比特位;所述第一量子比特位用于表示所述具体运算的运算对象,所述第二量子比特位用于表示所述具体运算的运算对象和/或表示所述具体运算的运算结果;
运算模块,连接所述辅助标识符获取模块和所述第一获取模块,用于根据所述待执行操作是否处于转置共轭状态,对所述量子态空间各本征态中表示所述第一量子比特位的子量子态对应的数值和/或所述第二量子比特位的子量子态对应的数值执行所述具体运算或所述具体运算的逆运算。
所述具体运算用于两个运算对象的运算;
所述第一量子比特位用于表示所述具体运算的一运算对象,所述第二量子比特位用于表示所述具体运算的另一运算对象和表示所述具体运算的运算结果。
所述具体运算为加法运算、减法运算、乘法运算和除法运算之一。
具体的,所述运算模块,具体用于:
根据所述辅助标识符判断所述待执行操作是否处于转置共轭状态;
当所述待执行操作不处于转置共轭状态时,对所述量子态空间各本征态中表示所述第一量子比特的子量子态对应的数值和所述第二量子比特位的子量子态对应的数值执行所述具体运算,并把运算结果编至所述第二量子比特位。
当所述待执行操作处于转置共轭状态时,对所述量子态空间各本征态中表示所述第一量子比特位的子量子态对应的数值和所述第二量子比特位的子量子态对应的数值执行所述具体运算的逆运算,并把运算结果编至所述第二量子比特位。
所述具体运算用于两个运算对象的运算;
所述第一量子比特位用于表示所述具体运算的两运算对象,所述第二量子比特位用于表示所述具体运算的运算结果。
所述具体运算为加法运算、减法运算、乘法运算和除法运算之一。
根据所述辅助标识符判断所述待执行操作是否处于转置共轭状态;
当所述待执行操作不处于转置共轭状态时,对所述量子态空间各本征态中表示所述第一量子比特位的子量子态对应的数值执行所述具体运算,并把运算结果编至所述第二量子比特位。
当所述待执行操作处于转置共轭状态时,将所述量子态空间各本征态中表示所述第二量子比特位的子量子态恢复为初始子量子态。
所述具体运算用于一个运算对象的运算;
所述第一量子比特位用于表示所述具体运算的一运算对象,所述第二量子比特位用于表示所述具体运算的运算结果。
所述具体运算为幂函数运算、指数函数运算、对数函数运算、三角函数运算和反三角函数运算之一。
所述根据所述待执行操作是否处于转置共轭状态,对所述量子态空间各本征态中表示所述第一量子比特位的子量子态对应的数值和/或所述第二量子比特位的子量子态对应的数值执行所述具体运算或所述具体运算的逆运算,具体包括:
根据所述辅助标识符判断所述待执行操作是否处于转置共轭状态;
当所述待执行操作不处于转置共轭状态时,对所述量子态空间各本征态中表示所述第一量子比特位的子量子态对应的数值执行所述具体运算,并把运算结果编至所述第二量子比特位。
当所述待执行操作处于转置共轭状态时,将所述量子态空间各本征态中表示所述第二量子比特位的子量子态恢复为初始子量子态。
一种电子装置,包括存储器和处理器,所述存储器中存储有计算机程序,所述处理器被设置为运行所述计算机程序以执行上述任一项中所述的方法。
一种存储介质,所述存储介质中存储有计算机程序,其中,所述计算机程序被设置为运行时执行上述任一项中所述的方法。
与现有技术相比,本发明提供的待执行操作的量子模拟方法,建立了待执行操作的具体运算的运算对象与量子比特位的关系,具体为:所述一量子比特位包括第一量子比特位和第二量子比特位;所述第一量子比特位用于表示所述具体运算的运算对象,所述第二量子比特位用于表示所述具体运算的运算对象和/或表示所述具体运算的运算结果;并根据待执行操作的转置共轭状态,对一量子比特位的量子态空间的各本征态中表示所述第一量子比特位的子量子态对应的数值和/或所述第二量子比特位的子量子态对应的数值执行所述具体运算或所述具体运算的逆运算。进而,通过对量子态对应数值的运算,实现了支持具体运算或所述具体运算的逆运算的待执行操作模拟,使得待执行操作具有类比量子逻辑门的支持酉变换的特性,进而实现了可以用于量子线路中对应于具体运算的待执行操作的模拟,填补了相关技术的空白。
附图说明
图1是本申请实施例提供的一种待执行操作的量子模拟方法的计算机终端的硬件结构框图;
图2是本发明实施例提供的待执行操作的量子模拟方法的流程示意图;
图3是本发明实施例提供的一种待执行操作的量子模拟装置的结构示意图;
图4是本发明实施例提供的又一种待执行操作的量子模拟装置的结构示意图;
图5是本发明实施例提供的另一种待执行操作的量子模拟装置的结构示意图;
图6是本发明实施例提供的再一种待执行操作的量子模拟装置的结构示意图。
具体实施方式
下面通过参考附图描述的实施例是示例性的,仅用于解释本发明,而不能解释为对本发明的限制。
需要说明的是,本发明的说明书和权利要求书中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。
本发明的实施例提供了一种实现待执行操作量子模拟方法,用于在量子线路中模拟待执行操作,其中,待执行操作对应具体运算,该方法可以应用于电子设备,如移动终端,具体如手机、平板电脑;如计算机终端,具体如普通电脑、量子计算机等。
下面以运行在计算机终端上为例对其进行详细说明。图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门。量子逻辑门一般使用酉矩阵表示,而酉矩阵不仅是矩阵形式,也是一种操作和变换。
目前,并没有可以实现一些经典运算例如四则运算功能,示例性的:加、减、乘、除运算,或者基本初等函数功能,示例性的:幂函数、指数函数、对数函数、三角函数和反三角函数等的量子逻辑门组合,为了在量子程序中实现以上功能,通常借助大量的上述常见逻辑门去构造复杂的量子线路以实现目标功能操作,进而严重影响了量子计算的发展,以及量子应用领域的扩展和落地。以上功能的量子实现对量子程序的构建、复杂量子计算问题的解决可以起到验证的作用。
如图2所示,本发明实施例提供了一种待执行操作的量子模拟方法的流程示意图,所述方法包括:
S201:获取运算标识符,所述运算标识符用于表示待执行操作对应的具体运算。
运算标识符是指用来标识某个具体运算的符号,不同的符号代表不同的运算。在量子模拟运算中,可根据待模拟的经典算术运算(即待执行操作)的具体运算的含义设定对应的运算标识符。其中,经典算术运算可以为基本算术运算、基本初等函数运算等。
具体的,当待模拟的经典算术运算为包含加、减、乘、除的基本算术运算,或包含幂函数、指数函数、对数函数、三角函数和反三角函数的基本初等函数时,可以根据待执行操作的经典算术运算,设定运算标识符。
示例性的,当待模拟的经典算术运算为基本算术运算设定,可以设定运算标识符为“OM”,其中,“O”为基本算术运算这一类待执行操作的表征,本身没有确切含义,也可以用其它字母表示;“M”表示具体的基本算术运算类型,两者共同组成一运算标识符。
示例性的,待执行操作为加法操作时,设定运算标识符为“Oadd”,其代表待执行操作的具体运算为加法运算;待执行操作为减法操作时,设定运算标识符“Osub”,其代表待执行操作的具体运算为减法运算;待执行操作为乘法操作时,设定运算标识符“Omulti”,其代表待执行操作的具体运算为乘法运算;待执行操作为除法操作时,设定运算标识符“Odiv”,其代表待执行操作的具体运算为除法运算。
再示例性的,待执行操作的具体运算为基本初等函数运算时,可以设定运算标识符“Ay”代表,其中,“A”为基本初等函数这一类待执行操作的表征,本身没有确切含义,也可以用其它字母表示;“y”表示具体的基本函数,两者共同组成一运算标识符。
示例性的,当y=sinx,运算标识符“Asinx”代表正弦三角函数运算操作。
其余初等函数运算标识符表现形式与三角函数运算标识符表现形式相似,在此不再赘述。
S202:获取辅助标识符,所述辅助标识符用于表示待执行操作是否处于转置共轭状态。
具体的,辅助标识符是可以作为运算标识符的携带信息被获取,示例性的,辅助标识符可以为运算标识符右上角的一符号。
同时,辅助标识符有两种状态,分别用来表示待执行操作不处于转置共轭状态和待执行操作处于转置共轭状态。
可选的,该符号有两种状态为不存在状态和存在状态,前者用来表示待执行操作不处于转置共轭状态,后者用来表示待执行操作处于转置共轭状态。
可选的,前者表示不存在的状态可以用0表示,也可以通过省略不显示任何信息表示;后者表示存在状态的可以用1或者指定符号标号;其中,指定符号可以为
Figure BDA0002377544990000101
以与量子逻辑门的转置共轭状态的标识符
Figure BDA0002377544990000102
(读作Dagger)一致。
当辅助标识符为运算标识符右上角的一符号,且当通过省略不显示任何信息表示来表示待执行操作不处于转置共轭状态,通过
Figure BDA0002377544990000103
表示待执行操作处于转置共轭状态时,获取辅助标识符,可以理解为判断运算标识符右上角是否存在
Figure BDA0002377544990000111
符号,并根据
Figure BDA0002377544990000112
符号的存在与否判断待执行操作是否处于转置共轭状态。
S203:获取一组量子比特位及其表示的量子态空间;所述一量子比特位包括第一量子比特位和第二量子比特位;所述第一量子比特位用于表示所述具体运算的运算对象,所述第二量子比特位用于表示所述具体运算的运算对象和/或表示所述具体运算的运算结果。
具体的,量子比特位表示的量子态空间,是指量子比特位携带的、并通过量子比特位的所有本征态表征的量子态信息。其中,量子比特位对应的所有本征态的数量是2的量子比特位的个数次方,所有本征态表征的量子态信息为所有本征态的线性叠加。
例如:一组量子比特为q0、q1、q2,表示第0位、第1位、第2位量子比特,从高位到低位排序为q2q1q0,则该组量子比特位对应的本征态总共有8个,分别为:|000>、|001>、|010>、|011>、|100>、|101>、|110>、|111>,该8个本征态之间的叠加态一起组成量子态空间ψ:
ψ=a0|000>+a1|001>+a2|010>+a3|011>+a4|100>+a5|101>+a6|110>+a7|111>,其中a0、a1、a2、a3、a4、a5、a6、a7均为复数,且
Figure BDA0002377544990000113
获取一组量子比特位通过用户输入实现,该组量子比特位的个数可以根据待执行操作的基本运算设置。在量子线路中,该组量子比特位为具有初始态的量子比特位,或携带演化量子态信息的量子比特位。
作为待模拟操作对应的具体运算和量子比特位之间的连接桥梁,该组量子比特位包括第一量子比特位和第二量子比特位,所述第一量子比特位用于表示所述具体运算的运算对象,所述第二量子比特位用于表示所述具体运算的运算对象和/或表示所述具体运算的运算结果。
其中,可以理解的是,运算对象经过具体运算得到运算结果,所以所述第二量子比特位用于表示所述具体运算的运算对象和表示所述具体运算的运算结果时,是指存储运算结果的比特位为表示所述基本算术运算操作的一运算对象的比特位,即第二量子比特位在具体运算前后具有存储运算对象和运算结果的双重作用。
当第二量子比特位在具体运算前后具有存储运算对象和运算结果的双重作用时,一方面减少了模拟基本算术运算操作所需要的量子比特数量;另一方面,可以方便基本算术运算操作逆操作的模拟。
S204:根据所述待执行操作是否处于转置共轭状态,对所述量子态空间各本征态中表示所述第一量子比特位的子量子态对应的数值和/或所述第二量子比特位的子量子态对应的数值执行所述具体运算或所述具体运算的逆运算。
如上所述,所述辅助标识符用于表示待执行操作是否处于转置共轭状态;在具体操作的时候,可以根据所述辅助标识符判断所述待执行操作是否处于转置共轭状态;然后根据判断结果,对所述量子态空间各本征态中表示所述第一量子比特位的子量子态对应的数值和/或所述第二量子比特位的子量子态对应的数值执行所述具体运算或所述具体运算的逆运算。
通过步骤S201至步骤S204,建立了待执行操作的具体运算的运算对象与量子比特位的关系,具体为:所述一量子比特位包括第一量子比特位和第二量子比特位;所述第一量子比特位用于表示所述具体运算的运算对象,所述第二量子比特位用于表示所述具体运算的运算对象和/或表示所述具体运算的运算结果;并根据待执行操作的转置共轭状态,对一量子比特位的量子态空间的各本征态中表示所述第一量子比特位的子量子态对应的数值和/或所述第二量子比特位的子量子态对应的数值执行所述具体运算或所述具体运算的逆运算。进而,通过对量子态对应数值的运算,实现了支持具体运算或所述具体运算的逆运算的待执行操作模拟,使得待执行操作具有类比量子逻辑门的支持酉变换的特性,进而实现了可以用于量子线路中对应于具体运算的待执行操作的模拟,填补了相关技术的空白。
作为以上待执行操作的量子模拟方法的一种具体实施,所述具体运算用于两个运算对象的运算,所述第一量子比特位用于表示所述具体运算的一运算对象,所述第二量子比特位用于表示所述具体运算的另一运算对象和表示所述具体运算的运算结果。其中,所述具体运算为加法运算、减法运算、乘法运算和除法运算之一。
则步骤S204所述的根据所述待执行操作是否处于转置共轭状态,对所述量子态空间各本征态中表示所述第一量子比特位的子量子态对应的数值和/或所述第二量子比特位的子量子态对应的数值执行所述具体运算或所述具体运算的逆运算,具体包括:
S2041:根据所述辅助标识符判断所述待执行操作是否处于转置共轭状态。
具体的,辅助标识符是可以作为运算标识符的携带信息被获取,示例性的,辅助标识符可以为运算标识符右上角的一符号。
同时,辅助标识符有两种状态,分别用来表示待执行操作不处于转置共轭状态和待执行操作处于转置共轭状态。
可选的,该符号有两种状态为不存在状态和存在状态,前者用来表示待执行操作不处于转置共轭状态,后者用来表示待执行操作处于转置共轭状态。
可选的,前者表示不存在的状态可以用0表示,也可以通过省略不显示任何信息表示;后者表示存在状态的可以用1或者指定符号标号;其中,指定符号可以为
Figure BDA0002377544990000131
以与量子逻辑门的转置共轭状态的标识符
Figure BDA0002377544990000132
(读作Dagger)一致。
当辅助标识符为运算标识符右上角的一符号,且当通过省略不显示任何信息表示待执行操作不处于转置共轭状态,通过
Figure BDA0002377544990000133
表示待执行操作处于转置共轭状态时,获取辅助标识符,可以理解为判断运算标识符右上角是否存在
Figure BDA0002377544990000134
符号,并根据
Figure BDA0002377544990000135
符号的存在与否判断待执行操作是否处于转置共轭状态。若存在,则表示待执行操作处于转置共轭状态;若不存在,则表示待执行操作不处于转置共轭状态。
S2042:当所述待执行操作不处于转置共轭状态时,对所述量子态空间各本征态中表示所述第一量子比特的子量子态对应的数值和所述第二量子比特位的子量子态对应的数值执行所述具体运算,并把运算结果编至所述第二量子比特位。
示例性的,以加法运算为例进行具体说明,针对待执行操作基本算术运算操作Oadd,其要实现的效果为:|a>|b>→|a+b>|b>。其中,a和b为十进制数。则实现过程如下:
a、获取用户输入的一组量子比特q0、q1、q2、q3、q4、q5、q6、q7、q8。表示第0位至第8位量子比特,从高位到低位排序为q8q7q6q5q4q3q2q1q0,其中,指定q3q2q1q0为第一量子比特位,用来编码a;指定q7q6q5q4为第二量子比特位,用来在具体运算前编码b和在具体运算进行后a+b的运算结果;
b、针对该组量子比特对应的29=512个本征态中,均获得对应q3q2q1q0和q7q6q5q4的子量子态;
c、把各子量子态对应的数值进行加法运算,并把运算结果编码至第二量子比特位,即编码至q7q6q5q4。
需要说明的是,上述过程中用于加法运算的各子量子态对应的数值可为二进制数值,或十进制数值。当为十进制数值时,十进制数在量子态上的存储实现可以简单描述为,将十进制数转化为二进制数,将二进制数编码到指定位数的量子比特上。指定位数可以等于二进制数的位数或者大于二进制数的位数,以保证十进制数的存储精度。
需要说明的是,减法、乘法、除法运算的原理和方法与上述加法运算相同,在此不再赘述。
S2043:当所述待执行操作处于转置共轭状态时,对所述量子态空间各本征态中表示所述第一量子比特位的子量子态对应的数值和所述第二量子比特位的子量子态对应的数值执行所述具体运算的逆运算,并把运算结果编至所述第二量子比特位。
可以理解的是,加法运算对应的逆操作为减法运算;减法运算对应的逆操作为加法运算;乘法运算对应的逆操作为除法运算;除法运算对应的逆操作为乘法运算。
具体的,辅助标识符是可以作为运算标识符的携带信息被获取,示例性的,辅助标识符可以为运算标识符右上角的一符号。
同时,辅助标识符有两种状态,分别用来表示待执行操作不处于转置共轭状态和待执行操作处于转置共轭状态。
可选的,该符号有两种状态为不存在状态和存在状态,前者用来表示待执行操作不处于转置共轭状态,后者用来表示待执行操作处于转置共轭状态。
可选的,前者表示不存在的状态可以用0表示,也可以通过省略不显示任何信息表示;后者表示存在状态的可以用1或者指定符号标号;其中,指定符号可以为
Figure BDA0002377544990000141
以与量子逻辑门的转置共轭状态的标识符
Figure BDA0002377544990000142
(读作Dagger)一致。
当辅助标识符为运算标识符右上角的一符号,且当通过省略不显示任何信息表示来表示待执行操作不处于转置共轭状态,通过
Figure BDA0002377544990000151
表示待执行操作处于转置共轭状态时,获取辅助标识符,可以理解为判断运算标识符右上角是否存在
Figure BDA0002377544990000152
符号,并根据
Figure BDA0002377544990000153
符号的存在与否判断待执行操作是否处于转置共轭状态。基本算术运算操作的逆操作通过量子逻辑门转置共轭状态符号
Figure BDA0002377544990000154
标记。
示例性的,加法运算标识为Oadd,加法运算的逆操作可以标识为
Figure BDA0002377544990000155
减法运算标识为Osub,减法运算的逆操作可以标识为
Figure BDA0002377544990000156
乘法运算标识为Omulti,加法运算的逆操作可以标识为
Figure BDA0002377544990000157
除法运算标识为Odiv,除法运算的逆操作可以标识为
Figure BDA0002377544990000158
以上述加法运算的逆运算为例进行具体说明,当运算标识符为
Figure BDA0002377544990000159
即右上角存在辅助标识符
Figure BDA00023775449900001510
此时,对所述量子态空间各本征态中表示所述第一量子比特位的子量子态对应的数值和所述第二量子比特位的子量子态对应的数值执行所述具体运算的逆运算,即执行加法运算的逆运算减法运算,进而实现
Figure BDA00023775449900001511
|a+b>|b>→|a>|b>的效果。此时,通过第二量子比特位编码|a+b>和|a>,通过第一量子比特位编码|b>。
需要说明的是,减法、乘法、除法运算三者的逆运算原理和方法与上述加法运算的逆运算相同,在此不再赘述。
上述示例完整展示了当存储运算结果的比特位为表示所述基本算术运算操作的运算对象的比特位之一时的情况,下文将举例说明当存储运算结果的比特位非表示所述基本算术运算操作的运算对象的比特位之一时的情况。
作为以上待执行操作的量子模拟方法的另一种具体实施,所述具体运算用于两个运算对象的运算,所述第一量子比特位用于表示所述具体运算的两运算对象,所述第二量子比特位用于表示所述具体运算的运算结果。其中,所述具体运算为加法运算、减法运算、乘法运算和除法运算之一。
则步骤S204所述的根据所述待执行操作是否处于转置共轭状态,对所述量子态空间各本征态中表示所述第一量子比特位的子量子态对应的数值和/或所述第二量子比特位的子量子态对应的数值执行所述具体运算或所述具体运算的逆运算,具体包括:
S204-1:根据所述辅助标识符判断所述待执行操作是否处于转置共轭状态;
具体的,判断运算标识符右上角是否存在辅助标识符
Figure BDA0002377544990000161
若存在,则表示待执行操作处于转置共轭状态;若不存在,则表示待执行操作不处于转置共轭状态。
S204-2:当所述待执行操作不处于转置共轭状态时,对所述量子态空间各本征态中表示所述第一量子比特位的子量子态对应的数值执行所述具体运算,并把运算结果编至所述第二量子比特位。
示例性的,以加法运算为例进行具体说明,针对待执行操作基本算术运算操作Oadd:|a>|b>|0>→|a>|b>|a+b>,其中,a和b为十进制数。用户输入一组量子比特分别为q0、q1、q2、q3、q4、q5、q6、q7、q8,表示第0位至第8位量子比特,从高位到低位排序为q8q7q6q5q4q3q2q1q0,其中,指定q5q4q3q2q1q0为第一量子比特位,同时用来编码a和编码b;指定q8q7q6为第二量子比特位,用来编码a+b的运算结果;则该组量子比特对应的29=512个本征态中,获得对应q5q4q3q2q1q0的子量子态,并把q5q4q3q2q1q0子量子态中分别编码a和编码b的子量子态数值进行加法运算,并把运算结果编码至第二量子比特位,即编码至q8q7q6。该过程中,可以设置q8q7q6的初始子量子态;可选的,q8q7q6的初始子量子态为0态。
需要说明的是,当第一量子比特位q5q4q3q2q1q0同时用来编码a和编码b时,可以均分q5q4q3q2q1q0,使得q5q4q3用来编码a,q2q1q0用来编码b,或者相反。
另外,需要说明的是,以上过程中,第二量子比特位的初始子量子态可以为0态,此时可以只对第二量子比特位的初始子量子态为0态的本征态进行对应q8q7q6的子量子态提取以及运算,进而达到了简化计算量,提高模拟速度的效果。
S204-3:当所述待执行操作处于转置共轭状态时,将所述量子态空间各本征态中表示所述第二量子比特位的子量子态恢复为初始子量子态。
具体的,当运算标识符右上角的辅助标识符为
Figure BDA0002377544990000162
时,即所述待执行操作处于转置共轭状态时,此时将所述量子态空间各本征态中表示所述第二量子比特位的子量子态恢复为初始子量子态。
示例性的,对加法运算的逆运算
Figure BDA0002377544990000171
存在辅助标识符
Figure BDA0002377544990000172
此时将所述量子态空间各本征态中表示所述第二量子比特位的子量子态恢复为初始子量子态,即将第二量子比特位上表示的子量子态为a+b的运算结果恢复为初始子量子态,可选的,初始子量子态为0态,进而实现
Figure BDA0002377544990000173
代表|a>|b>|a+b>→|a>|b>|0>的操作效果。
上述过程完整的说明了待执行操作的具体运算用于两个运算对象的运算,包括但不限于加法运算、减法运算、乘法运算、除法运算等,凡是依照上述方案的原理和方法所进行的用于两个运算对象的运算,均应在上述方案保护范围之内。
作为以上待执行操作的量子模拟方法的再一种具体实施,所述具体运算用于一个运算对象的运算,所述第一量子比特位用于表示所述具体运算的一运算对象,所述第二量子比特位用于表示所述具体运算的运算结果。其中,所述具体运算为幂函数运算、指数函数运算、对数函数运算、三角函数运算和反三角函数运算之一。
则步骤S204所述的根据所述待执行操作是否处于转置共轭状态,对所述量子态空间各本征态中表示所述第一量子比特位的子量子态对应的数值和/或所述第二量子比特位的子量子态对应的数值执行所述具体运算或所述具体运算的逆运算,具体包括:
S204-a:根据所述辅助标识符判断所述待执行操作是否处于转置共轭状态。
具体的,判断运算标识符右上角是否存在辅助标识符
Figure BDA0002377544990000174
若存在,则表示待执行操作处于转置共轭状态;若不存在,则表示待执行操作不处于转置共轭状态。
S204-b:当所述待执行操作不处于转置共轭状态时,对所述量子态空间各本征态中表示所述第一量子比特位的子量子态对应的数值执行所述具体运算,并把运算结果编至所述第二量子比特位。示例性的,以指数函数运算为例进行具体说明,针对待执行操作基本算术运算操作Aab:|b>|a>→|b>|ab>,其中,a为已知的十进制数,b为可通过量子态表征的任意十进制数。
用户输入一组量子比特分别为q0、q1、q2、q3、q4、q5、q6、q7、q8,表示第0位至第8位量子比特,从高位到低位排序为q8q7q6q5q4q3q2q1q0,其中,指定q3q2q1q0为第一量子比特位,用来编码b;指定q7q6q5q4为第二量子比特位,用来编码ab的运算结果;则该组量子比特对应的29=512个本征态中,均获得对应q3q2q1q0子量子态。然后该子量子态对应的数值进行底数为a的指数运算,并把运算结果编码至第二量子比特位,即编码至q7q6q5q4。
需要说明的是,以上过程中,第二量子比特位的初始子量子态可以为0态,此时可以只对第二量子比特位的初始子量子态为0态的本征态进行对应q3q2q1q0的子量子态提取以及运算,进而达到了简化计算量,提高模拟速度的效果。
幂函数运算、对数函数运算、三角函数运算与反三角函数运算的原理和方法与上述指数函数运算相同,在此不再赘述。
S204-c:当所述待执行操作处于转置共轭状态时,将所述量子态空间各本征态中表示所述第二量子比特位的子量子态恢复为初始子量子态。
具体的,当运算标识符右上角的辅助标识符为
Figure BDA0002377544990000184
时,即所述待执行操作处于转置共轭状态时,此时将所述量子态空间各本征态中表示所述第二量子比特位的子量子态恢复为初始子量子态。
示例性的,指数函数的逆运算
Figure BDA0002377544990000181
存在辅助标识符
Figure BDA0002377544990000182
此时将所述量子态空间各本征态中表示所述第二量子比特位的子量子态恢复为初始子量子态,即将第二量子比特位上表示的子量子态为ab的运算结果恢复为初始子量子态,可选的,初始子量子态为0态,进而实现
Figure BDA0002377544990000183
代表|b>|ab>→|b>|a>的操作效果。
在量子应用中,可以通过构造一种Oracle,该Oracle的内部原理即为本发明的方法流程。具体的,Oracle,可以理解成在量子算法中完成特定功能的模块(类似黑盒),在具体问题中会有具体的实现方式。
目前,现有的量子线路构建往往只能够利用现有的单量子逻辑门、双量子逻辑门等等,通常存在以下问题:
对于功能比较复杂的量子线路,需要用到的量子比特数量会非常多,使用经典计算机进行模拟的时候会消耗巨大的内存空间,需要用到的逻辑门数量会非常多,模拟耗时会非常长。并且,一些复杂的算法难以用量子线路进行实现。
基于此,通过改用Oracle模拟的方式实现具体运算操作的量子模拟表示所对应的量子态之间相互转换的复杂功能,并实现受控功能。用户传入Oracle的参数,可以包括:Oracle名称(用于识别Oracle的功能用途)、前述的一组量子比特位、运算标识符等等。可以使用OM表示将第一表示转换为第二表示,设置辅助标识符
Figure BDA0002377544990000191
Figure BDA0002377544990000192
表示将第二表示转换为第一表示,其中,OM为Oracle表示的具体运算的缩写。
这种方式的好处是,整体上将Oracle作为已知模块,无需关注其内部的实现细节,在量子应用场景例如量子线路的表示上,会非常的简单明了。由于可以将经典模拟的Oracle功能模块等效成量子逻辑门,来构造复杂的量子线路,因此节省了运行时所需的内存空间,并加快量子算法的模拟验证。
可见,与现有技术相比,本发明提供的待执行操作的量子模拟方法,建立了待执行操作的具体运算的运算对象与量子比特位的关系,通过对量子态对应数值的运算,实现了支持具体运算或所述具体运算的逆运算的待执行操作模拟,使得待执行操作具有类比量子逻辑门的支持酉变换的特性,进而实现了可以用于量子线路中对应于具体运算的待执行操作的模拟,填补了相关技术的空白。
上述过程完整的说明了待执行操作的具体运算用于一个运算对象的运算,包括但不限于幂函数运算、指数函数运算、对数函数运算、三角函数运算和反三角函数运算等,凡是依照上述方案的原理和方法所进行的用于一个运算对象的运算,均应在上述方案保护范围之内。
参见图3,图3是本发明实施例提供的一种待执行操作的量子模拟装置的结构示意图,与图2所示的流程相对应,可以包括:
运算标识符获取模块301:用于获取运算标识符,所述运算标识符用于表示待执行操作对应的具体运算;
辅助标识符获取模块302:用于获取辅助标识符,所述辅助标识符用于表示待执行操作是否处于转置共轭状态;
第一获取模块303:连接所述运算标识符获取模块,用于获取一组量子比特位及其表示的量子态空间;所述一量子比特位包括第一量子比特位和第二量子比特位;所述第一量子比特位用于表示所述具体运算的运算对象,所述第二量子比特位用于表示所述具体运算的运算对象和/或表示所述具体运算的运算结果;
运算模块304:连接所述辅助标识符获取模块和所述第一获取模块,用于根据所述待执行操作是否处于转置共轭状态,对所述量子态空间各本征态中表示所述第一量子比特位的子量子态对应的数值和/或所述第二量子比特位的子量子态对应的数值执行所述具体运算或所述具体运算的逆运算。
优选的,如图4所示本发明实施例提供的又一种待执行操作的量子模拟装置的结构示意图,所述第一获取模块303,包括:
第一子运算模块3031,用于所述具体运算用于两个运算对象的运算,所述第一量子比特位用于表示所述具体运算的一运算对象,所述第二量子比特位用于表示所述具体运算的另一运算对象和表示所述具体运算的运算结果。其中,所述具体运算为加法运算、减法运算、乘法运算和除法运算之一。
优选的,继续如图4所示本发明实施例提供的又一种待执行操作的量子模拟装置的结构示意图,所述运算模块304,具体包括:
第一判断模块3041,用于根据所述辅助标识符判断所述待执行操作是否处于转置共轭状态;
第一执行模块3042,用于当所述待执行操作不处于转置共轭状态时,对所述量子态空间各本征态中表示所述第一量子比特的子量子态对应的数值和所述第二量子比特位的子量子态对应的数值执行所述具体运算,并把运算结果编至所述第二量子比特位;
当所述待执行操作处于转置共轭状态时,对所述量子态空间各本征态中表示所述第一量子比特位的子量子态对应的数值和所述第二量子比特位的子量子态对应的数值执行所述具体运算的逆运算,并把运算结果编至所述第二量子比特位。
优选的,如图5所示本发明实施例提供的另一种待执行操作的量子模拟装置的结构示意图,所述第一获取模块303,包括:
第二子运算模块303-1,用于所述具体运算用于两个运算对象的运算;所述第一量子比特位用于表示所述具体运算的两运算对象,所述第二量子比特位用于表示所述具体运算的运算结果。其中,所述具体运算为加法运算、减法运算、乘法运算和除法运算之一。
所述运算模块304,具体包括:
第二判断模块304-1,用于根据所述辅助标识符判断所述待执行操作是否处于转置共轭状态;
第二执行模块304-2,用于当所述待执行操作不处于转置共轭状态时,对所述量子态空间各本征态中表示所述第一量子比特位的子量子态对应的数值执行所述具体运算,并把运算结果编至所述第二量子比特位;
当所述待执行操作处于转置共轭状态时,将所述量子态空间各本征态中表示所述第二量子比特位的子量子态恢复为初始子量子态。
优选的,如图6所示本发明实施例提供的再一种待执行操作的量子模拟装置的结构示意图,所述第一获取模块303,包括:
第三子运算模块303-a,用于所述具体运算用于一个运算对象的运算;所述第一量子比特位用于表示所述具体运算的一运算对象,所述第二量子比特位用于表示所述具体运算的运算结果。其中,所述具体运算为幂函数运算、指数函数运算、对数函数运算、三角函数运算和反三角函数运算之一。
优选的,继续如图6所示本发明实施例提供的再一种待执行操作的量子模拟装置的结构示意图,所述运算模块304,具体包括:
第三判断模块304-a,用于根据所述辅助标识符判断所述待执行操作是否处于转置共轭状态;
第三执行模块304-b,用于当所述待执行操作不处于转置共轭状态时,对所述量子态空间各本征态中表示所述第一量子比特位的子量子态对应的数值执行所述具体运算,并把运算结果编至所述第二量子比特位;
当所述待执行操作处于转置共轭状态时,将所述量子态空间各本征态中表示所述第二量子比特位的子量子态恢复为初始子量子态。
本发明实施例提供一种电子装置,包括存储器和处理器,所述存储器中存储有计算机程序,所述处理器被设置为运行所述计算机程序以执行上述任一项方法实施例中的步骤。
具体的,上述电子装置还可以包括传输设备以及输入输出设备,其中,该传输设备和上述处理器连接,该输入输出设备和上述处理器连接。
具体的,在本实施例中,上述处理器可以被设置为通过计算机程序执行以下步骤:
S201:获取运算标识符,所述运算标识符用于表示待执行操作对应的具体运算;
S202:获取辅助标识符,所述辅助标识符用于表示待执行操作是否处于转置共轭状态;
S203:获取一组量子比特位及其表示的量子态空间;所述一量子比特位包括第一量子比特位和第二量子比特位;所述第一量子比特位用于表示所述具体运算的运算对象,所述第二量子比特位用于表示所述具体运算的运算对象和/或表示所述具体运算的运算结果;
S204:根据所述待执行操作是否处于转置共轭状态,对所述量子态空间各本征态中表示所述第一量子比特位的子量子态对应的数值和/或所述第二量子比特位的子量子态对应的数值执行所述具体运算或所述具体运算的逆运算。
与现有技术相比,本发明提供的待执行操作的量子模拟方法,建立了待执行操作的具体运算的运算对象与量子比特位的关系,通过对量子态对应数值的运算,实现了支持具体运算或所述具体运算的逆运算的待执行操作模拟,使得待执行操作具有类比量子逻辑门的支持酉变换的特性,进而实现了可以用于量子线路中对应于具体运算的待执行操作的模拟,填补了相关技术的空白。
本发明实施例还提供一种存储介质,所述存储介质中存储有计算机程序,其中,所述计算机程序被设置为运行时执行上述任一项方法实施例中的步骤。
具体的,在本实施例中,上述存储介质可以被设置为存储用于执行以下步骤的计算机程序:
S201:获取运算标识符,所述运算标识符用于表示待执行操作对应的具体运算;
S202:获取辅助标识符,所述辅助标识符用于表示待执行操作是否处于转置共轭状态;
S203:获取一组量子比特位及其表示的量子态空间;所述一量子比特位包括第一量子比特位和第二量子比特位;所述第一量子比特位用于表示所述具体运算的运算对象,所述第二量子比特位用于表示所述具体运算的运算对象和/或表示所述具体运算的运算结果;
S204:根据所述待执行操作是否处于转置共轭状态,对所述量子态空间各本征态中表示所述第一量子比特位的子量子态对应的数值和/或所述第二量子比特位的子量子态对应的数值执行所述具体运算或所述具体运算的逆运算。
具体的,在本实施例中,上述存储介质可以包括但不限于:U盘、只读存储器(Read-Only Memory,简称为ROM)、随机存取存储器(Random Access Memory,简称为RAM)、移动硬盘、磁碟或者光盘等各种可以存储计算机程序的介质。
与现有技术相比,本发明提供的待执行操作的量子模拟方法,建立了待执行操作的具体运算的运算对象与量子比特位的关系,通过对量子态对应数值的运算,实现了支持具体运算或所述具体运算的逆运算的待执行操作模拟,使得待执行操作具有类比量子逻辑门的支持酉变换的特性,进而实现了可以用于量子线路中对应于具体运算的待执行操作的模拟,填补了相关技术的空白。
以上依据图式所示的实施例详细说明了本发明的构造、特征及作用效果,以上所述仅为本发明的较佳实施例,但本发明不以图面所示限定实施范围,凡是依照本发明的构想所作的改变,或修改为等同变化的等效实施例,仍未超出说明书与图示所涵盖的精神时,均应在本发明的保护范围内。

Claims (16)

1.一种待执行操作的量子模拟方法,其特征在于,所述方法包括:
获取运算标识符,所述运算标识符用于表示待执行操作对应的具体运算;
获取辅助标识符,所述辅助标识符用于表示待执行操作是否处于转置共轭状态;
获取一组量子比特位及其表示的量子态空间;所述一量子比特位包括第一量子比特位和第二量子比特位;所述第一量子比特位用于表示所述具体运算的运算对象,所述第二量子比特位用于表示所述具体运算的运算对象和/或表示所述具体运算的运算结果;
根据所述待执行操作是否处于转置共轭状态,对所述量子态空间各本征态中表示所述第一量子比特位的子量子态对应的数值和/或所述第二量子比特位的子量子态对应的数值执行所述具体运算或所述具体运算的逆运算。
2.根据权利要求1所述的待执行操作的量子模拟方法,其特征在于,所述具体运算用于两个运算对象的运算;
所述第一量子比特位用于表示所述具体运算的一运算对象,所述第二量子比特位用于表示所述具体运算的另一运算对象和表示所述具体运算的运算结果。
3.根据权利要求2所述的待执行操作的量子模拟方法,其特征在于,所述具体运算为加法运算、减法运算、乘法运算和除法运算之一。
4.根据权利要求2所述的待执行操作的量子模拟方法,其特征在于,所述根据所述待执行操作是否处于转置共轭状态,对所述量子态空间各本征态中表示所述第一量子比特位的子量子态对应的数值和/或所述第二量子比特位的子量子态对应的数值执行所述具体运算或所述具体运算的逆运算,具体包括:
根据所述辅助标识符判断所述待执行操作是否处于转置共轭状态;
当所述待执行操作不处于转置共轭状态时,对所述量子态空间各本征态中表示所述第一量子比特的子量子态对应的数值和所述第二量子比特位的子量子态对应的数值执行所述具体运算,并把运算结果编至所述第二量子比特位。
5.根据权利要求4所述的待执行操作的量子模拟方法,其特征在于,当所述待执行操作处于转置共轭状态时,对所述量子态空间各本征态中表示所述第一量子比特位的子量子态对应的数值和所述第二量子比特位的子量子态对应的数值执行所述具体运算的逆运算,并把运算结果编至所述第二量子比特位。
6.根据权利要求1所述的待执行操作的量子模拟方法,其特征在于,所述具体运算用于两个运算对象的运算;
所述第一量子比特位用于表示所述具体运算的两运算对象,所述第二量子比特位用于表示所述具体运算的运算结果。
7.根据权利要求6所述的待执行操作的量子模拟方法,其特征在于,所述具体运算为加法运算、减法运算、乘法运算和除法运算之一。
8.根据权利要求6所述的待执行操作的量子模拟方法,其特征在于,所述根据所述待执行操作是否处于转置共轭状态,对所述量子态空间各本征态中表示所述第一量子比特位的子量子态对应的数值和/或所述第二量子比特位的子量子态对应的数值执行所述具体运算或所述具体运算的逆运算,具体包括:
根据所述辅助标识符判断所述待执行操作是否处于转置共轭状态;
当所述待执行操作不处于转置共轭状态时,对所述量子态空间各本征态中表示所述第一量子比特位的子量子态对应的数值执行所述具体运算,并把运算结果编至所述第二量子比特位。
9.根据权利要求8所述的待执行操作的量子模拟方法,其特征在于,当所述待执行操作处于转置共轭状态时,将所述量子态空间各本征态中表示所述第二量子比特位的子量子态恢复为初始子量子态。
10.根据权利要求1所述的待执行操作的量子模拟方法,其特征在于,所述具体运算用于一个运算对象的运算;
所述第一量子比特位用于表示所述具体运算的一运算对象,所述第二量子比特位用于表示所述具体运算的运算结果。
11.根据权利要求10所述的待执行操作的量子模拟方法,其特征在于,所述具体运算为幂函数运算、指数函数运算、对数函数运算、三角函数运算和反三角函数运算之一。
12.根据权利要求10所述的待执行操作的量子模拟方法,其特征在于,所述根据所述待执行操作是否处于转置共轭状态,对所述量子态空间各本征态中表示所述第一量子比特位的子量子态对应的数值和/或所述第二量子比特位的子量子态对应的数值执行所述具体运算或所述具体运算的逆运算,具体包括:
根据所述辅助标识符判断所述待执行操作是否处于转置共轭状态;
当所述待执行操作不处于转置共轭状态时,对所述量子态空间各本征态中表示所述第一量子比特位的子量子态对应的数值执行所述具体运算,并把运算结果编至所述第二量子比特位。
13.根据权利要求12所述的待执行操作的量子模拟方法,其特征在于,当所述待执行操作处于转置共轭状态时,将所述量子态空间各本征态中表示所述第二量子比特位的子量子态恢复为初始子量子态。
14.一种待执行操作的量子模拟装置,其特征在于,所述装置包括:
运算标识符获取模块,用于获取运算标识符,所述运算标识符用于表示待执行操作对应的具体运算;
辅助标识符获取模块,用于获取辅助标识符,所述辅助标识符用于表示待执行操作是否处于转置共轭状态;
第一获取模块,连接所述运算标识符获取模块,用于获取一组量子比特位及其表示的量子态空间;所述一量子比特位包括第一量子比特位和第二量子比特位;所述第一量子比特位用于表示所述具体运算的运算对象,所述第二量子比特位用于表示所述具体运算的运算对象和/或表示所述具体运算的运算结果;
运算模块,连接所述辅助标识符获取模块和所述第一获取模块,用于根据所述待执行操作是否处于转置共轭状态,对所述量子态空间各本征态中表示所述第一量子比特位的子量子态对应的数值和/或所述第二量子比特位的子量子态对应的数值执行所述具体运算或所述具体运算的逆运算。
15.一种电子装置,包括存储器和处理器,其特征在于,所述存储器中存储有计算机程序,所述处理器被设置为运行所述计算机程序以执行所述权利要求1至13任一项中所述的方法。
16.一种存储介质,其特征在于,所述存储介质中存储有计算机程序,其中,所述计算机程序被设置为运行时执行所述权利要求1至13任一项中所述的方法。
CN202010072072.2A 2020-01-21 2020-01-21 一种待执行操作的量子模拟方法、装置 Active CN113222156B (zh)

Priority Applications (3)

Application Number Priority Date Filing Date Title
CN202310771106.0A CN116702913A (zh) 2020-01-21 2020-01-21 一种待执行操作的量子模拟方法、装置
CN202310771107.5A CN116796848A (zh) 2020-01-21 2020-01-21 一种待执行操作的量子模拟方法、装置
CN202010072072.2A CN113222156B (zh) 2020-01-21 2020-01-21 一种待执行操作的量子模拟方法、装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010072072.2A CN113222156B (zh) 2020-01-21 2020-01-21 一种待执行操作的量子模拟方法、装置

Related Child Applications (2)

Application Number Title Priority Date Filing Date
CN202310771106.0A Division CN116702913A (zh) 2020-01-21 2020-01-21 一种待执行操作的量子模拟方法、装置
CN202310771107.5A Division CN116796848A (zh) 2020-01-21 2020-01-21 一种待执行操作的量子模拟方法、装置

Publications (2)

Publication Number Publication Date
CN113222156A true CN113222156A (zh) 2021-08-06
CN113222156B CN113222156B (zh) 2023-08-08

Family

ID=77085428

Family Applications (3)

Application Number Title Priority Date Filing Date
CN202310771107.5A Pending CN116796848A (zh) 2020-01-21 2020-01-21 一种待执行操作的量子模拟方法、装置
CN202310771106.0A Pending CN116702913A (zh) 2020-01-21 2020-01-21 一种待执行操作的量子模拟方法、装置
CN202010072072.2A Active CN113222156B (zh) 2020-01-21 2020-01-21 一种待执行操作的量子模拟方法、装置

Family Applications Before (2)

Application Number Title Priority Date Filing Date
CN202310771107.5A Pending CN116796848A (zh) 2020-01-21 2020-01-21 一种待执行操作的量子模拟方法、装置
CN202310771106.0A Pending CN116702913A (zh) 2020-01-21 2020-01-21 一种待执行操作的量子模拟方法、装置

Country Status (1)

Country Link
CN (3) CN116796848A (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115809042A (zh) * 2021-09-14 2023-03-17 合肥本源量子计算科技有限责任公司 量子模数加法运算方法、装置、电子装置及模数算术组件
CN115879552A (zh) * 2021-09-28 2023-03-31 合肥本源量子计算科技有限责任公司 量子模数乘逆运算方法、装置、电子装置及模数算术组件

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008269012A (ja) * 2007-04-16 2008-11-06 Nippon Telegr & Teleph Corp <Ntt> 量子加算演算方法及び量子加算演算装置
JP2012145972A (ja) * 2011-01-06 2012-08-02 Nippon Telegr & Teleph Corp <Ntt> 量子演算方法、量子演算装置
CN108280800A (zh) * 2018-01-29 2018-07-13 重庆邮电大学 一种量子图像卷积方法
CN108932388A (zh) * 2018-07-10 2018-12-04 华东交通大学 一种基于量子叠加态的模2n减法器设计方法
CN109002894A (zh) * 2018-07-10 2018-12-14 华东交通大学 一种基于量子叠加态的量子加法器设计方法
CN109858628A (zh) * 2019-02-28 2019-06-07 北京百度网讯科技有限公司 编译量子电路的方法、装置、设备和计算机可读存储介质
CN110188885A (zh) * 2019-06-28 2019-08-30 合肥本源量子计算科技有限责任公司 一种量子计算模拟方法、装置、存储介质和电子装置
CN110705711A (zh) * 2019-09-17 2020-01-17 合肥本源量子计算科技有限责任公司 一种量子态信息降维编码方法及装置

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008269012A (ja) * 2007-04-16 2008-11-06 Nippon Telegr & Teleph Corp <Ntt> 量子加算演算方法及び量子加算演算装置
JP2012145972A (ja) * 2011-01-06 2012-08-02 Nippon Telegr & Teleph Corp <Ntt> 量子演算方法、量子演算装置
CN108280800A (zh) * 2018-01-29 2018-07-13 重庆邮电大学 一种量子图像卷积方法
CN108932388A (zh) * 2018-07-10 2018-12-04 华东交通大学 一种基于量子叠加态的模2n减法器设计方法
CN109002894A (zh) * 2018-07-10 2018-12-14 华东交通大学 一种基于量子叠加态的量子加法器设计方法
CN109858628A (zh) * 2019-02-28 2019-06-07 北京百度网讯科技有限公司 编译量子电路的方法、装置、设备和计算机可读存储介质
CN110188885A (zh) * 2019-06-28 2019-08-30 合肥本源量子计算科技有限责任公司 一种量子计算模拟方法、装置、存储介质和电子装置
CN110705711A (zh) * 2019-09-17 2020-01-17 合肥本源量子计算科技有限责任公司 一种量子态信息降维编码方法及装置

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
OLEKSANDR KYRIIENKO 等: "Quantum inverse iteration algorithm for programmable quantum simulators", NATURE *
范洪强;胡滨;袁征;: "用经典计算机模拟量子计算机", 密码学报, no. 03 *

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115809042A (zh) * 2021-09-14 2023-03-17 合肥本源量子计算科技有限责任公司 量子模数加法运算方法、装置、电子装置及模数算术组件
CN115879552A (zh) * 2021-09-28 2023-03-31 合肥本源量子计算科技有限责任公司 量子模数乘逆运算方法、装置、电子装置及模数算术组件

Also Published As

Publication number Publication date
CN116702913A (zh) 2023-09-05
CN116796848A (zh) 2023-09-22
CN113222156B (zh) 2023-08-08

Similar Documents

Publication Publication Date Title
CN112114776B (zh) 一种量子乘法运算方法、装置、电子装置及存储介质
CN112162723B (zh) 一种量子减法运算方法、装置、电子装置及存储介质
CN112633508B (zh) 一种量子线路的生成方法、装置、存储介质及电子装置
CN113850389B (zh) 一种量子线路的构建方法及装置
CN112633507B (zh) 一种将复向量编码到量子线路的方法及装置
CN113222155B (zh) 一种量子线路的构建方法、装置、电子装置和存储介质
CN113222161B (zh) 一种自定义量子逻辑门的实现方法、装置
CN113222150A (zh) 一种量子态的变换方法及装置
CN113222156B (zh) 一种待执行操作的量子模拟方法、装置
CN113222159B (zh) 一种量子态的确定方法及装置
CN113222157B (zh) 一种量子模拟方法、装置、电子装置及存储介质
CN112214200B (zh) 一种量子减法运算方法、装置、电子装置及存储介质
CN113222153B (zh) 一种量子态的模拟方法、装置、存储介质和电子装置
CN113222151B (zh) 一种量子态的变换方法及装置
CN115809707A (zh) 量子比较运算方法、装置、电子装置及基础算术组件
CN115983392A (zh) 量子程序映射关系的确定方法、装置、介质及电子装置
CN114764619A (zh) 一种基于量子线路的卷积操作方法及装置
CN112162725B (zh) 一种量子除法运算方法、装置、电子装置及存储介质
CN113222152B (zh) 一种量子态信息的获取方法及装置
CN114881238A (zh) 量子鉴别器的构造方法、装置、介质及电子装置
CN115879555A (zh) 量子模数快速乘法运算方法、装置及模数算术组件
CN114764618A (zh) 一种针对线性系统的量子预处理方法及装置
CN115809042A (zh) 量子模数加法运算方法、装置、电子装置及模数算术组件
CN115879552A (zh) 量子模数乘逆运算方法、装置、电子装置及模数算术组件
CN114692879A (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
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

GR01 Patent grant
GR01 Patent grant