WO2024109730A1 - Multiplicateur modulaire variable, procédé de fonctionnement et dispositif associé - Google Patents

Multiplicateur modulaire variable, procédé de fonctionnement et dispositif associé Download PDF

Info

Publication number
WO2024109730A1
WO2024109730A1 PCT/CN2023/132889 CN2023132889W WO2024109730A1 WO 2024109730 A1 WO2024109730 A1 WO 2024109730A1 CN 2023132889 W CN2023132889 W CN 2023132889W WO 2024109730 A1 WO2024109730 A1 WO 2024109730A1
Authority
WO
WIPO (PCT)
Prior art keywords
variable
data
adder
modular
input
Prior art date
Application number
PCT/CN2023/132889
Other languages
English (en)
Chinese (zh)
Inventor
王辈
李叶
窦猛汉
Original Assignee
本源量子计算科技(合肥)股份有限公司
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
Priority claimed from CN202211473091.1A external-priority patent/CN118095459A/zh
Priority claimed from CN202211465284.2A external-priority patent/CN118092857A/zh
Priority claimed from CN202211465294.6A external-priority patent/CN118095458A/zh
Application filed by 本源量子计算科技(合肥)股份有限公司 filed Critical 本源量子计算科技(合肥)股份有限公司
Publication of WO2024109730A1 publication Critical patent/WO2024109730A1/fr

Links

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
    • 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

