Patent Description:
This invention relates to quantum computing, and more particularly, to performing quantum operations with passive noise suppression.

A classical computer operates by processing binary bits of information that change state according to the laws of classical physics. These information bits can be modified by using simple logic gates such as AND and OR gates. The binary bits are physically created by a high or a low signal level occurring at the output of the logic gate to represent either a logical one (e.g., high voltage) or a logical zero (e.g., low voltage). A classical algorithm, such as one that multiplies two integers, can be decomposed into a long string of these simple logic gates. Like a classical computer, a quantum computer also has bits and gates. Instead of using logical ones and zeroes, a quantum bit ("qubit") uses quantum mechanics to occupy both possibilities simultaneously. This ability and other uniquely quantum mechanical features enable a quantum computer can solve certain problems exponentially faster than that of a classical computer.

Prior art is found in <NPL>, and in <CIT> which generally relates to analog processor compressing quantum devices.

Embodiments of the invention are defined by the dependent claims.

The inventor has provided a method to protect quantum information during computation by creating encoded quantum bits using a number of physical quantum bits on a two-dimensional lattice, neighbors of which are strongly coupled using two-qubit interactions. An array of coupled physical qubits forms a composite logical qubit. Quantum gates are achieved at the logical level by coupling and decoupling multiple composite qubits and by applying local fields to individual physical qubits; couplings (also called interactions herein) and fields are turned on and off adiabatically. The encoded qubits and gates are protected from noise acting on individual qubits and coupling strengths between the qubits to a degree that increases with the number of physical qubits comprising the composite qubits and with increasing strength of the interactions. While the illustrated systems and methods can suppress the effects of noise during quantum computation, it is anticipated that a layer of standard error correction would be applied on top of this passive error suppression. These protected qubits and gates then make it possible to achieve errors well below the thresholds for error correction while maintaining much wider margins on control signals than standard techniques. The net result is a system that is easier to build and potentially has lower error correction overhead.

<FIG> illustrates one example of system <NUM> for performing a quantum operation. The system includes a plurality of physical qubits <NUM>-<NUM> each coupled to its neighboring qubits by respective coupling mechanisms <NUM>-<NUM>. Each of the qubits <NUM>-<NUM> can be implemented in any appropriate quantum technology with the herein-prescribed tunable couplings and single qubit control, including superconducting circuits, such as Cooper pair boxes or flux qubits comprised of Josephson junctions, quantum dots, photonic circuits, ion traps and others. In the illustrated system, four physical qubits are shown in a two-by-two arrangement, but it will be appreciated that other configurations of qubits, including larger arrays containing more physical qubits and arrays that are not square, can be utilized to represent a given logical qubit. For arrays that are rectangular, the strengths of the coupling mechanisms in the shorter dimension can be increased by up to fifty percent relative to the coupling strength in the longer dimension to maintain a suitable gap between a degenerate ground state of the logical qubit and the excited states.

On the two-dimensional array, each qubit (e.g., <NUM>) is operatively coupled to its nearest neighbor (e.g., <NUM>) or neighbors in a first direction, the horizontal direction in the example of <FIG>, via a first set of coupling mechanisms <NUM> and <NUM> each configured such that, when the coupling strength is non-zero, it is energetically favorable for the states of the coupled physical qubits (e.g., <NUM> and <NUM>) to align in the same direction along a first axis of the Bloch sphere. Similarly, each qubit (e.g., <NUM>) is operatively coupled to its nearest neighbor (e.g., <NUM>) or neighbors in a second direction, the vertical direction in the example of <FIG>, via a second set of coupling mechanisms <NUM> and <NUM> each configured such that, when the coupling strength is non-zero, it is energetically favorable for the states of the coupled physical qubits (e.g., <NUM> and <NUM>) to align in the same direction along a second axis of the Bloch sphere. It will be appreciated that a given logical qubit can be formed from a combination of multiple physical qubits and coupling mechanism <NUM> for at least part of the quantum gate, although it will be appreciated that, during a gate operation, the specific qubits and coupling mechanisms comprising the logical qubit can change.

