Verified quantum phase estimation

CN116508030BActive Publication Date: 2026-09-18GOOGLE LLC
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202180073670.4
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Priority Date
2020-09-01
Filing Date
2021-09-01
Publication Date
2026-09-18
Estimated Expiration
2041-09-01

AI Technical Summary

Benefits of technology

[0045] The technique described currently enables the mitigation of errors accumulated during the quantum phase estimation routine. Specifically, by having the system register in the initial state after selection, all individual errors are converted into time-dependent decays (averaging small corrections on an exponential scale) before the final measurement, which can be accurately corrected at the cost of additional measurements. Furthermore, by separating the observable of interest into linear combinations of fast-forwardable Hamiltonians and measuring those components individually, the time-dependent decays can be converted into constant offsets. Therefore, the technique described currently improves the accuracy of quantum phase estimation compared to conventional techniques that do not incorporate error mitigation.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN116508030B_ABST
    Figure CN116508030B_ABST
Patent Text Reader

Abstract

Methods, systems, and apparatus, including computer programs encoded on a computer storage medium, for quantum phase estimation for verification. In one aspect, a method includes repeatedly performing an experiment. One repetition of performing the experiment includes: applying a second unitary to a system register of N qubits prepared in a target computational ground state; applying a first unitary to the system register conditioned on a state of a control qubit; applying an inverse of the second unitary to the system register and measuring each qubit to determine an output state of the system register; measuring the control qubit to obtain a corresponding measurement result m; and incrementing a first or second classical variable in response to determining that the output state indicates that each qubit was in the target computational ground state prior to measurement, post-selection m . A phase or expectation value of the first unitary is estimated based on the classical variable.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This manual relates to quantum computing. Background Technology

[0002] Quantum phase estimation is used to learn the eigenphase of the unitary operator U. The protocol, or equivalently, is used to learn the eigenvalues ​​E of the Hermitian operator H. j The protocol, because such an operator is obtained by exponentiation U = e iHt Generate their respective unitary operators. Summary of the Invention

[0003] This specification describes techniques for mitigating errors that accumulate during quantum phase estimation routines, referred to herein as verified quantum phase estimation.

[0004] In summary, an innovative aspect of the subject matter described in this specification can be implemented in a method for quantum phase estimation of a first N-qubit unitary operator in a quantum state, the method comprising: initializing a first classical variable and a second classical variable; generating a set of measurement data, including repeatedly performing a phase estimation experiment, wherein in each repetition, the current value of the classical variable is incremented based on the measurement outcome of the phase estimation experiment, and performing one repetition of the phase estimation experiment comprises: preparing a system register comprising N qubits in a quantum state, including applying a second unitary operator to the system register, wherein the system register is initialized in the target computational ground state before applying the second unitary operator. Each qubit in the system register; conditioned on the state of the control qubit, the first unitary operator is applied multiple times to the system register in the quantum state to generate an evolving quantum state, wherein the control qubit is initialized in a superposition state before the multiple applications of the first unitary operator; the second unitary operator is inversely applied to the system register in the evolving quantum state, and each qubit in the system register is measured to determine the output quantum state of the system register; the control qubit is measured to obtain the corresponding measurement result m; and a post-selection of the target computational ground state is performed, including incrementing the first or second classical variable by (-1) in response to determining that the output quantum state indicates that each qubit is in the target computational ground state before measurement. m ; and based on this set of measurement data, estimate one or more phases, eigenstate amplitudes, or expected values ​​of the first unitary operator or other operators.

[0005] Other implementations of this aspect include corresponding classical and quantum computer systems, apparatuses, and computer programs recorded on one or more computer storage devices, each configured to perform the actions of the method. One or more classical and quantum computer systems can be configured to perform specific operations or actions by installing software, firmware, hardware, or combinations thereof on the system, which in operation cause the system to perform these actions. One or more computer programs can be configured to perform specific operations or actions by including instructions that, when executed by a data processing device, cause that device to perform these actions.

[0006] The foregoing and other implementations may each optionally include one or more of the following features individually or in combination. In some implementations, the method further includes: generating multiple sets of measurement data, wherein each set of measurement data corresponds to a different number of times the first unitary operator is applied to the system register in the quantum state; and estimating one or more phases, eigenstate amplitudes, or expected values ​​of the first unitary operator or other operators based on the multiple sets of measurement data.

[0007] In some implementations, the first unitary operator includes a time evolution operator generated by an N-qubit Hamiltonian.

[0008] In some implementations, applying the first unitary operator multiple times to the system register in the quantum state includes applying the time evolution operator, which is evaluated at corresponding time steps at intervals of a predetermined length, to the system register in the quantum state.

[0009] In some implementations, the quantum state comprises a linear combination of one or more eigenstates of an N-qubit Hamiltonian, wherein each eigenstate in the linear combination comprises an associated amplitude.

[0010] In some implementations, estimating one or more phases, intrinsic state amplitudes, or desired values ​​of a first unitary operator or other operator based on one or more sets of measurement data includes: for each of the one or more sets of measurement data, estimating a phase function of the first unitary operator based on that set of measurement data; and calculating one or more phases, intrinsic state amplitudes, or desired values ​​of the first unitary operator or other operator based on the estimated one or more phase functions.

[0011] In some implementations, measuring the control qubit to obtain the corresponding measurement result m includes: rotating the control qubit into a basis X and measuring the qubit in the basis X; or rotating the control qubit into a basis Y and measuring the qubit in the basis Y.

[0012] In some implementations, the first or second classic variable is incremented by -1. m This includes incrementing the first classical variable by (-1) in response to measuring the control qubit in the X basis.m Alternatively, in response to measuring the control qubit in the Y basis, the second classical variable is incremented by (-1). m .

[0013] In some implementations, estimating the phase function of the first unitary operator based on the set of measurement data includes calculating: i) the final value of the first classical variable in the set of measurement data divided by the total number of times the control qubit is measured in the X basis, plus ii) i multiplied by the final value of the second classical variable in the set of measurement data divided by the total number of times the control qubit is measured in the Y basis.

[0014] In some implementations, the estimated phase function includes a noisy approximation of the phase function of the first unitary operator, and the method further includes applying a normalization condition to the square of the amplitude associated with the corresponding eigenstate.

[0015] In some implementations, calculating one or more phases, eigenstate amplitudes, or desired values ​​of a first unitary operator or other operator based on one or more estimated phase functions involves applying classical signal processing to one or more phase functions.

[0016] In some implementations, calculating one or more phases, eigenstate amplitudes, or desired values ​​of a first unitary operator or other operator based on estimated one or more phase functions includes estimating the eigenvalues ​​and amplitudes of one or more eigenstates corresponding to an N-qubit Hamiltonian.

[0017] In some implementations, the N-qubit Hamiltonian comprises a linear combination of diagonalizable sub-Hamiltonians, and the method further comprises: for each sub-Hamiltonian, performing a quantum phase estimation of a time evolution operator generated by that sub-Hamiltonian to determine an expectation value of that sub-Hamiltonian, wherein the expectation value comprises a sum of estimated eigenvalues ​​weighted by estimated amplitudes; summing the determined expectation values ​​of the sub-Hamiltonians to obtain the expectation value of the N-qubit Hamiltonian.

[0018] In some implementations, for each sub-Hamiltonian, performing quantum phase estimation of the time evolution operator generated by that sub-Hamiltonian involves performing quantum phase estimation of the time evolution operator generated by each sub-Hamiltonian in parallel.

[0019] In some implementations, the method further includes performing a quantum phase estimate of the time evolution operator generated by the Hamiltonian to determine the expectation value of the Hamiltonian, wherein the expectation value includes the sum of estimated eigenvalues ​​weighted by the estimated amplitude.

[0020] In some implementations, the post-selection of the target computational ground state includes: determining whether the output quantum state indicates that each qubit was in the target computational ground state before measurement; and in response to determining that the output quantum state indicates that each qubit was not in the target computational ground state before measurement, discarding the current repetition and performing the next repetition.

[0021] In some implementations, measuring each qubit in the system register to determine the output quantum state of the system register includes measuring each qubit in the system register in the X or Y basis.

[0022] In summary, another innovative aspect of the subject matter described in this specification can be implemented in a method for quantum phase estimation of a first N-qubit unitary operator on a quantum state, the method comprising: initializing a first classical variable and a second classical variable; generating a set of measurement data, including repeatedly performing a phase estimation experiment, wherein in each repetition, the current value of the classical variable is incremented based on the measurement effect of the phase estimation experiment, and performing one repetition of the phase estimation experiment comprises: preparing a register comprising N qubits in an initial quantum state, including preparing N-1 qubits in the target computation ground state and an Nth qubit in a superposition state; applying a second N-qubit unitary operator to the register in the initial quantum state, To obtain a superposition state, which comprises a superposition of a quantum state and the eigenstate of a first N-qubit unitary operator; to apply the first N-qubit unitary operator multiple times to a register in the superposition state to generate an evolving superposition state; to inversely apply the second N-qubit unitary operator to the register in the evolving superposition state and measure each of the N-1 qubits in the register to determine the output state of the N-1 qubits; to measure the Nth qubit to obtain the corresponding measurement result m; and to perform post-selection on the target computational ground state, including i) incrementing the first or second classical variable by (-1) in response to the determination of the output state of the N-1 qubits indicating that each of the N-1 qubits was in the target computational ground state before measurement. m ; and based on this set of measurement data, estimate one or more phases, eigenstate amplitudes, or expected values ​​of the first unitary operator or other operators.

