Information processing program, information processing method, and information processing device

By calculating initial values for electron excitations and selectively implementing circuits within the VQE quantum circuit, the number of gate operations is reduced, addressing the challenges of increased calculation time and error accumulation in quantum chemical calculations.

JP7656246B2Active Publication Date: 2025-04-03FUJITSU LTD
View PDF 8 Cites 0 Cited by

Patent Information

Application Number
JP2024507237
Authority / Receiving Office
JP · JP
Patent Type
Patents
Current Assignee / Owner
Filing Date
2022-03-15
Publication Date
2025-04-03
Estimated Expiration
2042-03-15

AI Technical Summary

Technical Problem

The practical application of quantum chemical calculations using Variational Quantum Eigensolver (VQE) is hindered by the large number of gate operations, which increases calculation time and can result in errors due to qubit coherence time limitations.

Method used

An information processing program is developed to reduce the number of gate operations by calculating initial values for electron excitations and determining whether to implement corresponding circuits based on these values. Partial circuits are then placed within the quantum circuit for each implemented electron excitation.

Benefits of technology

This approach effectively reduces the number of gate operations, minimizing errors and ensuring calculations can be completed within the qubit coherence time, while maintaining calculation accuracy.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 0007656246000005
    Figure 0007656246000005
  • Figure 0007656246000006
    Figure 0007656246000006
  • Figure 0007656246000007
    Figure 0007656246000007
Patent Text Reader

Abstract

The present invention reduces the number of gate operations. An information processing device (10) calculates the initial value of a variable corresponding to each of a plurality of electron excitations to be produced in a qubit in order to calculate the ground energy of a molecule using the variational quantum eigensolver. The information processing device (10) then determines, for each of the plurality of electron excitations, whether or not to implement a circuit corresponding to the electron excitation, on the basis of whether or not the initial value of the variable corresponding to the electron excitation is at least equal to a prescribed threshold value. Then, for each electron excitation of the plurality of electron excitations for which it is determined that the circuit corresponding to the electron excitation be implemented, the information processing device (10) disposes, within a quantum circuit (1) for calculating the ground energy of the molecule, a partial circuit that performs an electron excitation operation for calculating the energy corresponding to the value of the variable.
Need to check novelty before this filing date? Find Prior Art

Description

[Technical field]

[0001] The present invention relates to an information processing program, an information processing method, and an information processing device. [Background technology]

[0002] In the field of quantum computers, the practical application of NISQ (Noisy Intermediate-Scale Quantum computer) is expected. NISQ is a medium-scale quantum computer without error correction function. One of the uses of NISQ is calculations using the Variational Quantum Eigensolver (VQE). VQE is a variational algorithm that finds the ground state of a quantum many-body system. VQE can be used, for example, to perform quantum chemical calculations in NISQ. Quantum chemical calculations are calculations that obtain molecular states and physical property information by solving the Schrödinger equation. Currently, various research is being conducted toward the practical application of calculations using VQE.

[0003] As for quantum computing technologies such as VQE, for example, a quantum information processing method for obtaining the derivative of energy has been proposed, which can obtain the derivative of energy when quantum computing the energy of a system using VQE. A method has also been proposed for using classical data for quantum operations by inputting classical data as quantum data. Furthermore, a system has been proposed for realizing a highly hardware-efficient variational quantum eigensolver for quantum computing machines. A VQEAnsatz with reduced quantum gate complexity has also been proposed. [Prior art documents] [Patent documents]

[0004] [Patent Document 1] International Publication No. 2020 / 230794 [Patent Document 2] US Patent Application Publication No. 2019 / 0354316 [Patent Document 3] Special Publication No. 2020-534607 [Non-patent literature]

[0005] [Non-Patent Document 1] Rongxin Xia, Saber Kais, "Qubit coupled cluster singles and doubles variational quantum eigensolver ansatz for electronic structure calculations" arXiv:2005.08451v3, 10 Oct 2020 Summary of the Invention [Problem to be solved by the invention]

[0006] One of the problems in practical application of quantum chemical calculations using VQE is the large number of gate operations. If the number of gate operations is too large, the calculation time increases, and there is a possibility that the calculation will not be completed within the duration of the quantum bit (coherence time), and the calculation result will not be obtained. In addition, if the number of gate operations is large, errors will accumulate during the quantum calculation process, and the impact of errors on the calculation result will be large.

[0007] In one aspect, the present invention aims to reduce the number of gate operations. [Means for solving the problem]

[0008] In one proposal, an information processing program is provided that causes a computer to execute the following processes. The computer calculates an initial value of a variable corresponding to each of a plurality of electronic excitations for calculating the ground state energy of the molecule by the variational quantum eigenvalue method. For each of the plurality of electronic excitations, the computer determines whether or not to implement a corresponding circuit depending on whether or not the initial value of the corresponding variable is greater than a predetermined threshold. Then, for each of the plurality of electronic excitations for which it is determined that a corresponding circuit is to be implemented, the computer places a partial circuit that performs a gate operation on the electronic excitation to calculate an energy according to the value of the variable in the quantum circuit for calculating the ground state energy of the molecule. Effect of the Invention

[0009] According to one aspect, the number of gate operations can be reduced. The above and other objects, features and advantages of the present invention will become apparent from the following description taken in conjunction with the accompanying drawings illustrating preferred embodiments of the present invention. [Brief description of the drawings]

[0010] [Figure 1] FIG. 2 is a diagram illustrating an example of an information processing method according to a first embodiment. [Diagram 2] FIG. 1 illustrates an example of a system configuration according to a second embodiment; [Diagram 3] FIG. 1 is a diagram illustrating an example of hardware of a classical computer. [Figure 4] FIG. 1 is a block diagram showing an example of the functions of a classical computer for quantum chemical calculations using VQE. [Diagram 5] FIG. 1 is a diagram illustrating an Ansatz circuit. [Figure 6] FIG. 13 shows an example of gate count reduction by using rotating gate elements. [Figure 7] FIG. 2 is a diagram showing an example of a Givens rotation circuit. [Figure 8] FIG. 1 is a diagram illustrating an example of a QNPPX circuit. [Figure 9] FIG. 2 is a diagram showing an example of a mathematical expression of QNPPX. [Figure 10]1 is a flowchart showing an example of a procedure for quantum chemical calculation using VQE. [Figure 11] 1 is a first half of a flowchart showing an example of a procedure for a quantum circuit generation process. [Figure 12] 13 is a flowchart illustrating an example of a procedure for a quantum circuit generation process; [Figure 13] FIG. 1 shows an example of an Ansatz circuit using rotating gate elements. [Figure 14] FIG. 1 is a diagram showing an example of quantum chemical calculation by VQE. [Figure 15] 13 is a flowchart showing an example of a basis energy calculation procedure. [Figure 16] FIG. 13 is a diagram showing a comparative example of calculation results. [Figure 17] FIG. 1 is a diagram showing the relationship between the technology applied to an Ansatz circuit and the number of gates. [Figure 18] 11 is a flowchart showing an example of a procedure for arranging rotation gate elements in an Ansatz circuit; [Figure 19] 11 is a flowchart showing the second half of an example of a procedure for arranging rotation gate elements in an Ansatz circuit. [Figure 20] FIG. 13 is a diagram showing an example of an Ansatz circuit in which one-electron excitation and two-electron excitation circuits are mixed in the same column. DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS

[0011] Hereinafter, the present embodiment will be described with reference to the drawings. Note that each embodiment can be implemented in combination with a plurality of other embodiments as long as no contradiction occurs. First Embodiment The first embodiment is an information processing method for reducing the number of gate operations in a quantum circuit for performing quantum chemical calculations using VQE.

[0012] Fig. 1 is a diagram showing an example of an information processing method according to a first embodiment. Fig. 1 shows an information processing device 10 for implementing the information processing method according to the first embodiment. The information processing device 10 can implement the information processing method according to the first embodiment by, for example, executing an information processing program in which a predetermined processing procedure is described.

[0013] The information processing device 10 includes a storage unit 11 and a processing unit 12. The storage unit 11 is, for example, a memory or a storage device included in the information processing device 10. The processing unit 12 is, for example, a processor or an arithmetic circuit included in the information processing device 10.