The system <NUM> further includes a plurality of control mechanisms <NUM>-<NUM> that are each configured to provide a control signal to one of the physical qubits <NUM>-<NUM> or one of the first and second sets of coupling mechanisms <NUM>-<NUM> as to adjust coupling strengths in a Hamiltonian of the logical qubit. Each control mechanism <NUM>-<NUM> that is associated with a given qubit <NUM>-<NUM> is configured to adjust the strength of a field that causes an energy splitting between the states of the qubit associated with an axis of the Bloch sphere, such that a first eigenstate of an operator associated with the axis has a lower energy than a second eigenstate associated with the axis. In one implementation, a given qubit can have multiple control mechanisms. Each control mechanism <NUM>-<NUM> associated with a given coupling mechanism is configured to increase or decrease a coupling strength associated with the coupling mechanism. It will be appreciated that the control mechanisms <NUM>-<NUM> may contain components or circuitry in common, but are depicted as individual elements herein to emphasize that each qubit <NUM>-<NUM> and <NUM>-<NUM> is individually addressable. It will be appreciated that, in one implementation, a default coupling strength is zero, and that the coupling strength will be changed to a non-zero value when a Hamiltonian incorporating that coupling is applied in a given gate. Further, the system <NUM> can be configured such that, for a given Hamiltonian, if a control mechanism (e.g., <NUM>) is applying a local field of non-zero strength to a given physical qubit (e.g., <NUM>) of the array of physical qubits, the control mechanisms (e.g., <NUM> and <NUM>) for each coupling mechanism (e.g., <NUM> and <NUM>) associated with the physical qubit set the respective coupling strengths to zero.

It will be appreciated that the nature of each coupling mechanism <NUM>-<NUM> and control mechanism <NUM>-<NUM> will vary with the implementation and the specific gate performed. Examples of coupling devices include superconducting circuits containing RF-SQUIDs or DC-SQUIDs, which inductively couple qubits together by their flux; the coupling strength can be tuned via a control flux. SQUIDs include a superconducting loop interrupted by one Josephson junction (an RF-SQUID) or two Josephson junctions (a dc-SQUID). The coupling devices may be capable of both ferromagnetic and anti-ferromagnetic coupling, depending on how the coupling device is being utilized within the interconnected topology. In the case of flux coupling, ferromagnetic coupling implies that parallel fluxes are energetically favorable and anti-ferromagnetic coupling implies that anti-parallel fluxes are energetically favorable.

The various gates performed by this system are derived by tracking the evolution of logical operators, providing a powerful way to design Hamiltonians to achieve a desired gate. The interactions used in performing gates create an energy gap with states outside the computational subspace while excitations to states above the gap are suppressed by nearly adiabatic time-evolution and by ensuring that the thermal excitation rate is acceptably low relative to the gate time. This makes the scheme very robust to noise on the strength of Hamiltonian terms since a precise interpolation path is not required to achieve a given gate.

Logical qubits are protected from noise in two ways: first, the energy gap suppresses thermal excitations out of the ground space when the gap is sufficiently large relative to the thermal energy of the logical qubit's environment. Second, noise on individual qubits, which causes an energy splitting of the logical qubit states, is suppressed by approximately rd where r is the ratio of noise to coupling strengths and d is the number of qubits along the relevant direction of the composite qubit. This noise suppression occurs due to the presence of a degeneracy (or redundancy) of logical operators. Noise that does not commute with a given type of logical operator acts on all physical qubits along a row or column in order to split the energies of the logical qubit states. This is a higher order process than linear, which makes the effect weaker than the same noise acting on an individual physical qubit. The degree of passive noise reduction provided by the system <NUM> will generally increase with the number of physical qubits comprising a given logical qubit, at the cost of reducing the energy gap between the excited states of the logical qubit and the degenerate ground state in which the gates are performed. This can be mitigated to a great extent by increasing a maximum coupling strength of the coupling mechanisms <NUM>-<NUM>, but it may provide a practical limitation of the size of the array used to encode a given logical qubit.