[0023] Other implementations of this aspect include corresponding classical and quantum computer systems, apparatuses, and computer programs recorded on one or more computer storage devices, each configured to perform the actions of the method. One or more classical and quantum computer systems can be configured to perform specific operations or actions by installing software, firmware, hardware, or combinations thereof on the system, which in operation cause the system to perform these actions. One or more computer programs can be configured to perform specific operations or actions by including instructions that, when executed by a data processing apparatus, cause the apparatus to perform these actions.

[0024] The foregoing and other implementations may each optionally include one or more of the following features individually or in combination. In some implementations, the method further includes: generating multiple sets of measurement data, wherein each set of measurement data corresponds to a different number of times the first unitary operator is applied to a register in a quantum state; and estimating one or more phases, eigenstate amplitudes, or expected values ​​of the first unitary operator or other operators based on the multiple sets of measurement data.

[0025] In some implementations, the first unitary operator includes a time evolution operator generated by an N-qubit Hamiltonian.

[0026] In some implementations, applying the first unitary operator multiple times to the register in the quantum state includes applying the time evolution operator, which is evaluated at corresponding time steps at intervals of a predetermined length, to the register in the quantum state.

[0027] In some implementations, the quantum state comprises a linear combination of one or more eigenstates of an N-qubit Hamiltonian, wherein each eigenstate in the linear combination comprises an associated amplitude.

[0028] In some implementations, estimating one or more phases, eigenstate amplitudes, or desired values ​​of the first unitary operator or other operator based on one or more sets of measurement data includes: for each of the one or more sets of measurement data, estimating the phase function of the first unitary operator based on that set of measurement data; and calculating one or more phases, eigenstate amplitudes, or desired values ​​of the first unitary operator or other operator based on the estimated one or more phase functions.

[0029] In some implementations, measuring the Nth qubit to obtain the corresponding measurement result m includes: rotating the Nth qubit into a basis X and measuring the qubit in the basis X; or rotating the Nth qubit into a basis Y and measuring the qubit in the basis Y.

[0030] In some implementations, the first or second classic variable is incremented by -1. m This includes incrementing the first classical variable by (-1) in response to measuring the Nth qubit in the X basis. m Alternatively, in response to measuring the Nth qubit in the Y basis, the second classical variable is incremented by (-1). m .

[0031] In some implementations, estimating the phase function of the first unitary operator based on the set of measurement data includes calculating: i) the final value of the first classical variable in the set of measurement data divided by the total number of times the Nth qubit is measured in the X basis, plus ii) i multiplied by the final value of the second classical variable in the set of measurement data divided by the total number of times the Nth qubit is measured in the Y basis.

[0032] In some implementations, the estimated phase function includes a noisy approximation of the phase function of the first unitary operator, and the method further includes applying a normalization condition to the square of the amplitude associated with the corresponding eigenstate.

[0033] In some implementations, calculating one or more phases, eigenstate amplitudes, or desired values ​​of a first unitary operator or other operator based on one or more estimated phase functions involves applying classical signal processing to one or more phase functions.

[0034] In some implementations, calculating one or more phases, eigenstate amplitudes, or desired values ​​of a first unitary operator or other operator based on estimated one or more phase functions includes estimating the eigenvalues ​​and amplitudes of one or more eigenstates corresponding to an N-qubit Hamiltonian.

[0035] In some implementations, the N-qubit Hamiltonian comprises a linear combination of diagonalizable sub-Hamiltonians, and the method further comprises: for each sub-Hamiltonian, performing a quantum phase estimation of a time evolution operator generated by that sub-Hamiltonian to determine an expectation value of that sub-Hamiltonian, wherein the expectation value comprises a sum of estimated eigenvalues ​​weighted by estimated amplitudes; summing the determined expectation values ​​of the sub-Hamiltonians to obtain the expectation value of the N-qubit Hamiltonian.

[0036] In some implementations, for each sub-Hamiltonian, performing quantum phase estimation of the time evolution operator generated by that sub-Hamiltonian involves performing quantum phase estimation of the time evolution operator generated by each sub-Hamiltonian independently and in parallel.

[0037] In some implementations, the method further includes performing a quantum phase estimate of the time evolution operator generated by the Hamiltonian to determine the expectation value of the Hamiltonian, wherein the expectation value includes the sum of estimated eigenvalues ​​weighted by the estimated amplitude.

[0038] In some implementations, the post-selection of the target computational ground state includes: determining whether the output quantum state indicates that each qubit was in the target computational ground state before measurement; and in response to determining that the output quantum state indicates that each qubit was not in the target computational ground state before measurement, discarding the current repetition and performing the next repetition.

[0039] In some implementations, measuring each qubit in the register to determine the output quantum state of the register includes measuring each qubit in the register in the X or Y basis.

[0040] In summary, another innovative aspect of the subject matter described in this specification can be implemented in a method for quantum error mitigation in a quantum computing system, the method comprising: generating a set of classical control data including at least one classical variable by repeated iterations, wherein each iteration comprises: preparing a system register including a plurality of qubits in an initial quantum state; applying a unitary operator to the system register in the initial quantum state to obtain a first evolved quantum state, wherein the unitary operator depends on a target quantum computation; performing the target quantum computation on the system register in the first evolved quantum state conditioned on the state of the control qubit initialized in a superposition state to obtain a second evolved quantum state; inversely applying the unitary operator to the system register in the second evolved quantum state to obtain a third evolved quantum state; and measuring i) each qubit in the system register in the third evolved quantum state to determine the output quantum state of the system register, and ii) the control qubit to determine the output quantum state of the control qubit; updating at least one classical variable using the output quantum state of the control qubit, unless the output quantum state of the system register indicates that the system register was not in the initial quantum state before the measurement; and after completing the multiple iterations, changing the operating parameters of the quantum computing system or adjusting the measured values ​​based on the set of classical control data.

[0041] Other implementations of this aspect include corresponding classical and quantum computer systems, devices, and computer programs recorded on one or more computer storage devices, each configured to perform the actions of the method. One or more classical and quantum computer systems can be configured to perform specific operations or actions by installing software, firmware, hardware, or combinations thereof on the system, which in operation cause the system to perform these actions. One or more computer programs can be configured to perform specific operations or actions by including instructions that, when executed by a data processing device, cause the device to perform these actions.

[0042] In summary, another innovative aspect of the subject matter described in this specification can be implemented in a method for quantum error mitigation in a quantum computing system, the method comprising: generating a set of classical control data including at least one classical variable by repeated iterations, wherein each iteration comprises: preparing a system register including a plurality of qubits in an initial quantum state; applying a unitary operator to the system register in the initial quantum state to obtain a first evolved quantum state, wherein the unitary operator depends on a target quantum computation; performing the target quantum computation on the system register in the first evolved quantum state to obtain a second evolved quantum state; applying the inverse of the unitary operator to the system register in the second evolved quantum state and measuring each qubit in the system register to determine the output quantum state of the system register; and after applying the inverse of the unitary operator, updating at least one classical variable using the output quantum state of the system register, unless the output quantum state indicates that the system register was not in the initial quantum state before the measurement; and after completing the multiple iterations, changing the operating parameters of the quantum computing system or adjusting the measured values ​​based on the set of classical control data.

[0043] Other implementations of this aspect include corresponding classical and quantum computer systems, devices, and computer programs recorded on one or more computer storage devices, each configured to perform the actions of the method. One or more classical computer systems and quantum computer systems can be configured to perform specific operations or actions by installing software, firmware, hardware, or combinations thereof on the system, which in operation cause the system to perform these actions. One or more computer programs can be configured to perform specific operations or actions by including instructions that, when executed by a data processing device, cause the device to perform these actions.

[0044] The subject matter described in this specification can be implemented in a particular manner to achieve one or more of the following advantages.

[0045] The technique described currently enables the mitigation of errors accumulated during the quantum phase estimation routine. Specifically, by having the system register in the initial state after selection, all individual errors are converted into time-dependent decays (averaging small corrections on an exponential scale) before the final measurement, which can be accurately corrected at the cost of additional measurements. Furthermore, by separating the observable of interest into linear combinations of fast-forwardable Hamiltonians and measuring those components individually, the time-dependent decays can be converted into constant offsets. Therefore, the technique described currently improves the accuracy of quantum phase estimation compared to conventional techniques that do not incorporate error mitigation.

[0046] Subsequently, the techniques described herein can be executed as subroutines in various settings to provide additional mitigation of control errors and improve the accuracy of other computational routines, such as to improve the accuracy of partial state tomography in variational quantum eigenvalue solvers or any variational algorithm that uses the expected value as a cost function.

[0047] Furthermore, the error mitigation techniques described so far can be incorporated into phase estimation techniques that do not require control of qubits. Therefore, quantum phase accuracy can be achieved with lower hardware complexity.

[0048] Furthermore, the currently described protocol remains robust in the presence of sampling noise, and the number of repetitions required is approximately scaled to 1 times the fidelity of the pre-state.

[0049] Furthermore, the techniques described herein enable accurate estimation of the eigenphases of the quantum states of physical systems, making them available for a wide range of industrially valuable computational applications. For example, the estimated eigenphases can be used to perform quantum simulations, such as quantum algorithms for simulating chemical and molecular reactions, quantum metrology, spectroscopy, factorization algorithms, order-finding algorithms, discrete logarithm calculations, database search algorithms, or to solve well-conditional sparse linear equation systems.