[0014] The storage unit 11 stores information on the molecule to be calculated, the quantum circuit 1 for calculating the ground state energy of the molecule, and the like. The processing unit 12 generates the quantum circuit 1 for performing quantum chemical calculations by VQE using a quantum computer. For example, the processing unit 12 calculates the initial values ​​of variables corresponding to each of a plurality of electronic excitations for calculating the ground energy of a molecule by VQE. For example, the processing unit 12 calculates the CI coefficients of each configuration state function corresponding to a plurality of electronic configurations included in a wave function (linear combination of electronic configurations) by a configuration interaction (CI) method using a classical quantum chemical calculation method. The CI coefficients corresponding to each electronic configuration are real coefficients multiplied by a term indicating the electronic excitation for achieving that electronic configuration. Then, the processing unit 12 sets the CI coefficients corresponding to each electronic excitation as the initial values ​​of variables used in the circuit corresponding to that electronic excitation.

[0015] Next, the processing unit 12 determines whether or not to implement a corresponding circuit for each of the multiple electronic excitations, depending on whether or not the initial value of the corresponding variable is greater than a predetermined threshold. For example, the processing unit 12 determines to implement a circuit corresponding to an electronic excitation for which the absolute value of the initial value of the variable is greater than a threshold. Also, the processing unit 12 determines not to implement a circuit corresponding to the electronic excitation if the initial value of the variable is equal to or less than the threshold.

[0016] Then, for each of the electronic excitations for which it is determined that a corresponding circuit is to be implemented among the multiple electronic excitations, the processing unit 12 arranges partial circuits 2a, 2b,..., 3a, 3b,..., which perform a gate operation corresponding to the electronic excitation for calculating an energy according to the value of a variable, in the quantum circuit 1. For example, when the electronic excitation determined to be implemented is a single-electron excitation, the processing unit 12 arranges partial circuits 2a, 2b,..., which perform a Givens rotation operation corresponding to the electronic excitation, in the quantum circuit 1. Furthermore, when the electronic excitation determined to be implemented is a double-electron excitation, the processing unit 12 arranges partial circuits 3a, 3b,..., which perform a Quantum-Number-Preserving-Pair-Exchange (QNPPX) operation corresponding to the electronic excitation, in the quantum circuit 1.

[0017] In this way, when the initial value of the variable of an electronic excitation is equal to or less than a threshold, the number of gate operations during VQE calculation can be reduced by suppressing the implementation of the circuit corresponding to that electronic excitation. For example, by using the CI coefficient as the initial value of the variable, it is expected that the value of an electronic excitation to which a variable with a very small initial value is applied will remain small even after optimization in the VQE calculation. The energy calculated by the circuit corresponding to an electronic excitation with a small variable value is infinitesimal compared to the energies calculated by the circuits of other electronic excitations. Therefore, even if the implementation of a circuit corresponding to an electronic excitation with a small variable value is suppressed, the deterioration in the accuracy of the final ground state energy calculation is small.

[0018] Moreover, by using the Givens rotator to perform the gate operation for one electron excitation, the number of gate operations can be further reduced without sacrificing the accuracy of the calculation.Similarly, by using the QNPPX to perform the gate operation for two electron excitation, the number of gate operations can be further reduced without sacrificing the accuracy of the calculation.

[0019] In VQE calculations, gate operations and measurements for electronic excitations can be performed in parallel for each electronic excitation. However, there are cases where the number of available quantum bits is insufficient to execute all electronic excitations in parallel. In such cases, the number of gate operations can be reduced by generating quantum circuit 1 so that more partial circuits can be executed in parallel without overlapping the excitation source and destination quantum bits for electronic excitations executed simultaneously. In quantum circuit 1, circuits executed in parallel are placed in the same column (overlapping positions in the vertical direction of quantum circuit 1).

[0020] For example, the processing unit 12 separates columns into columns in which partial circuits of one electron excitation are arranged and columns in which partial circuits of two electron excitation are arranged. Here, a partial circuit already arranged in a certain column in the quantum circuit 1 is defined as a first partial circuit. A partial circuit to be arranged next is defined as a second partial circuit. At this time, if the excitation source and excitation destination quantum bits of the electronic excitation corresponding to the second partial circuit do not overlap with any of the excitation source and excitation destination quantum bits in the first partial circuit, the processing unit 12 arranges the second partial circuit in the same column as the first partial circuit. This reduces the number of gate operations of the quantum circuit 1.

[0021] It is also possible to further reduce the number of gate operations by mixing partial circuits of one-electron excitation and partial circuits of two-electron excitation in the same column. For example, the processing unit 12 arranges a third partial circuit corresponding to two-electron excitation in a column in which simultaneously executable circuits in the quantum circuit 1 are arranged. After that, the processing unit 12 arranges a plurality of fourth partial circuits corresponding to one-electron excitation, whose excitation source and excitation destination quantum bits do not overlap with any of the excitation source and excitation destination quantum bits in the third partial circuit, in the same column as the third partial circuit. At that time, the processing unit 12 arranges a plurality of fourth partial circuits in the same column as the third partial circuit within a range in which the number of times the same quantum bit is used as an excitation source or excitation destination in the plurality of fourth partial circuits does not exceed a predetermined number. In this way, the quantum circuit 1 with a reduced number of gate operations is generated.

[0022] Second Embodiment The second embodiment is a computer system that uses a quantum computer to perform quantum chemical calculations by VQE.

[0023] FIG. 2 is a diagram showing an example of a system configuration of the second embodiment. In the second embodiment, a classical computer 100 and a quantum computer 200 are connected. The classical computer 100 is a von Neumann type computer, and performs processes such as generating a quantum circuit and optimizing parameters used in the calculation of the quantum circuit. The quantum computer 200 is a computer that performs quantum chemical calculations by performing operations based on quantum gates on quantum bits. The quantum computer 200 performs quantum chemical calculations of the VQE algorithm according to the quantum circuit and parameters generated by the classical computer 100, and calculates the energy expectation value.

[0024] FIG. 3 is a diagram showing an example of hardware of a classical computer. In a classical computer 100, the entire device is controlled by a processor 101. A memory 102 and a plurality of peripheral devices are connected to the processor 101 via a bus 109. The processor 101 may be a multiprocessor. The processor 101 is, for example, a central processing unit (CPU), a micro processing unit (MPU), or a digital signal processor (DSP). At least a part of the functions realized by the processor 101 executing a program may be realized by an electronic circuit such as an application specific integrated circuit (ASIC) or a programmable logic device (PLD).

[0025] The memory 102 is used as a main storage device of the classical computer 100. The memory 102 temporarily stores at least a part of the OS (Operating System) program and application programs to be executed by the processor 101. The memory 102 also stores various data used in the processing by the processor 101. As the memory 102, for example, a volatile semiconductor storage device such as a RAM (Random Access Memory) is used.

[0026] The peripheral devices connected to the bus 109 include a storage device 103, a GPU (Graphics Processing Unit) 104, an input interface 105, an optical drive device 106, a device connection interface 107, and a network interface 108.

[0027] The storage device 103 writes and reads data electrically or magnetically to and from a built-in recording medium. The storage device 103 is used as an auxiliary storage device for the classical computer 100. The storage device 103 stores an OS program, application programs, and various data. Note that, for example, a hard disk drive (HDD) or a solid state drive (SSD) can be used as the storage device 103.

[0028] The GPU 104 is an arithmetic device that performs image processing, and is also called a graphics controller. The GPU 104 is connected to a monitor 21. The GPU 104 displays an image on the screen of the monitor 21 in accordance with an instruction from the processor 101. The monitor 21 may be a display device using an organic EL (Electro Luminescence) display device, a liquid crystal display device, or the like.

[0029] The input interface 105 is connected to the keyboard 22 and the mouse 23. The input interface 105 transmits signals sent from the keyboard 22 and the mouse 23 to the processor 101. Note that the mouse 23 is an example of a pointing device, and other pointing devices can also be used. Examples of other pointing devices include a touch panel, a tablet, a touch pad, and a trackball.

[0030] The optical drive device 106 uses a laser beam or the like to read data recorded on the optical disc 24 or write data to the optical disc 24. The optical disc 24 is a portable recording medium on which data is recorded so that it can be read by reflection of light. The optical disc 24 includes a DVD (Digital Versatile Disc), a DVD-RAM, a CD-ROM (Compact Disc Read Only Memory), a CD-R (Recordable) / RW (ReWritable), etc.

