This application claims priority from and the benefit of Korean Patent Applications No. 10-2022-0169867, filed on Dec. 7, 2022, which is hereby incorporated by reference for all purposes as if fully set forth herein.
The present invention relates to a Quantum Fourier Transformation (QFT) circuit and a method of forming the QFT circuit.
The quantum Fourier transform (QFT) is one of the most important quantum operations for numerous quantum computing applications. The major obstacle to the construction of QFT is the large number of elementary gates needed to build the circuit. Of these resources required for the fault-tolerant implementation, the T-count and the T-depth are the major costs. Currently, the best-known representation of n-qubit QFT to the precision Q(s) shows the T-count of Snlog2, (n/ε) and the T-depth of 2nlog2(n/ε), respectively, which are obtained by using Toffoli gates and additions. Here, we present the new construction scheme of QFT which halves both T-count and T-depth of the best-known implementation by using quantum Karnaugh map, a general quantum circuit optimization protocol recently developed by us. It is shown that Toffoli gates that add up the half of T-counts of previous works, become unnecessary and the the number of Rz layers are reduced before applying addition. NISQ experiments of QFT that show the right answer by majority vote on the IonQ device using Amazon Barket are also performed.
Therefore, the technical problem of the present invention is to provide a method of forming the QFT circuit capable of reducing the number of T-count and T-depth.
The technical problem of the present invention is to provide a QFT circuit capable of reducing the number of T-count and T-depth.
The method of forming a Quantum Fourier Transform (QFT) circuit comprises moving Hadamard gate (H-gate) of an even-numbered qubits to the earliest stage where there is no quantum entanglement with other qubits, in a standard n (n is a natural number greater than or equal to 5) qubit QFT, decomposing quantum circuit into a form in which Rz gate is implemented, using quantum addition, and reducing a number of Rz gate layers using ancilla qubits.
The form in which Rz gate is implemented, performs the following.
In a first step, the Hadamard gate is applied to the qo qubit, an Rz(π/4) gate is applied to the q1 qubit, and an Rz(3π/2k+1) gate is applied to qk qubits (k is a natural number greater than or equal to 5 and less than or equal to n−1).
In a second step, a CNOT gate is applied to the q0 gate, based on the q1 qubit after the first step.
In a third step, an Rz(−π/4) gate is applied to the q0 qubit after the second step.
In a fourth step, a CNOT gate is applied to the q0 gate, based on the q1 qubit after the third step.
In a fifth step, a Hadamard gate is applied to the q1 qubit after the fourth step.
In a sixth step, a CNOT gate is applied to q1 to q(n−1) qubits, based on the q0 qubits after fifth step.
In a seventh step, an Rz(−π/2l+1) gate is applied to the q1 gate after the sixth step (1 is a natural number greater than or equal to 5 and less than or equal to n−1).
In an eighth step, a CNOT gate is applied to q1 to q(n−1) qubits, based on the q0 qubits after the seventh step.
In a ninth step, a CNOT gate is applied to q2 to q(n−1) qubits, based on the q1 qubit after the eighth step.
In a tenth step, an Rz(−π/2l) gate is applied to the q1 gate after the ninth step (1 is a natural number greater than or equal to 5 and less than or equal to n−1).
In eleventh step, a CNOT gate is applied to q2 to q(n−1) qubits, based on the q1 qubit after the tenth step.
In twelfth step, an Rz(15π/32) gate is applied to the q0 qubit after the eighth step, and applying an Rz (7π/16) gate to the q1 qubit after the eleventh step, wherein
The quantum circuit with reduced number of Rz gate layers using ancilla qubits, performs the following.
In a first step, a Hadamard gate is applied to the q0 qubit, an Rz(π/4) gate is applied to the q1 qubit, and an Rz(3π/2k+1) gate is applied to qk qubits (k is a natural number greater than or equal to 5 and less than or equal to n−1).
In a second step, a CNOT gate is applied to the q0 gate, based on the q1 qubit after the first step.
In a third step, an Rz(−π/4) gate is applied to the q0 qubit after the second step.
In a fourth step, a CNOT gate is applied to the q0 gate, based on the qu qubit after the third step.
In a fifth step, a Hadamard gate is applied to the qu qubit after the fourth step, and a CNOT gate is applied to a third ancilla qubit |0>, based on the q4 qubits after the first step.
In a sixth step, a CNOT gate is applied to a second ancilla qubit |0>, based on the q3 qubit after the first step.
In a seventh step, a CNOT gate is applied to a first ancilla qubit |0>, based on the q2 qubits after the first step.
In an eighth step, a CNOT gate is applied to the first to third ancilla qubits, based on the q1 qubit after the fifth step.
In a ninth step, a CNOT gate is applied to q2 to q4 qubits, based on the q0 qubits after the fourth step.
In a tenth step, an Rz(−π/8) gate is applied to the q2 qubit, an Rz(−π/16) gate is applied to the q3 qubit, an Rz(−π/32) gate is applied to the qu qubit, an Rz(−π/4) gate is applied to the first ancilla qubit, an Rz(−π/8) gate is applied to the second ancilla qubit, and an Rz(−π/16) gate is applied to the third ancilla qubit.
In an eleventh step, a CNOT gate is applied to the q2, q3, and q4 qubits, based on the q0 qubit.
In a twelfth step, a CNOT gate is applied to the first to third ancilla qubits, based on the q1 qubit.
In a thirteenth step, a CNOT gate is applied to the first ancilla qubit, based on the q2 qubit.
In a fourteenth step, a CNOT gate is applied to the second ancilla qubit, based on the q3 qubit.
In a fifteenth step, a CNOT gate is applied to the third ancilla qubit, based on the q4 qubit.
In a sixteenth step, an Rz(15π/32) gate is applied to the q0 qubit, and applying Rz(7π/16) gate to the q1 qubit.
The n-qubits Quantum Fourier Transform circuit that performs following steps (n is a natural number greater than or equal to 5).
In a first step, a Hadamard gate is applied to q0 qubit, applying an Rz(π/4) gate to the q1 qubit, an Rz(3π/2k+1) gate is applied to qk qubits (k is a natural number greater than or equal to 5 and less than or equal to n−1).
In a second step, a CNOT gate is applied to the q0 gate, based on the q1 qubit after the first step.
In a third step, an Rz(−π/4) gate is applied to the q0 qubit after the second step.
In a fourth step, a CNOT gate is applied to the q0 gate, based on the q1 qubit after the third step.
In a fifth step, a Hadamard gate is applied to the q1 qubit after the fourth step, and a CNOT gate is applied to a third ancilla qubit |0>, based on the q4 qubits after the first step.
In a sixth step, a CNOT gate is applied to a second ancilla qubit |0>, based on the q3 qubit after the first step.
In a seventh step, a CNOT gate is applied to a first ancilla qubit |0>, based on the q2 qubits after the first step.
In an eighth step, a CNOT gate is applied to the first to third ancilla qubits, based on the q1 qubit after the fifth step.
In a ninth step, a CNOT gate is applied to q2 to qu qubits, based on the q0 qubits after the fourth step.
In a tenth step, an Rz(−π/8) gate is applied to the q2 qubit, an Rz(−π/16) gate is applied to the q3 qubit, an Rz(−π/32) gate is applied to the q4 qubit, an Rz(−π/4) gate is applied to the first ancilla qubit, an Rz(−π/8) gate is applied to the second ancilla qubit, and an Rz(−π/16) gate is applied to the third ancilla qubit.
In an eleventh step, a CNOT gate is applied to the q2, q3, and q4 qubits, based on the q0 qubit.
In a twelfth step, a CNOT gate is applied to the first to third ancilla qubits, based on the q1 qubit.
In a thirteenth step, a CNOT gate is applied to the first ancilla qubit, based on the q2 qubit.
In a fourteenth step, a CNOT gate is applied to the second ancilla qubit, based on the q3 qubit.
In a fifteenth step, a CNOT gate is applied to the third ancilla qubit, based on the q4 qubit.
In a sixteenth step, a Hadamard gate is applied to the q2 qubit.
In a seventeenth step, a CNOT gate is applied to the q2 qubit, based on the q3 qubit.
In an eighteenth step, an Rz(−π/4) gate is applied to the q2 qubit.
In a nineteenth step, a CNOT gate is applied to the q2 qubit, based on the q3 qubit.
In a twentieth step, a Hadamard gate is applied to the q3 qubit.
In a twenty first step, a CNOT gate is applied to the first ancilla qubit, based on the q4 qubit.
In a twenty second step, a CNOT gate is applied to the first ancilla qubit, based on the q3 qubit.
In a twenty third step, a CNOT gate is applied to the q4 qubit, based on the q2 qubit.
In a twenty fourth step, an Rz(−π/8) gate is applied to the q4 qubit, and an Rz(−π/4) gate is applied to the first ancilla qubit.
In a twenty fifth step, a CNOT gate is applied to the q4 qubit, based on the q2 qubit.
In a twenty sixth step, a CNOT gate is applied to the first ancilla qubit, based on the q3 qubit.
In a twenty seventh step, a CNOT gate is applied to the first ancilla qubit, based on the q4 qubit.
In a twenty eighth step, an Rz(15π/32) gate is applied to the q0 qubit, an Rz(7π/16) gate is applied to the qu qubit, an Rz(3π/8) gate is applied to the q2 qubit, an Rz(π/4) gate is applied to the q3 qubit, and a Hadamard gate is applied to the q4 qubit.
In a twenty ninth step, the q1 qubit and the q3 qubit are swapped.
In a thirtieth step, q0 and q4 qubits are swapped.
In the above,
According to the QFT circuit and the method of forming the QFT circuit, T-count and T-depth can be reduced.
The accompanying drawings, which are included to provide a further understanding of the invention and are incorporated in and constitute a part of this specification, illustrate embodiments of the invention, and together with the description serve to explain the principles of the invention.
The present invention is described more fully hereinafter with reference to the accompanying drawings, in which example embodiments of the present invention are shown. The present invention may, however, be embodied in many different forms and should not be construed as limited to the example embodiments set forth herein. Rather, these example embodiments are provided so that this disclosure will be thorough and complete, and will fully convey the scope of the present invention to those skilled in the art. In the drawings, the sizes and relative sizes of layers and regions may be exaggerated for clarity.
It will be understood that, although the terms first, second, etc. may be used herein to describe various elements, these elements should not be limited by these terms. These terms are only used to distinguish one element from another element. For example, a first element discussed below could be termed a second element, and similarly, a second element may also be termed a first element, without departing from the teachings of the present invention.
The terminology used herein is for the purpose of describing particular example embodiments only and is not intended to be limiting of the present invention. As used herein, the singular forms “a,” “an” and “the” are intended to include the plural forms as well, unless the context clearly indicates otherwise. It will be further understood that the terms “comprises” and/or “comprising,” when used in this specification, specify the presence of stated features, integers, steps, operations, elements, components, and/or groups thereof but do not preclude the presence or addition of one or more other features, integers, steps, operations, elements, components, and/or groups thereof.
Unless otherwise defined, all terms (including technical and scientific terms) used herein have the same meaning as commonly understood by one of ordinary skill in the art to which this invention belongs.
It will be further understood that terms, such as those defined in commonly used dictionaries, should be interpreted as having a meaning that is consistent with their meaning in the context of the relevant art and will not be interpreted in an idealized or overly formal sense unless expressly so defined herein.
Hereinafter, exemplary embodiments of the present invention will be described in detail with reference to the accompanying drawings.
The quantum Fourier transform (QFT) is perhaps the most versatile component of quantum algorithms. The QFT is the key ingredient of quantum algorithms such as Shor's factoring algorithm, quantum amplitude estimation2 for Monte Carlo simulation and partial differential equation solver, for solving linear systems of equations, securities, to name a few. Therefore, reducing the cost of the QFT would be a pivotal task for the efficiency of many quantum algorithms.
Most quantum algorithms including QFT are implemented by quantum circuits. To carry out practical quantum algorithms, it is desirable that quantum circuits be implemented not only by universal but also by fault-tolerant quantum gates. The Clifford gates can be implemented fault-tolerantly at a low cost but they are not universal. Therefore non-Clifford gates are also required in addition to the Clifford gates to make the quantum circuits universal as well as fault-tolerant. Among the non-Clifford gates, the T gate (See the following Expression 1) is generally selected for universality.
As a result, The Clifford+T gate set is used as the standard elementary gate set. Unfortunately, in the case of the T gate, it is impossible to implement it in a fault-tolerant and transversal manner in contrast to the case of Clifford gates. To implement T gate fault-tolerantly, relatively expensive methods like state distillation are needed. Considering this, for the fault-tolerant quantum computing using Clifford+T gate set, the number of T gates (T-count) and the depth of T gates (T-depth) are regarded as the major costs of quantum circuits.
The standard n-qubit QFT circuit consists of n Hadamard (H) gates, n(n−1)/2 controlled-phase (C(Rn)) gates (See the following Expression 2), and [n/2] swap gates (See
A swap gate can be synthesized using three controlled-not (CNOT) gates. For the C(Rx) gate, there are many proposed methods to decompose it in the previous studies. In general, the complete synthesis of a C(Rn) gate requires Rn gates (equivalent to the Rz gate up to the global phase) [See the following Exression3 and Expression 4].
In general, complete decomposition of a general Rz gate into the standard elementary gate set is not possible. Therefore, for general Rz gate execution, gate synthesis up to the precision required for the executed algorithm is used, where the precision is defined as the spectral norm. To synthesize a general R gate to the precision ¿, The smallest known T-count is ˜1.15log2(1/ε) by using the repeat-until-success (RUS) circuit.
There is another method to implement Rz gates, which is using quantum addition. However, this is rather a difficult method to apply to real quantum circuits. To use this method, The Rz gates must be layered with one depth, and the rotation angles of Rz gates in the layer must be all in the form of π/2k or all in the form of −π/2k. Here, k is a non-negative integer that increases sequentially from 0 and there must be no omission in the middle. Under these conditions, the method of implementing the Rz gates using addition is as follows. If each R, gate acting on the n qubit state is in the rotating angle of the form −π/2k, where k is 0, 1, 2, . . . n, then we obtain a quantum state |ψ which is given by
If the state of qubits to which we want to implement Rz gates is in a computational basis state |x), then our total state is in the tensor product state |x|ψ. By adding |x to the |ψ, the resulting state of the process can be represented by the following form:
So, the state after the addition is e−2πix|2
The approximate quantum Fourier transform (AQFT) approximates QFT by discarding some C(Rn) gates with small angles. The AQFT has been studied for practical implementation of QFT because it is useful enough to implement quantum algorithms including Shor's factoring algorithm. The smallest known T-count and T-depth for the n-qubit QFT to the precision O(ε) using AQFT are ˜8nlog2(n/ε) and ˜2nlog2(n/ε) respectively by using quantum addition. Recently, one of the inventors proposed an efficient quantum circuit optimization protocol called quantum Karnaugh map (QKM). In this paper, we introduce a new implementation of the QFT using QKM and quantum addition, which halves the best-known T-count and T-depth results. The AQFT circuit in ref. 21 uses Toffoli gates (more precisely relative phase Toffoli gates), measurements, and classically controlled gates, to construct the Rz gate layers before applying addition. In our QFT circuit, the Rz gate layers are constructed without Toffoli gates by using a quantum circuit identity obtained from QKM. Using these methods, we can remove the cost to construct Toffoli gates that account for approximately half of the T-count in the method of ref. 21. The reduction of the T-depth is done by performing two additions at the same time by changing additions in sequence into parallel. In order to do this, we have used a new quantum circuit identity which is obtained by improving the result of ref. 23. As a result, we construct the QFT circuit with error O(ε) at a cost of ˜4nlog2(n/ε) T-count and ˜nlog2(n/ε) T-depth which is half of the best-known result.
As a configuration of the quantum circuit, a 5-qubit QFT circuit will be described as an example.
First, in the standard QFT circuit of
In detail, the quantum circuit of
In a first step, the Hadamard gate is applied to the q0 qubit, an Rz(π/4) gate is applied to the q1 qubit, an Rz(3π/8) gate is applied to q2 qubits, an Rz(3π/16) gate is applied to q3 qubits, and an Rz(3π/32) gate is applied to q4 qubits.
In a second step, a CNOT gate is applied to the q0 gate, based on the q1 qubit after the first step.
In a third step, an Rz(−π/4) gate is applied to the q0 qubit after the second step.
In a fourth step, a CNOT gate is applied to the q0 gate, based on the q1 qubit after the third step.
In a fifth step, a Hadamard gate is applied to the qu qubit after the fourth step.
In a sixth step, a CNOT gate is applied to q1 to q4 qubits, based on the q0 qubits after fifth step.
In a seventh step, an Rz(−π/8) gate is applied to the q2 gate after the sixth step, Rz(−π/16) gate is applied to the q3 gate after the sixth step, and Rz(−π/32) gate is applied to the q4 gate after the sixth step.
In an eighth step, a CNOT gate is applied to q1 to q4 qubits, based on the q0 qubits after the seventh step.
In a ninth step, a CNOT gate is applied to q2 to q4 qubits, based on the q1 qubit after the eighth step.
In a tenth step, an Rz(−π/4) gate is applied to the q2 gate after the ninth step, an Rz(−π/8) gate is applied to the q3 gate after the ninth step, and an Rz(−π/16) gate is applied to the q4 gate after the ninth step.
In eleventh step, a CNOT gate is applied to q2 to q4 qubits, based on the q1 qubit after the tenth step; and
In twelfth step, an Rz(15π/32) gate is applied to the q0 qubit after the eighth step, and applying an Rz (7π/16) gate to the qu qubit after the eleventh step.
The circuit of
A quantum circuit that has gone through the step of reducing the number of Rz gate layers using ancilla qubits, as shown in
In a first step, a Hadamard gate is applied to the q0 qubit, an Rz(π/4) gate is applied to the q1 qubit, an Rz(3π/8) gate is applied to q2 qubits, an Rz(3π/16) gate is applied to q3 qubits, and an Rz(3π/32) gate is applied to q4 qubits.
In a second step, a CNOT gate is applied to the q0 gate, based on the q1 qubit after the first step.
In a third step, an Rz(−π/4) gate is applied to the q0 qubit after the second step.
In a fourth step, a CNOT gate is applied to the q0 gate, based on the q1 qubit after the third step.
In a fifth step, a Hadamard gate is applied to the q1 qubit after the fourth step, and a CNOT gate is applied to a third ancilla qubit |0>, based on the q4 qubits after the first step.
In a sixth step, CNOT gate is applied to a second ancilla qubit |0>, based on the q3 qubit after the first step.
In a seventh step, a CNOT gate is applied to a first ancilla qubit |0>, based on the q2 qubits after the first step.
In an eighth step, a CNOT gate is applied to the first to third ancilla qubits, based on the q1 qubit after the fifth step.
In a ninth step, a CNOT gate is applied to q2 to qu qubits, based on the q0 qubits after the fourth step.
In a tenth step, an Rz(−π/8) gate is applied to the q2 qubit, an Rz(−π/16) gate is applied to the q3 qubit, an Rz(−π/32) gate is applied to the q4 qubit, an Rz(−π/4) gate is applied to the first ancilla qubit, an Rz(−π/8) gate is applied to the second ancilla qubit, and an Rz(−π/16) gate is applied to the third ancilla qubit.
In an eleventh step, a CNOT gate is applied to the q2, q3, and q4 qubits, based on the q0 qubit.
In a twelfth step, a CNOT gate is applied to the first to third ancilla qubits, based on the q1 qubit.
In a thirteenth step, a CNOT gate is applied to the first ancilla qubit, based on the q2 qubit.
In a fourteenth step, a CNOT gate is applied to the second ancilla qubit, based on the q3 qubit.
In a fifteenth step, a CNOT gate is applied to the third ancilla qubit, based on the q4 qubit.
In a sixteenth step, an Rz(15π/32) gate is applied to the q0 qubit, and applying Rz(7π/16) gate to the q1 qubit.
From
That is, the 5-qubit QFT circuit shown in
In a first step, a Hadamard gate is applied to q0 qubit, applying an Rz(π/4) gate to the q1 qubit, an Rz(3π/8) gate is applied to q2 qubit, an Rz(3π/16) gate is applied to q3 qubit, and an Rz(3π/32) gate is applied to q4 qubit.
In a second step, a CNOT gate is applied to the q0 gate, based on the q1 qubit after the first step.
In a third step, an Rz(−π/4) gate is applied to the q0 qubit after the second step.
In a fourth step, a CNOT gate is applied to the q0 gate, based on the q1 qubit after the third step.
In a fifth step, a Hadamard gate is applied to the q1 qubit after the fourth step, and a CNOT gate is applied to a third ancilla qubit |0>, based on the q4 qubits after the first step.
In a sixth step, a CNOT gate is applied to a second ancilla qubit |0>, based on the q3 qubit after the first step.
In a seventh step, a CNOT gate is applied to a first ancilla qubit |0>, based on the q2 qubits after the first step.
In an eighth step, a CNOT gate is applied to the first to third ancilla qubits, based on the q1 qubit after the fifth step.
In a ninth step, a CNOT gate is applied to q2 to q4 qubits, based on the q0 qubits after the fourth step.
In a tenth step, an Rz(−π/8) gate is applied to the q2 qubit, an Rz(−π/16) gate is applied to the q3 qubit, an Rz(−π/32) gate is applied to the q4 qubit, an Rz(−π/4) gate is applied to the first ancilla qubit, an Rz(−π/8) gate is applied to the second ancilla qubit, and an Rz(−π/16) gate is applied to the third ancilla qubit.
In an eleventh step, a CNOT gate is applied to the q2, q3, and q4 qubits, based on the q0 qubit.
In a twelfth step, a CNOT gate is applied to the first to third ancilla qubits, based on the q1 qubit. In a thirteenth step, a CNOT gate is applied to the first ancilla qubit, based on the q2 qubit.
In a fourteenth step, a CNOT gate is applied to the second ancilla qubit, based on the q3 qubit.
In a fifteenth step, a CNOT gate is applied to the third ancilla qubit, based on the q4 qubit.
In a sixteenth step, a Hadamard gate is applied to the q2 qubit.
In a seventeenth step, a CNOT gate is applied to the q2 qubit, based on the q3 qubit.
In an eighteenth step, an Rz(−π/4) gate is applied to the q2 qubit.
In a nineteenth step, a CNOT gate is applied to the q2 qubit, based on the q3 qubit.
In a twentieth step, a Hadamard gate is applied to the q3 qubit.
In a twenty first step, a CNOT gate is applied to the first ancilla qubit, based on the q4 qubit.
In a twenty second step, a CNOT gate is applied to the first ancilla qubit, based on the q3 qubit.
In a twenty third step, a CNOT gate is applied to the q4 qubit, based on the q2 qubit.
In a twenty fourth step, an Rz(−π/8) gate is applied to the q4 qubit, and an Rz(−π/4) gate is applied to the first ancilla qubit.
In a twenty fifth step, a CNOT gate is applied to the qu qubit, based on the q2 qubit.
In a twenty sixth step, a CNOT gate is applied to the first ancilla qubit, based on the q3 qubit.
In a twenty seventh step, a CNOT gate is applied to the first ancilla qubit, based on the q4 qubit.
In a twenty eighth step, an Rz(15π/32) gate is applied to the q0 qubit, an Rz(7π/16) gate is applied to the qu qubit, an Rz(3π/8) gate is applied to the q2 qubit, an Rz(π/4) gate is applied to the q3 qubit, and a Hadamard gate is applied to the q4 qubit.
In a twenty ninth step, the qu qubit and the q3 qubit are swapped.
In a thirtieth step, q0 and q4 qubits are swapped.
In detail,
So far, it is a perfect QFT implementation without any approximation. Before the approximation, we note that the Rz gates in the first and last Ra gate layers have the angle (2k−1−1)π/2k, where k is a non-negative integer (See
Next, we proceed with the approximation. All the Rz gates with an absolute value of the rotation angle less than π/2b are discarded, where b is a positive integer related to the precision. As a result, up to 2(b−1) Rz gates remain in each Rz gate layer.
Finally, we apply quantum addition to reduce the required T-count. To do that, the Rz gate layers are required to satisfy the conditions described before. We show that additional Rz(−π), Rz(−π/2), and Rz(−π/4) gates (Z−1, S−1, and T−1 gates) are needed to implement Rz gates by applying quantum addition. So we add the those required gates and additionally Rz(π), Rz(π/2), and Rz(π/4) gates (Z, S, and T gates) to make overall procedure unity or identity. This process raises T-count by [n/2]. To implement quantum addition, we also need to prepare the two of the state |ψ.
Now, we reduce the T-depth of the QFT by executing two quantum additions in parallel. So we have to prepare two |ψ s. In the case of Rz gate layers in which the absolute value of the smallest angle of Rz gates is π/2r, where r is a positive integer smaller than b, (r+1) qubit addition is applied. In the process, the required state |ψr does not need to be prepared separately, because the corresponding part of |ψ can be used.
The error between quantum circuits U and V or the precision of implementation of U instead of V (error(U, V)) is defined as the spectral norm of (U−V) and the accumulative error between U1 U2 . . . Um and V1 V2 . . . Vm is at most Σi=1merror(Ui, Vi)8. For some positive integer p, if one Rz(−π/2p) gate is discarded, then the error is ∥1−eiπ/2
Among the Rz layers which is the object of a single addition, the largest number of Rz gates are discarded in the first layer and the last layer. The approximation error of the first Rz gate layer is the greatest among the approximation errors of the Rz gate layers. The upper bound of the error caused by the discarded Rz gates is π(n−b+2)/2b. In the process, we choose b as log2(n/ε). Then, the error caused by discarding some Rz gates is lower than πε(n−b+2)/n. If b is greater than 2, the error is less than πε.
The total error is dependent not only on the error caused by discarding Rz gates but also on the error caused by Rz gate synthesis. Gate synthesis is necessary for the preparation of the state |ψ which is used for addition. The state |ψ can be obtained by executing a Hadamard gate and the Rz(π/2k) gate on the kth qubit in the (b+1) qubits which are initially all in the state |0.
Among the required (b+1) Rz gates, Z, S, and T gates do not need to be synthesized. So 2(b−2) Rz gates are needed to be synthesized for obtaing two |ψ states. If the RUS method is used, the required T-count to synthesize an Rz gate using the standard elementary gates to the precision ε is ˜1.15 log2(1/ε), which is the smallest known so far15. If we choose the upper bound of the precision of gate synthesis as ε/2b, The error caused by the gate synthesis is lower than ε(b−2)/b which is lower than ε. The total error that includes both errors from the discarding Rz gates and the gate synthesis is lower than ε(π+1). Then, the error of our approximation for QFT is O(ε).
The required number of T gates of our process is divided into three parts: The first one is the number of T gates required for addition. The second one is the number of T gates required for Rz gate synthesis. The third one is the n T gates that quantum addition is not applied.
For m-qubit addition, the required T-count is 4(m−1) which is the smallest to the best of our knowledge. Since we apply (b+1) or smaller number of qubit addition n times for the implementation of our approximate n-qubit QFT to the precision ε, the T-count required for addition is smaller than 4nlog2(n/ε). For the Rz gate synthesis, the required T-count is ˜2.3(b−2)log2(2b/ε), because there are 2(b−2) Rz gates that are required for the gate synthesis to the precision ε/2b.
As a result, the total T-count is ˜4nlog2(n/ε)+n+2.3(b−2)log2(2b/ε) for n-qubit QFT to the precision O(ε). And in this case, The T-depth is ˜nlog2(n/ε)+n+2.3log2(2b/ε). The term nlog2(n/ε) is from the parallel addition. This is because the 2b T-depth is required for a (b+1) qubit addition. The term 2.3log2(2b /ε) is from the gate synthesis. The reason why the factor 2(b−2) doesn't have to be multiplied is that each gate synthesis can be implemented in parallel. Our results and comparison with the previous studies are shown in Table. 1.
For the convenience of comparison, we omit the dependence on precision in Table 1.
In this section, we implement a toy model of quantum phase estimation (QPE) based on QFT on the IonQ device using Amazon Braket to see how well QFT can be implemented on the NISQ24 devices. Our main result is for fault-tolerant quantum computing and the circuit we construct has a serious disadvantage for NISQ devices compared to basic circuit decomposition in ref. 12 because we require additional quantum gates and ancilla qubits. For this reason, we use a QFT circuit decomposed only using circuit identities
IonQ device is a quantum computer using trapped 171Yb+ ions. It has 11 qubits and the qubits of the device are fully connected. For the IonQ device, the fidelity of the single-qubit gates is 0.9955 on average and the fidelity of the two-qubit gates is 0.9614 on average. The QPE is an algorithm to find the eigenvalue of a unitary matrix U using the corresponding eigenvector |u8. We define the matrix U and the eigenvector |u as follows.
We implemented QPE by choosing φ as (0,1/8,2/8 . . . , 7/8) for 3-qubit QPE, (0,1/16,2/16 . . . , 1.5/16) for 4-qubit QPE, and (0,1/32,2/32 . . . , 31/32) for 5-qubit QPE. And the success rate was measured by executing 1000 times for each φ. As a result, we were able to get the right result on average ˜77%, ˜48%, and ˜11% for 3-, 4-, and 5-qubit QPE. For 3- and 4-qubit QPE, we could find the right answer by using a majority vote. From the 5-qubit QPE, it is found that there are cases that the result of the majority vote is not always the correct answer (see Table 2). An example of the QPE implementation is shown in
When implementing 3- to 5- QPE, we chose φ as (0,1/8, 2/8 . . . , 7/8) for 3-qubit QPE, (0,1/16,2/16 . . . , 15/16) for 4-qubit QPE, and (0,1/32,2/32 . . . , 31/32) for 5-qubit QPE. For each φ, we ran it 1000 times respectively. In the table, the average count is the average of the number of times the correct answer was found out of 1000 runs and the success rate is the probability of finding the correct value when using a majority vote.
In summary, we introduced a new approximation circuit of the QFT to the precision of O(ε). The leading order of T-count and T-depth are 4nlog2(n/ε) and nlog2(n/ε), respectively. Up to now, the leading order of 8nlog2(n/ε) T-count with 2nlog2(n/ε) T-depth is the best-known result for least T-count and T-depth implementation of the QFT to the precision of O(ε). Therefore, our results show approximately half of the best-known T-count and T-depth of the QFT to the precision O(ε). We implemented 3- to 5-qubit QFT on a NISQ device. Our results may accelerate the fault-tolerant implementation of QFT and provide useful insight for the near term NISQ applications.
In
It will be apparent to those skilled in the art that various modifications and variation may be made in the present invention without departing from the spirit or scope of the invention. Thus, it is intended that the present invention cover the modifications and variations of this invention provided they come within the scope of the appended claims and their equivalents.
Number | Date | Country | Kind |
---|---|---|---|
10-2022-0169867 | Dec 2022 | KR | national |