[0050] Details of one or more implementations of the subject matter of this specification are set forth in the accompanying drawings and the following description. Other features, aspects, and advantages of this subject matter will become apparent from the specification, drawings, and claims. Attached Figure Description

[0051] Figure 1 An example system for performing quantum phase estimation for verification is described.

[0052] Figure 2 This is a flowchart of an example process for quantum phase estimation with single-control verification.

[0053] Figure 3 This is a circuit diagram of an example quantum circuit for quantum phase estimation used in single-control verification.

[0054] Figure 4 This is a flowchart of an example process for quantum phase estimation used for controlless verification.

[0055] Figure 5 This is a circuit diagram of an example quantum circuit for quantum phase estimation used in controlless verification.

[0056] Figure 6 This is a process diagram of an example protocol for estimating the expected value of a Hamiltonian using single-control verification.

[0057] The same reference numerals and names in the various figures indicate the same elements.

[0058] Specific implementation method

[0059] Quantum phase estimation refers to the method used to learn the eigenphase of the unitary operator U. A family of protocols. Equivalently, quantum phase estimation can be used to learn the eigenvalues ​​E of the Hermitian operator H. j Because such an operator is obtained by exponentiation U = e iHt Generate their respective unitary operators. The eigenvalues ​​of H and the eigenphases of U are related by the same power operation and correspond to the same eigenstates, for example, if H|E j >=E j |E j >, and φ j =E j t.

[0060] Unitary operators can be implemented as quantum circuits on the registers of quantum systems. Because for pure states |ψ> and real-valued φ, e iv Since |ψ>≡|ψ>, the phase is undetectable if the system register is prepared in a pure state. However, the relative phase between two states is a detectable physical observable. This detection can be achieved through single-control quantum phase estimation.

[0061] In single-control quantum phase estimation, a unitary operator is conditionally applied when the control qubit is in state |1> (and nothing is done when the control qubit is in state |0>). This is often referred to as a “controlled” unitary CU. When the CU acts on the system register prepared with eigenstates and the control qubit prepared with superposition state |+>, the global state evolves as follows:

[0062]

[0063] Although the system register is active, it remains unchanged, while the intrinsic phase from the system register... It is kicked back to the control qubit. The intrinsic phase can be estimated by repeatedly executing a single control quantum phase estimation protocol. In this process, the control qubit is measured repeatedly (in either the X or Y basis) to obtain multiple single readouts of 1 and 0. From the estimated eigenphase, the eigenvalue E can be deduced. j For example, through

[0064] E jThe estimation error decreases with t, and the asymptotically optimal protocol can balance this with the ambiguity of modulo 2πt by repeatedly estimating at multiple values ​​of t. This relates to estimating the eigenphase of unitary U. In this regard, such optimization requires control of U k (e.g. CU) k Repeat this process for the changing integer point k.

[0065] This specification describes apparatus and methods for verifying quantum phase estimation. These apparatus and methods implement a post-selection mechanism that mitigates errors accumulated during quantum phase estimation. That is, by measuring qubits in a system register based on an initial state including pre-selected qubits, and performing post-selection on phase estimation experiments that find the system register state has returned to the initial state, a system implementing the currently described technique can verify any errors that cause the system to deviate from that state. Therefore, the quantum phase estimation protocol currently described is referred to herein as a verified quantum phase estimation protocol.

[0066] Example operating environment

[0067] Figure 1 An example system 100 for performing quantum phase estimation for verification is depicted. Example system 100 is an example of a system implemented as a classical computer program and a quantum computer program on one or more classical computers and quantum computing devices at one or more locations, wherein the following systems, components, and techniques can be implemented.

[0068] Depending on some implementations, the example system can be used to perform both classical and quantum computing operations described in this specification. Example system 100 is intended to represent various forms of quantum computing devices. The components shown herein, their connections and relationships, and their functionality are merely exemplary and do not limit the implementation of the inventions described and / or claimed herein.

[0069] Example system 100 includes a qubit component 102 and a control and measurement system 104. The qubit component includes multiple qubits, such as qubit 106, for performing algorithmic operations or quantum computation. Although Figure 1 The qubits shown are arranged in a rectangular array, but this is a schematic description and not intended to be limiting. The qubit assembly 102 also includes adjustable coupling elements, such as coupler 108, which allows interaction between the coupled qubits. Figure 1In the schematic diagram, each qubit is tunably coupled to each of its four neighboring qubits via its own coupling element. However, this is an example arrangement of qubits and couplers; other arrangements are possible, including non-rectangular arrangements, arrangements that allow coupling between non-adjacent qubits, and arrangements that include tunable coupling between more than two qubits. Furthermore, in some cases, qubits may not be coupled / interact with each other via physical coupling elements. For example, an ion trap can couple qubits via its longitudinal movement. Therefore, in some cases, coupling between qubits can be driven, for example, using a laser, rather than through coupling elements. Typically, the type of coupling used depends on the type of qubits used and / or the type of quantum computation to be performed.

[0070] Each qubit can be a two-level quantum system or device with physical levels representing logic values ​​0 and 1. The specific physical implementation of multiple qubits and how they interact depends on a variety of factors, including the type of quantum computing device included in example system 100 or the type of quantum computing being performed by the quantum computing device. For example, in an atomic quantum computer, qubits can be implemented using atoms, molecules, or solid-state quantum systems, such as hyperfine atomic states. As another example, in a superconducting quantum computer, qubits can be implemented using superconducting or semiconducting qubits, such as superconducting transmon states. As yet another example, in an NMR quantum computer, qubits can be implemented using nuclear spin states.

[0071] In some implementations, quantum computing can be performed by initializing the qubits in a chosen initial state and applying unitary operators to the qubits, as shown in the following example. Figure 2-6 The unitary operator U,U is described p Applying unitary operators to a quantum state can include applying a corresponding sequence of quantum logic gates to a qubit, for example, applying a corresponding quantum circuit to a qubit. Example quantum logic gates include single-qubit gates, such as Pauli-X, Pauli-Y, Pauli-Z (also known as X, Y, Z), Hadamard, and S gates; two-qubit gates, such as controlled X, controlled Y, controlled Z (also known as CX, CY, CZ); and gates involving three or more qubits, such as Toveley gates. The quantum logic gates can be implemented by applying control signals 110 generated by the control and measurement system 104 to the qubits and couplers.

[0072] For example, in some implementations, the qubits in qubit assembly 102 can be frequency-tunable. In these examples, each qubit can have an associated operating frequency, which can be adjusted by applying voltage pulses via one or more drive lines coupled to the qubit. Example operating frequencies include qubit idle frequency, qubit interaction frequency, and qubit readout frequency. Different frequencies correspond to different operations that the qubit can perform. For example, setting the operating frequency to the corresponding idle frequency can put the qubit into a state in which it does not interact strongly with other qubits, and in this state, it can be used to perform single-qubit gates. As another example, in the case where qubits interact via couplers with fixed coupling, the qubits can be configured to interact by setting their respective operating frequencies to a gate-related frequency that is detuned to their common interaction frequency. In other cases, for example, when qubits interact via tunable couplers, the qubits can be configured to interact by setting the parameters of their respective couplers to enable interaction between the qubits, and then interact by setting their respective operating frequencies to a gate-related frequency that is detuned to their common interaction frequency. Such interactions can be performed to realize multi-qubit gates.

[0073] The type of control signal 110 used depends on the physical implementation of the qubit. For example, the control signal may include RF or microwave pulses in an NMR or superconducting quantum computer system, or light pulses in an atomic quantum computer system.

[0074] Quantum computing can be performed by measuring the state of qubits, for example, using quantum observables such as X or Z, with their respective control signals 110. The measurement causes a readout signal 112, representing the measurement result, to be transmitted back to the measurement and control system 104. Depending on the physical scheme of the quantum computing device and / or qubits, the readout signal 112 may include RF, microwave, or optical signals. For convenience, Figure 1 The control signal 110 and readout signal 112 shown are described as addressing only selected elements (i.e., top and bottom rows) of the qubit assembly, but during operation, the control signal 110 and readout signal 112 can address each element in the qubit assembly 102.

[0075] The control and measurement system 104 is an example of a classical computer system that can be used to perform various operations (as described above) on the qubit component 102, as well as other classical subroutines or computations, such as those described below. Figure 2-6The described classical processing / post-processing routines. Control and measurement system 104 includes one or more classical processors, such as classical processor 114, connected by one or more data buses, one or more memories, such as memory 116, and one or more I / O units, such as I / O unit 118. Control and measurement system 104 can be programmed to send a sequence of control signals 110 to the qubit components, for example, to perform a selected series of quantum gate operations, and to receive a sequence of readout signals 112 from the qubit components, for example, as part of performing a measurement operation.

[0076] Processor 114 is configured to process instructions executed within control and measurement system 104. In some implementations, processor 114 is a single-threaded processor. In other implementations, processor 114 is a multi-threaded processor. Processor 114 is capable of processing instructions stored in memory 116.

[0077] Memory 116 stores information within the control and measurement system 104. In some implementations, memory 116 includes computer-readable media, volatile memory cells, and / or non-volatile memory cells. In some cases, memory 116 may include a storage device capable of providing large-capacity storage for system 104, such as a hard disk drive, an optical disk drive, a storage device shared by multiple computing devices over a network (e.g., a cloud storage device), and / or some other high-capacity storage device.