[0031] The device connection interface 107 is a communication interface for connecting peripheral devices to the classical computer 100. For example, a memory device 25 or a memory reader / writer 26 can be connected to the device connection interface 107. The memory device 25 is a recording medium equipped with a communication function with the device connection interface 107. The memory reader / writer 26 is a device that writes data to the memory card 27 or reads data from the memory card 27. The memory card 27 is a card-type recording medium.

[0032] The network interface 108 is connected to the quantum computer 200. The network interface 108 transmits and receives data to and from the quantum computer 200.

[0033] The classical computer 100 can realize the processing function of the second embodiment by the above-mentioned hardware. The information processing device 10 shown in the first embodiment can also be realized by the same hardware as the classical computer 100 shown in FIG.

[0034] The classical computer 100 realizes the processing function of the second embodiment by executing a program recorded in, for example, a computer-readable recording medium. The program describing the processing content to be executed by the classical computer 100 can be recorded in various recording media. For example, the program to be executed by the classical computer 100 can be stored in the storage device 103. The processor 101 loads at least a part of the program in the storage device 103 into the memory 102 and executes the program. The program to be executed by the classical computer 100 can also be recorded in a portable recording medium such as the optical disk 24, the memory device 25, or the memory card 27. The program stored in the portable recording medium becomes executable after being installed in the storage device 103 under the control of, for example, the processor 101. The processor 101 can also read and execute the program directly from the portable recording medium.

[0035] The classical computer 100 can perform quantum chemistry calculations using VQE in cooperation with the quantum computer 200 using the hardware shown in FIG. 4 is a block diagram showing an example of the functions of a classical computer for quantum chemical calculations using VQE. The classical computer 100 includes a quantum circuit generation unit 110, a quantum calculation management unit 120, and an optimization calculation unit .

[0036] The quantum circuit generation unit 110 generates a quantum circuit for calculating the energy of a quantum many-body system such as a molecule. For example, the quantum circuit generation unit 110 generates a quantum circuit by a VQE algorithm that realizes electronic excitation of the UCCSD ansatz with fewer quantum operations. The quantum circuit generation unit 110 transmits the generated quantum circuit to the quantum computation management unit 120.

[0037] The quantum computing management unit 120 instructs the quantum computer 200 to perform energy calculation based on the generated quantum circuit. For example, the quantum computing management unit 120 sets multiple parameters θ related to gate operations at quantum gates in the quantum circuit. Before the first quantum computation, the quantum computing management unit 120 sets initial values ​​to the multiple parameters θ. The quantum computing management unit 120 acquires the calculation result of the energy based on the quantum circuit parameterized by the multiple parameters θ from the quantum computer 200. Upon acquiring the calculation result of the energy, the quantum computing management unit 120 determines whether the energy has converged. If the energy has not converged, the quantum computing management unit 120 instructs the optimization calculation unit 130 to optimize the parameters.

[0038] The optimization calculation unit 130 updates all or part of the values ​​of the multiple parameters θ for each quantum calculation in a direction that reduces the energy value. When the optimization calculation is completed, the optimization calculation unit 130 notifies the quantum calculation management unit 120 of the updated values ​​of the multiple parameters θ.

[0039] The functions of each element in the classical computer 100 shown in FIG. 4 can be realized, for example, by having the computer execute a program module corresponding to that element. Next, we will explain how to calculate the ground state energy of a molecule using VQE. The energy E required in calculating the ground state energy of a molecule using VQE is expressed by the following formula (1).

[0040]

number

[0041] φ indicates the quantum state. H indicates the Hamiltonian. The Hamiltonian is a function of the intermolecular distance R. θ is the rotation angle used as an optimization variable. The ground energy is the lowest energy. Therefore, when the rotation angle θ is changed and equation (1) is repeatedly calculated, the lowest energy among the energies obtained by multiple calculations becomes the ground energy E0. The formula that expresses the ground energy E0 is as follows.

[0042]

number

[0043] In actual calculations, the Hamiltonian is decomposed into a sum (H=H1+H2+...), and each decomposed Hamiltonian is calculated. That is, the quantum circuit generation unit 110 generates a quantum circuit for performing quantum chemical calculations by VQE for each decomposed Hamiltonian.

[0044] The quantum circuits that make up VQE include circuits called Ansatz. Ansatz occupies the majority of the VQE quantum circuits. Ansatz is a circuit for expressing a wave function ψ(θ) parameterized by variables in a quantum circuit.

[0045] 5 is a diagram for explaining the Ansatz circuit. The wave function represented by the Ansatz circuit 31 included in the quantum circuit 30 is a superposition state represented by the variable θ of the CI method. The superposition state is expressed by the following formula (3). |ψ(θ)>=a|ψ0>+b|ψ1>+c|ψ2>+··· (3) Each term on the right side of equation (3) corresponds to an electronic excitation for obtaining a specified electronic orbital. a, b, and c are coefficients for each electronic excitation. The quantum circuit 30 includes an Ansatz circuit 31, a basis conversion circuit, a Z-axis measurement circuit, and the like.

[0046] A representative ansatz for achieving high accuracy is UCCSD (Unitary Coupled Cluster Singles and Doubles). Ideally (when hard errors are sufficiently small), UCCSD can obtain calculation results with higher accuracy than CCSD (Coupled Cluster Singles and Doubles) for classical quantum chemical calculations. On the other hand, UCCSD requires tens of thousands to hundreds of thousands of gates even for a problem of about 20 qubits, making it difficult to implement in NISQ in practice.

[0047] Therefore, the quantum circuit generator 110 generates a quantum circuit for realizing VQE by expressing one-electron excitation or two-electron excitation using a rotation gate element (Givens rotation circuit, QNPPX circuit). This makes it possible to achieve the same calculation accuracy as UCCSD while reducing the number of gates.

[0048] 6 is a diagram showing an example of gate number reduction by using a rotating gate element. The Ansatz circuit 40 by UCCSD includes a plurality of one-electron excitation partial circuits 41a, 41b,... and a plurality of two-electron excitation partial circuits 42a, 42b,...

[0049] Here, the one-electron excitation subcircuits 41a, 41b,... represent one-electron excitation from the i-th quantum bit to the j-th quantum bit. In this case, the one-electron excitation subcircuits 41a, 41b,... use 4(ji) CNOT gates and 10 one-qubit gates for each excitation (i, j are integers equal to or greater than 0). The CNOT gate is a two-qubit gate that performs bit inversion of the target quantum bit when the control quantum bit is |1>.

[0050] The two-electron excitation subcircuits 42a, 42b,... represent two-electron excitation from the i,jth quantum bit to the k,lth quantum bit. In this case, the two-electron excitation subcircuits 42a, 42b,... use 16(j+lik) CNOT gates and 72 one-qubit gates for each excitation (i, j, k, l are integers equal to or greater than 0).

[0051] The Ansatz circuit 50 using the rotation gate element also includes a plurality of one-electron excitation partial circuits 51a, 51b,... and a plurality of two-electron excitation partial circuits 52a, 52b,... The one-electron excitation partial circuits 51a, 51b,... are circuits that express one-electron excitation by Givens rotation. The one-electron excitation partial circuits 51a, 51b,... use two two-qubit gates and four one-qubit gates per excitation. The two-electron excitation partial circuits 52a, 52b,... are circuits that express two-electron excitation by QNPPX. The two-electron excitation partial circuits 52a, 52b,... use twelve two-qubit gates and ten one-qubit gates per excitation.

[0052] Fig. 7 is a diagram showing an example of a Givens rotator circuit. The Givens rotator circuit 60 in Fig. 7 shows an example of single-electron excitation in which the "a"th quantum bit is the excitation source and the "b"th quantum bit is the excitation destination (a and b are integers equal to or greater than 0). Two circuit elements 61 and 62 showing the Givens rotator circuit 60 are arranged on the horizontal line corresponding to the quantum bit that is the target of single-electron excitation.

[0053] When the rotation angle is θ, the circuit element 61 corresponding to the “a”-th quantum bit, which is the excitation source, is “G a ab The circuit element 62 of the excited "b"-th quantum bit is expressed as "G (θ)" with the rotation angle θ. b ab A pair of circuit elements 61 and 62 represents one Givens rotation circuit 60.