<FIG> illustrates an example of an array of physical qubits <NUM> that could be employed for a series of quantum operations, such as those described in <FIG> below. In the illustrated array, sixteen physical qubits <NUM>-<NUM> are connected by twenty-four coupling mechanisms <NUM>-<NUM>. Each coupling mechanism <NUM>-<NUM> in the vertical direction is an XX coupler configured to align the coupled qubits along an X-axis of the Bloch sphere. Each coupling mechanism <NUM>-<NUM> in the horizontal direction is a ZZ coupler configured to align the coupled qubits along a Z-axis of the Bloch sphere. The XX and ZZ interactions create an energy gap that is proportional to their interaction strengths. Each qubit <NUM>-<NUM> can be exposed to a tunable local field, such as an external magnetic field, to produce an adjustable splitting of the qubit into eigenstates of either of the X-axis or the Z-axis of the Bloch sphere. This can be accomplished by separate control mechanisms or a configurable control mechanism capable of providing the ground state splitting along either axis. Each coupler <NUM>-<NUM> can have a tunable coupling strength controllable via an associated control mechanism.

In the figure, the control mechanisms for the qubits are not shown and are instead each represented as a coupling strength, gOij, adjusted in magnitude via a control signal (also not shown), where O is the axis of the Bloch sphere, X or Z, represented by the signal, i is a row index of the qubit, and j is a column index of the qubit. Similarly, the control mechanism for each ZZ coupler is represented as a coupling strength, gZZij, where i is a row index of the coupler, and j is a column index of the leftmost of the pair of physical qubits coupled by the coupler. The control mechanism for each XX coupler is represented as a coupling strength, gXXij, where i is a row index of the uppermost of the pair of physical qubits coupled by the coupler, and j is a column index of the coupler.

Each gate is performed by interpolating from a first Hamiltonian to at least a second Hamiltonian by changing the coupling strengths described above via control signals. The precise temporal profiles of the control signal pulses are not critical as long as the controlled coupling strengths can be turned off close to zero and there is temporal overlap between subsequent control signal pulses such that a sufficiently large energy gap to excited states is maintained relative to the speed of the gate and the temperature of the system. This grants significant robustness to control noise.

Selection of Hamiltonians for a given gate is primarily based on constraining the transformations of the logical operators and controlling the localization of quantum information, while maintaining an energy gap to undesired states. The gaps are verified by calculating the eigenvalues of the system throughout the gate sequence but, as a rule of thumb, interpolating between Pauli terms that anti-commute will generally maintain a gap. As simple examples, Z → X → -Z maintains a gap, whereas Z → -Z does not. Two commutation rules provide the primary constraints on logical operator evolution, specifically logical operators must commute with arbitrarily weighted sums of the relevant two Hamiltonians and all logical operators must have proper commutation relations with each other throughout the gate sequence. Single qubit terms, such as IX, act to expel quantum information from the qubits they act on. In contrast, two-qubit terms act to delocalize the quantum information across the two qubits.

In view of the foregoing structural and functional features described above in <FIG> and <FIG>, example methods will be better appreciated with reference to <FIG> <FIG>.

<FIG> illustrates a method <NUM> for qubit state preparation using the array of <FIG>. Specifically, <FIG> illustrates a method for preparing a logical qubit in either an eigenstate of the X operator, such as the plus state, <MAT>, or minus state, <MAT>, or an eigenstate of the Z operator, such as |<NUM>〉 or |<NUM>〉. The illustrated method focuses on the plus state. Due to the complexity of the Hamiltonians involved, <FIG> illustrates the Hamiltonians <NUM>-<NUM> used for the state preparation in graphical form, wherein the presence of an X or a Z field on a given physical qubit represents the application of energy splitting to the physical qubit, and the presence of an XX or a ZZ on a coupling mechanism between represents a non-zero coupling between the qubits. For the purpose of example, the prepared logical qubit is a square array of four physical qubits, and only the portion of the array of <FIG> necessary for this implementation is illustrated. <FIG> illustrates a state preparation for each of an eigenstate of the X operator (<NUM> and <NUM>) and the Z operator (<NUM> and <NUM>). The specific prepared state for a given operator (e.g., plus or minus) depends on whether the signs of the field strengths in each row match, that is, if the energy splitting induced in the two physical qubits in each row is performed such that each qubit has the same eigenstate with lower energy.