[0078] Input / output device 118 provides input / output operations for control and measurement system 104. Input / output device 118 may include D / A converters, A / D converters, and RF / microwave / optical signal generators, transmitters, and receivers to send control signals 110 to qubit components and receive readout signals 112 from qubit components such as those suitable for a quantum computer's physical scheme. In some implementations, input / output device 118 may also include one or more network interface devices, such as Ethernet cards, serial communication devices (e.g., RS-232 ports), and / or wireless interface devices (e.g., 802.11 cards). In some implementations, input / output device 118 may include a driver configured to receive input data and send output data to other external devices (e.g., keyboards, printers, and display devices).

[0079] Although Figure 1 An example control and measurement system 104 has been described in this specification, but the subject matter and functional operations described herein can be implemented in other types of digital electronic circuits, or in computer software, firmware, or hardware, including the structures disclosed herein and their equivalents, or in combinations of one or more of them.

[0080] Hardware Programming: An Example Procedure for Quantum Phase Estimation with Single-Control Verification

[0081] Figure 2 This is a flowchart of an example procedure 200 for single-control verification of an N-qubit unitary operator U on a quantum state |ψ>. For convenience, procedure 200 will be described as being performed by a system of one or more classical computing devices and quantum computing devices located at one or more locations. For example, a system appropriately programmed according to this specification... Figure 1 System 100 can execute process 200.

[0082] For simplicity, Example Procedure 200 is described primarily with reference to the single-control verified quantum phase estimation of the N-qubit unitary operator U in the Hermitian operator diagram. In the Hermitian operator diagram, the unitary operator U is equal to the time evolution operator generated by the N-qubit Hamiltonian H.

[0083] U = U(t) = e iHt (1)

[0084] Furthermore, example procedure 200 can be applied to learn the eigenphase of the Hamiltonian H. or eigenvalue E j However, this is a non-limiting example, and example procedure 200 can also be applied to quantum phase estimation for performing single-control verification of the unitary operator U in a unitary graph.

[0085] The system generates one or more sets of measurement data, including data in one or more sets that will be used to estimate the eigenphase / eigenvalue of the unitary operator U (step 202).

[0086] In some implementations, the system can generate a set of measurement data corresponding to specific values ​​of t (or equivalently, integer k). However, as mentioned above, the error in the estimated eigenvalues ​​decreases with t, and the asymptotically optimal protocol can be achieved by repeating the estimation for multiple values ​​of t (or, in the case of a unitary image, repeating it for multiple values ​​of integer k for the controlled U). kThe estimation of t is used to balance this with the ambiguity of modulo 2πt. Therefore, in other implementations, the system can generate multiple sets of measurement data, each corresponding to a value of t from a predetermined range or interval (or equivalently, a number k from a predetermined range or interval). In these implementations, the number of sets of generated measurement data, such as the number of distinct values ​​of t, is chosen to allow a sufficient number of phases to fit the data. For example, a first value t0 without ambiguity can be chosen first (since it is possible to find an upper limit to the size of the eigenvalues, such a value can always be chosen). Then, example sets of values ​​of t can be selected based on the first value t0, such as {t0, 2t0, 3t0, 4t0, ...} (i.e., linear intervals) or {t0, 2t0, 4t0, 8t0...} (i.e., exponential intervals between values, which may be preferred in some cases).

[0087] Generating each set of measurement data includes preparing (or initializing) first and second classical initial variables, such as the first classical initial variable g. x =0 and the second classical initial variable g y =0 (step 204), and repeat the same phase estimation experiment, wherein in each repetition, one of the classical initial variables is incremented based on the measurement results of the phase estimation experiment. The number of repetitions is chosen such that the corresponding set of measurement data includes sufficient statistics for estimating the eigenphase / eigenvalue of the unitary operator. To perform one repetition of the phase estimation experiment, the system implements a quantum circuit as follows, for example... Figure 3 The quantum circuit shown.

[0088] The system prepares a system register of N qubits in quantum state |ψ> (step 206). In some implementations, the quantum state |ψ> comprises a linear combination of one or more eigenstates |E> of the N-qubit Hamiltonian H, wherein each eigenstate |E> in the linear combination j >Including the associated amplitude a j For example, a quantum state can be given by the following equation:

[0089]

[0090] In the quantum state, the pre-system register includes each qubit in the pre-system register in the target computation state, such as the zero state, and pre-systems unitary operators U are prepared. p The qubit is applied to the target computational state. The pre-selective unitary operator U is chosen. p This causes the application of the pre-unitary operator to the qubits prepared in the ground state of the target computation to result in the system register being in the quantum state |ψ>, for example, U p|0>=|ψ>. The specific form of the pre-unitary operator depends on the unitary operator / Hamiltonian being performed on the quantum phase estimation, and the quantum hardware used to perform the quantum phase estimation. For example, for the free fermion Hamiltonian, the pre-unitary operator U p This can be represented using a Givens rotary circuit.

[0091] The system is initially set to a superposition state, such as a plus state, for the control qubit. Then, conditioned on the state of the control qubit, the system applies the unitary operator U multiple times to the system register in the quantum state |ψ> to generate the evolving quantum state (step 208). More specifically, in the Hermitian operator graph, the system applies the time evolution operator U(t) = e iHt A system register is applied to the quantum state |ψ> to generate the evolving quantum state, where the value of t depends on the set of measurement data currently being generated. In the unitary graph, the system will U k The system register in the quantum state |ψ> is used to generate the evolving quantum state, where the integer value of k depends on the set of measurement data currently being generated. In some implementations, the system can apply the unitary operator U conditionally with the control qubit in a 1 state.

[0092] The system will prepare the inverse of the unitary operator, for example A system register is applied to the evolving quantum state, and each qubit in the system register is measured to determine the output quantum state of the system register (step 210). In some implementations, measuring each qubit in the system register to determine the output quantum state of the system register includes measuring each qubit in the system register in the X or Y basis.

[0093] The system measures the control qubit to obtain the corresponding measurement result m∈0,1 (step 212). Measuring the control qubit to obtain the corresponding measurement result includes rotating the control qubit into the X basis and measuring the qubit in the X basis, or rotating the control qubit into the Y basis and measuring the qubit in the Y basis.

[0094] The system performs post-selection of the target computational ground state for the qubits in the pre-system register in step 206 (step 214). To perform post-selection of the target computational ground state, the system determines whether the output quantum state indicates that each qubit was in the target computational ground state before measurement. For example, in the implementation of pre-selecting each qubit in the pre-system register in a zero-state manner (when applying the pre-unitary operator U...) p Previously, the system could determine whether the output quantum state of the system register indicated that each qubit was measured to be in a zero state.

[0095] In response to confirming that the output quantum state indeed indicates that each qubit was in the target computational ground state before measurement, the system increments the corresponding classical variable by (-1). m For example, if the control qubit is rotated into the X basis and measured in the X basis to obtain a measurement result m=0, then the system will have the first classical variable g. x Increment (-1) 0 =1. If the control qubit is rotated into the X basis and measured in the X basis to obtain a measurement result m=1, the system will change the first classical variable g. x Increment (-1) 1 = -1. Similarly, if the control qubit is rotated into the Y basis and measured in the Y basis to obtain the measurement result m, the system will change the second classical variable g. y Increment (-1) m .

[0096] In response to the determination that the output quantum state does not indicate that each qubit was in the target computational ground state before measurement, the system discards the current repetition of the phase estimation experiment (in other words, the system increments the corresponding classical variable by 0). m And perform the next repetition of the phase estimation experiment (or, alternatively, proceed to step 216 if the current repetition is the last repetition).

[0097] The system estimates one or more phases, amplitudes, or desired values ​​of the unitary operator U based on one or more sets of generated measurement data (step 216). This system can estimate one or more phase functions of the unitary operator U(t) = e iHt The phase, amplitude, or desired value of the unitary operator U is estimated, where each phase function g(t) corresponds to a specific value of t, thus based on a corresponding set of measurements. The phase, amplitude, or desired value of the unitary operator U can then be classically inferred from the estimated phase function g(t). For example, one or more phase functions can be processed using classical signal processing techniques to obtain approximations of the eigenvalues ​​(energies) of the Hamiltonian that generate the time evolution operator, for example, to obtain the eigenstates |E|. j The approximation of the eigenvalues ​​of > and included in the quantum state |ψ>=∑ j a j |E j The associated amplitude a in > j .

[0098] Each phase function g(t) is defined as a linear combination of one or more phases of a unitary operator, where each phase in the linear combination is i) associated with a corresponding eigenstate of one or more eigenstates of the Hamiltonian included in the quantum state |ψ>, and ii) weighted by the square of the amplitude associated with the corresponding eigenstate. That is, the phase function can be given by the following equation.

[0099]

[0100] Therefore, in order to estimate the corresponding phase function g(t), the system calculates i) the first classical variable g in the set of measurement data corresponding to t. x The value divided by the total number of times the control qubit is measured in the X basis, plus ii)i multiplied by the second classical variable g in the measurement data set corresponding to t. y The value is divided by the total number of times the control qubit is measured in the Y basis. In other words, the system calculates as follows:

[0101]

[0102] And through Estimate g(t). In equation (4), M x This represents the total number of times the control qubits are measured in the X basis in step 212, and M... y This represents the total number of times the control qubits are measured in the Y-base in step 212.