[0054] If the Givens rotation circuit 60 is expressed as a one-qubit gate and a two-qubit gate, first, a Hadamard gate 63 is placed on the excitation source qubit. Next, a CNOT gate 64 is placed with the excitation source as the control qubit and the excitation destination as the target qubit. Next, rotation gates 65 and 66 around the Y axis with a rotation angle θ are placed on the excitation source qubit and the excitation destination qubit, respectively. Next, a CNOT gate 67 is placed with the excitation source as the control qubit and the excitation destination as the target qubit. Finally, a Hadamard gate 68 is placed on the excitation source qubit.

[0055] This Givens rotation is expressed by the following equation (4). G ab (θ)|…0…1…>=cosθ|…0…1…>+sinθ|…1…0…> G ab (θ)|…1…0…>=cosθ|…1…0…>-sinθ|…0…1…> G ab (θ)|…0…0…>= |…0…0…> G ab (θ)|…1…1…>= |…1…1…> (4) In equation (4), the two values ​​shown as "|...0...1...>" correspond to the quantum state of the excited qubit (number "b"), and the value on the right corresponds to the quantum state of the excited qubit (number "a"). Givens rotation can also be written as equation (5) below. G ab (θ)=a b a a a † b a † a +a † b a † a a b a a +cosθ(a † a a a +a † b a b )+sinθ(a † b aa -a † a a b ) =I+(cosθ-1)(a † a a a +a † b a b )+(sinθ)(a † b a a -a † a a b ) (5) In equation (5), I is the identity operator. As shown in FIG. 7, the two qubit gates included in the Givens rotation circuit 60 are only two CNOT gates 64 and 67. Therefore, there are two two-qubit gates arranged per one electronic excitation. The one-qubit gates included in the Givens rotation circuit 60 are two Hadamard gates 63 and 68 and two rotation gates 65 and 66. Therefore, there are four one-qubit gates arranged per one electronic excitation.

[0056] FIG. 8 is a diagram showing an example of a QNPPX circuit. In QNPPX, operations are performed on two quantum bits representing the excitation source orbital and two quantum bits representing the excitation destination orbital. The QNPPX circuit 70 shown in FIG. 8 shows an example of two-quantum excitation in which the "a1"-th and "a2"-th quantum bits are the excitation source and the "b1"-th and "b2"-th quantum bits are the excitation destination (a1, a2, b1, and b2 are integers equal to or greater than 0). Four circuit elements 71 to 74 showing the QNPPX circuit 70 are arranged on the horizontal lines corresponding to the quantum bits to be subjected to two-electron excitation.

[0057] When the rotation angle is θ, the circuit element 71 corresponding to the “a1”-th quantum bit, which is the excitation source, is “PX a1 a1a2b1b2 The circuit element 72 corresponding to the "a2"-th quantum bit, which is the excitation source, is represented as "PX a2 a1a2b1b2 The circuit element 73 corresponding to the excited qubit "b1" is represented as "PX b1 a1a2b1b2The circuit element 74 corresponding to the excited qubit "b2" is represented as "PX b2 a1a2b1b2 (θ)".

[0058] When the QNPPX circuit 70 is expressed by a one-qubit gate and a two-qubit gate, first, a CNOT gate 75a is arranged with the "a2" qubit as the control qubit and the "a1" qubit as the target qubit. Next, a CNOT gate 75b is arranged with the "b2" qubit as the control qubit and the "b2" qubit as the target qubit. Next, a CZ gate 75c is arranged for the "a1" qubit and the "a2" qubit, and a Hadamard gate 76a is arranged for the "b2" qubit. Next, a CNOT gate 75d is arranged with the "b2" qubit as the control qubit and the "b1" qubit as the target qubit. Next, a rotation gate 76b around the Y axis with a rotation angle θ is arranged for the "b1" qubit, and a rotation gate 76c around the Y axis with a rotation angle -θ is arranged for the "b2" qubit.

[0059] Next, a CZ gate 75e is placed for the "a1"th quantum bit and the "b2"th quantum bit. Next, a CNOT gate 75f is placed with the "a1"th quantum bit as a control quantum bit and the "a2"th quantum bit as a target quantum bit. Next, a rotation gate 76d around the Y axis with a rotation angle θ is placed for the "b1"th quantum bit, and a rotation gate 76e around the Y axis with a rotation angle -θ is placed for the "b2"th quantum bit. Next, a CNOT gate 75g is placed with the "a2"th quantum bit as a control quantum bit and the "b1"th quantum bit as a target quantum bit.

[0060] Next, a CNOT gate 75h is placed with the "a2"th quantum bit as the control quantum bit and the "b2"th quantum bit as the target quantum bit. Next, a rotation gate 76f around the Y axis with a rotation angle -θ is placed on the "b1"th quantum bit, and a rotation gate 76g around the Y axis with a rotation angle θ is placed on the "b2"th quantum bit. Next, a CNOT gate 75i is placed with the "a1"th quantum bit as the control quantum bit and the "b1"th quantum bit as the target quantum bit. Next, a CZ gate 75j is placed for the "a1"th quantum bit and the "b2"th quantum bit. Next, a rotation gate 76h around the Y axis with a rotation angle -θ is placed on the "b1"th quantum bit, and a rotation gate 76i around the Y axis with a rotation angle θ is placed on the "b2"th quantum bit.

[0061] Next, a CNOT gate 75k is placed with the "b2"th qubit as the control qubit and the "b1"th qubit as the target qubit. Next, a CNOT gate 75l is placed with the "a2"th qubit as the control qubit and the "b2"th qubit as the target qubit. Next, a Hadamard gate 76j is placed on the "b2"th qubit. Next, a CNOT gate 75m is placed with the "b2"th qubit as the control qubit and the "a2"th qubit as the target qubit. Next, a CNOT gate 75n is placed with the "a2"th qubit as the control qubit and the "a1"th qubit as the target qubit.

[0062] 9 is a diagram showing an example of a mathematical expression of QNPPX. For example, when the states of the "a1"-th and "a2"-th quantum bits of the excitation source are both "1", and the states of the "b1"-th and "b2"-th quantum bits of the excitation destination are both "0", QNPPX can be expressed by the following formula (6). PX a1a2b1b2 (θ)|…0…0…1…1…>=cosθ|…0…0…1…1…>+sinθ|…1…1…0…0…>··· (6) The operation of QNPPX for all states of each quantum bit is expressed by the following equation (7). PX a1a2b1b2 (θ)=I+(cosθ-1)(a † a2 a † a1 a a2 a a1 +a † b2 a † b1 a b2 a b1 )+(sinθ)(a † b2 a † b1 a a2 a a1 -a † a2 a † a1 a b2 a b1 ) (7) The two-qubit gates in the QNPPX circuit 70 shown in FIG. 8 are eleven CNOT gates 75a, 75b, 75d, 75f-75i, 75k-75n and three CZ gates 75c, 75e, 75j. Therefore, there are 14 two-qubit gates arranged per two-electron excitation. The one-qubit gates in the QNPPX circuit 70 are two Hadamard gates 76a, 76j and eight rotation gates 76b-76i. Therefore, there are 10 one-qubit gates arranged per two-electron excitation.

[0063] In this way, by implementing one-electron excitation and two-electron excitation with rotating gate elements, it is possible to reduce the number of gate operations. Furthermore, if the number of electronic excitations to implement a quantum circuit is small, the number of gate operations can be further reduced. When the rotation angle θ in the rotating gate element that realizes one-electron excitation and two-electron excitation is sufficiently small, the effect of the excitation on the wave function becomes small. In other words, even if a quantum circuit of a rotating gate element with a sufficiently small rotation angle θ is not implemented, there is no significant effect on the calculation result. Therefore, the quantum circuit generation unit 110 aims to further reduce the number of gate operations by suppressing the implementation of a rotating gate element whose applied rotation angle θ is equal to or smaller than a threshold value.

[0064] Below, we will provide a detailed explanation of the basis energy calculation process by VQE using a quantum circuit with a reduced number of gate operations. 10 is a flow chart showing an example of a procedure for quantum chemical calculation using VQE. The process shown in FIG. 10 will be explained below in order of step number.