At <NUM>, a first Hamiltonian is applied comprising a linear combination of single qubit terms representing individual fields applied to each physical qubit. In the two examples of <FIG>, the first Hamiltonians are indicated as <NUM> and <NUM>. In the example of the plus state and using the notation from <FIG>, the first Hamiltonian <NUM> can be described as H<NUM> = - gX<NUM>XIII - gX<NUM>IXII - gX <NUM>IIXI - gX <NUM>IIIX. At <NUM>, the physical qubits are allowed to relax to their ground state given the applied Hamiltonian. At <NUM>, the logical qubit is interpolated to a second Hamiltonian representing a coupling between each neighboring pair of qubits in the logical qubit. Effectively, the first Hamiltonian is ramped off while the second Hamiltonian is ramped on. Alternatively, both the first and second Hamiltonians could be turned on at the start and then the first Hamiltonian adiabatically ramped off, achieving the same effect. Again, in the example of the plus state and using the notation from <FIG>, the second Hamiltonian <NUM> can be described as H<NUM> = -gZZ<NUM>ZZII - gZZ<NUM>IIZZ - gXX<NUM>XIXI - gXX<NUM>IXIX. The strength of the two-qubit terms, representing a coupling strength between two qubits, sets the size of the energy gap to excited states and hence the rate at which the gate can proceed to maintain quasi-adiabatic evolution. The rates of the ramps are set by how much excitation out of the ground space can be tolerated. The actual temporal shape and relative timing of the ramps is not critical as long as an energy gap is maintained throughout the gate.

Logical operators X = x<NUM>x<NUM> and X<NUM>X<NUM> are both valid logical X operators, Z = Z<NUM>Z<NUM> and Z<NUM>Z<NUM> are both valid logical Z operators. Here, subscripts refer to qubits allowing identity operators to be suppressed. The gate works by restricting the logical operator that commutes with the initial Hamiltonian. For the example on the plus state preparation, H<NUM> commutes with X but not Z. Hence, the ground state of the first Hamiltonian will be the +<NUM> eigenstate of the X operator when all signs are the same, which is the plus state. In the illustrated example, changing the sign of one amplitude on each row can be used to prepare the minus state. Readout of the qubit state can be achieved by reversing the method <NUM> of <FIG>. Alternatively, the qubit encoding interactions can be turned off and the individual qubits measured by any suitable means.

<FIG> illustrates a method <NUM> for qubit elongation using the array of <FIG>. Specifically, <FIG> illustrates a method for extending an existing logical qubit <NUM> into a desired elongation region <NUM>. Due to the complexity of the Hamiltonians involved, <FIG> illustrates the Hamiltonians <NUM> and <NUM> used for the elongation in graphical form, wherein the presence of an X or a Z on a given physical qubit represents the application of energy splitting to the physical qubit, and the presence of an XX or a ZZ on a coupling mechanism between represents a non-zero coupling between the qubits. For the purpose of example, each of the original logical qubit <NUM> and the elongation region <NUM> is a square array of four physical qubits, and only the portion of the array of <FIG> necessary for this implementation is illustrated.

At <NUM>, a first Hamiltonian is applied to the array comprising a linear combination of two qubit terms, representing couplings for the qubits within the logical qubit <NUM>, and single qubit terms representing a local field applied to each physical qubit in the elongation region <NUM>. At <NUM>, the array is interpolated to a second Hamiltonian comprising a linear combination of two qubit terms for all qubits in the original logical qubit and the elongation region <NUM>, such that the logical qubit <NUM> expands to the elongation region. Effectively, the second Hamiltonian represents a coupling between each neighboring pair of qubits in the elongation region in a manner similar to the state preparation of <FIG>. In the illustrated example, the encoded qubit grows in one direction, and the illustrated method of <FIG> can be performed in reverse, that is, interpolating from the second Hamiltonian to the first Hamiltonian, to shrink the qubit. These operations are useful as gate primitives and for moving quantum information around the array. For example, to move the encoded qubit, the logical qubit <NUM> can be elongated in one direction and then shrunk such that the encoded information has translated to a desired region of the array.