[0103] Since the determined phase function can be a noisy approximation of the exact phase function of the first unitary operator, in some implementations, the system can use the normalization condition ∑ j |a j | 2 =1 is applied to the amplitude associated with the corresponding eigenstate to renormalize the weights in the phase function.

[0104] Error mitigation from validation comes at the cost of increasing the number of samples required to estimate the phase function g(t). Estimate the phase function to an accuracy ∈ requires estimating the determined (noisy) approximation of the exact phase function to an accuracy p. ne ∈, where p ne This represents the probability that no error occurs. To obtain the above g in equation (4)... x and g y The average is calculated over a set of M experimental outputs (which can take values ​​of -1, 0, or 1). For the i-th experiment, and Then the noisy approximation g of the exact phase function noise Depend on Given that each experiment is independent and identically distributed, the variance of these probability estimates is... Therefore, estimate g noise to variance The requirements can be made by limited.

[0105] In some implementations, to mitigate control noise, such as the effect of amplitude-damped channels, the initial state of the control qubit can be flipped from state 0 to state 1 for 50% of the experiments. This can be compiled into the final pre-rotation without increasing the overall sampling cost of the experiment (for the same accuracy, only half that number of samples are needed in each pre-rotation setting). Similar biases from other channels can be addressed by compiling the initial control qubit state... Rotate, and then uncompile in the final pre-rotation to compensate.

[0106] The technique described above with reference to example procedure 200 can also be applied to mitigate errors in other settings (e.g., settings other than phase estimation). For example, this technique can be applied to quantum error mitigation methods in quantum computing systems. In such a method, the system generates a set of classical control data including at least one classical variable by repeating multiple iterations. In each iteration, the system i) prepares a system register including multiple qubits in an initial quantum state, ii) applies a unitary operator to the system register in the initial quantum state to obtain a first evolved quantum state, wherein the unitary operator depends on the target quantum computation, iii) performs the target quantum computation on the system register in the first evolved quantum state conditioned on the state of the control qubit initialized in a superposition state to obtain a second evolved quantum state, iv) applies the inverse of the unitary operator to the system register in the second evolved quantum state to obtain a third evolved quantum state, v) measures a) each qubit in the system register in the third evolved quantum state to determine the output quantum state of the system register, and b) the control qubit to determine the output quantum state of the control qubit, and vi) updates at least one classical variable using the output quantum state of the control qubit, unless the output quantum state of the system register indicates that the system register was not in the initial quantum state before the measurement. After multiple iterations, the system changes the operating parameters of the quantum computing system or adjusts the measured values ​​based on the set of classical control data, for example, to address detected errors through analysis of the control data.

[0107] Figure 3 This is a circuit diagram 300 of an example quantum circuit for quantum phase estimation used in single-control verification. In the example quantum circuit, the two upper horizontal lines represent a system register with N qubits. The lower horizontal line 302 represents the control qubit. The system register is prepared in state 304, i.e., each qubit in the system register is prepared in state 0. The control qubit 302 is prepared in state 306. The preparatory unitary operator 308 is applied to the system register. Conditioned by the state of the control qubit 302, the unitary operator (or the time evolution operator generated by the Hamiltonian) 310 is applied to the system register. The inverse of the preparatory unitary operator 312 is applied to the system register.

[0108] The circuit output shows the ideal circuit output, for example, the output corresponding to the error-free implementation of the pre-unitary operator and the time evolution operator. That is, after applying the inverse of the pre-unitary operator, the system register is shown to be in state 314 (zero). The control qubit 302 can be measured to determine the phase of the unitary operator 310.

[0109] Example procedure for verified controlless phase estimation for programmable hardware

[0110] Allowing time evolution to be conditioned on the control of qubits does not increase the asymptotic cost of the circuit, but it does require additional overhead. Figure 4 This is a flowchart 400 of an example process for a controlless verification of quantum phase estimation of an N-qubit unitary operator U on a quantum state |ψ>. For convenience, process 400 is described as being performed by a system of one or more classical computing devices and quantum computing devices located at one or more locations. For example, a system appropriately programmed according to this specification... Figure 1 System 100 can execute process 400.

[0111] As per the above reference Figure 2 As described in Example Procedure 200, Example Procedure 400 is described with reference to performing a quantum phase estimate for verification of an N-qubit unitary operator U in a Hermitian operator graph. However, this is a non-limiting example, and Example Procedure 400 can also be applied to perform a quantum phase estimate for verification of an N-qubit unitary operator U in a unitary graph.

[0112] The system generates one or more sets of measurement data (step 402) and initializes the first and second classical variables (step 404). Steps 402 and 404 of example process 400 are similar to steps 202 and 204 of example process 200. Therefore, for the sake of brevity, the details will not be repeated.

[0113] As described in step 202 of the above-referenced example process 200, generating each set of measurement data involves repeatedly performing the phase estimation experiment. To perform one repetition of the phase estimation experiment, the system implements a quantum circuit as follows, for example... Figure 5 The quantum circuit shown.

[0114] The system prepares a register of N qubits in the initial quantum state (step 406). Preparing the system register in the quantum state includes preparing N-1 qubits in the target computation ground state (e.g., zero state) and the Nth qubit in the superposition state, for example, by applying a Hadamard gate in an additive state. The register is then in... In the state, among which This represents the ground state where the target qubit is in the |1> state and all other qubits are in the |0> state.

[0115] The system applies an N-qubit pre-unitary operator U to the register in the initial quantum state. p This is to obtain a superposition state (step 408). The obtained superposition state is the quantum state |ψ> and the eigenstate |E> of the Hamiltonian H. j The superposition of >, for example N-qubit pre-unitary operator U p Execute mapping Among them |Ψ s >=|ψ>|1>and|Ψ r >=|ψ>|0>, where |ψ> is as defined in equation (2) above. After steps 406 and 408, the register is in state As mentioned above, the specific form of the pre-unitary operator depends on the unitary operator / Hamilton on which quantum phase estimation is being performed, and the quantum hardware used to perform the quantum phase estimation. For example, for the free fermion Hamiltonian, the pre-unitary operator U... p This can be represented by a Givens rotary circuit, for example...

[0116]

[0117] in in c j This represents the production and annihilation operators of fermions at position j. It is a system parameter, N f This represents the number of qubits, and CNOT j-1,j This represents the CNOT gate acting on qubit j-1,j.

[0118] The system applies the unitary operator U multiple times to the register in the superposition state to generate an evolving superposition state (step 410). Step 410 is similar to step 208 of example process 200, except that the application of the unitary operator is not conditional on the state of the control qubit. Therefore, for the sake of brevity, further details will not be repeated.

[0119] The system applies the inverse of the N-bit pre-unitary operator to a register in an evolving superposition state and measures each of the N-1 qubits in the register to determine the output state of the N-1 qubits (step 412). Step 412 is similar to step 210 of example process 200, and further details will not be repeated.

[0120] The system measures the Nth qubit to obtain the corresponding measurement result m∈0,1 (step 414). Measuring the Nth qubit to obtain the corresponding measurement result includes rotating the Nth qubit into the X basis and measuring the qubits in the X basis, or rotating the Nth qubit into the Y basis and measuring the qubits in the Y basis.

[0121] In step 404, the system performs post-selection on the target computational ground state for the N-1 qubits in the preparatory register (step 416). Step 412 is similar to step 210 of example procedure 200. That is, in order to perform post-selection on the target computational ground state, the system determines whether the output quantum states of the N-1 qubits indicate that each of the N-1 qubits was in the target computational ground state before measurement. In response to determining that the output quantum states of the N-1 qubits do indeed indicate that each of the N-1 qubits was in the target computational ground state before measurement, the system increments the corresponding classical initial variable by (-1). m For example, if the Nth qubit is rotated into the X basis and measured in the X basis to obtain the measurement result m, the system will use the first classical initial variable g. x Increment (-1) m Similarly, if the Nth qubit is rotated into the Y basis and measured in the Y basis to obtain the measurement result m, the system will use the second classical initial variable g. y Increment (-1) m In response to the determination that the output quantum state of the N-1 qubits does not indicate that each of the N-1 qubits was in the target computation ground state before the measurement, the system discards the current repetition of the phase estimation experiment and performs the next repetition of the phase estimation experiment (or alternatively proceeds to step 418). For the sake of brevity, further details will not be repeated.

[0122] The system estimates one or more phases of the unitary operator U based on one or more sets of generated measurement data (step 418). Step 418 of example procedure 400 is similar to step 216 of example procedure 200. Therefore, for the sake of brevity, the details will not be repeated.

[0123] The technique described above with reference to example process 400 can also be applied to mitigate errors in other settings, such as those other than phase estimation. For example, this technique can be applied to quantum error mitigation methods in quantum computing systems. In such a method, the system generates a set of classical control data, including at least one classical variable, by repeating multiple iterations. In each iteration, the system i) prepares a system register including multiple qubits in an initial quantum state, ii) applies a unitary operator to the system register in the initial quantum state to obtain a first evolved quantum state, where the unitary operator depends on the target quantum computation, iii) performs the target quantum computation on the system register in the first evolved quantum state to obtain a second evolved quantum state, iv) applies the inverse of the unitary operator to the system register in the second evolved quantum state and measures each qubit in the system register to determine the output quantum state of the system register, and v) after applying the inverse of the unitary operator, updates at least one classical variable using the output quantum state of the system register, unless the output quantum state indicates that the system register was not in the initial quantum state before the measurement. After completing multiple iterations, the system changes the operating parameters of the quantum computing system or adjusts the measured values ​​based on this set of classical control data, for example, to address detected errors through analysis of the control data.