[0065] [Step S101] The quantum circuit generation unit 110 determines a problem to be calculated based on an input from a user. For example, the quantum circuit generation unit 110 determines the molecular species, atomic positions, basis functions, active space, etc. to be calculated. The quantum circuit generation unit 110 also determines the correspondence between operators included in the Hamiltonian of the wave function and quantum bits, for example, by using the Jordan-Wigner transformation.

[0066] [Step S102] The quantum circuit generation unit 110 generates a quantum circuit that represents the electronic excitation by using a rotation gate element. The quantum circuit generation process will be described in detail later (see FIGS. 11 and 12).

[0067] [Step S103] The quantum computation manager 120 controls the quantum computer 200 to calculate the basis energy. The basis energy is calculated using VQE, and the optimization variable θ is optimized by the optimization computation unit 130. Details of the basis energy calculation process will be described later (see FIG. 15).

[0068] [Step S104] The quantum computation manager 120 outputs the finally obtained optimal solution (the state in which the energy is at a minimum value). The quantum chemical calculations are performed by VQE in this way. Each step of the quantum chemical calculations will be explained in detail below.

[0069] 11 is the first half of a flowchart showing an example of the procedure of a quantum circuit generation process. The process shown in FIG. 11 will be explained below in order of step numbers. [Step S111] The quantum circuit generation unit 110 calculates CI coefficients by a classical quantum mechanical calculation method, thereby calculating CI coefficients corresponding to each electronic excitation to be incorporated into the quantum circuit.

[0070] For example, the quantum circuit generation unit 110 calculates the CI coefficients by the CISD (Configuration Interaction Singles and Doubles) method. The CISD creates a wave function as shown in the following formula (8) and adjusts the coefficients C so that the energy E shown in formula (9) becomes small. ab , C a1a2b1b2 This is a variational calculation. |ψ>=|ψ HF >+ΣC ab a † b a a |ψ HF >+ΣC a1a2b1b2 a † a2 a † a1 a b2 a b1 |ψ HF > (8) E=<ψ|H|ψ> (9) C ab , C a1a2b1b2 is the CI coefficient. C ab is the CI coefficient corresponding to one-electron excitation with the orbital corresponding to the "a" qubit as the excitation source and the orbital corresponding to the "b" qubit as the excitation destination. C a1a2b1b2 is the CI coefficient corresponding to two-electron excitation in which the orbital corresponding to the "a1"-th quantum bit and the "a2"-th quantum bit is the excitation source, and the orbital corresponding to the "b1"-th quantum bit and the "b2"-th quantum bit is the excitation destination. † b a a |ψ HF >" or "a † a2 a † a1 a b2 a b1 |ψ HF ">" represents the corresponding excited computation basis (e.g., |1100>).

[0071] The calculated CI coefficient is used as the initial value of the variable (rotation angle θ) applied to the rotation gate element in the corresponding excitation (single-electron excitation or double-electron excitation). ab or C a1a2b1b2Cab ) is sufficiently small, it can be inferred that the computational basis corresponding to that CI coefficient is unnecessary in the wave function obtained after optimization by VQE. Therefore, the quantum circuit generation unit 110 does not implement a circuit that calculates a computational basis in which the absolute value of the CI coefficient is equal to or less than a threshold in the quantum circuit for VQE calculation.