<FIG> illustrates a method <NUM> for performing a CNOT gate using the array of <FIG>. Specifically, <FIG> illustrates a method for performing a CNOT gate on a target qubit <NUM> and controlled by a control qubit <NUM>. Due to the complexity of the Hamiltonians involved, <FIG> illustrates the Hamiltonians <NUM> and <NUM> used for the CNOT gate in graphical form, wherein the presence of an X or a Z on a given physical qubit represents the application of energy splitting to the physical qubit, and the presence of an XX or a ZZ on a coupling mechanism between represents a non-zero coupling between the qubits. For the purpose of example, the target qubit <NUM> is a square array of four physical qubits, and the control qubit <NUM> is a two qubit by four qubit rectangular array.

At <NUM>, a first Hamiltonian is applied to the array comprising a linear combination of two qubit terms, representing couplings for the qubits within each of the target qubit <NUM> and the control qubit <NUM>. At <NUM>, the array is interpolated to a second Hamiltonian in which a portion of the control qubit <NUM> is decoupled from the remainder of the control qubit and coupled to the target qubit <NUM>. In the illustrated example, a square two-qubit block of the control qubit <NUM> is decoupled from the control qubit and coupled to the target qubit <NUM>.

<FIG> illustrates a method <NUM> for performing a non-Clifford rotation gate. Rather than using the array of <FIG>, this method <NUM> assumes that a control mechanism is available for providing a splitting along the Y-axis of the Bloch sphere for at least one of the physical qubits. Due to the complexity of the Hamiltonians involved, <FIG> illustrates the Hamiltonians <NUM> and <NUM> used for the state rotation in graphical form, wherein the presence of an A on a given physical qubit represents the application of energy splitting to the physical qubit along the Y and Z axes of the Bloch sphere, such that A = aY + bZ, and a<NUM> + b<NUM> = <NUM>, and the presence of an XX on a coupling mechanism between represents a non-zero coupling between the qubits. For the purpose of example, the initial logical qubit <NUM> is an array of three physical qubits.

At <NUM>, a first Hamiltonian is applied to the array comprising a linear combination of two qubit terms, representing couplings for the qubits within the logical qubit <NUM>. At <NUM>, the array is interpolated to a second Hamiltonian comprising a linear combination of a single qubit term representing a splitting along the Y and Z axes of the Bloch sphere via a local field and two qubit terms for the remaining qubits in the logical qubit. To understand the operation of this gate, it is helpful to consider the valid logical Z operators that commute with both Hamiltonians, Z ∈ {ZZZ, -ZYY, -YZY, -YYZ}. The last three can be obtained from ZZZ by multiplying the terms of the first Hamiltonian to ZZZ individually and together. Representing Z in terms of the logical operators for the second Hamiltonian, denoted by primes, Y' ∈ {Y<NUM>Z<NUM>, -Z<NUM>Y<NUM>}, Z' ∈ {Z<NUM>Z<NUM>, -Y<NUM>Y<NUM>} and the operator A<NUM>, one obtains Z = -aA<NUM>Y' - bA<NUM>Z'. When the second Hamiltonian becomes active, quantum information that was delocalized across all three qubits is expelled from the first physical qubit, and the logical Z operator is transformed to -aT' - bZ' while X is unchanged, which is exactly the transformation for a rotation around the X axis by an angle cos-<NUM> b.

<FIG> illustrates a method <NUM>. not according to the claimed invention for performing a Hadamard gate on a logical qubit <NUM>. Rather than using the array of <FIG>, this method <NUM> assumes that the coupling mechanisms linking the second and third columns of physical qubits are configured to provide a ZX coupling instead of the ZZ coupling of <FIG>, the vertical coupling mechanisms in the third and fourth columns are ZZ couplers, and the horizontal coupling between the third and fourth columns are XX couplers. Due to the complexity of the Hamiltonians involved, <FIG> illustrates the Hamiltonians <NUM>-<NUM> used for the Hadamard gate in graphical form, wherein the presence of an X or a Z on a given physical qubit represents the application of energy splitting to the physical qubit, and the presence of an XX, a ZX, or a ZZ on a coupling mechanism between represents a non-zero coupling between the qubits. For the purpose of example, the initial logical qubit <NUM> is a square array of four physical qubits.