[0124] Figure 5 This is a circuit diagram 500 of an example quantum circuit for controlless verification of quantum phase estimation. In the example quantum circuit, horizontal lines represent a register of N qubits. The top horizontal line represents the Nth qubit. The middle and bottom horizontal lines represent N-1 qubits. Each of the N-1 qubits is prepared in the zero state 502. The Nth qubit is prepared in the additive state 504. The pre-unitary operator 506 is applied to the register. The unitary operator (or the time evolution operator generated by the Hamiltonian) 508 is applied to the register. The inverse of the pre-unitary operator 510 is applied to the register. The circuit output shows the ideal circuit output, for example, the output corresponding to the error-free implementation of the pre-unitary operator and the time evolution operator. That is, after applying the inverse of the pre-unitary operator, the N-1 qubits are shown in the zero state 512. The Nth qubit can be measured to determine the phase of the unitary operator 508.

[0125] Programming the hardware: An example process for verifying the expected value estimate

[0126] In some implementations, the estimation of the eigenvalues ​​of the Hermitian operator H may not be of interest; rather, its expected value in a specific quantum state |ψ> may be of interest. <h>For example, in a variational quantum eigenfunction solver (VQE), the preparatory state... in This represents a set of classic input parameters. Then, the expected value is measured. Measurement results in the classic outer ring The optimization (e.g., minimization) uses classical optimization routines, such as gradient descent, to iteratively adjust the parameters. The value of the optimized state. Provides an approximation of the true ground state |E0>. Typically, this is estimated via partial state tomography. However, the preparation of the yu Noise in the middle leads to Perform full-error state preparation and tomographic imaging, and propagate the preparation error directly to the final estimation error.

[0127] The techniques described in example processes 200 and 400 provide improvements over existing techniques and can alleviate the burden of preparation. p The error in the process. Therefore, because the amplitude and eigenvalue data obtained from example process 200 (or example process 400) allow for the reconstruction of the expected value.

[0128]

[0129] The validated phase estimate can be used as a tool for mitigating intra-VQE errors in state tomography. Combining the currently described technique with this variant routine can also mitigate various sources of control errors that the currently described technique may not be able to correct.

[0130] To determine the expectation value of the Hamiltonian above the quantum state |ψ>, the system divides the Hamiltonian into a linear combination of diagonalizable sub-Hamiltonians, for example, H=∑ b H b In some implementations, the system can select one or more sub-Hamiltons to be fast-travelable; for example, a circuit implementation of a time evolution operator generated from Hamiltonians has Hamiltonians of constant depth over time t. Selecting fast-travelable sub-Hamiltons can further mitigate errors. While fast-travel is impossible for arbitrary H, it is always possible to decompose any sparse, row-computable H into a linear combination of many fast-travelable Hamiltonians. For example, a Pauli operator with N qubits. This forms the basis for all N qubit operators in the group, and they themselves are fast-forwardable.

[0131] Then, the system processes the corresponding sub-Hamiltonian H. b Each generated time evolution operator performs steps 202-214 (or steps 402-416) to determine the corresponding expected value of the sub-Hamilton. In some implementations, the system can perform these steps in parallel for the corresponding sub-Hamilton H. b Each generated time evolution operator executes steps 202-214 (or steps 402-416). The system can then sum the expected values ​​of the determined sub-Hamiltons to obtain the expected value of the Hamiltonian, for example... <h>=∑ b <H b >. See below for reference. Figure 6 The figure illustrates and describes an example process for determining the expected value of the Hamiltonian on a quantum state.

[0132] In some implementations, instead of analyzing the estimated phase function for different t values, as described above with reference to step 216, the system can determine the expected value of the Hamiltonian on the quantum state |ψ> by extending the following:

[0133]

[0134] To obtain

[0135]

[0136] And for each short time t, Im(g(t)) is estimated. In these implementations, g(0) = ∑ j |a j | 2 Normalization conditions are used to perform normalization to obtain

[0137]

[0138] Figure 6 It is used for the quantum state |ψ>=U p |0> Upper Hamiltonian Figure 600 shows an example protocol for verifying the expected value of the quantum computer. Box 602 represents the circuit to be executed or the data to be extracted from the quantum computer. Boxes 604, 606, and 608 represent the signal details to be estimated via classical post-processing.

[0139] The protocol proceeds as follows: the complex Hamiltonian H is divided into multiple fast-forwardable addends Ha. s (Box 604). The spectral function g(t) of |ψ> over time evolution for each segment is obtained via a single-control verified quantum phase estimate (although a controlless verification quantum phase estimate can also be used) (Box 602). The resulting data are eigenvalues ​​whose frequencies are equal to the corresponding factors. The weighted sum of the oscillations (box 610) can be decomposed by various classical post-processing techniques, depending on the type H chosen. s To obtain an approximation of the expected value <H s The type of classic post-processing technique can depend on the selected H... s The type (box 608). Regardless of the method used, the expected value will be rescaled to comply with the normalization condition. Because the expected value is linear, the obtained validation estimate can be... <H s Sum them together to give <h>The validation estimate (box 606).

[0140] The digital and / or quantum themes and implementations of digital functional operations and quantum operations described in this specification can be implemented in digital electronic circuits, suitable quantum circuits, or more generally, in quantum computing systems, in tangibly embodied digital and / or quantum computer software or firmware, in digital and / or quantum computer hardware, including the structures disclosed in this specification and their structural equivalents, or in combinations of one or more of them. The term "quantum computing system" can include, but is not limited to, a quantum computer, a quantum information processing system, a quantum cryptography system, or a quantum simulator.

[0141] The implementation of the digital and / or quantum themes described in this specification can be implemented as one or more digital and / or quantum computer programs, i.e., one or more modules of digital and / or quantum computer program instructions encoded on a tangible, non-transitory storage medium, for execution by a data processing device or for controlling the operation of a data processing device. The digital and / or quantum computer storage medium can be a machine-readable storage device, a machine-readable storage substrate, a random or serial access storage device, one or more qubits, or a combination of one or more of these. Alternatively or additionally, the program instructions can be encoded on artificially generated propagation signals capable of encoding digital and / or quantum information, such as machine-generated electrical, optical, or electromagnetic signals, which are generated to encode digital and / or quantum information for transmission to a suitable receiver device for execution by the data processing device.

[0142] The terms quantum information and quantum data refer to information or data carried, stored, or preserved by quantum systems, the smallest non-trivial system being the qubit, i.e., the system that defines a unit of quantum information. It should be understood that the term "qubit" encompasses all quantum systems that can be appropriately approximated as a second-order system in the corresponding context. Such quantum systems can include multi-order systems, for example, having two or more orders. For example, such systems can include atoms, electrons, photons, ions, or superconducting qubits. In many implementations, the computational ground state is identified by the ground state and the first excited state; however, it should be understood that other settings are possible where the computational state is identified by a higher-order excited state. The term "data processing device" refers to digital and / or quantum data processing hardware and encompasses all kinds of devices, apparatuses, and machines for processing digital and / or quantum data, including, for example, programmable digital processors, programmable quantum processors, digital computers, quantum computers, multiple digital and quantum processors or computers, and combinations thereof. The device can also be or further include special-purpose logic circuitry, such as FPGAs (Field-Programmable Gate Arrays), ASICs (Application-Specific Integrated Circuits), or quantum simulators, i.e., quantum data processing devices designed to simulate or generate information about a particular quantum system. Specifically, a quantum simulator is a specialized quantum computer that does not have the capability to perform general-purpose quantum computing. In addition to the hardware, the device may optionally include code that creates an execution environment for digital and / or quantum computer programs, such as code that constitutes processor firmware, protocol stack, database management system, operating system, or a combination of one or more of them.

[0143] Digital computer programs, also referred to or described as programs, software, software applications, modules, software modules, scripts, or code, can be written in any form of programming language, including compiled or interpreted languages, or declarative or procedural languages, and can be deployed in any form, including as standalone programs or as modules, components, subroutines, or other units suitable for digital computing environments. Quantum computer programs, also referred to or described as programs, software, software applications, modules, software modules, scripts, or code, can be written in any form of programming language, including compiled or interpreted languages, or declarative or procedural languages, and translated into a suitable quantum programming language, or can be written in a quantum programming language such as QCL or Quipper.

[0144] Digital and / or quantum computer programs may, but do not need to, correspond to files in a file system. Programs may be stored as a portion of a file containing other programs or data, for example, one or more scripts stored in a markup language document, a single file dedicated to the program in question, or multiple collaborative files, such as a file storing one or more modules, subroutines, or code sections. Digital and / or quantum computer programs can be deployed to execute on a single digital or quantum computer, or on multiple digital and / or quantum computers located in one location or distributed across multiple locations and interconnected via digital and / or quantum data communication networks. A quantum data communication network is understood as a network that can transmit quantum data using quantum systems (e.g., qubits). Typically, digital data communication networks cannot transmit quantum data; however, quantum data communication networks can transmit both quantum and digital data.