[0072] The quantum circuit generation unit 110 calculates the CI coefficient (C ab , C a1a2b1b2 If the absolute value of CI coefficient 1 is greater than the threshold, the CI coefficient is used as the initial value of the corresponding circuit variable. The value of the variable is optimized by the optimization calculation unit 130 during the VQE calculation process.

[0073] [Step S112] The quantum circuit generation unit 110 generates an initial state of a wave function. For example, the quantum circuit generation unit 110 uses an HF (Hartree Fock) state as the initial state. [Step S113] The quantum circuit generation unit 110 repeats the processes of steps S114 to S116 for all one-electron excitations.

[0074] [Step S114] The quantum circuit generation unit 110 judges whether the absolute value of the CI coefficient corresponding to the one-electron excitation to be processed is greater than a predetermined threshold. If the absolute value of the CI coefficient is greater than the threshold, the quantum circuit generation unit 110 advances the process to step S115. If the absolute value of the CI coefficient is equal to or less than the threshold, the quantum circuit generation unit 110 advances the process to step S116.

[0075] [Step S115] The quantum circuit generation unit 110 sets the generation flag “Yes” in association with the one-electron excitation to be processed. The quantum circuit generation unit 110 then proceeds to step S117.

[0076] [Step S116] The quantum circuit generation unit 110 sets the generation flag "No" in association with the one-electron excitation to be processed. [Step S117] Upon completing the processes of steps S114 to S116 for all single-electron excitations, the quantum-circuit generation unit 110 advances the process to step S121 (see FIG. 12).

[0077] 12 is the latter half of a flowchart showing an example of the procedure of the quantum circuit generation process. The process shown in FIG. 12 will be explained below in order of step numbers. [Step S121] The quantum circuit generation unit 110 repeats the processes of steps S121 to S124 for all dielectronic excitations.

[0078] [Step S122] The quantum circuit generation unit 110 judges whether the absolute value of the CI coefficient corresponding to the two-electron excitation to be processed is greater than a predetermined threshold. If the absolute value of the CI coefficient is greater than the threshold, the quantum circuit generation unit 110 proceeds to step S123. If the absolute value of the CI coefficient is equal to or less than the threshold, the quantum circuit generation unit 110 proceeds to step S124.

[0079] [Step S123] The quantum circuit generation unit 110 sets the generation flag “Yes” in association with the dielectronic excitation to be processed. The quantum circuit generation unit 110 then proceeds to step S125.

[0080] [Step S124] The quantum-circuit generation unit 110 sets the generation flag "No" in association with the di-electron excitation to be processed. [Step S125] Upon completing the processes of steps S122 to S124 for all dielectronic excitations, the quantum-circuit generation unit 110 advances the process to step S126.

[0081] [Step S126] The quantum circuit generation unit 110 generates a Givens rotator corresponding to one-electron excitation for which the generation flag is "Yes". Then, the quantum circuit generation unit 110 places the generated Givens rotator in the Ansatz circuit 31. The quantum circuit generation unit 110 also initializes the rotation angle θ of the placed Givens rotator to the value of the corresponding CI coefficient. For example, a Givens rotator "G" with the "a"th quantum bit as the excitation source and the "b"th quantum bit as the excitation destination is ab The initial value of θ in (θ) is "C ab " is set.

[0082] [Step S127] The quantum circuit generation unit 110 generates a QNPPX circuit corresponding to two-electron excitation with the generation flag set to "Yes". Then, the quantum circuit generation unit 110 places the generated QNPPX circuit in the Ansatz circuit 31. The quantum circuit generation unit 110 also initializes the rotation angle θ of the placed QNPPX circuit to the value of the corresponding CI coefficient. For example, a QNPPX circuit "PX a1a2b1b2 The initial value of θ in (θ) is "C a1a2b1b2 " is set.

[0083] 11 and 12, a circuit corresponding to a calculation basis in which the CI coefficient is equal to or smaller than a threshold is not implemented in the Ansatz circuit 31 in VQE. This reduces the number of gate operations in the VQE calculation.

[0084] It can be assumed that the values ​​of the circuit coefficients corresponding to one-electron or two-electron excitations after optimization with VQE will be close to the absolute values ​​of the CI coefficients. Therefore, by setting the CI coefficients to the rotation angles of the corresponding excitations as the initial parameter values ​​of VQE, the convergence of the VQE calculation results can be accelerated, and processing can be made more efficient.

[0085] In addition, if the coefficient values ​​of the circuits corresponding to single-electron excitation or double-electron excitation after optimization in VQE are close to the absolute value of the CI coefficient, excluding the circuits corresponding to the calculation basis with CI coefficients below the threshold from VQE has little effect on the VQE calculation results. In other words, the deterioration of calculation accuracy is suppressed.

[0086] FIG. 13 is a diagram showing an example of an Ansatz circuit using a rotating gate element. For example, the quantum circuit generation unit 110 generates a generation table 80 indicating one-electron excitation or two-electron excitation for which the generation flag is "Yes". In the generation table 80, the quantum number of the excitation source and the quantum number of the excitation destination of the excitation to which the variable is applied are set in association with the variable name of the applied variable. In the case of one-electron excitation, the quantum number of the excitation source and the quantum destination are one each. In the case of two-electron excitation, the quantum number of the excitation source and the quantum destination are two each.

[0087] The quantum circuit generation unit 110 generates an Ansatz circuit 81 while referring to a generation table 80. An HF state preparation circuit 82 that prepares an HF state is first arranged in the Ansatz circuit 81. Following the HF state preparation circuit 82, a plurality of Givens rotator circuits corresponding to one-electron excitation are arranged.

[0088] The quantum circuit generation unit 110 places the circuit in the leftmost column in the first quantum circuit, as long as the quantum bits of the excitation source and excitation destination do not overlap. For example, the quantum circuit generation unit 110 places the corresponding circuits in order from the top of the generation table 80. Note that the width of a column in which Givens rotation circuits are placed is the width of one Givens rotation circuit. Also, the width of a column in which QNPPX circuits are placed is the width of one QNPPX circuit.

[0089] For example, quantum circuit generation unit 110 first places in the first column a Givens rotation circuit with a quantum bit with quantum bit number "0" as the excitation source and a quantum bit with quantum bit number "4" as the excitation destination. Next, quantum circuit generation unit 110 places in the same first column a Givens rotation circuit with a quantum bit with quantum bit number "1" as the excitation source and a quantum bit with quantum bit number "5" as the excitation destination.

[0090] The next Givens rotator to be placed (third row in generation table 80) has an excitation source quantum bit number of "0". A circuit has already been placed in the first column for the quantum bit with quantum bit number "0". Therefore, quantum circuit generation unit 110 places a Givens rotator in the second column, with the quantum bit with quantum bit number "0" as the excitation source and the quantum bit with quantum bit number "6" as the excitation destination.

[0091] Furthermore, the Givens rotator to be placed (the third row in generation table 80) has an excitation source quantum bit number of "3" and an excitation destination quantum bit number of "7". No circuits are placed in the first column for the quantum bits corresponding to these quantum bit numbers. Therefore, quantum circuit generation unit 110 places a Givens rotator in the first column, with the quantum bit with quantum bit number "3" as the excitation source and the quantum bit with quantum bit number "7" as the excitation destination.

[0092] Similarly, for QNPPX circuits corresponding to two-electron excitation, the circuits are placed to the left as long as there are no overlapping qubits. As a result, in the third column, QNPPX circuits are placed with qubits with qubit numbers "0, 1" as the excitation source and qubits with qubit numbers "4, 5" as the excitation destination.

[0093] The fourth column contains QNPPX circuits that use the quantum bits with quantum bit numbers "0,3" as excitation sources and the quantum bits with quantum bit numbers "4,7" as excitation destinations. The fourth column also contains QNPPX circuits that use the quantum bits with quantum bit numbers "2,1" as excitation sources and the quantum bits with quantum bit numbers "6,5" as excitation destinations. The fifth column contains QNPPX circuits that use the quantum bits with quantum bit numbers "0,1" as excitation sources and the quantum bits with quantum bit numbers "6,7" as excitation destinations.

[0094] By performing such a circuit arrangement, an Ansatz circuit 81 with a small circuit depth is generated. A quantum circuit including the Ansatz circuit 81 generated in this manner performs quantum chemical calculations using VQE. The quantum chemical calculations using VQE are performed by cooperative processing between the quantum computer 200 and the classical computer 100.

[0095] 14 is a diagram showing an example of a quantum chemical calculation by VQE. In the quantum chemical calculation by VQE, the quantum computer 200 calculates a parameter θ (a variable θ of a circuit corresponding to an electronic excitation) ab ,θ a1a2b1b2 That is, the quantum computer 200 performs quantum measurement based on the initial value of the multiple divided Hamiltonians (H1, H2, . . . , H N ) are calculated. The quantum circuit used for quantum measurement includes an Ansatz circuit 81 as shown in FIG. 13. The calculated multiple Hamiltonians are added in the classical computer 100 to obtain the expected value of the energy of the entire system. Then, the optimization calculation unit 130 in the classical computer 100 optimizes the parameter θ based on the expected value of the energy. That is, the optimization calculation unit 130 updates the parameter θ in a direction that reduces the expected value of the energy. When the parameter θ is updated, the quantum computer 200 calculates again the Hamiltonian based on the updated parameter θ.

[0096] Such calculation of the Hamiltonian and updating of the parameter θ are repeated until the ground state energy is obtained. 15 is a flow chart showing an example of a basis energy calculation procedure. The process shown in FIG. 15 will be explained below in order of step number.

[0097] [Step S201] The quantum computation manager 120 of the classical computer 100 instructs the quantum computer 200 to calculate energy using a quantum circuit for VQE computation. At that time, the quantum computation manager 120 specifies a parameter θ to be applied to the quantum circuit. The CI coefficient is used as the initial value of the parameter θ. After optimizing θ, the value of the parameter θ updated by the optimization is specified as the value of the variable.

[0098] [Step S202] The quantum computer 200 operates the quantum bits in accordance with the quantum circuit to perform calculations of the quantum circuit. The quantum computer 200 transmits the measurement results of each quantum bit to the classical computer 100.

[0099] [Step S203] The quantum computation manager 120 of the classical computer 100 calculates energy based on the measurement results of the quantum bits. [Step S204] The quantum computing management unit 120 judges whether the energy difference before and after the update of the parameter θ becomes equal to or less than a predetermined threshold in the second or subsequent energy calculation. If the energy difference is equal to or less than the threshold, the quantum computing management unit 120 advances the process to step S206. If the energy difference is not equal to or less than the threshold, the quantum computing management unit 120 advances the process to step S205. Note that the quantum computing management unit 120 always advances the process to step S205 after the first energy calculation.

[0100] [Step S205] The optimization calculation unit 130 updates the parameter θ in a direction that reduces the expected value of the energy. The quantum computing management unit 120 obtains the updated value of the parameter θ from the optimization calculation unit 130, and the process proceeds to step S201.

[0101] [Step S206] The quantum computation manager 120 obtains the minimum value of the repeatedly calculated energies as the basis energy. In this way, we can obtain the ground state energy calculation results, the accuracy of which is equivalent to that of UCCSD.

[0102] FIG. 16 is a diagram showing a comparative example of calculation results. FIG. 16 shows energy values ​​for each interatomic distance when UCCSD is used and when a rotating gate element is used. In a graph 83 shown in FIG. 16, the horizontal axis is the interatomic distance and the vertical axis is the energy. The energy values ​​obtained by UCCSD are indicated by + marks. Also, the energy values ​​obtained by the Ansatz circuit using the rotating gate element are indicated by ○ marks. The threshold value for determining whether or not to incorporate an excitation circuit in the Ansatz circuit using the rotating gate element is 10 -20 It is.

[0103] As shown in Graph 83, the energy values ​​by UCCSD and those when using rotating gate elements are almost the same, and the + marks and the circles overlap. In other words, even if one-electron excitation and two-electron excitation are replaced with rotating gate elements, calculations can be performed with the same accuracy as UCCSD.

[0104] In addition, the number of gates is significantly reduced compared to UCCSD by using rotating gate elements in the Ansatz circuit, which depends on the threshold for deciding whether or not to incorporate an excitation circuit.

[0105] Fig. 17 is a diagram showing the relationship between the technology applied to the Ansatz circuit and the number of gates. Fig. 17 shows a gate number correspondence table 84 showing the number of gates for each technology applied to the Ansatz circuit. The gate number correspondence table 84 shows the number of 1-qubit gates, the ratio of the number of 1-qubit gates to UCCSD, the number of 2-qubit gates, and the ratio of the number of 2-qubit gates to UCCSD in correspondence with the name of the technology applied to the Ansatz circuit.

[0106] Rotating gate element use (threshold "10 -2 In the Ansatz for the 1-qubit system, the number of 1-qubit gates is 610, and the number of 2-qubit gates is 854. -20In the Ansatz for the IEEE 802.11n, the number of 1-qubit gates is 5798, and the number of 2-qubit gates is 7966. In the Ansatz for the UCCSD, the number of 1-qubit gates is 41244, and the number of 2-qubit gates is 65968.

[0107] Rotating gate element use (threshold "10 -2 In the Ansatz of UCCSD, the number of 1-qubit gates is reduced to 1.5% and the number of 2-qubit gates is reduced to 1.3% compared to UCCSD. -20 In the Ansatz for UCCSD, the number of 1-qubit gates is reduced to 14.1% and the number of 2-qubit gates is reduced to 12.1% compared to UCCSD.

[0108] In this way, the threshold value of 10 -20 Even when the threshold is set to "10", the number of gates is reduced by 80 to 90% compared to UCCSD. -2 ", the number of gates can be reduced by 98% to 99% compared to UCCSD. Therefore, for example, by increasing the threshold value according to the required accuracy in quantum chemical calculations, it is possible to speed up calculations.

[0109] Below, we will explain a specific example of molecular energy calculation. The problem is N2 (nitrogen molecule). The number of quantum bits used is 20 quantum bits. And we will calculate the ground state energy according to the bond length (atomic distance).

[0110] To calculate the CI coefficients, we use classical quantum chemistry calculation software. We set a threshold value ε and calculate the CI coefficient C where ε<|C|. ab , C a1a2b1b2 The excitation circuit corresponding to the selected CI coefficient is implemented in the Ansatz circuit. The initial state is "ψ (HF) =|00000011111111111111>".

[0111] In the implementation of electronic excitation, "ε=10 -3 ", C 6,18 , C 7,19 The single-electron excitation corresponding to is implemented by a Givens rotation circuit, where C 6,18 , C 7,19 If the set including these is denoted by τ1, the wave function up to the implementation of one-electron excitation is expressed by the following equation (10).

[0112]

number

[0113] Similar to the single excitation, a QNPPX circuit for double excitation corresponding to the CI coefficients above the threshold ε is implemented. If the set of CI coefficients above the threshold ε is τ2, the wave function is expressed as the following equation (11).

[0114]

number

[0115] The ground energy obtained by optimizing the parameters of this wave function by the optimization calculation unit 130 is "-107.6453". This is a result that is sufficiently close to the exact solution "-107.6528" obtained by Full CI, which accurately solves the Schrödinger equation.

[0116] Third embodiment In the third embodiment, when arranging rotation gate elements in an Ansatz circuit, a single column having a width of one QNPPX circuit is permitted to contain a single-electron excitation circuit and a double-electron excitation circuit. By allowing a Givens rotation circuit corresponding to a single excitation and a QNPPX circuit corresponding to a double excitation circuit to be contained in the same column, a circuit arrangement that can be calculated efficiently is possible.

[0117] For example, the quantum circuit generation unit 110 executes the following processes shown in FIGS. 18 and 19, instead of the processes of steps S126 to S127 (see FIG. 12) shown in the second embodiment. 18 is a flowchart showing an example of a procedure for arranging rotation gate elements in an Ansatz circuit. The process shown in FIG. 18 will be described below in order of step numbers.

[0118] [Step S301] The quantum circuit generation unit 110 creates a generation table. For example, the quantum circuit generation unit 110 registers in the generation table records corresponding to one-electron excitation and two-electron excitation, each of which has a generation flag of "Yes." In the registered records, quantum bit numbers of the excitation source and excitation destination are indicated in association with a variable indicating a rotation angle.

[0119] [Step S302] The quantum circuit generation unit 110 sets an initial value of "1" to a variable "Dep," which indicates the maximum column number available for circuit placement in the Ansatz circuit (Dep=1).

[0120] [Step S303] The quantum circuit generation unit 110 executes a process (steps S304 to S309) of determining a placement destination for each dielectronic excitation shown in the generation table. Here, the dielectronic excitation for which a placement destination is to be determined is designated as “x”.

[0121] [Step S304] The quantum circuit generation unit 110 executes a process of judging whether or not placement is possible for each of the first to Dep columns (Step S305). Here, the column to be judged is assumed to be column z.

[0122] [Step S305] The quantum circuit generation unit 110 judges whether or not at least one of the quantum bits of the excitation source and the excitation destination in the two-electron excitation x in the column z is used. If at least one quantum bit is used, the quantum circuit generation unit 110 proceeds to step S306. If all quantum bits are unused, the quantum circuit generation unit 110 proceeds to step S307.

[0123] [Step S306] If the determination in step S305 has been completed for all columns from the 1st column to the Depth column, the quantum circuit generation unit 110 advances the process to step S308. [Step S307] The quantum circuit generation unit 110 places a QNPPX circuit corresponding to the di-excitation x, the placement of which is to be determined, in the column z, the determination target in step S305. After that, the quantum circuit generation unit 110 proceeds to step S310.

[0124] [Step S308] The quantum circuit generation unit 110 counts up the variable “Dep” by 1 (Dep+1). [Step S309] The quantum circuit generation unit 110 places a QNPPX circuit corresponding to the di-excitation x, the placement of which is to be determined, in the Dep column after the count-up.

[0125] [Step S310] When the processes of steps S304 to S309 are completed for all two-electron excitations shown in the generation table, the quantum-circuit generation unit 110 advances the process to step S321 (see FIG. 19).

[0126] 19 is a flowchart showing the second half of an example of a procedure for arranging rotation gate elements in an Ansatz circuit. The process shown in FIG. 19 will be described below in order of step numbers. [Step S321] The quantum circuit generation unit 110 executes a process (steps S322 to S328) of determining a placement destination for each one-electron excitation shown in the generation table. Here, the one-electron excitation for which a placement destination is to be determined is denoted by “y”.

[0127] [Step S322] The quantum circuit generation unit 110 executes the determination process of steps S323 and S324 for each of the first to Dep columns. Here, the column to be determined is assumed to be column z. [Step S323] The quantum circuit generation unit 110 determines whether at least one of the quantum bits, which is the excitation source and the excitation destination in the one-electron excitation y in the column z, has been used in the two-electron excitation. If at least one quantum bit has been used, the quantum circuit generation unit 110 proceeds to step S325. If none of the quantum bits are used, the quantum circuit generation unit 110 proceeds to step S324.

[0128] [Step S324] The quantum circuit generation unit 110 judges whether at least one of the quantum bits of the excitation source and the excitation destination in the one-electron excitation y in the column z has been used n times in other one-electron excitations. n is a natural number indicating how many one-electron excitation quantum operations can be implemented within the time of one two-electron excitation quantum operation. The value of n is determined by the processing execution time of the one-qubit gate and the processing execution time of the two-qubit gate. For example, n is a value of about "5".

[0129] If at least one of the quantum bits targeted by one-electron excitation y in column z has been used n times, the quantum circuit generation unit 110 advances the process to step S325. If all of the quantum bits have been used no more than n-1 times, the quantum circuit generation unit 110 advances the process to step S326.

[0130] In addition, even if any of the quantum bits targeted by the one-electron excitation y has been used only up to n-1 times, if the quantum circuit generating unit 110 cannot find a position in the column z to implement the Givens rotator of the one-electron excitation y, the process proceeds to step S325. For example, when the column z is divided into n subdivision columns, a Givens rotator corresponding to the one-electron excitation is placed in the subdivision column. If there is a subdivision column in which both the excitation source and the excitation destination quantum bits of the one-electron excitation y to be implemented are unused, the one-electron excitation y can be implemented in the column z. If there is no subdivision column in which both the excitation source and the excitation destination quantum bits of the one-electron excitation y to be placed are unused, the one-electron excitation y cannot be implemented in the column z, and the process proceeds to step S325.

[0131] [Step S325] If the determinations in steps S323 and S324 have been completed for all columns from the 1st column to the Depth column, the quantum circuit generation unit 110 advances the process to step S327.

[0132] [Step S326] The quantum circuit generation unit 110 places a Givens rotator corresponding to the one-electron excitation y, the placement of which is to be determined, in the column z that is the subject of determination in steps S323 and S324. After that, the quantum circuit generation unit 110 proceeds to the process of step S329.

[0133] [Step S327] The quantum circuit generation unit 110 counts up the variable “Dep” by 1 (Dep+1). [Step S328] The quantum circuit generation unit 110 places, in the Dep column after the count-up, a Givens rotator corresponding to the one-electron excitation y, the placement of which is to be determined.

[0134] [Step S329] When the processes of steps S322 to S327 are completed for all one-electron excitations shown in the generation table, the quantum-circuit generation unit 110 ends the rotating gate element arrangement process.

[0135] In this way, an Ansatz circuit is generated that mixes a single-excitation Givens rotation circuit and a double-excitation QNPPX circuit in the same column. The generated Ansatz circuit efficiently utilizes each quantum bit and has a reduced circuit depth.

[0136] 20 is a diagram showing an example of an Ansatz circuit in which one-electron excitation and two-electron excitation circuits are mixed in the same column. The quantum circuit generation unit 110 generates an Ansatz circuit 91 while referring to a generation table 90. In the Ansatz circuit 91, an HF state preparation circuit 92 that prepares an HF state is first arranged. Following the HF state preparation circuit 92, a mixture of multiple Givens rotation circuits corresponding to one-electron excitation and a QNPPX circuit corresponding to two-electron excitation is arranged.

[0137] For example, the quantum circuit generation unit 110 first arranges in the first column a QNPPX circuit in which the quantum bits with quantum bit numbers "1, 3" are excitation sources and the quantum bits with quantum bit numbers "5, 7" are excitation destinations.

[0138] The next QNPPX circuit to be placed (fifth row in generation table 90) includes "7" in the quantum bit number of the excitation destination. Since quantum bit number "7" is already being used by a QNPPX circuit in the first column, no more quantum bit numbers can be placed in the first column. Therefore, quantum circuit generation unit 110 places a QNPPX circuit in the second column with quantum bits with quantum bit numbers "0, 3" as excitation sources and quantum bits with quantum bit numbers "4, 7" as excitation destinations.

[0139] Next, the quantum circuit generation unit 110 places, in the second column, a QNPPX circuit in which the quantum bits with quantum bit numbers "2, 1" are the excitation sources and the quantum bits with quantum bit numbers "6, 5" are the excitation destinations.

[0140] The next QNPPX circuit to be placed (row 8 in generation table 90) contains "1" and "7" in the quantum bit numbers to be excited. The quantum bit numbers "1" and "7" are already used in QNPPX circuits in both the first and second columns. Therefore, the next QNPPX circuit to be placed cannot be placed in either the first or second column. Therefore, the quantum circuit generation unit 110 places a QNPPX circuit in the third column with the quantum bits with quantum bit numbers "0, 1" as the excitation source and the quantum bits with quantum bit numbers "6, 7" as the excitation destination.

[0141] After that, the quantum circuit generation unit 110 places a Givens rotation circuit in an empty area of ​​each column. In the example of FIG. 20, it is assumed that two Givens rotation circuits can be processed within the processing time of the QNPPX circuit. As a result, a Givens rotation circuit with a quantum bit with quantum bit number "2" as the excitation source and a quantum bit with quantum bit number "6" as the excitation destination is placed in the first column. Next, in the same first column, a Givens rotation circuit with a quantum bit with quantum bit number "2" as the excitation source and a quantum bit with quantum bit number "4" as the excitation destination is placed. Next, in the third column, a Givens rotation circuit with a quantum bit with quantum bit number "3" as the excitation source and a quantum bit with quantum bit number "5" as the excitation destination is placed. Finally, in the third column, a Givens rotation circuit with a quantum bit with quantum bit number "3" as the excitation source and a quantum bit with quantum bit number "4" as the excitation destination is placed.

[0142] In this way, by allowing a single-electron excitation circuit and a double-electron excitation circuit to be mixed in the same column, the length of the Ansatz circuit 91 can be shortened. Other embodiments In the second embodiment, an example of calculating the ground state energy of a nitrogen molecule is shown, but the process shown in the second embodiment can also be applied to other quantum chemical calculations.

[0143] The foregoing merely illustrates the principles of the present invention. Further, since numerous modifications and changes are possible to those skilled in the art, the present invention is not limited to the exact construction and application shown and described above, and all corresponding modifications and equivalents are deemed to be within the scope of the present invention according to the appended claims and their equivalents. [Explanation of symbols]

[0144] 1 Quantum circuit 2a,2b,...,3a,3b,... Partial circuit 10. Information processing device 11 Storage section 12 Processing section

Claims

1. Calculate initial values ​​of variables corresponding to each of a plurality of electronic excitations for calculating the ground state energy of a molecule using the variational quantum eigenvalue method; For each of the plurality of electronic excitations, determining whether to implement a corresponding circuit depending on whether an initial value of the corresponding variable is greater than a predetermined threshold; For each of the plurality of electronic excitations for which it is determined that the corresponding circuit is to be implemented, a partial circuit that performs a gate operation on the electronic excitation to calculate an energy according to the value of the variable is disposed in a quantum circuit for calculating the ground state energy of the molecule. An information processing program that causes a computer to execute processing.

2. When the electronic excitation determined to implement the corresponding circuit is a single-electron excitation, the partial circuit that performs a Givens rotation operation corresponding to the electronic excitation is disposed in the quantum circuit.

2. The information processing program according to claim 1, which causes a computer to execute the process.

3. When the electronic excitation determined to implement the corresponding circuit is two-electron excitation, the partial circuit that performs a quantum-number-preserving-pair-exchange (QNPPX) operation corresponding to the electronic excitation is arranged in the quantum circuit.

3. The information processing program according to claim 1, which causes a computer to execute the process.

4. In the process of calculating the initial values ​​of the variables, a CI (Configuration Interaction) coefficient for each of the plurality of electronic excitations is calculated by a classical quantum chemical calculation method, and the calculated CI coefficient is set as an initial value of the variable for each of the plurality of electronic excitations.

4. The information processing program according to claim 1, which causes a computer to execute the process.

5. In the process of arranging the partial circuit in the quantum circuit, if the excitation source and excitation destination quantum bits in a second partial circuit to be arranged next do not overlap with any of the excitation source and excitation destination quantum bits in a first partial circuit already arranged in a column in which simultaneously executable circuits in the quantum circuit are arranged, the second partial circuit is arranged in the same column as the first partial circuit in the quantum circuit.

5. An information processing program according to claim 1.

6. In the process of arranging the partial circuits in the quantum circuit, a third partial circuit corresponding to two-electron excitation is arranged in a column in which simultaneously executable circuits in the quantum circuit are arranged, and a plurality of fourth partial circuits corresponding to one-electron excitation, the excitation source and excitation destination quantum bits of which do not overlap with any of the excitation source and excitation destination quantum bits in the third partial circuit, are arranged in the same column as the third partial circuit, to the extent that the number of times the same quantum bit is used as an excitation source or excitation destination in the plurality of fourth partial circuits does not exceed a predetermined number.

5. An information processing program according to claim 1.

7. Calculate initial values ​​of variables corresponding to each of a plurality of electronic excitations for calculating the ground state energy of a molecule using the variational quantum eigenvalue method; For each of the plurality of electronic excitations, determining whether to implement a corresponding circuit depending on whether an initial value of the corresponding variable is greater than a predetermined threshold; For each of the plurality of electronic excitations for which it is determined that the corresponding circuit is to be implemented, a partial circuit that performs a gate operation on the electronic excitation to calculate an energy according to the value of the variable is disposed in a quantum circuit for calculating the ground state energy of the molecule. An information processing method in which processing is performed by a computer.

8. a processing unit that calculates initial values ​​of variables corresponding to a plurality of electronic excitations for calculating the ground energy of a molecule by a variational quantum eigenvalue method, determines whether or not to implement a corresponding circuit for each of the plurality of electronic excitations depending on whether or not the initial value of the corresponding variable is greater than a predetermined threshold, and arranges, in a quantum circuit for calculating the ground energy of the molecule, a partial circuit that performs a gate operation on the electronic excitation to calculate an energy according to the value of the variable for each of the plurality of electronic excitations for which it has been determined that the corresponding circuit is to be implemented; An information processing device having the above configuration.

Citation Information

Patent Citations

  • Quantum information processing method, classic computer, quantum computer, quantum information processing program, and data structure for obtaining differential of energy

    JP2020187451A

  • System, method, quantum computing device and computer program for implementing a highly hardware-efficient variational quantum eigensolver for quantum computing machines

    JP2020534607A

  • Effective Quantum RAM Architecture for Quantum Database

    US20190354316A1

  • Quantum information processing method, classical computer, quantum computer, hybrid system, quantum information processing program, and data structure for calculation of energy differential

    WO2020230794A1