The current application is directed to quantum computing and, in particular, to a method and system for compiling single-qubit unitary gates into circuits over a universal basis.
Enormous advances have been made in digital computing over the past 70 years. Crude, high-energy-consuming, vacuum-tube-based computer systems developed in the 1940s have evolved into today's personal computers, work stations, servers, and high-end distributed computer systems, based on multi-core single-integrated-circuit processors, that economically provide processing speeds, data-storage capacities, and data-transfer bandwidths that were unimaginable even 20 years ago. However, digital computing appears to be bounded by certain physical and problem-domain constraints.
In 1982, Richard Feynman made a suggestion for a new type of computational system based on quantum-mechanical components. He suggested that quantum computers could more efficiently address certain classes of computational problems than digital computers and, in the case of computational problems in computational chemistry and physics, provide practical approaches to computational problems that are intractable using digital computer systems. Since that time, great progress has been made in developing the theoretical foundation for quantum computing and the first quantum computers have been implemented. Various computational problems have been identified that can be addressed more efficiently by quantum computers than by classical digital computers. However, significant research and development efforts continue to be applied in order to provide practical and cost-effective general-purpose quantum-computing systems for widespread use. As one example, significant theoretical efforts are currently being applied to identify cost-effective implementations of quantum circuits.
Determining the optimal fault-tolerant compilation, or decomposition, of a quantum gate is critical for designing a quantum computer. Decomposition of single-qubit unitary gates into the {H, T} basis, where H is the Hadamard gate and T is the rotation about the z-axis by π/4, has been well studied in recent years.
However, there exists a need for alternative bases that may offer significant improvements in circuit depth or resource cost.
The disclosure discusses techniques and systems which transform a given single-qubit quantum circuit expressed in a first quantum-gate basis into a quantum-circuit expressed in a second quantum-gate basis. The second quantum-gate basis comprises a universal set of quantum gates.
This disclosure generally describes techniques for performing quantum calculations, and more particularly, describes techniques for determining a quantum circuit or a quantum gate in a particular gate basis set.
A quantum basis set is universal if any target gate can be approximated by a quantum circuit composed of the basis gates to arbitrary precision. One of the important universal quantum basis sets is V gate basis set. A unitary gate that is exactly representable in V basis is mapped to a quaternion of specific structure represented by an integer quaternion divided by an integer power of a normalization. (For example, if the V basis is normalized by √{square root over (5)}, then the quaternion is represented by an integer quaternion divided by an half-integer power of 5.) Such a quaternion can be uniquely factorized into a sequence of small quaternion factors, which can be subsequently uniquely mapped to a sequence consisting of the V gates and at most one Pauli gate. A target quantum gate can be approximated by a unitary gate that is exactly representable in V basis and the complexity of the latter is proportional to the logarithm of the desired precision. The practical construction of an approximating unitary gate requires search in a subset of unitary gates exactly representable in V basis; such search can be either randomized (and have probabilistically polynomial complexity) or exhaustive (and have exponential complexity).
One gate basis set is the V basis. The V basis contains rotations by 0=cos−1(−3/5) around the x-, y-, and z-axis. For example, the matrix for the z-axis rotation, denoted as V3, is given by
The x-axis rotation V1=HV3H and the y-axis rotation V2=SV1S† are both Clifford-adjoints of V3, where S is rotation around the z-axis by π, and H is the Hadamard gate.
The V basis was the first basis proven to be efficiently universal, meaning that the decomposition sequence is guaranteed to be of depth O(log(1/ε)).
Two techniques are provided below for decomposing a single-qubit unitary into the V basis, which is an efficiently universal basis and which may have advantages over decomposing into the {H, T} basis, where H is the Hadamard gate and T is the π/8 gate. The techniques produce efficient quantum circuits that approximate a single-qubit unitary with high precision, and are computationally efficient in practice.
In addition, the techniques may be applied to Toffoli-based circuits. In some embodiments, the techniques may include first compiling into the V basis and subsequently replacing each V by a Toffoli-based circuit.
Discussed below are three possible exact constructions for implementations of a V gate on a given quantum computer architecture. Implementations of V gates could make decomposing into the V basis advantageous over decomposing into the {H,T} basis. However, it may be desired to determine an exact, fault-tolerant V gate implementation that costs less than the cost of 6 T gates (where the complete cost of a T gate could be determined, for example, based on a given state distillation protocol) so that the decomposition into the V basis is cost competitive with decomposing into the {H, T} basis.
It should be noted, at the onset, that although the current application employs mathematical notation and control-flow diagrams, the current application is directed to a method and system for producing physical, tangible, digital representations of quantum circuits that are stored in physical data-storage devices and systems, including optical disks within optical-disk drives, magnetic disks within magnetic-disk drives, electronic memories within computer systems, and other such physical, tangible data-storage devices. Furthermore, the quantum-circuit representations produced by methods and systems disclosed in the current application provide for the design of quantum circuits, the cost-effectiveness of which can be directly physically measured by the amount of data-storage-device capacity needed to store the quantum-circuit representations, by the cost in time and energy consumption in computing the representations for the quantum circuits, by the cost of implementing the quantum circuits programmatically or in hardware design, and by the time and energy consumed by the implemented quantum circuits. In other words, the current application is directed to real-world methods and systems of real-world utility that produce physical and physically measurable results.
The quantum computing system 102 may include a quantum processor/memory 106 and input/output devices 108. The input/output devices 108 may include interferometers and other devices for, among other things, reading and setting states of qubits in the quantum processor/memory 106 and may include devices for interfacing with the non-quantum computing device 104.
The quantum processor/memory 106 may include topological quantum processor/memory 110, non-topological quantum processor/memory 112, quantum gates 114, and quantum bus 116. The topological quantum processor/memory 110 may include devices and components for providing topological based quantum computing, e.g., 5/2 quantum Hall systems and systems exhibiting Majorana modes such as, but not limited to, 1-dimensional or quasi 1-dimensional wires.
The non-topological quantum processor/memory 112 may include devices and components for providing non-topological based quantum computing. For example, the non-topological quantum processor/memory 112 may include devices such as, but not limited to, Josephson junctions for providing flux qubits, charge qubits, spin qubits, etc.
The quantum bus 116 may include devices and components for providing an interface between quantum processor/memory 106 and the input/output devices 108. The quantum bus 116 may include devices and components for providing an interface between qubits. For example, the quantum bus 116 may provide an interface between the topological quantum processor/memory 110 and the non-topological quantum processor/memory 112.
The quantum gates 114 may include various devices and components for performing various operations on qubit states. For example, quantum gates 114 may include devices and components for, among others, Hadamard gates, phase gates, unitary gates, controlled gates (e.g., controlled unitary gates), adder gates, and corresponding adjoint adder gates. The quantum gates 114 may be an efficiently universal set of gates in a basis set such as, but not limited to, the V basis.
The non-quantum computing device 104 may, among other things, interface with the input/output devices 108 to provide inputs (e.g., initial conditions of a problem to be solved by the quantum computing system 102) and receive outputs (e.g., measured quantum states). In some instances, the non-quantum computing device 104 may be simulate a quantum computing device and/or perform quantum calculations. In some instances, the non-quantum computing device 104 may decompose an initial quantum gate and/or initial quantum circuit and determine a sequence of quantum gates in a basis set of quantum gates that are equivalent, or equivalent to within a predetermined tolerance, of the initial quantum gate and/or initial quantum circuit. The basis set of quantum gates may be a universal set of quantum gates. As discussed herein below, the basis set of quantum gates may be, but is not limited to, a V basis set of gates.
V
1(5)=(I+2iX)/√{square root over (5)},V1†(5)=(I−2iX)/√{square root over (5)},
V
2(5)=(I+2iX)/√{square root over (5)},V2†(5)=(I−2iX)/√{square root over (5)},
V
3(5)=(I+2iX)/√{square root over (5)},V3†(5)=(I−2iX)/√{square root over (5)},
where I, X, Y, and Z denote the Pauli matrices:
The above six unitaries {Vi(5), Vi†(5) i=1; 2; 3} provide a definition of the V(5) basis set. The subgroup (V)⊂SU(2) generated by the V(5) basis is everywhere dense in SU(2) and thus {Clifford gates, Vi(5), Vi†(5) i=1; 2; 3} is a universal basis.
However, it should be noted that there are other definitions of a V basis set. Other V basis sets such as, but not limited to, V(13) basis set, V(17) basis set, V(29) basis set, V(101) basis set, V(257) basis set and V(4097) basis set, while not discussed in detail, are included within the scope of this disclosure.
A unitary gate such as, but not limited to, a rotation gate may be decomposed and represented as a sequence of V gates. For example, the quantum gates 114 includes an exemplary rotation gate (R gate) 204, which provides a rotation about the z-axis by 0.1 radians. Expanded in the V(5) basis set of gates to a precision of 4.3×10−15, the 0.1 radian rotation about the z-axis is implemented by a sequence of 76 V(5) gates.
It should be remembered that the rotation gate 204 is an example of a gate implemented as a sequence of a basis set of gates and that in the quantum gates 114 may include other gates that are implemented sequences of the basis set of gates.
As shown in
Although not shown, other gates of the V basis set are also made up of elemental gates.
In some instances, the quantum circuit 300 may be used in conjunction with protocols for distilling Toffoli states. For example, a given V gate can be approximated using a {H, T} decomposition, which may result in a circuit of length 70 or more, depending on the desired precision. However, two embodiments of exact implementations of the V3(5) gate, which achieve perfect precision, are provided below.
In matrix form, a V3(5) gate (V3(5)=(I+2iZ)/√{square root over (5)}.) can be represented as:
The other Vi(5) gates {Vi(5),Vk†(5) i=1, 2, and k=1; 2; 3} can then be implemented using V3(5) and Clifford gates.
Implementing V3 with Toffoli Gates
With probability 5/8, V3(5) is applied to the target qubit |ψ314, otherwise the identity is applied. The expected number of times this quantum circuit 300 must be repeated in order to result in the application of V3(5) is 8/5, with an expected cost of 3.2 Toffolis.
In addition, a generalization to V3(p1) gates, where p0=5, p1=17, p2=101, p3=257, p4=4097, . . . , can be implemented using a nested circuit based on
Implementing V3 with State Distillation
Ignoring global phase, the angle of rotation θ about the z-axis invoked by V3 is solved for using the following identity:
Consider the angle
This angle is π away from θ:θ=θ′+π. Thus, to implement rotation RZ(θ), one can implement the gate sequence RZ(θ)=RZ(θ′)RZ(π), where RZ(π) is the Pauli Z gate and
where 2θ2 is the angle resulting from using the resource state e−iπ/8HS†|H2. The
part of the angle is a T=RZ(π/4) gate, thus RZ(θ′)=RZ(2θ2)T, and RZ(θ)=RZ(2θ2)TZ.
The quantum circuit 400 includes a controlled Pauli X gate 402 and a measuring device 404, which measures a state |m406 of the controlled Pauli X gate 402. The controlled Pauli X gate 402 is applied to an ancillary state 408 and the target qubit 314 is the control. In this illustrated example, the ancillary state 408 is given by eiπ/8HS†|H2, where |H2 is a non-stabilizer ladder state.
Let the first qubit 506 and second qubit 508 be magic states |H and define
|H=|H0=cos θ0|0+sin θ0|1.
Upon application of the controlled-NOT gate Λ(X),
Upon measurement m 510 of the first qubit 506 by measurement device 504, the state 512 of the second qubit 508 is given by:
Let θ1 be defined such that
it can be deduced that cot θ1=cot2 θ0.
Thus, |H1=cos θ1|0+sin θ1|1, which is a non-stabilizer state obtained from |H states, Clifford operations, and measurements.
If the measurement outcome 510 is 1, then a stabilizer state is obtained and the output is discarded. The measurement outcomes occur with respective probabilities
Now consider the next step of the ladder. This protocol is recursive, using the non-stabilizer states produced by the previous round of the protocol as input to the quantum circuit 500. In this case, the recursion need only go to state |H2, which is defined as |H2=cos θ2|0+sin θ2|1, where cot θ2=cot3 θ0.
To obtain this state, the quantum circuit 500 receives as inputs, the previously produced |H1 state and a new |H0 state:
Upon measurement of the first qubit 506, the state 512 is given by:
where
cot θ′=cot θ1 cot θ0=cot3 θ0=cot θ2, and where
cot θ″=cot θ1 tan θ0=cot1 θ0=cot θ0.
Thus, the state |H2 is obtained by measuring m=0, and the state |H0 is obtained by measuring m=1. The probability of measuring 0 is given by
p
m=0,1=cos2 θ1 cos2 θ0+sin2 θ1 sin2 θ0.
It should be noted that
so the probability of obtaining |H2 is far higher than the probability of obtaining |H0.
As shown in
In the illustrated embodiment, the CNOT gate 610a bridges ancillary qubit wires 616a and 616b, and the CNOT gate 610b bridges ancillary qubit wire 616b and computational qubit wire 618, where the ancillary wire 616b is the control to the CNOT gate 610a and the computational qubit wire 618 is the control to the CNOT gate 610b.
On the ancillary qubit wire 616a, operations are performed in the following order: Hadamard gate 604a, T adjoint gate 602a, CNOT gate 610a, T gate 602b, Hadamard gate 604b, and measurement device 606a.
On the ancillary qubit wire 616b, operations are performed in the following order: Hadamard gate 604c, CNOT gate 610a, CNOT gate 610b, T gate 602c, Hadamard gate 604d, and measurement device 606b.
On the computational qubit wire 618, operations are performed in the following order: CNOT gate 610b, Z gate 608, and T gate 602d.
However, it should be noted that some of the gates in the quantum circuit 600 may commute. For example, T gates and Z gates commute, T gates and CNOT gates commute when the T is on the control qubit, and Z gates and CNOT gates commute when the Z is on the control qubit. Consequently, in some embodiments, the gates of the quantum circuit 600 may be arranged in a different sequence than that shown in
Further, in some instances, gates of the quantum circuit 600 may be reordered, or commuted with each other, in different runs. For example, on odd number runs (e.g., first, third, etc.) the CNOT gate 610b, Z gate 608, and T gate 602d may be arranged in the sequence shown in
The Hadamard gates 604a-604c, the T gates 602a, 602b, the measurement device 606a, and the CNOT gate 610a comprise an ancillary state generator 620. In some instances, the ancillary state generator 620 may be implemented or prepared independent of the quantum state |ψ614. For example, the ancillary state generator 620 may be prepared to be in a certain state (e.g., measurement device 606a measures zero (0)) independent of the quantum state |ψ614. For example, the ancillary state generator 620 can be run in an offline mode (e.g., before the quantum state |ψ614 exists or before the quantum state |ψ614 is received at the computational qubit wire 618). It should be noted that the quantum state |ψ614 may decohere over time. Consequently, in some instances, it may be preferable to run the ancillary state generator 620 in offline mode so as to prepare a desired state (e.g., the measurement device 606a measures zero (0)) before the quantum state |ψ614 is received at the computational qubit wire 618 so as to prevent, or reduce, decoherence of the quantum state |ψ614.
However, in some instances, the ancillary state generator 620 may be implemented or prepared in conjunction with the quantum state |ψ614. The ancillary state generator 620 may be run in an online mode in conjunction with the quantum state |ψ614.
In offline mode, the ancillary state generator 620 can be implemented as many times as is required to put the ancillary state generator 620 in the desired state without affecting the quantum state |ψ614. For example, at the start of each run, the ancillary state generator 620 is provided with two ancillary qubits 614 in state |0, and if the measurement device 616a does not measure zero (0), the run is tossed out, and a new run (with fresh ancillary qubits 614 in state |0) is commenced until the measurement device 616a does measure zero (0). There is a ¾probability that the measurement device 606a measures zero (0) and yields the desired state.
When the ancillary state generator 602 is run offline to ensure that the measurement device 606a measures zero (0), there is a 5/6 probability that the measurement device 606b will also measure zero (0). When the ancillary state generator 602 is run online and repeated to ensure that the measurement device 606b will also measure (0), there is also a 5/6 probability that the measurement device 606b will also measure (0). When both the measurement 616a and measurement 616b are performed irrespective of the measurement result 616a, then there is an overall probability of 5/8 that both of the measurement devices 606 will measure zero (0). When the probability of success of measurement of 616b is 5/6 given that measurement of 616a is 0, the expected T count is approximately 5.26. Measure 616b prior to applying 608 and 602d on qubit 614. Given that measurement of 616a has resulted in 0, then if a first attempt at measuring 616b fails and results in measurement result 1 (with probability of 1/6), then wait to apply gate 608 and 602d until the measurement result of the next attempt is known. In the next attempt, T gate 602d and Z gate 608 are commuted through the CNOT 610b (i.e., from left to right the sequence of the gates is T gate 602d, Z gate 608, and CNOT gate 610b). If a second attempt by the measurement device 616b succeeds and results in measurement result 0, then the two T gates 602d combine and result in an S gate. Similarly, the two Z gates 608 can be commuted with the S gate and combine to an I gate. Thus, if the total number of attempts is k, then the expected T gate cost is given by
The probability that exactly k attempts are required is given by
Summing over k gives an expected T count of 5.26. It can be shown the T gate count is approximately 6.4 when the overall probability of success is 5/8 and the measurement of 616a and 616b are performed irrespective of the measurement result of 616a.
When the measurement devices 606 measure zero (0), the desired unitary V3(5) has been applied to the quantum state |ψ614. However, when one or both of the measurement devices 606 measure one (1), the identity (I) gate is the result, up to a known Clifford gate conjugation. Since measurements of one (1) result in I|ψ or |ψ, up to a known Clifford gate conjugation, this result (|ψ) can be looped back to the quantum circuit 600, repeatedly, until the measurements by the measurement devices 606 are zero (0). At which point, the desired unitary V3(5) has been applied to the quantum state |ψ614.
In a very basic configuration, the non-quantum computing device 104 typically includes at least one processor 702 and system memory 704. The processor 702 is a non-quantum processing unit such as, for example, a conventional computer processor such as a digital processor. Depending on the exact configuration and type of computing device, the system memory 704 may be volatile (such as RAM), non-volatile (such as ROM, flash memory, etc.) or some combination of the two. The system memory 704 typically includes an operating system 706, one or more program modules 708, and may include program data 710. The computing device 104 is of a very basic configuration demarcated by a dashed line 712.
The program modules 708 may include instructions for, among other things, implementing simulations of quantum systems on the non-quantum computing device 104, providing control signals to the quantum computing system 102, and receiving data from the quantum computing system 102. In addition, the program modules 708 may include instructions for, implementing simulations of quantum calculations and/or simulating quantum computers.
The non-quantum computing device 104 may have additional features or functionality. For example, the computing device 104 may also include additional data storage devices (removable and/or non-removable) such as, for example, magnetic disks, optical disks, or tape. Such additional storage is illustrated in
In contrast, communication media embodies computer-readable instructions, data structures, program modules, or other data in a modulated data signal, such as a carrier wave, or other transmission mechanism. As defined herein, computer storage media does not include communication media.
The non-quantum computing device 104 may also have input device(s) 718 such as keyboard, mouse, pen, voice input device, touch input device, etc. Output device(s) 720 such as a display, speakers, printer, etc. may also be included. These devices are well known in the art and are not discussed at length here.
The non-quantum computing device 104 may also contain communication connections 722 that allow the device to communicate, such as over a network, with other computing devices 724 including the quantum computing system 102. These networks may include wired networks as well as wireless networks. The communication connections 722 are one example of communication media.
The illustrated non-quantum computing device 104 is only one example of a suitable device and is not intended to suggest any limitation as to the scope of use or functionality of the various embodiments described. Other well-known computing devices, systems, environments and/or configurations that may be suitable for use with the embodiments include, but are not limited to personal computers, server computers, hand-held or laptop devices, multiprocessor systems, microprocessor-base systems, set top boxes, game consoles, programmable consumer electronics, network PCs, minicomputers, mainframe computers, distributed computing environments that include any of the above systems or devices, and/or the like.
The system memory 704 may also include Universal Gates module 726. The Universal Gates module 726 may include instructions for determining a replacement sequence of quantum gates. For example, the Universal Gates module 726 may receive a mathematical expression of an input/target quantum gate, decompose the input/target quantum gate, and determine the replacement sequence of quantum gates, where the replacement sequence of quantum gates is approximately equivalent to, or within a predetermined precision level of, the input/target gate, and where the replacement sequence of quantum gates is a sequence of universal gates such as V gates. The replacement gates may be stored in Universal Gates module 726 and/or in program data 710 or in other memory, e.g., removable storage 714 and/or non-removable storage 716.
It should be noted that the non-quantum computing device 104 stores and manipulates information represented as binary numbers, or digits, of various lengths.
By contrast, a qubit is implemented in hardware by tiny, physical components with quantum-mechanical characteristics that are generally contained within macroscopic subsystems. These tiny physical components can have an infinite number of different quantum-mechanical states. When the state of a qubit is physically measured, the measurement produces one of two different basis states |0 and |1. The quantum-mechanical state of a qubit is represented as a state vector representing a superposition of the two states |0 and |1:
|ψ=α|0+β|1
where α and β are complex numbers and |α|2+|β|2=1. The qubit state vector can be represented in vector notation as:
The choice of vector representations of the states |0 and |1 is somewhat arbitrary, but to facilitate mathematical operations, these two vectors are generally chosen to be orthonormal and are often assigned the vector representations:
The notation | is, in the Dirac notation, referred to as the “ket” notation for vectors of an inner-product vector space. This inner-product vector space has a dual inner-product vector space, the vectors of which are represented by the Dirac bra notation |. The corresponding dual-inner-product vector space vectors for the above-discussed qubit state vectors are:
ψ|=[α*,β*]
0=[1,0]
1=[0,1]
where α* is the complex conjugate of a. The magnitude of a qubit state vector is computed as the square root of the inner product of the state vector and its corresponding dual state vector:
Thus, state vectors used to describe qubit states are normalized to have a magnitude of 1, which is indicated by the “normal” syllable of the term “orthonormal.” The “ortho” syllable refers to the fact that the state vectors |0 and |1 are chosen to be orthogonal, to simplify various operations, including taking inner products. Note that, by one convention, kets are represented by columns vectors and bras by row vectors. A complex row vector multiplied by a complex column vector, as in the above expression for the square root of the inner product of the state vector |ψ, produces a real number, while a column vector multiplied by a row vector produces a generally complex-valued matrix.
The quantum-mechanical state |ψ of a qubit is not directly observable by measurement. Instead, physical measurement operations are performed on a qubit to produce a measured state in a computational basis such as the basis |0 or |1. The measurement operations can be represented as 2×2 matrices M0 and M1:
The probability that a measurement of a qubit in state |ψ will return a state |0 or |1 is obtained by the inner product:
p
m
=
ψ|M
m
†
M
m|ψ
where m is 0 or 1, corresponding to a measurement that produces |0 or |1, respectively. For example, the probability p0 that a measurement of the state of a qubit in state |ψ produces |0 is obtained as:
By a similar computation:
p
1=|β|2.
Thus, the squares of the magnitudes of the coefficients α and β in the expression |ψ=α|0+β|1 correspond to the probabilities that a measurement of a qubit in state |ψ will produce states |0 and |1, respectively.
Referring to
z=a+ib
where a and b are real numbers and i=√{square root over (−1)}. Because
a=r cos θ
b=r sin θ,
as shown in
|ψ=rαeiφ
As previously discussed the squares of the magnitudes of the coefficients α and β correspond to the probabilities that a measurement of a qubit in state |ψ814 will return state vectors |0818 and |1820, respectively. The state vector |ψ814 can be multiplied by an arbitrary complex number with unit modulus, eiα, without changing the magnitudes of the squares of the coefficients α and β, as shown by:
e
iγ
|ψ
=e
iγ
r
α
e
iφ
|0+eiγrβeiφ
|eiγrαeiφ
|eiγrβeiφ
Thus, there is a global phase-shift degree of freedom in the expression of a state vector that does not affect the measureable properties associated with the state.
The state vector |ψ814 can alternately be expressed, using the Bloch-sphere angles shown in
A derivation of this expression from the previously presented expression |ψ=rαeiφ
The derivation uses a global phase factor to remove a phase coefficient from one of the terms and then employs spherical coordinate representations of the orthonormal axes x, y, and z as well as several substitutions to produce the final expression.
In the current discussion, a qubit is treated as a mathematical object with the above-described properties. However, these mathematically-described qubits correspond to actual physical hardware qubits that can be implemented using a number of different physical implementations, including trapped ions, optical cavities, and individual elementary particles, molecules, or aggregations of molecules that exhibit qubit behavior.
Various different primitive operations, corresponding to logic circuits in a digital computer and to computer instructions that control operation of logic circuits, can be performed on classical bits to produce classical bits with possibly altered state values. These primitive operations are referred to as “gates,” e.g., quantum gates 114. (See,
where the notation “x*” indicates the complex conjugate of x, |λ|=1 and |a|2+|b|2=1. A unitary 2×2 matrix X with complex elements can be defined as a 2×2 matrix X with the following property:
where
The adjoint X† of a unitary matrix X is the conjugate transpose of the unitary X. The fact that multiplication of the adjoint unitary operation by the unitary operation, or vice versa, produces the identity operator Id, or identity matrix I, can be seen by:
since
λλ*=|λ|2=1 and a*a+bb*=|a|2+|b|2=1.
Thus, the operation of a quantum gate on a qubit with state |ψ, where |ψ is expressed in vector form as
can be expressed as left-hand multiplication of the state vector by the unitary matrix corresponding to the unitary operation:
Alternatively, one can multiply the two matrices representing operations X and Y together to produce matrix Z, and then left-hand multiply state vector |ψ by Z to produce the same result:
A quantum circuit can therefore be specified as a sequence of quantum gates in which the quantum gates are symbolically represented or, equivalently, numerically represented. (It should also be noted that a single quantum gate may be specified as a sequence of quantum gates.) There are several ways to look at a quantum circuit. One can, as discussed above, multiply the matrices corresponding to the component quantum gates together in the order specified by the symbol sequence to produce a final, resultant, 2×2 complex matrix that represents the same state change, in a single operation or quantum gate, corresponding to the state change produced by sequential application of the quantum gates specified in the original symbol sequence. A quantum circuit can be viewed as a design for an actual hardware circuit in a quantum computer, where the hardware circuit needs to perform the operation specified by the single-gate representation of the quantum circuit, or can be viewed as a quantum-computing program, in which operations corresponding to the sequence of quantum gates represented by the symbol sequence are applied to a qubit in order to produce a final qubit state.
The term “quantum circuit” is thus somewhat interchangeable with the term “quantum gate,” as a quantum circuit can be expressed as a resultant operator. However, symbolically represented quantum circuits are useful in quantum circuit design for many reasons, including the fact that it is quite difficult to design and implement arbitrary physical quantum gates, but far easier to design and implement certain standard quantum gates, several of which are shown below. A symbolic representation using implementable quantum gates can thus represent a feasible design for hardware or a control program that produces the result that would be produced by the quantum-gate resultant obtained by multiplying the sequence of standard quantum gates. In addition, quantum circuits symbolically represented as sequences of standard gates do not necessarily map with uniform density to the set of arbitrary quantum gates, and finding a standard-gate implementation working back from a desired quantum gate is generally not a computationally tractable problem.
In the following discussing V basis is a generalization and refers to all V(pi) bases (e.g., V(5), V(13), etc.).
Given that the V basis is efficiently universal, it is natural to consider constructing efficient decomposition techniques for it. In addition, there have been advances in fault-tolerant implementations of the V gates. A protocol for distillation of non-stabilizer states allows a V gate to be implemented by way of T gates. Alternatively, a V gate may be implemented utilizing the quantum circuit 300 (see
One first non-limiting example technique approximates single-qubit unitaries over the set consisting of the V basis and the Clifford group. A second non-limiting example technique approximates single-qubit unitaries over the set consisting of the V basis and the Pauli gates. The first technique employs randomization, runs in expected polynomial time and delivers ε-approximations with V count ≦12 log5(2/ε), where ε is a measure of precision. The second technique employs direct search and produces ε-approximations with V count≦3 log5(1/ε) for most single-qubit unitaries, and approximations with V count 4 log5(2/ε) for edge cases. The compilation time for the second technique is linear in 1/ε and thus exponential in log(1/ε). However, despite being exponential in log(1/ε), the second technique may still be utilized to find quantum circuits. For example, in some instances, the second technique has been utilized to find quantum circuits of length L=28 at precision level ε=3*10−7 with merely 1 minute of classical CPU time and modest space usage.
In the case of both the {H,T} basis and the V basis, the non-Clifford gates cannot be implemented fault-tolerantly in a purely unitary fashion. State-of-the-art fault-tolerant implementations of T are typically based on state distillation, which involves use of measurement, classical feedback, and ancillae qubits, or in some situations, the fault-tolerant implementations of T may be implemented directly by hardware comprised of quantum circuits. Similarly, existing fault-tolerant implementations of the V gates also involve measurement, classical feedback, and ancillae qubits. In both cases, efficient fault-tolerant methods continue to be developed and optimized. For this reason, the decomposition techniques are “costed” in terms of the number of non-Clifford gates. A fine-grained cost comparison can then be determined based on a chosen fault-tolerant implementation or device architecture.
Let the set of W circuits be the set of those circuits generated by the V basis and the Pauli matrices I, X, Y, Z. It should be noted that the monoid W=X, Y, Z, V1, V2, V3⊂SU(2) contains all of the {V1−1, i=1, 2, 3} and thus is in fact a subgroup of SU(2) containing V.
It should be further noted that the Pauli operators are a staple of any quantum computing architecture and can be implemented fault tolerantly at a very low resource cost in comparison to a non-Clifford group gate. It is also noted that the single-qubit Clifford group C in combination with any of the six V matrices generates a monoid C+V⊂SU(2) that is in fact a group, containing (W).
For the purposes of this disclosure, the number of V gates of a quantum circuit is called the V-count of that quantum circuit and is labeled as Vc. It can be shown that an irreducible W quantum circuit contains at most one non-identity Pauli gate. Thus, if v is the V-count of such a circuit, then the overall depth of the circuit is either v or v+1.
A quantity called the trace distance is used to measure the distance between two unitaries U, VεPSU(2) and is given by:
dist(U,V)=√{square root over (1−|tr(UV†)|/2)}. (1)
The trace distance between a target unitary gate and the approximating unitary as precision ε.
While it has been shown that any single-qubit unitary can be approximated to a given precision ε by a V circuit of depth
no algorithm for actual synthesis of the approximating/replacement quantum circuits has yet been shown. In the present disclosure, effective techniques for synthesizing W-circuit approximations of single-qubit unitaries are developed.
The techniques may be based on the following theorem:
Theorem 1.
A single-qubit unitary gate U can be exactly represented as a W circuit of V count Vc≦L if and only if it has the form
U=(aI+biX+ciY+diZ)5−L/2, (2)
where a, b, c, d are integers such that a2+b2+c2+d2=5L
Theorem 1 follows from Theorem 2 given below, which also gives rise to a simple constructive procedure for synthesizing a W circuit that represents such a U.
The following proof begins by sketching a linear-time technique for exact W-circuit synthesis that employs arithmetic of Lipschitz quaternions. More specifically, consider the group W of quaternions generated by
±1,±i,±j,±k,1±2i,1±2j,1±2k. (3)
Then the following holds:
Theorem 2.
(1) W is equal to the set of Lipschitz quaternions with norms 5L, (Lε, L≧0). (2) Consider the group W1={w/√{square root over (norm(w)|wεW)}}. Then the subgroup of gates in PSU(2) representable as exact W-circuits is isomorphic to the central quotient W1/Z(W1) where Z(W1)=2={1,−1}.
Proof.
(1) Recall that the quaternion norm is multiplicative and that ±1, ±i, ±j, ±k are the only Lipschitz quaternions of norm 1. Thus statement (1) is true for L=0.
The following is a proof for L=1: Let q=a+bi+cj+dk, a, b, c, dε and norm(q)==a2+b2+c2+d2=5, which may be referred to as a unitarity condition.
Decompositions of 5 into sums of squares of four integers are easily enumerated and exactly two of the coefficients in the list {a,b,c,d} are zero, exactly one is ±1, and exactly one is ±2.
If a=±1, then it is observed that q is equal to one of 1±2i, 1±2j, 1±2k, −(1±2i), −(1±2j), −(1±2k) and thus belongs to W.
If one of b, c, d is ±1, the proof is reduced to the previous observation by multiplying q times one of i, j, k.
For example, if c=±1, then the real part of −jq is equal to c=±1.
Consider now a quaternion q with norm(q)=5L, L≧1.
Let q=p1 . . . pm be a prime quaternion factorization of q. Since 5L=norm(q)=norm(p1) . . . norm(pm), for each i=1, . . . m the norm(pi) is either 5 or 1. As shown above (considering L=0, 1), in either case piεW.
(2) Effective homomorphism h of W1 onto the W-circuits is the multiplicative completion of the following map:
i→iX
j→iY
k→iZ
(1±2i)/√{square root over (5)}→(1±2iX)/√{square root over (5)}
(1±2j)/√{square root over (5)}→(1±2iY)/√{square root over (5)}
(1±2k)/√{square root over (5)}→(1±2iZ)/√{square root over (5)}
The correctness of this definition of homomorphism h is verified by direct comparison of multiplicative relations between the generators of W1 and g(W)={iX, iY, iZ, (1±2iX)/√{square root over (5)}, (1±2iY)/√{square root over (5)}, (1±2iZ)/√{square root over (5)}}. These relations happen to be identical.
Effective homomorphism h is an epimorphism since all of the generators g(W) of the W-circuits group are by design in its image.
The characterization of Ker(h) is derived from representation of quaternions as orthogonal rotations of the 3-dimensional Euclidean space.
The units i, j, k may be arbitrarily mapped into vectors of an orthonormal basis in the Euclidean space and the corresponding basis vectors are labeled e(i), e(j), e(k). For a quaternion with zero real part p=bi+cj+dk, e(p)=b*e(i)+c*e(j)+d*e(k).
Let H1 be the group of quaternions of norm 1 and g: H1→SO(3) be the representation defined as g(q)[e(b)]=e(q*b*q−1).
It is known that g(q) is an orthogonal rotation; g is a representation of the group of quaternions of norm 1 and that the kernel of this representation is the cyclic group 2={1, −1}.
The group of quantum gates PSU(2) also has a standard orthogonal representation stemming from its adjoint representation on the Lie algebra psu(2)=su(2)=so(3). More specifically if psu(2) is regarded as the algebra of zero-trace Hermitian matrices then ad: PSU(2)*Aut(psu(2)), where Aut is the automorphism, is ad(u)[m]=u m u−1.
The adjoint representation for PSU(2) is faithful.
If the above homomorphism h is regarded as the homomorphism h: W1→PSU(2) then it is immediate that ad h=g on W1. Since ad is faithful, i.e., injective, the kernel of h coincides with Ker(g)=Z(W1)=()2={−1,1}. (Q.E.D.)
Lipschitz quaternions form a division ring, and in view of Theorem 2, a quaternion with norm equal to 5L can be decomposed into a product of generators in equation 3 in L trial division steps.
Pseudo code for an example decomposition technique is as follows, with input being a Lipschitz quaternion q of norm 5L:
Now, given a unitary U as described in Thm 1, it is associated with the quaternion q=a+bi+cj+dk that has norm 5L and thus belongs to the subgroup W. The factorization of q in the basis given in equation 3 is translated into a factorization of U in the Wbasis. Thus, the approximation of a target unitary gate G by a W quantum circuit is constructively reduced to approximating G with a unitary U described in Thm 1.
Techniques for decomposing single-qubit unitaries into a circuit in the set +V, where is the set of single-qubit Clifford gates and V is one of the V gates, are discussed below.
At 1002, a circuit depth L or precision ε is determined.
At 1004, a unitary quantum circuit of a target quantum circuit is determined. The unitary quantum circuit has the predetermined circuit depth L or precision ε.
At 1006, the unitary form of the unitary quantum circuit is expressed as or converted into a quaternion form having a specific structure. For example, the following mapping may be utilized to convert back and forth between quaternion form and unitary form for the V(5) basis set.
i→iX
j→iY
k→iZ
(1±2i)/√{square root over (5)}→(1±2iX)/√{square root over (5)}
(1±2j)/√{square root over (5)}→(1±2iY)/√{square root over (5)}
(1±2k)/√{square root over (5)}→(1±2iZ)/√{square root over (5)}
At 1008, the quaternion form is factorized to produce a list/sequence of irreducible quaternions factors. The factorization is determined based at least in part on the predetermined circuit depth L or precision ε.
At 1010, each quaternion of the list/sequence of quaternions is then mapped back into a unitary (e.g., a quantum gate of the V(5) basis set) to produce the replacement quantum circuit.
Techniques for determining a unitary quantum circuit of a target quantum gate are provided below. In one embodiment, a randomization technique is employed to decompose single-qubit unitaries into a circuit in the set +V, where is the set of single-qubit Clifford gates and V is one of the V gates. In another embodiment, a direct search technique is employed to single-qubit unitaries into a circuit in the set +V, where is the set of single-qubit Pauli gates and V is one of the V gates.
The following technique is based on a conjecture. The conjecture is presented for a general prime p=1 mod 4. However, the techniques discussed herein may, in some instances, be applied for p=5, and in such instances, the conjecture to be true only for p=5.
Conjecture 1
Consider N=pL, where p is a fixed integer prime number with p=1 mod 4 and L is a large even integer. For a constant Δ>1, let the four-square decomposition set s4(N), the geometric ring R(N, Δ), and the circular segment A(N, Δ, P+) be defined as above. Let Prx,y(s4(N)) be the projection of the s4(N) onto its first two coordinates. Then
card(Prx,y(s4(N))∩R(N,Δ))=Ω(pL/2/√{square root over (L)}) (1)
and
card(Prx,y(s4(N))∩A(N,Δ,P+))=Ω(pL/4/√{square root over (L)}) (2)
The technique begins by approximating an arbitrary Z-rotation with a +V quantum circuit. The following technique works well in practice for ε<2*5−4=0.0032.
Problem 1
Given a Z-rotation G=RZ(θ) and a small enough target precision ε, synthesize a+V circuit c(G, ε) such that
dist(c(G,ε)<ε (4)
and
V
c(c(G,ε)))≦4 log5(2/ε)). (5)
Theorem 3
There exists a randomized algorithm that solves Problem 1 in expected time polynomial in log(1/ε).
Geometry that relates Thm 3 to Conjecture 1 for p=5 is presented below. The goal is to select the target circuit depth value L such that
ε<2*5−L/4. (6)
Having found the smallest integer L satisfying equation 6, G is represented as
and G is approximated with U=(aI+biX+ciY+diZ5−L/2, as suggested by Thm 1.
Approximating G to precision ε in the trace distance metric is equivalent to finding U such that
Without loss of generality, it suffices to prove the theorem for π/2<θ<π/2 since the target gate can be rotated to a position within this interval using RZ(±π/2) rotations from the Clifford group. Further, the selection of L ensures that 5L/4ε˜2.
Denote by Aε(θ) the segment of the unit disk where
Let D(L) be an isotropic dilation of the plane with coefficient 5L/2. Then the area of
D(L)[Aε(θ)] is
Define the angle φ=√{square root over (2)}ε(1−ε2/4) and the interval
with subinterval 5L/2 sin θ2−ε,5L/2 sin θ2+ε.
The length of the latter is approximately
and it contains approximately at least as many integer values.
Given any integer a such that
it can be geometrically derived that the intersection of the horizontal line w=a with D(L)[Aε(θ)] is a straight line segment that is longer than
and that it contains at least two integer grid points.
The theorem may now be proved.
Proof.
As discussed above, the set of all representations of 5L is a sum of squares of four integers s4(5L)={(x, y, z, w)ε4|x2+y2+z2+w2=5L}.
The key step in this proof is finding a point (a, d) in the intersection of Prx,y(s4(5L)) and D(L)[Aε(θ)]. Once such a point is found, a Rabin-Shallit algorithm may be used to express 5L−a2−d2 as b2+c2, b, cε. Then U=(aI+biX+ciY+diZ)5−L/2 would be the desired approximation of G, and can be represented precisely as a W circuit in at most L quaternion division steps.
Consider a horizontal line w=a, where aεIw(ε, θ). By geometric calculation it is found that the intersection of this line with the D(L)[Aε(θ)] segment is a line segment that is at most
long.
For this choice of L this maximum length is approximately 4√{square root over (2)} and thus the line segment contains at most 5 points with an integer first coordinate. On the other hand, it was shown earlier that for
the intersection of the w=a line with D(L)[Aε(θ)] is a line segment that is longer than 2 and must contain at least 2 points with integer z coordinate. In other words, if aεIw(ε, θ) is a randomly selected integer, then with probability at least 1/√{square root over (2)} the intersection segment contains at least 2 integer grid points.
The following pseudo code provides an example randomized approximation technique:
In the worst case the pseudo code terminates by exhausting the Θ(5L/4) candidate points in the D(L)[Aε(θ)] segment. However, it is noted that this segment is that of Conjecture 1 when p=5. Therefore the share of satisfactory candidates among all of the integer grid points D(L)[Aε(θ)] is Ω(1/√{square root over (L)}). Thus the pseudo code will terminate in O(√{square root over (L)}) iterations on average.
Since the average overall number of iterations is moderate, the largest cost in the pseudo code is line 8. It has been shown that the effective test for an integer ν to be a sum of squares of two integers has expected running cost of O(log2(ν)log(log(ν))). In the present example ν<8*5L/2 and it is estimated the expected cost of the step as O(L2 log(L)). Therefore the overall expected cost of the algorithm is O(L5/2 log(L)) which translates into O(log(1/ε)5/2 log(log(1/ε))).
One can say that the above pseudo code is solving a norm equation in line 8, however this is a norm equation over the simple domain of Gaussian integers and happens to nicely coincide with the well-studied classical problem of decomposing an integer into a sum of two squares.
As will be discussed below, most, although not all, single-qubit target gates allow approximating circuits with V count Vc≦3 log5(1/ε) for small enough target precision ε. Thus the resource count Vc=log5(1/ε) guaranteed by the above pseudo code for the example randomized approximation technique is too loose in most cases, including in the case of most axial rotations. In some embodiments, the above pseudo code may be tightened by setting L=[c log5(1/ε)], c <4 in an attempt to find a suitable completion candidate following the same randomized search loop as described above.
c may be iterated from c=3 to c=3.9 with a suitable step size δc. Since polynomial-time termination of the randomized search loop is no longer supported by Conjecture 1, an arbitrary time limit may be set on the search loop for each iteration. The results of this technique on a test set of 1000 random rotations at 6 values of ε indicate that the minimal successful coefficient c satisfies 3.5<c<4, with the average successful c estimated at 3.7. The R gate 204 (see
A foundation for efficient circuit synthesis over the V basis is the set of quaternions of norm 5L and a body of number theory facts and conjectures related to that set. Given an integer prime p such that p=1 mod 4, it is apparent that most of these facts and observations generalize to quaternions of norm pL, which are generated by the primitive ones of norm p. Modulo Lipschitz units there are p+1 such quaternions in the generator set. These correspond to a basis of p+1 unitary operators that we denote V′(p). Together with the Pauli gates a subset of (p+1)/2 of the V′(p). operators generate the generalization of the W circuits.
However, in the case of p=5, it was sufficient to add only one V operator in order to ensure the asymptotic uniformity of the grid of +{V} circuits. For p >5, additional independent V(p) operators are required.
V
1(13)=(2I+3iZ)/√{square root over (13)},V1†(13)=(2I−3iZ)/√{square root over (13)},
V
2(13)=(I+2i(X+Y+Z))/√{square root over (13)},V2†(13)=(I−2i(X+Y+Z))/√{square root over (13)},
V
3(13)=(2I+iX+2i(Y+Z))//√{square root over (13)},V2†(13)=(2I−iX−2i(Y+Z))//√{square root over (13)},
V
4(13)=(2I+iY+2i(X+Z))/√{square root over (13)},V4†(13)=(2I−iY−2i(X+Z))//√{square root over (13)},
V
5(13)=(2I+iZ+2i(X+Y))//√{square root over (13)},V5†(13)=(2I−iZ−2i(X+Y))//√{square root over (13)}.
A generalization of Thm 2 characterizes the gates representable exactly in the +{V′ (p)} basis as normalizations of Lipschitz quaternions of norm pL, Lε. The exact synthesis of the corresponding circuit for a unitary of the form U=(aI+biX+ciY+diZ)/pL/2 amounts to a generalization of Algorithm 2 and requires at most (p+1)*L quaternion divisions.
Thm 3 also generalizes to +{V′(p)} circuits, to the extent that Conjecture 1 holds for the prime parameter p, and the circuit depth estimate from the theorem generalizes to an estimate of the form L≦4 logp(2/ε).
The V(5) basis set was focused on for at least the reason that the basis requires only one non-Clifford gate for which there is a fault-tolerant implementation protocol.
Discussed below is a direct search technique for decomposing single-qubit unitaries into a circuit in the set 3+V, where is the set of single-qubit Pauli gates and V is one of the V gates.
Problem 2 Given an arbitrary single-qubit unitary GεPSU(2) and a small enough target precision target precision ε, synthesize a W circuit c(G, ε) such that
dist(c(G,ε),G)<ε (7)
and the V count of the resulting circuit is
V
c≦3 log5(1/ε) (8)
for the majority of target unitaries and
V
c≦4 log5(2/ε) (9)
in edge cases.
Let L be the intended V count of the desired approximation circuit. Given a target single-qubit unitary gate represented as G=αI+βiX+γiY+δiZ, in order to find integers (a, b, c, d) such that a2+b2+c2+d2=5L and
dist(G,(aI+biX+ciY+diZ)5−L/2)<ε, (10)
the α,β,γ,δ coordinates are split into two-variable blocks. Assume that the split is given by (α,δ),(β,γ). For the approximation inequality in equation 10 to hold it is sufficient that
(b5−L/2−β)2+(c5−L/2−γ)2<ε2 (11)
and
(a5−L/2−α)2+(d5−L/2−δ)2<ε2. (12)
In some instances, a precision of ε=5−L/3 may be achieved. It can be shown that there are approximately π5L/3 integer pairs satisfying each of the conditions in equation 11 and equation 12 for that ε. All of the (b,c) integer pairs may be swept over and a hash table of all of the 5L−b2−c2 differences occurring in the first set may be built. Then, all of the (a,d) integer pairs from the second set may be swept over, in search of one for which a2+d2 occurs in the hash table.
Using number-theoretical considerations, the number of candidates considered in this direct search can be reduced by a factor of approximately
(where LR is the Landau-Ramanujan constant). Thus, for L=34 the reduction factor is approximately 0.05.
For target unitaries that cannot be approximated to precision 5−L/3, the technique may iteratively triple the precision goal (which has an effect of expanding the search space at each iteration) until a satisfactory candidate is found.
Pseudo code for an example direct search technique with inputs of precision ε and target gate G=αI+βiX+γiY+δiZ is as follows:
The above-described techniques generally pertain to quantum devices, quantum algorithms, and simulations of quantum systems on non-quantum devices such as digital computers. Although the techniques have been described in language specific to structural features and/or methodological acts, it is to be understood that the appended claims are not necessarily limited to the specific features or acts described. Rather, the specific features and acts are disclosed as exemplary forms of implementing such techniques.
This patent application claims the benefit of U.S. Provisional Application No. 61/800,033, filed Mar. 15, 2013, entitled “Efficient Decomposition of Single Qubit Gates into V Basis Circuits,” which provisional application is hereby incorporated in its entirety by reference.
Number | Date | Country | |
---|---|---|---|
61800033 | Mar 2013 | US |