[0145] The processes and logic flows described in this specification can be executed by one or more programmable digital and / or quantum computers, operating where appropriate with one or more digital and / or quantum processors, to execute one or more digital and / or quantum computer programs to perform functions by manipulating input digital and quantum data and generating outputs. The processes and logic flows can also be executed by dedicated logic circuits, and the device can be implemented as dedicated logic circuits, such as FPGAs or ASICs or quantum simulators, or executed / implemented by a combination of dedicated logic circuits or quantum simulators and one or more programmable digital and / or quantum computers.

[0146] For a system of one or more digital and / or quantum computers, being "configured" to perform a specific operation or action means that the system has software, firmware, hardware, or a combination thereof installed on it, which, in operation, causes the system to perform those operations or actions. One or more digital and / or quantum computer programs being configured to perform a specific operation or action means that one or more programs include instructions that, when executed by a digital and / or quantum data processing device, cause that device to perform an operation or action. A quantum computer can receive instructions from a digital computer, which, when executed by a quantum computing device, cause that device to perform an operation or action.

[0147] Digital and / or quantum computers suitable for executing digital and / or quantum computer programs can be based on general-purpose or special-purpose digital and / or quantum processors or both, or any other type of central digital and / or quantum processing unit. Typically, the central digital and / or quantum processing unit receives instructions and digital and / or quantum data from read-only memory, random access memory, or a quantum system suitable for transmitting quantum data (e.g., photons), or combinations thereof.

[0148] The fundamental components of a digital and / or quantum computer are a central processing unit (CPU) for implementing or executing instructions and one or more storage devices for storing instructions and digital and / or quantum data. The CPU and memory may be supplemented or incorporated therein by dedicated logic circuitry or a quantum simulator. Typically, a digital and / or quantum computer will also include, or be operatively coupled to, one or more mass storage devices for storing digital and / or quantum data, to receive digital and / or quantum data from or transfer digital and / or quantum data to, or both, such mass storage devices as magnetic disks, magneto-optical disks, optical disks, or quantum systems suitable for storing quantum information. However, a digital and / or quantum computer does not necessarily have such devices.

[0149] Digital and / or quantum computer-readable media suitable for storing digital and / or quantum computer program instructions and digital and / or quantum data include all forms of non-volatile digital and / or quantum memories, media, and storage devices, including, for example, semiconductor storage devices such as EPROM, EEPROM, and flash memory devices; magnetic disks such as internal hard disks or removable disks; magneto-optical disks; CD-ROMs and DVD-ROMs; and quantum systems such as trapped atoms or electrons. It should be understood that quantum memories are devices capable of storing quantum data with high fidelity and efficiency for extended periods, such as light used for transmission at a light-matter interface and matter with quantum characteristics such as superposition or quantum coherence used for storing and preserving quantum data.

[0150] The control of the various systems described in this specification, or a portion thereof, may be implemented in a digital and / or quantum computer program product comprising instructions stored on one or more non-transitory machine-readable storage media and executable on one or more digital and / or quantum processing devices. The systems described in this specification, or a portion thereof, may each be implemented as an apparatus, method, or system, which may include one or more digital and / or quantum processing devices and a memory storing executable instructions to perform the operations described in this specification.

[0151] While this specification contains many specific implementation details, these should not be construed as limiting the scope of the claims, but rather as descriptions of features specific to particular implementations. Some features described in this specification within the context of independent implementations may also be implemented in combination within a single implementation. Conversely, various features described in the context of a single implementation may also be implemented individually in multiple implementations or in any suitable sub-combination. Furthermore, although features may be described above as functioning in certain combinations, and even initially claimed in this way, one or more features from a claimed combination may, in some cases, be removed from that combination, and the claimed combination may be for sub-combinations or variations thereof.

[0152] Similarly, although the operations are described in a specific order in the accompanying drawings, this should not be construed as requiring these operations to be performed in the specific order or sequence shown, or requiring all illustrated operations to be performed to obtain the desired result. In some cases, multitasking and parallel processing may be advantageous. Furthermore, the separation of various system modules and components in the above implementations should not be interpreted as requiring such separation in all implementations, and it should be understood that the described program components and systems can generally be integrated together in a single software product or packaged into multiple software products.

[0153] Specific implementations of the subject matter have been described; other implementations fall within the scope of the following claims. For example, the actions described in the claims can be performed in different orders and still achieve the desired result. As an example, the processes depicted in the figures do not necessarily require the specific or sequential order shown to achieve the desired result. In some cases, multitasking and parallel processing may be advantageous.< / h> < / h> < / h>

Claims

1. A method for quantum states A method for quantum phase estimation of the first unitary operator of a qubit, the method being executed by a system comprising one or more classical processors and quantum computing hardware communicating with the one or more classical processors, the method comprising: Initialize (204) the first and second classical variables; Generate (202) a set of measurement data, including repeatedly performing a phase estimation experiment, wherein in each repetition, the current value of the classical variable is incremented based on the measurement effect of the phase estimation experiment, and performing one repetition of the phase estimation experiment includes: Prepare (206) a system register for quantum computing hardware, the system register including the quantum state. Each qubit in the system register is prepared by applying a second unitary operator to the system register, wherein each qubit in the system register is initialized in the target computational ground state before applying the second unitary operator. The first unitary operator (310) is applied multiple times to the system register (208) in the quantum state by the quantum computing hardware, conditioned on the state of the control qubit (302), to generate an evolving quantum state, wherein the control qubit is initialized in a superposition state before the first unitary operator is applied multiple times; The inverse (312) of the second unitary operator is applied to the system register in the evolved quantum state of (210) by quantum computing hardware, and each qubit in the system register is measured to determine the output quantum state of the system register; The control qubit (212) is measured in the X-based or Y-based system by quantum computing hardware to obtain the corresponding measurement result. ;as well as Post-selection (214) of the target computation ground state includes: In response to determining that the output quantum state indicates each qubit is in the target computational ground state prior to measurement, if the control qubit is measured in the X basis, the first classical variable is incremented by the one or more classical processors. Alternatively, if the control qubit is measured in the Y-base, the second classical variable is incremented by the one or more classical processors. as well as In response to the fact that determining the output quantum state does not indicate that each qubit was in the target computation ground state before measurement, the current repetition of the phase estimation experiment is discarded; The one or more classical processors estimate (216) one or more phases of the first unitary operator or other operators based on the set of measurement data, including calculating: i) The final value of the first classical variable in this set of measurement data divided by the total number of times the control qubit is measured in the X basis, plus... ii) Multiply by the final value of the second classical variable in the set of measurement data and divide by the total number of times the control qubit is measured in the Y basis.

2. The method according to claim 1, wherein the method further comprises: Multiple sets of measurement data are generated, each set of measurement data corresponding to a different number of times the first unitary operator is applied to the system register in the quantum state; as well as Estimate one or more phases, eigenstate amplitudes, or desired values ​​of the first unitary operator or other operators based on the multiple sets of measurement data.

3. The method according to claim 1 or 2, wherein, The first unitary operator includes the following: The time evolution operator for generating qubit Hamiltonians.

4. The method of claim 3, wherein, Applying the first unitary operator multiple times to the system register in the quantum state of (208) includes applying the time evolution operator, evaluated at corresponding time steps at intervals of a predetermined length, to the system register in the quantum state.

5. The method of claim 3, wherein the quantum state includes the A linear combination of one or more eigenstates of a qubit Hamiltonian, wherein each eigenstate in the linear combination includes an associated amplitude.

6. The method according to claim 1 or 2, wherein estimating (216) one or more phases of the first unitary operator or other operator based on one or more sets of measurement data comprises: For each of the set or more sets of measurement data, the phase function of the first unitary operator or other operator is estimated based on that set of measurement data; as well as Based on one or more estimated phase functions, the one or more phases of the first unitary operator or other operators are calculated.

7. The method according to claim 1 or 2, wherein, Measuring the control qubit (212) to obtain the corresponding measurement result m includes: The control qubit is rotated into the X-base, and the qubit is measured in the X-base; or The control qubit is rotated into the Y-base and the qubit is measured in the Y-base.

8. The method of claim 6, wherein the estimated phase function comprises a noisy approximation of the phase function of the first unitary operator, and wherein the method further comprises applying a normalization condition to the square of the amplitude associated with the corresponding eigenstate.

9. The method of claim 6, wherein calculating the one or more phases of the first unitary operator or other operator based on the estimated one or more phase functions comprises applying classical signal processing to the one or more phase functions.

10. The method of claim 9, wherein calculating (212) one or more phases of the first unitary operator or other operator based on the estimated one or more phase functions comprises: The estimate corresponds to the The eigenvalues ​​and amplitudes of one or more eigenstates of a qubit Hamiltonian.

11. The method of claim 10, wherein... A qubit Hamiltonian comprises a linear combination of diagonalizable sub-Hamiltonians, and the method further includes: For each sub-Hamiltonian, a quantum phase estimate of the time evolution operator generated by that sub-Hamiltonian is performed to determine the expectation value of that sub-Hamiltonian, wherein the expectation value includes the sum of estimated eigenvalues ​​weighted by the estimated amplitude; Summing the expected values ​​of the determined sub-Hamiltonians yields the... The expected value of the qubit Hamiltonian.

12. The method of claim 11, wherein for each sub-Hamiltonian, performing quantum phase estimation of the time evolution operator generated by that sub-Hamiltonian comprises performing quantum phase estimation of the time evolution operator generated by each sub-Hamiltonian in parallel.

13. The method of claim 10, wherein the method further comprises: Perform quantum phase estimation of the time evolution operator generated by the Hamiltonian to determine the expectation value of the Hamiltonian, wherein the expectation value includes the sum of estimated eigenvalues ​​weighted by the estimated amplitude.