At <NUM>, a first Hamiltonian is applied to the array comprising a linear combination of two qubit terms, representing couplings for the qubits within the logical qubit <NUM>, and one qubit Z terms for the remaining physical qubits involved in the gate. At <NUM>, the array is interpolated to a second Hamiltonian in which the original logical qubit is coupled to two of the remaining physical qubits via ZX couplers, with the two newly coupled qubits coupled together via a ZZ coupler. At <NUM>, the array is interpolated to a third Hamiltonian in which the logical qubit is coupled to the two remaining physical qubits via XX couplers, with the two newly coupled qubits coupled together via a ZZ coupler. In the third Hamiltonian, two of the physical qubits from the logical qubit are also decoupled and single qubit X fields are applied. At <NUM>, the array is interpolated to a fourth Hamiltonian comprising a linear combination for which the all physical qubits comprising the original logical qubit are represented as single qubit X terms and the logical qubit is represented by two-qubit coupling terms. Effectively, the Hadamard gate is generated by elongating the encoded logical qubit <NUM> through a boundary between two code blocks where the interactions of the second block are rotated <NUM> degrees relative to the first. Once the Hadamard gate is complete, an elongation gate can be applied while turning a <NUM> degree corner to reorient the code block to match that of the left block.

The Hadamard gate can also be achieved in fewer steps by elongating from the same initial Hamiltonian to the fully coupled 2x4 composite qubit in one interpolation step and then shrinking down and moving the logical qubit to the rightmost 2x2 qubit block in the second interpolation step. This alternative method requires greater qubit elongation, 2x4 instead of 2x3, which will have a smaller energy gap to excited states for the same coupling strengths.

<FIG> illustrates one example of a method <NUM> for performing a quantum operation. At <NUM>, a set of control signals are applied to a system to provide a first Hamiltonian for the system. The system includes an array of physical qubits and a plurality of coupling mechanisms configured such that each pair of neighboring physical qubits within the array is coupled by an associated coupling mechanism. The first Hamiltonian represents, for each coupling mechanism, a coupling strength between zero and a maximum value. At <NUM>, an adiabatic interpolation of the Hamiltonian of the system from the first Hamiltonian to a second Hamiltonian is performed. The second Hamiltonian represents, for at least one of the plurality of coupling mechanisms, a coupling strength different from that of the first Hamiltonian.

Claim 1:
A method for performing a quantum gate operation on a logical qubit, comprising a plurality of physical qubits, that is resilient to noise on control signals, on the individual physical qubits, and on the coupling strengths between physical qubits, the method comprising:
applying a set of control signals to provide a first Hamiltonian for a system comprising an array of physical qubits, the array of physical qubits including at least the plurality of physical qubits, and a plurality of coupling mechanisms, comprising a first set of coupling mechanisms, each of the first set of coupling mechanisms operatively coupling an associated pair of neighboring physical qubits within the array in a first direction of the array along a first axis of the Bloch sphere, such that, when a coupling strength of a given coupling mechanism is non-zero, it is energetically favorable for the states of the coupled qubits to align in a same direction along the first axis of the Bloch sphere, and a second set of coupling mechanisms, each of the second set of coupling mechanisms operatively coupling an associated pair of neighboring physical qubits within the array in a second direction of the array along a second axis of the Bloch sphere, such that, when a coupling strength of a given coupling mechanism is non-zero, it is energetically favorable for the states of the coupled qubits to align in a same direction along the second axis of the Bloch sphere, the first Hamiltonian representing, for each coupling mechanism, a coupling strength between zero and a maximum value; and
applying a logical operator to the system as an adiabatic interpolation of the Hamiltonian of the system from the first Hamiltonian to a second Hamiltonian, the second Hamiltonian representing, for at least one of the plurality of coupling mechanisms, a coupling strength different from that of the first Hamiltonian, with each of the first Hamiltonian and the second Hamiltonian being selected such that the logical operator commutes with an arbitrary weighted sum of the first Hamiltonian and the second Hamiltonian.