Definitions

  • the present application relates to the field of quantum computing technology, and in particular to a variable modular multiplication operator, an operation method and related devices.
  • Quantum computers are physical devices that follow the laws of quantum mechanics to perform high-speed mathematical and logical operations, store and process quantum information. When a device processes and calculates quantum information and runs quantum algorithms, it is a quantum computer. Quantum computers have become a key technology under research because they have the ability to process mathematical problems more efficiently than ordinary computers. For example, they can speed up the time to crack RSA keys from hundreds of years to a few hours.
  • Modular operations are widely used in number theory and cryptography, from the identification of odd and even numbers to prime numbers, from Sun Tzu's theorem to Caesar's cipher, from finite fields to the realization of block cipher field towers, from elliptic curves over finite fields to public key cryptography based on elliptic curves, all of which are filled with modular operations. Therefore, modular operations are the most commonly used function in computing components, and the same is true for quantum computing. How to implement variable modular multiplication operations, variable modular addition operations based on constant addition and subtraction, and variable double modular multiplication operations are technical problems that need to be solved urgently in quantum computing.
  • the purpose of this application is to provide a variable modular multiplication operator, operation method and related devices, aiming to realize the modular multiplication operation of any two input data and a preset modulus in quantum computing.
  • the specific technical solution is as follows:
  • variable modulo adder based on constant addition and subtraction
  • the variable modulo adder comprises a first adder, a first constant subtractor, a first CNOT gate and a first controlled constant adder which are cascaded in sequence, wherein the constants in the first constant subtractor and the first controlled constant adder are both moduli, and the variable modulo adder is used to calculate the result of the modulo addition operation of two input data to be added and the moduli.
  • the four input ends of the variable modular adder are respectively connected to the three input ends of the first adder and one of the input ends of the first CNOT gate, and the four input ends of the variable modular adder are used to input the quantum states corresponding to the two data to be added, the initial calculation auxiliary data and the initial comparison auxiliary data.
  • one output terminal of the first adder is connected to the input terminal of the first constant subtractor, the output terminal of the first constant subtractor is connected to the other input terminal of the first CNOT gate, and two output terminals of the first CNOT gate are connected to two input terminals of the first controlled constant adder.
  • the output end of the first constant subtractor includes a data output end and a sign output end
  • one of the input ends of the first controlled constant adder includes a data input end and a sign input end
  • the sign output end of the first constant subtractor is connected to the other input end of the first CNOT gate
  • one of the output ends of the first CNOT gate is connected to the first controlled constant adder.
  • a controlled constant adder is connected to the sign input terminal.
  • the two output ends of the first controlled constant adder are used to output the quantum state corresponding to the analog addition operation result and the intermediate comparison auxiliary data, respectively, and the other two output ends of the first adder are used to output the quantum state corresponding to one of the data to be added and the intermediate calculation auxiliary data.
  • the first adder, the first constant subtractor, the first CNOT gate and the first controlled constant adder are analog addition operation modules, and the analog addition operation module is used to calculate the analog addition operation result and the intermediate comparison auxiliary data based on the input initial comparison auxiliary data and two data to be added.
  • the variable analog addition operator also includes an auxiliary data reset module connected to the analog addition operation module, and the auxiliary data reset module is used to reset the intermediate comparison auxiliary data to the initial comparison auxiliary data.
  • the auxiliary data reset module includes a subtractor, a first NOT gate, a second CONT gate, a second NOT gate and a second adder which are cascaded in sequence, the four input ends of the auxiliary data reset module are respectively connected to the three input ends of the subtractor and one of the input ends of the second CNOT gate, the four output ends of the auxiliary data reset module are respectively connected to the three output ends of the second adder and one of the output ends of the second CONT gate, the three output ends of the second adder are used to output the analog addition operation result, one of the data to be added and the quantum state corresponding to the initial calculation auxiliary data, and one of the output ends of the second CONT gate is used to output the quantum state corresponding to the initial comparison auxiliary data.
  • the three output ends of the subtractor are respectively connected to the input end of the first NOT gate and two of the input ends of the second adder, the output end of the first NOT gate is connected to the other input end of the second CNOT gate, the other output end of the second CNOT gate is connected to the input end of the second NOT gate, and the output end of the second NOT gate is connected to the other input end of the second adder.
  • one of the output ends of the subtractor includes a data output end and a sign output end
  • the other input end of the second adder includes a data input end and a sign input end
  • the sign output end of the subtractor is connected to the input end of the first NOT gate
  • the output end of the second NOT gate is connected to the sign input end of the second adder.
  • variable modular adder In a possible embodiment, four output terminals of the variable modular adder are respectively connected to two output terminals of the first controlled constant adder and the other two output terminals of the first adder.
  • a variable double modular multiplication operator which includes a double operation module and a modulus operation module cascaded in sequence, the constant in the modulus operation module includes a modulus, the double operation module is used to determine the double of the input data to be multiplied, and the modulus operation module is used to calculate the modulus operation result of the double of the data to be multiplied and the modulus.
  • the doubling operation module includes one of the following operations: an operation of staggered storage of data, an adder, and a SWAP gate.
  • one of the input ends of the variable double modular multiplication operator is connected to the input end of the double operation module
  • the output end of the double operation module is connected to one of the input ends of the modulus operation module
  • the other input end of the variable double modular multiplication operator is connected to the other input end of the modulus operation module
  • one of the input ends of the variable double modular multiplication operator is used to input the quantum state corresponding to the data to be multiplied
  • the other input end of the variable double modular multiplication operator is used to input the quantum state corresponding to the data to be multiplied.
  • the input end is used to input the quantum state corresponding to the initial auxiliary data.
  • the modulus operation module includes a second constant subtractor, a third CNOT gate, and a second controlled constant adder which are cascaded in sequence, and the constants in the second constant subtractor and the second controlled constant adder are the modulus.
  • the output end of the second constant subtractor includes a data output end and a sign output end
  • one of the input ends of the second controlled constant adder includes a data input end and a sign input end
  • the data output end of the second constant subtractor is connected to the data input end of the second controlled constant adder
  • the sign output end of the second constant subtractor is connected to one of the input ends of the third CNOT gate
  • the two output ends of the third CNOT gate are respectively connected to the sign input end and another input end of the second controlled constant adder.
  • the two output terminals of the second controlled constant adder are respectively used to output a quantum state corresponding to a modulus operation result of twice the data to be multiplied and the modulus and a quantum state corresponding to the intermediate auxiliary data.
  • two output terminals of the second controlled constant adder are respectively connected to two output terminals of the variable double modular multiplication operator.
  • the second constant subtractor, the third CNOT gate and the second controlled constant adder are a first operator module
  • the modulus operation module also includes a second operator module cascaded with the first operator module, and the second operator module is used to reset the intermediate auxiliary data to the initial auxiliary data.
  • the second sub-operation module includes a third NOT gate, a fourth CNOT gate and a fourth NOT gate cascaded in sequence, one of the output ends of the second controlled constant adder includes a low-order output end and a non-low-order output end, the low-order output end of the second controlled constant adder is connected to the input end of the third NOT gate, and the other output end of the second controlled constant adder is connected to one of the input ends of the fourth CNOT gate.
  • the output end of the third NOT gate is connected to the other input end of the fourth CNOT gate, and the other output end of the fourth CNOT gate is connected to the input end of the fourth NOT gate.
  • the output end of the fourth NOT gate and the non-low-order output end of the second controlled constant adder are used to output the quantum state corresponding to the modulus operation result of twice the data to be multiplied and the modulus, and one of the output ends of the fourth CNOT gate is used to output the quantum state corresponding to the initial auxiliary data.
  • the output end of the fourth NOT gate and the non-low-order output end of the second controlled constant adder are connected to one of the output ends of the variable double modular multiplication operator, and one of the output ends of the fourth CNOT gate is connected to the other output end of the variable double modular multiplication operator.
  • variable modular multiplication operator which includes n controlled variable modular addition operators as described in the above embodiment and n-1 variable double modular multiplication operators as described in the above embodiment, which are alternately cascaded, and the constants in the controlled variable modular addition operator and the variable double modular multiplication operator include a modulus, and the variable modular multiplication operator is used to calculate the modular multiplication result of two input data to be multiplied and the modulus.
  • variable modular addition method based on constant addition and subtraction
  • the result of the modular addition operation is determined based on a quantum state corresponding to the result of the modular addition operation.
  • variable double modular multiplication operation method comprising:
  • variable double modular multiplication operator Inputting the data to be multiplied into the variable double modular multiplication operator, and running the variable double modular multiplication operator to obtain a quantum state corresponding to a modular operation result of twice the data to be multiplied and the modulus;
  • the modulus operation result of twice the data to be multiplied and the modulus is determined based on the quantum state corresponding to the modulus operation result.
  • variable modular multiplication operation method comprising:
  • variable modular multiplication operator Inputting the two data to be multiplied into the variable modular multiplication operator, and running the variable modular multiplication operator to obtain a quantum state corresponding to a modular multiplication operation result of the two data to be multiplied and the modulus;
  • the modular multiplication result of the two data to be multiplied and the modulus is determined based on the quantum state corresponding to the modular multiplication result.
  • variable modular addition operation device based on constant addition and subtraction
  • An acquisition unit used for acquiring the variable modular addition operator and the two data to be added as described in the above embodiment
  • a calculation unit used for inputting the two data to be added into the variable modular addition operator, and running the variable modular addition operator to obtain a quantum state corresponding to a result of modular addition operation of the two data to be added and the modulus;
  • a determination unit is used to determine the result of the analog addition operation based on the quantum state corresponding to the result of the analog addition operation.
  • the acquisition unit is further used to acquire the variable double modular multiplication operator and the data to be multiplied as described in the above embodiment;
  • the computing unit is further configured to input the data to be multiplied into the variable double modular multiplication operator, and to operate the variable double modular multiplication operator to obtain a quantum state corresponding to a modular operation result of twice the data to be multiplied and the modulus;
  • the determining unit is further used to determine a modulus operation result of twice the data to be multiplied and the modulus based on a quantum state corresponding to the modulus operation result.
  • the acquisition unit is further used to acquire the variable modular multiplication operator and two data to be multiplied as described in the above embodiment;
  • the computing unit is further used to input the two data to be multiplied into the variable modular multiplication operator, and to run the variable modular multiplication operator to obtain a quantum state corresponding to a modular multiplication operation result of the two data to be multiplied and the modulus;
  • the determining unit is further used to determine the modular multiplication result of the two data to be multiplied and the modulus based on the quantum state corresponding to the modular multiplication result.
  • a storage medium is further provided, wherein the computer-readable storage medium stores a computer program, and when the computer program is executed by a processor, the method steps described in any one of the fourth aspect, the fifth aspect and the sixth aspect are implemented.
  • an electronic device comprising a memory and a processor, wherein the memory stores a computer program, and the processor is configured to run the computer program to execute the method steps described in any one of the fourth, fifth and sixth aspects above.
  • variable modular multiplication operator provided in the present application comprises n controlled variable modular addition operators alternately cascaded and n-1 variable double modular multiplication operators. Arithmetic unit.
  • the variable modulo-addition operator comprises a first adder, a constant subtractor, a first CNOT gate and a first controlled constant adder which are cascaded in sequence.
  • the constants in the first constant subtractor and the first controlled constant adder are moduli.
  • the variable modulo-addition operator is used to calculate the modulo-addition operation result of two input data to be added and the moduli. For any two input data to be added, the modulo-addition operation result of the two data and the moduli preset in the variable modulo-addition operator can be calculated.
  • the variable double modular multiplication operator comprises a double operation module and a modulo operation module which are cascaded in sequence.
  • the constant in the modulo operation module comprises the moduli.
  • the double operation module is used to determine the double of the input data to be multiplied.
  • the modulo operation module is used to calculate the modulo-addition operation result of the two data to be multiplied and the moduli.
  • the double operation module can calculate the double of the two data and the moduli.
  • the modulo operation module calculates the modulo result of the two data and the preset moduli.
  • the constants in the controlled variable modular addition operator and the variable double modular multiplication operator include the modulus.
  • FIG1 is a hardware structure block diagram of a computer terminal of a variable modular addition operation method based on constant addition and subtraction provided by an embodiment of the present application;
  • FIG2 is a schematic diagram of the structure of a variable modulo addition operator based on constant addition and subtraction provided in an embodiment of the present application;
  • FIG3 is a schematic diagram of the structure of another variable modulo adder based on constant addition and subtraction provided in an embodiment of the present application;
  • FIG4 is a schematic diagram of the structure of an auxiliary data reset module provided in an embodiment of the present application.
  • FIG5 is a flow chart of a variable modular addition operation method based on constant addition and subtraction provided in an embodiment of the present application
  • FIG6 is a schematic diagram of the structure of a variable double modular multiplication operator provided in an embodiment of the present application.
  • FIG7 is a schematic diagram of the structure of another variable double modular multiplication operator provided in an embodiment of the present application.
  • FIG8 is a schematic diagram of the structure of a modulus-to-digital operation module provided in an embodiment of the present application.
  • FIG9 is a schematic diagram of the structure of another analog-to-digital operation module provided in an embodiment of the present application.
  • FIG10 is a flow chart of a variable double modular multiplication operation method provided in an embodiment of the present application.
  • FIG11 is a schematic diagram of the structure of a variable modular multiplication operator provided in an embodiment of the present application.
  • FIG12 is a flow chart of a variable modular multiplication operation method provided in an embodiment of the present application.
  • FIG13 is a schematic diagram of the structure of a variable modular addition operation device based on constant addition and subtraction provided in an embodiment of the present application.
  • the embodiment of the present application first provides a variable modular multiplication method, which can be applied to electronic devices, such as computer terminals, specifically ordinary computers, quantum computers, etc.
  • FIG. 1 is a hardware structure block diagram of a computer terminal of a variable modular addition operation method based on constant addition and subtraction provided in an embodiment of the present application.
  • the computer terminal may include one or more (only one is shown in FIG. 1 ) processors 102 (the processor 102 may include but is not limited to a processing device such as a microprocessor MCU or a programmable logic device FPGA) and a memory 104 for storing the variable modular multiplication operation method.
  • the computer terminal may also include a transmission device 106 and an input/output device 108 for a communication function.
  • the structure shown in FIG. 1 is only for illustration and does not limit the structure of the computer terminal.
  • the computer terminal may also include more or fewer components than those shown in FIG. 1 , or have a configuration different from that shown in FIG. 1 .
  • the memory 104 can be used to store software programs and modules of application software, such as program instructions/modules corresponding to the variable modular multiplication operation method in the embodiment of the present application.
  • the processor 102 executes various functional applications and data processing by running the software programs and modules stored in the memory 104, that is, implementing the above method.
  • the memory 104 may include a high-speed random access memory, and may also include a non-volatile memory, such as one or more magnetic storage devices, flash memory, or other non-volatile solid-state memory.
  • the memory 104 may further include a memory remotely arranged relative to the processor 102, and these remote memories may be connected to the computer terminal via a network. Examples of the above-mentioned network include, but are not limited to, the Internet, an intranet, a local area network, a mobile communication network, and combinations thereof.
  • the transmission device 106 is used to receive or send data via a network.
  • the specific example of the above network may include a wireless network provided by a communication provider of a computer terminal.
  • the transmission device 106 includes a network adapter (Network Interface Controller, NIC), which can be connected to other network devices through a base station so as to communicate with the Internet.
  • the transmission device 106 can be a radio frequency (Radio Frequency, RF) module, which is used to communicate with the Internet wirelessly.
  • RF Radio Frequency
  • a true quantum computer is a hybrid structure, which consists of two parts: one part is a classical computer, which is responsible for performing classical calculations and control; the other part is a quantum device, which is responsible for running quantum programs and thus realizing quantum computing.
  • a quantum program is a sequence of instructions written in a quantum language such as QRunes that can be run on a quantum computer, which supports quantum logic gate operations and ultimately realizes quantum computing.
  • a quantum program is a sequence of instructions that operate quantum logic gates in a certain sequence.
  • Quantum computing simulation is the process of simulating the operation of quantum programs corresponding to specific problems by using a virtual architecture (i.e., quantum virtual machine) built with the resources of ordinary computers.
  • a quantum program corresponding to a specific problem.
  • the quantum program referred to in the embodiment of the present application is a program that characterizes quantum bits and their evolution written in classical languages, in which quantum bits, quantum logic gates, etc. related to quantum computing are represented by corresponding classical codes.
  • Quantum circuits as a manifestation of quantum programs, are also called quantum logic circuits. They are the most commonly used general quantum computing model. They represent circuits that operate on quantum bits in an abstract concept. They are composed of quantum bits, circuits (timelines), and various quantum logic gates. Finally, the results often need to be read out through quantum measurement operations.
  • quantum circuits Unlike traditional circuits that are connected by metal wires to transmit voltage or current signals, in quantum circuits, the circuits can be viewed as Connected by time, the state of the quantum bit evolves naturally over time, following the instructions of the Hamiltonian operator until it encounters a logic gate and is operated on.
  • a quantum program as a whole corresponds to a total quantum circuit, and the quantum program described in this application refers to the total quantum circuit, wherein the total number of quantum bits in the total quantum circuit is the same as the total number of quantum bits in the quantum program.
  • a quantum program can be composed of a quantum circuit, a measurement operation on the quantum bits in the quantum circuit, a register for storing the measurement results, and a control flow node (jump instruction).
  • a quantum circuit can contain dozens, hundreds, or even thousands of quantum logic gate operations.
  • the execution process of a quantum program is the process of executing all quantum logic gates in a certain sequence. It should be noted that the sequence is the time order in which a single quantum logic gate is executed.
  • the present application relates to quantum computers.
  • the units that process the chips are CMOS tubes.
  • Such computing units are not limited by time and intermittency, that is, such computing units are not limited by the length of use and are available at any time.
  • the number of such computing units is sufficient, that is, the number of computing units in a chip is currently in the tens of thousands.
  • the number of computing units is sufficient and the computing logic that can be selected by CMOS tubes is fixed, for example: AND logic.
  • the basic computing unit in current quantum computers is the quantum bit.
  • the input of the quantum bit is limited by coherence and coherence time, that is, the quantum bit is limited by the length of use and is not available at any time. Making full use of the quantum bit within the available length of use of the quantum bit is a key problem in quantum computing.
  • the number of quantum bits in a quantum computer is a key problem in quantum computing.
  • the number of quantum bits in a quantum computer is one of the representative indicators of the performance of a quantum computer. Each quantum bit realizes the computing function through the logical function configured on demand.
  • Quantum logic gates are generally represented by unitary matrices, and unitary matrices are not only in the form of matrices, but also a kind of operation and transformation.
  • the effect of a general quantum logic gate on a quantum state is calculated by multiplying the unitary matrix on the left by the matrix corresponding to the quantum state right vector.
  • the operation effect is achieved by combining a limited number of quantum bits with a variety of logical functions.
  • the design of the logical function acting on quantum bits is the key to improving the computing performance of quantum computers, and requires special design.
  • the above-mentioned design for quantum bits is a technical problem that ordinary computing devices do not need to consider or face.
  • this application proposes a variable modular multiplication operator, operation method and related devices, which aims to realize modular addition operations and double modular multiplication operations of input data and preset moduli in quantum computing, and then realize modular multiplication operations.
  • Fig. 2 is a schematic diagram of the structure of a variable modulo adder based on constant addition and subtraction provided in an embodiment of the present application.
  • the variable modulo adder 200 includes a first adder (QAdder) 210, a first constant subtractor ( ⁇ SUB(N)) 220, a first CNOT gate 230 and a first controlled constant adder ( ⁇ ADD(N)) 240 which are cascaded in sequence, the constants in the first constant subtractor 220 and the first controlled constant adder 240 are both moduli, and the variable modulo adder 200 is used to calculate the result of the modulo addition operation of two input data to be added and the moduli.
  • QAdder a first adder
  • ⁇ SUB(N) first constant subtractor
  • ⁇ ADD(N) first controlled constant adder
  • the modular addition operation is x+y mod p.
  • the quantum states corresponding to the data to be added are encoded with n quantum bits, so the number of quantum bits required for the quantum circuit corresponding to the embodiment of the present application is 2n+2, where
  • the four input terminals 200a1, 200a2, 200a3, and 200a4 of the variable modular addition operator 200 are respectively connected to the three input terminals 210a1, 210a2, and 210a3 of the first adder 210 and one of the input terminals 230a1 of the first CNOT gate 230, and the four input terminals 200a1, 200a2, 200a3, and 200a4 of the variable modular addition operator 200 are used to input the quantum states corresponding to the two data to be added x and y, the initial calculation auxiliary data, and the initial comparison auxiliary data.
  • the quantum bits corresponding to the encoded initial calculation auxiliary data are used to assist in addition or subtraction calculations, and the quantum bits corresponding to the initial comparison auxiliary data are used to assist in comparison calculations.
  • the input items and output items corresponding to the input end and the output end can be quantum bits
  • the data is encoded in the quantum state of the quantum bit
  • each quantum logic gate acts on the quantum bit to make the quantum state of the quantum bit evolve.
  • the initial calculation auxiliary data is 0, which is encoded by another auxiliary bit, and the auxiliary bit is used to assist in addition or subtraction calculations.
  • the input items and output items corresponding to the input and output ends can be quantum bits, and the data is encoded on the quantum state of the quantum bit.
  • Each quantum logic gate acts on the quantum bit to make the quantum state of the quantum bit evolve.
  • both x and y are encoded with n quantum bits to obtain the quantum state
  • the initial calculation auxiliary data and the initial comparison auxiliary data may be, for example, 0 or other values, which are not limited here.
  • the initial calculation auxiliary data and the initial comparison auxiliary data are both set to 0, encoded with one quantum bit, and the encoded
  • one of the output terminals 210b1 of the first adder 210 is connected to the input terminal 220a of the first constant subtractor 220
  • the output terminal 220b of the first constant subtractor 220 is connected to the other input terminal 230a2 of the first CNOT gate 230
  • the two output terminals 230b1 and 230b2 of the first CNOT gate 230 are connected to the two input terminals 240a1 and 240a2 of the first controlled constant adder 240.
  • the output terminal 220b of the first constant subtractor 220 includes a data output terminal 220bm and a sign output terminal 220bn
  • one of the input terminals 240a2 of the first controlled constant adder 240 includes a data input terminal 240a2m and a sign input terminal 240a2n
  • the sign output terminal 220bn of the first constant subtractor 220 is connected to the other input terminal 230a2 of the first CNOT gate 230
  • one of the output terminals 230b2 of the first CNOT gate 230 is connected to the sign input terminal 240a2n of the first controlled constant adder 240.
  • the two output terminals 240b1 and 240b2 of the first controlled constant adder 240 are respectively used to output the quantum state corresponding to the analog addition operation result and the intermediate comparison auxiliary data
  • the other two output terminals 210b2 and 210b3 of the first adder 210 are used to output the quantum state corresponding to one of the data to be added and the intermediate calculation auxiliary data.
  • the four output terminals 200b1, 200b2, 200b3 and 200b4 of the variable modulo adder 200 are respectively connected to the two output terminals 240b1, 240b2 of the first controlled constant adder 240 and the other output terminals 210b2, 210b3 of the first adder 210.
  • 0> is evolved into
  • y+z> passes through the first constant subtractor 220 and evolves into
  • the quantum bit corresponding to the sign bit is
  • the first CNOT gate 230 will not be executed
  • the quantum state of the quantum bit used to encode the initial comparison auxiliary data 0 is still
  • the first controlled constant adder 240 will not be executed
  • the quantum state corresponding to the data y to be added output by the output terminal 200b1 is
  • the result of the modular addition operation output by the output terminal 200b2 is
  • the quantum state corresponding to the intermediate calculation auxiliary data output by the output terminal 200b3 is
  • the quantum state corresponding to the intermediate comparison auxiliary data output by the output terminal 200b4 is
  • the quantum bit corresponding to the sign bit is
  • the first CNOT gate 230 is executed, and the quantum state of the quantum bit used to encode the initial comparison auxiliary data 0 evolves to
  • the first controlled constant adder 240 is also executed, and the output terminal 200b1 outputs the quantum state
  • the quantum state corresponding to the intermediate calculation auxiliary data output by the output terminal 200b3 is
  • the quantum state corresponding to the intermediate comparison auxiliary data output by the output terminal 200b4 is
  • Fig. 3 is a schematic diagram of the structure of another variable modulo adder based on constant addition and subtraction provided in an embodiment of the present application.
  • the variable modulo adder 200 in the controlled variable modulo adder includes a modulo addition operation module 200A and an auxiliary data reset module 200B cascaded in sequence, the modulo addition operation module 200A includes the first adder 210, the first constant subtractor 220, the first CNOT gate 230 and the first controlled constant adder 240, the modulo addition operation module 200A is used to calculate the modulo addition operation result and the intermediate comparison auxiliary data based on the input initial comparison auxiliary data and two data to be added, and the auxiliary data reset module 200B is used to reset the intermediate comparison auxiliary data to the initial comparison auxiliary data.
  • one of the two data to be added in the modular addition operation module 200A is y, and the other is the output of the previous variable double modular multiplication operator.
  • the initial comparison auxiliary data is 0 and is encoded by an auxiliary bit, which is used to assist in comparison calculation.
  • the initial comparison auxiliary data is 0, and the two data to be added are y and 0; for the 1st analog addition operation module, the initial comparison auxiliary data is still 0, and the two data to be added are y and 2(x_(n-1)y mod p).
  • the inputs of the remaining analog addition operation modules can be inferred based on the formula in the previous embodiment, and will not be repeated here.
  • the intermediate comparison auxiliary data is evolved from the initial comparison auxiliary data, and may be 0 or 1. If it is different from the initial comparison auxiliary data, it needs to be reset by the auxiliary data reset module 200B.
  • FIG. 4 is a schematic diagram of the structure of an auxiliary data reset module provided in an embodiment of the present application.
  • the auxiliary data reset module 200B includes a subtractor 250 (QSubtractor), a first inverter 260, a second CONT gate 270, a second inverter 280, and a second adder 290, which are cascaded in sequence.
  • the four input terminals 200c1, 200c2, 200c3, and 200c4 of the auxiliary data reset module 200B are respectively connected to the three input terminals 250a1, 250a2, and 250a3 of the subtractor 250 and one of the second CNOT gates 270.
  • Input terminal 270a1 is connected.
  • the three output terminals 250b1, 250b2, and 250b3 of the subtractor 250 are respectively connected to the input terminal 260a of the first NOT gate 260 and two input terminals 290a2 and 290a3 of the second adder 290, the output terminal 260b of the first NOT gate 260 is connected to the other input terminal 270a2 of the second CNOT gate 270, the other output terminal 270b1 of the second CNOT gate 270 is connected to the input terminal 280a of the second NOT gate 280, and the output terminal 280b of the second NOT gate 280 is connected to the other input terminal 290a1 of the second adder 290.
  • one of the output terminals 250b1 of the subtractor 250 includes a data output terminal 250b1m and a sign output terminal 250b1n
  • another input terminal 290a1 of the second adder 290 includes a data input terminal 290a1m and a sign input terminal 290a1n
  • the sign output terminal 250b1n of the subtractor 250 is connected to the input terminal 260a of the first NOT gate 260
  • the output terminal 280b of the second NOT gate 280 is connected to the sign input terminal 290a1n of the second adder 290.
  • the four output ends 200d1, 200d2, 200d3, and 200d4 of the auxiliary data reset module 200B are respectively connected to the three output ends 290b1, 290b2, and 290b3 of the second adder 290 and one of the output ends 270b2 of the second CONT gate 270, and the three output ends 290b1, 290b2, and 290b3 of the second adder 290 are used to output the analog addition operation result, one of the data to be added and the quantum state corresponding to the initial calculation auxiliary data, and one of the output ends 270b2 of the second CONT gate 270 is used to output the quantum state corresponding to the initial comparison auxiliary data.
  • y+z-p> passes through the subtractor 250 and evolves to
  • y+z> passes through the subtractor 250 and evolves to
  • the embodiment of the present application resets the auxiliary comparison bit so that the reset auxiliary comparison bit can be used for other calculations, saving computing resources; at the same time, after the embodiment of the present application resets the auxiliary comparison bit, it can be used for inversion to realize variable subtraction and modular addition operations.
  • the subtractor in the embodiment of the present application can be obtained by inverting the quantum circuit corresponding to the adder.
  • the first adder and the second adder can be implemented through the adder interface QAdderIgnorecarry() in QPanda, and the subtractor can be implemented through QAdderIgnorecarry()dagger().
  • the constant subtractor can be obtained by inverting the quantum circuit corresponding to the constant adder.
  • the constant subtractor and the quantum circuit affected by Controlled constant addition can be implemented through the adder in the Chinese patent document with application number "202211114262.1" and application name "Constant adder, operation method and related device based on quantum Fourier transform".
  • the adder and subtractor can realize the addition and subtraction of any two input data, while the constant adder and constant subtractor can only realize the addition and subtraction of any one input data and the constant encoded in the constant adder and constant subtractor.
  • the adder, subtractor, constant adder, and constant subtractor in the embodiments of the present application may also have other implementation methods, which are not limited here.
  • FIG5 is a flow chart of a variable modular addition operation method based on constant addition and subtraction provided in an embodiment of the present application. The method comprises:
  • Step 501 obtaining a variable modulo addition operator and two data to be added as in the above embodiment
  • Step 502 inputting two data to be added into a variable modular addition operator, and running the variable modular addition operator to obtain a quantum state corresponding to a modular addition operation result of the two data to be added and the modulus;
  • Step 503 determining the result of the modular addition operation based on the quantum state corresponding to the result of the modular addition operation.
  • variable modulo adder includes a first adder, a first constant subtractor, a first CNOT gate and a first controlled constant adder which are cascaded in sequence, the constants in the first constant subtractor and the first controlled constant adder are moduli, and the variable modulo adder is used to calculate the modulo addition result of two input data to be added and the modulus. For any two input data to be added, the modulo addition result of the two data and the modulus preset in the variable modulo adder can be calculated.
  • Fig. 6 is a schematic diagram of the structure of a variable double modular multiplication operator provided in an embodiment of the present application.
  • the variable double modular multiplication operator 300 includes a double operation module 310 and a modulus operation module 320 which are cascaded in sequence, the constant in the modulus operation module 320 includes the modulus, the double operation module 310 is used to determine the double of the input data to be multiplied, and the modulus operation module 320 is used to calculate the modulus operation result of the double of the data to be multiplied and the modulus.
  • variable double modular multiplication operator 300 double operation module 310 and modular operation module 320 are all quantum bits, and the classical data is encoded into the quantum state of the quantum bit, and the encoding method can be angle encoding, amplitude encoding, ground state encoding, etc.
  • the double operation module 310 and the modular operation module 320 can include quantum logic gates, which act on the quantum state to make the quantum state evolve.
  • the data k to be multiplied is encoded into the quantum state
  • p is the modulus; finally,
  • the doubling operation module 310 includes one of the following operations: an operation of staggered storage of data, an adder, and a SWAP gate.
  • k n-1 >, then 2k
  • k and k may be added by an adder to finally obtain
  • Fig. 7 is a schematic diagram of the structure of another variable double modular multiplication operator provided in an embodiment of the present application.
  • One of the input terminals 300a1 of the variable double modular multiplication operator 300 is connected to the input terminal 310a of the double operation module 310
  • the output terminal 310b of the double operation module 310 is connected to one of the input terminals 320a1 of the modular operation module 320
  • another input terminal 300a2 of the variable double modular multiplication operator 300 is connected to another input terminal 320a2 of the modular operation module 320
  • one of the input terminals 300a1 of the variable double modular multiplication operator 300 is used to input the quantum state corresponding to the data to be multiplied
  • another input terminal 300a2 of the variable double modular multiplication operator 300 is used to input the quantum state corresponding to the initial auxiliary data.
  • One output terminal 300b1 of the variable double modular multiplication operator 300 is connected to the output terminal 320b1 of the modular operation module 320, and the other output terminal 300b2 of the variable double modular multiplication operator 300 is connected to the output terminal 320b2 of the modular operation module 320.
  • Fig. 8 is a schematic diagram of the structure of a modulus operation module provided in an embodiment of the present application.
  • the modulus operation module 320 includes a cascaded first operator module 320A and a second operator module 320B, wherein the first operator module 320A is used to evolve the quantum state corresponding to the data to be multiplied and the quantum state corresponding to the initial auxiliary data into a modulus operation result of twice the data to be multiplied and the modulus, and the second operator module 320B is used to reset the intermediate auxiliary data to the initial auxiliary data.
  • Figure 9 is a structural schematic diagram of another modulus operation module provided in an embodiment of the present application
  • the first operation submodule 320A includes a second constant subtractor 321, a third CNOT gate 322 and a second controlled constant adder 323 which are cascaded in sequence, and the constants in the second constant subtractor 321 and the second controlled constant adder 323 are the modulus p.
  • the output terminal 321b of the second constant subtractor 321 includes a data output terminal 321bm and a sign output terminal 321bn
  • one of the input terminals 323a1 of the second controlled constant adder 323 includes a data input terminal 323a1m and a sign input terminal 323a1n
  • the data output terminal 321bm of the second constant subtractor 321 is connected to the data input terminal 323a1m of the second controlled constant adder 323
  • the sign output terminal 321bn of the second constant subtractor 321 is connected to one of the input terminals 322a1 of the third CNOT gate 322, and the two output terminals 322b1 and 322b2 of the third CNOT gate 322 are respectively connected to the sign input terminal 323a1n and the other input terminal 323a2 of the second controlled constant adder 323.
  • the two output terminals 323b1 and 323b2 of the second controlled constant adder 323 are respectively used to output the quantum state
  • the two output terminals 323b1 and 323b2 of the second controlled constant adder 323 are connected to the two output terminals 300b1 and 300b2 of the variable double modular multiplication operator 300 respectively.
  • the initial auxiliary data is 0, and the corresponding quantum state is
  • the quantum state evolves to
  • the quantum state of the quantum bit used to represent the 2k-p symbol is
  • the third CNOT gate 322 and the second controlled constant adder 323 will not be executed, the quantum state corresponding to the modulus operation result of the output double of the data to be multiplied and the modulus is
  • the third CNOT gate 322 and the second controlled constant adder 323 will both be executed, and the quantum state corresponding to the modulus operation result of the output double of the data to be multiplied and the modulus is
  • 2k mod p can be calculated regardless of whether 2k is greater than or equal to or less than p. However, if 2k is less than p, the quantum state of the auxiliary bit used to encode the initial auxiliary data will evolve from
  • the second sub-operation module 320B includes a third NOT gate 324, a fourth CNOT gate 325 and a fourth NOT gate 326 which are cascaded in sequence, one of the output terminals 323b1 of the second controlled constant adder 323 includes a low-order output terminal 323b1m and a non-low-order output terminal 323b1n, the low-order output terminal 323b1m of the second controlled constant adder 323 is connected to the input terminal 324a of the third NOT gate 324, and the other output terminal 323b2 of the second controlled constant adder 323 is connected to one of the input terminals 325a1 of the fourth CNOT gate 325.
  • the output terminal 324 b of the third NOT gate 324 is connected to the other input terminal 325 a 2 of the fourth CNOT gate 325 , and the other output terminal 325 b 2 of the fourth CNOT gate 325 is connected to the input terminal 326 a of the fourth NOT gate 326 .
  • the output end 326b of the fourth NOT gate 326 and the non-low-order output end 323b1n of the second controlled constant adder 323 are used to output the quantum state corresponding to the modulus operation result of twice the data to be multiplied and the modulus, and one of the output ends 325b1 of the fourth CNOT gate 325 is used to output the quantum state corresponding to the initial auxiliary data.
  • the output end 326b of the fourth NOT gate 326 and the non-low-order output end 323b1n of the second controlled constant adder 323 are connected to one of the output ends 300b1 of the variable double modular multiplication operator 300, and one of the output ends 325b1 of the fourth CNOT gate 325 is connected to the other output end 300b2 of the variable double modular multiplication operator 300.
  • 2k> is an even number, so the quantum state output by the low-order output terminal 323b1m is
  • the constant subtractor and controlled constant addition can be implemented by the adder in the Chinese patent document with application number "202211113262.1” and application name "Constant adder, operation method and related device based on quantum Fourier transform”. There may also be other implementation methods, which are not limited here.
  • FIG. 10 is a flow chart of a variable double modular multiplication method provided in an embodiment of the present application.
  • the method includes:
  • Step 1001 obtaining the variable double modular multiplication operator and the data to be multiplied in the above embodiment
  • Step 1002 inputting the data to be multiplied into a variable double modular multiplication operator, and running the variable double modular multiplication operator to obtain a quantum state corresponding to a modular operation result of twice the data to be multiplied and the modulus;
  • Step 1003 determining a modulus operation result of twice the data to be multiplied and the modulus based on the quantum state corresponding to the modulus operation result.
  • variable double modular multiplication operator includes a double operation module and a modulus operation module cascaded in sequence
  • the constant in the modulus operation module includes a modulus
  • the double operation module is used to determine the double of the input data to be multiplied
  • the modulus operation module is used to calculate the modulus operation result of the double of the data to be multiplied and the modulus.
  • its double can be calculated by the double operation module, and then the modulus operation module can calculate the modulus result of its double and the preset modulus.
  • Fig. 11 is a schematic diagram of the structure of a variable modular multiplication operator provided in an embodiment of the present application.
  • the variable modular multiplication operator 400 includes n controlled variable modular addition operators 200 and n-1 variable double modular multiplication operators 300 that are alternately cascaded, the constants in the controlled variable modular addition operators 200 and the variable double modular multiplication operators 300 include a modulus, and the variable modular multiplication operator 400 is used to calculate the modular multiplication result of two input data to be multiplied and the modulus.
  • variable modular addition operator and variable double modular multiplication operator in this article can not only be used to form the above-mentioned variable modular multiplication operator, but can also be applied to other scenarios that require modular addition and double modular multiplication operations. Therefore, this article does not impose any restrictions on the above-mentioned variable modular multiplication operator.
  • the modulus p is a prime number, the data to be multiplied x, y ⁇ [0, p-1], and the number of qubits used to encode x, y are
  • the modular multiplication operation of two input data to be multiplied and the preset modulus can be converted into modular addition operations of n controlled variables and n-1 variable double modular multiplication operations.
  • the variable modular multiplication operator 400 includes 5 input items, and the input of one input item is the quantum state
  • the n-1-ith variable modular addition operator The device 200 is controlled by
  • x n-1 y mod p can be regarded as x n-1 y+0mod p, so the n quantum bits corresponding to one
  • the five output items included in the variable modular multiplication operator 400 are used to output
  • n controlled variable modulo adders 200 are alternately cascaded with n-1 variable double modulo multipliers 300, that is, the output of the previous controlled variable modulo adder 200 is used as the input of the current variable double modulo multiplier 300, and the output of the current variable double modulo multiplier 300 and
  • the input of the 0th controlled variable modulo adder 200 is
  • FIG. 12 is a flow chart of a variable modular multiplication operation method provided in an embodiment of the present application. The method comprises:
  • Step 1201 obtaining the variable modular multiplication operator and two data to be multiplied in the above embodiment
  • Step 1202 inputting two data to be multiplied into a variable modular multiplication operator, and running the variable modular multiplication operator to obtain a quantum state corresponding to a modular multiplication operation result of the two data to be multiplied and the modulus;
  • Step 1203 determining the modular multiplication result of the two data to be multiplied and the modulus based on the quantum state corresponding to the modular multiplication result.
  • variable modular multiplication operator provided in the present application includes n controlled variable modular addition operators and n-1 variable double modular multiplication operators that are alternately cascaded, and the constants in the controlled variable modular addition operator and the variable double modular multiplication operator include the modulus.
  • FIG. 13 is a schematic diagram of the structure of a variable modular addition operation device based on constant addition and subtraction according to an embodiment of the present application, wherein the device comprises:
  • An acquiring unit 1301 is used to acquire the variable modular addition operator and the two data to be added as described in the above embodiment;
  • the calculation unit 1302 is used to input the two data to be added into the variable modular addition operator, and run the variable modular addition operator to obtain a quantum state corresponding to the modular addition operation result of the two data to be added and the modulus;
  • the determination unit 1303 is used to determine the result of the modular addition operation based on the quantum state corresponding to the result of the modular addition operation.
  • the acquisition unit is further used to acquire the variable double modular multiplication operator and the data to be multiplied as described in the above embodiment;
  • the computing unit is further configured to input the data to be multiplied into the variable double modular multiplication operator, and to operate the variable double modular multiplication operator to obtain a quantum state corresponding to a modular operation result of twice the data to be multiplied and the modulus;
  • the determining unit is further used to determine a modulus operation result of twice the data to be multiplied and the modulus based on a quantum state corresponding to the modulus operation result.
  • the acquisition unit is further used to acquire the variable modular multiplication operator and two data to be multiplied as described in the above embodiment;
  • the computing unit is further used to input the two data to be multiplied into the variable modular multiplication operator, and to run the variable modular multiplication operator to obtain a quantum state corresponding to a modular multiplication operation result of the two data to be multiplied and the modulus;
  • the determining unit is further used to determine the modular multiplication result of the two data to be multiplied and the modulus based on the quantum state corresponding to the modular multiplication result.
  • Yet another embodiment of the present application provides a storage medium, wherein the storage medium stores a computer program, wherein the computer program is configured to execute the steps in any of the above method embodiments when running.
  • the above storage medium may be configured to store a computer program for performing the following steps:
  • variable modular addition operator Inputting the two data to be added into the variable modular addition operator, and running the variable modular addition operator to obtain a quantum state corresponding to a modular addition operation result of the two data to be added and the modulus;
  • the result of the modular addition operation is determined based on a quantum state corresponding to the result of the modular addition operation.
  • the above-mentioned storage medium may include but is not limited to: U disk, read-only memory (ROM), random access memory (RAM), mobile hard disk, magnetic disk or optical disk and other media that can store computer programs.
  • Yet another embodiment of the present application provides an electronic device, comprising a memory and a processor, wherein the memory stores a computer program, and the processor is configured to run the computer program to execute the steps in any of the above method embodiments.
  • the electronic device may further include a transmission device and an input/output device, wherein the transmission device is connected to the processor, and the input/output device is connected to the processor.
  • the processor may be configured to perform the following steps through a computer program:
  • variable modular addition operator Inputting the two data to be added into the variable modular addition operator, and running the variable modular addition operator to obtain a quantum state corresponding to a modular addition operation result of the two data to be added and the modulus;
  • the result of the modular addition operation is determined based on a quantum state corresponding to the result of the modular addition operation.