14. The method of claim 1 or 2, wherein measuring each qubit in the system register to determine the output quantum state of the system register comprises measuring each qubit in the system register in the X-base or the Y-base.

15. A method for quantum states A device for quantum phase estimation of the first unitary operator of a qubit includes: One or more classic processors; and Quantum computing hardware that communicates data with one or more classical processors, wherein the quantum computing hardware includes: One or more system registers, each system register including one or more qubits. One or more control qubits, and Multiple control devices are configured to operate the one or more system registers and the one or more control qubits; The apparatus is configured to perform the method of any one of claims 1 to 14.

16. A method for quantum states A method for estimating the quantum phase of the first unitary operator of a qubit, comprising: Initialize the first and second classical variables; Generate a set of measurement data, including repeatedly performing a phase estimation experiment, wherein in each repetition, the current value of the classical variable is incremented based on the measurement results of the phase estimation experiment, and performing one repetition of the phase estimation experiment includes: Preparation includes being in the initial quantum state A register of 1 qubits, including one prepared in the ground state for the target computation. The qubit and the qubit in a superposition state One quantum bit; Will The second unitary operator of the qubit is applied to the register in the initial quantum state to obtain a superposition state, which includes the superposition of the quantum state and the eigenstate of the first unitary operator; The first unitary operator is applied multiple times to the register in the superposition state to generate an evolving superposition state; The inverse of the second unitary operator is applied to the register in the superposition state of evolution, and the value in the register is measured. Each of the qubits is used to determine the The output state of each qubit; Measure the first Each quantum bit is used to obtain the corresponding measurement result. ;as well as Post-selection is performed on the target computational ground state, including in response to determining the The output state of each qubit indicates the Each of the qubits is in the target computation ground state before measurement, incrementing either the first classical variable or the second classical variable. ;as well as Based on this set of measurement data, estimate one or more phases, eigenstate amplitudes, or desired values ​​of the first unitary operator.

17. The method of claim 16, wherein the method further comprises: Multiple sets of measurement data are generated, each set of measurement data corresponding to a different number of times the first unitary operator is applied to the register in the quantum state; as well as Based on the multiple sets of measurement data, estimate one or more phases, eigenstate amplitudes, or expected values ​​of the first unitary operator.

18. The method according to claim 16 or 17, wherein the first unitary operator comprises... The time evolution operator for generating qubit Hamiltonians.

19. The method of claim 18, wherein applying the first unitary operator multiple times to the register in the quantum state comprises applying the time evolution operator evaluated at corresponding time steps at intervals of a predetermined length to the register in the quantum state.

20. The method of claim 18, wherein the quantum state includes the A linear combination of one or more eigenstates of a qubit Hamiltonian, wherein each eigenstate in the linear combination includes an associated amplitude.

21. The method of claim 16 or 17, wherein estimating one or more phases, eigenstate amplitudes, or desired values ​​of the first unitary operator based on one or more sets of measurement data comprises: For each of the one or more sets of measurement data, estimate the phase function of the first unitary operator based on that set of measurement data; and Based on the estimated one or more phase functions, calculate the one or more phases, eigenstate amplitudes, or expected values ​​of the first unitary operator.

22. The method according to claim 16 or 17, wherein the measurement of the first To obtain the corresponding measurement result m using qubits, the following are included: The first A qubit is rotated into the X-base, and the qubit is measured in the X-base; or The first A qubit is rotated into the Y-base and the qubit is measured in the Y-base.

23. The method according to claim 22, wherein, Increment either the first classical variable or the second classical variable. Includes, in response to measuring the first in the X-base The first classical variable is incremented by one qubit. Or in response to measuring the first in the Y-base The second classical variable is incremented by one qubit. .

24. The method of claim 23, wherein estimating the phase function of the first unitary operator based on the set of measurement data comprises calculating: i) The final value of the first classical variable in this set of measurement data divided by the value of the first classical variable measured in the X basis. The total number of times per qubit, plus ii) Multiply by the final value of the second classical variable in the set of measurement data and divide by the value measured in the Y-base. The total number of times per qubit.

25. The method of claim 21, wherein the estimated phase function comprises a noisy approximation of the phase function of the first unitary operator, and wherein the method further comprises applying a normalization condition to the square of the amplitude associated with the corresponding eigenstate.

26. The method of claim 21, wherein calculating the one or more phases, eigenstate amplitudes, or desired values ​​of the first unitary operator based on the estimated one or more phase functions comprises applying classical signal processing to the one or more phase functions.

27. The method of claim 26, wherein calculating one or more phases, eigenstate amplitudes, or expected values ​​of the first unitary operator based on the estimated one or more phase functions includes estimating the values ​​corresponding to the... The eigenvalues ​​and amplitudes of one or more eigenstates of a qubit Hamiltonian.

28. The method of claim 27, wherein... A qubit Hamiltonian comprises a linear combination of diagonalizable sub-Hamiltonians, and the method further includes: For each sub-Hamiltonian, a quantum phase estimate of the time evolution operator generated by that sub-Hamiltonian is performed to determine the expectation value of that sub-Hamiltonian, wherein the expectation value includes the sum of estimated eigenvalues ​​weighted by the estimated amplitude; Summing the expected values ​​of the determined sub-Hamiltonians yields the... The expected value of the qubit Hamiltonian.

29. The method of claim 28, wherein for each sub-Hamiltonian, performing quantum phase estimation of the time evolution operator generated by that sub-Hamiltonian comprises: Quantum phase estimation of time evolution operators generated by each sub-Hamiltonian is performed independently and in parallel.

30. The method of claim 27, wherein the method further comprises: A quantum phase estimate of the time evolution operator generated by the Hamiltonian is performed to determine the expectation value of the Hamiltonian, wherein the expectation value includes the sum of estimated eigenvalues ​​weighted by the estimated amplitude.

31. The method of claim 16 or 17, wherein the post-selection of the target calculated ground state comprises: Determine whether the output quantum state indicates that each qubit is in the target computational ground state prior to measurement; In response to determining that the output quantum state indicates that each qubit is not in the target computation ground state before measurement, the current repetition is discarded and the next repetition is performed.

32. The method of claim 16 or 17, wherein measuring each qubit in the register to determine the output quantum state of the register comprises measuring each qubit in the register in an X-based or Y-based manner.

33. A method for quantum states A device for quantum phase estimation of the first unitary operator of a qubit includes: One or more classic processors; and Quantum computing hardware that communicates data with one or more classical processors, wherein the quantum computing hardware includes: One or more qubit registers, each qubit register comprising one or more qubits. Multiple control devices configured to operate the one or more qubit registers; The apparatus is configured to perform the method of any one of claims 16 to 32.

34. A method for mitigating quantum errors in a quantum computing system, the method comprising: A set of classical control data, including at least one classical variable, is generated by repeating the process multiple times, wherein each iteration includes: Prepare a system register that includes multiple qubits in their initial quantum state; The unitary operator is applied to the system register in the initial quantum state to obtain a first evolved quantum state, wherein the unitary operator depends on the target quantum computation; Using the state of the control qubit initialized in the superposition state as a condition, the target quantum computation is performed on the system register in the first evolved quantum state to obtain the second evolved quantum state; The inverse of the unitary operator is applied to the system register in the second evolved quantum state to obtain the third evolved quantum state; and Measure i) each qubit in the system register in the third evolved quantum state to determine the output quantum state of the system register, and ii) the control qubit to determine the output quantum state of the control qubit; At least one classical variable is updated using the output quantum state of the control qubit, unless the output quantum state of the system register indicates that the system register was not in the initial quantum state prior to the measurement; and After completing the multiple iterations, the operating parameters of the quantum computing system are changed or the measured values ​​are adjusted based on the set of classical control data.

35. A device for reducing quantum errors in a quantum computing system, comprising: One or more classic processors; and Quantum computing hardware that communicates data with one or more classical processors, wherein the quantum computing hardware includes: One or more system registers, each system register including one or more qubits. One or more control qubits, and Multiple control devices are configured to operate the one or more system registers and one or more control qubits; The device is configured to perform the method of claim 34.

36. A method for mitigating quantum errors in a quantum computing system, the method comprising: A set of classical control data, including at least one classical variable, is generated by repeating the process multiple times, wherein each iteration includes: Prepare a system register that includes multiple qubits in their initial quantum state; The unitary operator is applied to the system register in the initial quantum state to obtain a first evolved quantum state, wherein the unitary operator depends on the target quantum computation; The target quantum computation is performed on the system register in the first evolved quantum state to obtain the second evolved quantum state; The inverse of the unitary operator is applied to the system register in the second evolved quantum state, and each qubit in the system register is measured to determine the output quantum state of the system register; and After applying the inverse of the unitary operator, at least one classical variable is updated using the output quantum state of the system register, unless the output quantum state indicates that the system register was not in the initial quantum state prior to the measurement; and After completing the multiple iterations, the operating parameters of the quantum computing system are changed or the measured values ​​are adjusted based on the set of classical control data.

37. A device for mitigating quantum errors in a quantum computing system, comprising: One or more classic processors; and Quantum computing hardware that communicates data with one or more classical processors, wherein the quantum computing hardware includes: One or more qubit registers, each qubit register comprising one or more qubits. Multiple control devices configured to operate one or more qubit registers; The device is configured to perform the method of claim 36.