Landscapes

  • Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Mathematical Analysis (AREA)
  • Data Mining & Analysis (AREA)
  • Evolutionary Computation (AREA)
  • Condensed Matter Physics & Semiconductors (AREA)
  • Computational Mathematics (AREA)
  • Mathematical Optimization (AREA)
  • Pure & Applied Mathematics (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Mathematical Physics (AREA)
  • Software Systems (AREA)
  • Artificial Intelligence (AREA)
  • Complex Calculations (AREA)

Abstract

L'invention concerne un multiplicateur modulaire variable, un procédé de fonctionnement et un dispositif associé. Le multiplicateur modulaire variable décrit par la présente invention comprend n additionneurs modulaires variables commandés et n - 1 doubles multiplicateurs modulaires variables qui sont mis en cascade en alternance. Des constantes dans les additionneurs modulaires variables commandés et les doubles multiplicateurs modulaires variables comprennent des modules. Une opération de multiplication modulaire est convertie en n opérations d'addition modulaire variable commandée et n - 1 opérations de double multiplication modulaire variable, ce qui permet d'obtenir la solution de l'opération de multiplication modulaire de deux éléments de données d'entrée à multiplier avec un module.
PCT/CN2023/132889 2022-11-21 2023-11-21 Multiplicateur modulaire variable, procédé de fonctionnement et dispositif associé WO2024109730A1 (fr)

Applications Claiming Priority (6)

Application Number Priority Date Filing Date Title
CN202211473091.1A CN118095459A (zh) 2022-11-21 2022-11-21 变量二倍模乘运算器、运算方法及相关装置
CN202211473091.1 2022-11-21
CN202211465284.2A CN118092857A (zh) 2022-11-22 2022-11-22 基于常数加减法的变量模加运算器、运算方法及相关装置
CN202211465294.6A CN118095458A (zh) 2022-11-22 2022-11-22 变量模乘运算器、运算方法及相关装置
CN202211465294.6 2022-11-22
CN202211465284.2 2022-11-22

Publications (1)

Publication Number Publication Date
WO2024109730A1 true WO2024109730A1 (fr) 2024-05-30

Family

ID=91195279

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2023/132889 WO2024109730A1 (fr) 2022-11-21 2023-11-21 Multiplicateur modulaire variable, procédé de fonctionnement et dispositif associé

Country Status (1)

Country Link
WO (1) WO2024109730A1 (fr)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20200310761A1 (en) * 2019-03-29 2020-10-01 Stmicroelectronics S.R.L. Hardware accelerator method, system and device
CN112114776A (zh) * 2020-09-30 2020-12-22 合肥本源量子计算科技有限责任公司 一种量子乘法运算方法、装置、电子装置及存储介质
CN112162723A (zh) * 2020-09-30 2021-01-01 合肥本源量子计算科技有限责任公司 一种量子加法运算方法、装置、电子装置及存储介质
CN114186384A (zh) * 2021-10-29 2022-03-15 杭州未名信科科技有限公司 一种基于优化的RAG-n算法的无乘法器变换电路

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20200310761A1 (en) * 2019-03-29 2020-10-01 Stmicroelectronics S.R.L. Hardware accelerator method, system and device
CN112114776A (zh) * 2020-09-30 2020-12-22 合肥本源量子计算科技有限责任公司 一种量子乘法运算方法、装置、电子装置及存储介质
CN112162723A (zh) * 2020-09-30 2021-01-01 合肥本源量子计算科技有限责任公司 一种量子加法运算方法、装置、电子装置及存储介质
CN114186384A (zh) * 2021-10-29 2022-03-15 杭州未名信科科技有限公司 一种基于优化的RAG-n算法的无乘法器变换电路

Similar Documents

Publication Publication Date Title
CN112162723B (zh) 一种量子减法运算方法、装置、电子装置及存储介质
CN112114776B (zh) 一种量子乘法运算方法、装置、电子装置及存储介质
CN112633508A (zh) 一种量子线路的生成方法、装置、存储介质及电子装置
CN112214200B (zh) 一种量子减法运算方法、装置、电子装置及存储介质
CN112162724B (zh) 一种带精度的量子除法运算方法及装置
WO2024109730A1 (fr) Multiplicateur modulaire variable, procédé de fonctionnement et dispositif associé
CN115809707B (zh) 量子比较运算方法、装置、电子装置及基础算术组件
CN113222156A (zh) 一种待执行操作的量子模拟方法、装置
CN115879554B (zh) 量子模数平方运算方法、装置、电子装置及模数算术组件
CN115879553B (zh) 量子模数完整乘法运算方法、装置及模数算术组件
CN115809706B (zh) 量子模数倍增运算方法、装置、电子装置及模数算术组件
CN115879552B (zh) 量子模数乘逆运算方法、装置、电子装置及模数算术组件
CN115879555B (zh) 量子模数快速乘法运算方法、装置及模数算术组件
CN112162725B (zh) 一种量子除法运算方法、装置、电子装置及存储介质
CN115809042B (zh) 量子模数加法运算方法、装置、电子装置及模数算术组件
CN118092857A (zh) 基于常数加减法的变量模加运算器、运算方法及相关装置
CN118095456A (zh) 变量平方模运算器、运算方法及相关装置
CN118095458A (zh) 变量模乘运算器、运算方法及相关装置
CN118095459A (zh) 变量二倍模乘运算器、运算方法及相关装置
CN114692879B (zh) 一种基于稀疏线性系统的量子预处理方法及装置
CN117744817A (zh) 基于量子傅里叶变换的常数模加运算器、方法及相关装置
CN115879556A (zh) 量子模数运算方法、装置、介质及模数算术组件
CN117035103A (zh) 数据分解任务的处理方法、装置、存储介质及电子装置
CN117744820A (zh) 常数模加模乘运算器、模乘运算器、运算方法及相关装置
CN117744818A (zh) 基于量子傅里叶变换的常数加法器、运算方法及相关装置