The embodiments of the invention relate generally to the field of quantum computing. More particularly, these embodiments relate to an apparatus and method for error reduction using symmetry in a quantum computing system.
Quantum computing refers to the field of research related to computation systems that use quantum mechanical phenomena to manipulate data. These quantum mechanical phenomena, such as superposition (in which a quantum variable can simultaneously exist in multiple different states) and entanglement (in which multiple quantum variables have related states irrespective of the distance between them in space or time), do not have analogs in the world of classical computing, and thus cannot be implemented with classical computing devices.
A better understanding of the present invention can be obtained from the following detailed description in conjunction with the following drawings, in which:
In the following description, for the purposes of explanation, numerous specific details are set forth in order to provide a thorough understanding of the embodiments of the invention described below. It will be apparent, however, to one skilled in the art that the embodiments of the invention may be practiced without some of these specific details. In other instances, well-known structures and devices are shown in block diagram form to avoid obscuring the underlying principles of the embodiments of the invention.
A quantum computer uses quantum-mechanical phenomena such as superposition and entanglement to perform computations. In contrast to digital computers which store data in one of two definite states (0 or 1), quantum computation uses quantum bits (qubits), which can be in superpositions of states. Qubits may be implemented using physically distinguishable quantum states of elementary particles such as electrons and photons. For example, the polarization of a photon may be used where the two states are vertical polarization and horizontal polarization. Similarly, the spin of an electron may have distinguishable states such as “up spin” and “down spin.”
Qubit states are typically represented by the bracket notations 10) and 11). In a traditional computer system, a bit is exclusively in one state or the other, i.e., a ‘0’ or a ‘1.’ However, qubits in quantum mechanical systems can be in a superposition of both states at the same time, a trait that is unique and fundamental to quantum computing.
Quantum computing systems execute algorithms containing quantum logic operations performed on qubits. The sequence of operations is statically compiled into a schedule and the qubits are addressed using an indexing scheme. This algorithm is then executed a sufficiently large number of times until the confidence interval of the computed answer is above a threshold (e.g., ˜95+%). Hitting the threshold means that the desired algorithmic result has been reached.
Qubits have been implemented using a variety of different technologies which are capable of manipulating and reading quantum states. These include, but are not limited to quantum dot devices (spin based and spatial based), trapped-ion devices, superconducting quantum computers, optical lattices, nuclear magnetic resonance computers, solid-state NMR Kane quantum devices, electrons-on-helium quantum computers, cavity quantum electrodynamics (CQED) devices, molecular magnet computers, and fullerene-based ESR quantum computers, to name a few. Thus, while a quantum dot device is described below in relation to certain embodiments of the invention, the underlying principles of the invention may be employed in combination with any type of quantum computer including, but not limited to, those listed above. The particular physical implementation used for qubits is orthogonal to the embodiments of the invention described herein.
Quantum dots are small semiconductor particles, typically a few nanometers in size. Because of this small size, quantum dots operate according to the rules of quantum mechanics, having optical and electronic properties which differ from macroscopic entities. Quantum dots are sometimes referred to as “artificial atoms” to connote the fact that a quantum dot is a single object with discrete, bound electronic states, as is the case with atoms or molecules.
The quantum dot device 100 of
Generally, the quantum dot devices 100 disclosed herein may further include a source of magnetic fields (not shown) that may be used to create an energy difference in the states of a quantum dot (e.g., the spin states of an electron spin-based quantum dot) that are normally degenerate, and the states of the quantum dots (e.g., the spin states) may be manipulated by applying electromagnetic energy to the gates lines to create quantum bits capable of computation. The source of magnetic fields may be one or more magnet lines, as discussed below. Thus, the quantum dot devices 100 disclosed herein may, through controlled application of electromagnetic energy, be able to manipulate the position, number, and quantum state (e.g., spin) of quantum dots in the quantum well stack 146.
In the quantum dot device 100 of
Multiple parallel second gate lines 104 may be disposed over and between the first gate lines 102. As illustrated in
Multiple parallel third gate lines 106 may be disposed over and between the first gate lines 102 and the second gate lines 104. As illustrated in
Although
Not illustrated in
Noise is a major limiting factor in quantum computing systems. Near-term quantum computers are limited by short quantum bit (qubit) decoherence times (generally fractions of seconds) and noisy qubit operations. One way to attempt to overcome this problem is to aim for a fully fault-tolerant quantum computer. However, this approach is excessively expensive in terms of the required number of physical to logical qubits. Most of the qubits in this scheme must be used for error correction rather than computation. Consequently, this approach is not suitable for near-term quantum computers, which will not have a sufficient number of qubits to compute anything interesting if the vast majority of qubits are needed for error correction.
The embodiments of the invention described herein perform post-selection error reduction techniques applied to the results of a quantum computation. Using the known symmetry of certain quantum operations, these embodiments mitigate the effect of noise after computation without the need for rigorous error correction.
The basic operations in quantum computing are performed by applying unitary operators to a quantum state. Each gate in a quantum circuit provides a unitary transformation on the affected qubits, just as each classical gate in a classical computation stands for a Boolean function. These quantum gate operations are the building blocks of a quantum circuit.
In one embodiment of the invention, symmetries associated with each unitary operator are identified and used to post-select experimental results and throw away those results that do not obey them. For example, given the known symmetry for a particular operation, certain states can be identified as impossible outcomes (unless they are errors); data associated with these states can then be discarded.
Fully fault-tolerant quantum computing may be very far away. In the meantime (e.g., the next 20 years), systems of less than 1000 qubits may still prove to be useful with error-mitigation techniques that reduce experimental error without full-blown rigorous error correction. Using the embodiments of the invention, the maximum computing power can be realized from imperfect qubit systems, even without reaching the fault-tolerance threshold. Consequently, the techniques described herein are critical to making at least the next several generations of quantum computers useful.
In one embodiment, the quantum controller 205 executes commands included in compiled quantum program code 201 specifying a quantum runtime. The quantum program code 201 may be implemented in software executed on a general purpose processor (not shown) of a client/server device 270. One embodiment of the quantum runtime program code 201 specifies operations in accordance with the Open Quantum Assembly Language (QASM), an intermediate representation for quantum instructions. However, the underlying principles of the invention are not limited to any particular language.
The quantum controller 205 may include both a general purpose or special purpose processor to execute the quantum program code 201 and specialized circuitry to control the qubits. One or more physical layer (PHY) devices 240 coupled to or integral to the quantum controller perform the underlying operations on the qubits 265 as specified by the quantum runtime 201. For example, the physical layer devices 240 can include electromagnetic transmitters to generate microwave pulses or other electromagnetic signals to manipulate the qubits 265 in accordance with the quantum program code 201. In response, the quantum processor 260 performs the specified sequence of operations on the qubits 265 to generate results 270. In one implementation, multiple iterations of a particular operation or series of operations are required to generate the results 270.
Symmetry-based laws for quantum systems imply that the combined output of the quantum measurements on all the qubits should obey certain rules. One embodiment of the invention applies these rules to identify results which are inconsistent with the defined symmetry, which may then be discarded. For example, if the particle number is conserved, the total number of qubits measured to be in the ‘1’ state at the end of the quantum computation is constant, even though any single qubit may be in an up or down state.
In one embodiment, a symmetry detector 220 analyzes the quantum program code 201 to identify these symmetries. For example, the symmetry detector 220 identifies particular quantum gate operations following which sets of qubits will obey a known symmetry. Different quantum gate/unitary operator symmetries may be compiled within a database 236 used by the symmetry detector 220 to detect such symmetries. In one specific embodiment, a controlled-swap (C-Swap) gate implemented in a 5-qubit quantum processor 260 is used to calculate Renyi entropy, and experimental errors are mitigated by exploiting the detected symmetric properties of the C-Swap gate.
A filter configurator 221 applies the symmetries identified by the symmetry detector 220 to dynamically configure or generate a symmetry-based filter 222 specifically tailored to evaluate results 270 in accordance with the symmetries identified in the quantum program code 201. For example, in an implementation which identifies symmetries in C-Swap gates, the symmetric relationship between qubits in the C-Swap gates may be applied to the symmetry-based filter 222.
The symmetry-based filter 222 analyzes the results 270 generated by the quantum processor 260 to identify those data points 230 which are inconsistent with this symmetric relationship. Data 230 which the symmetry-based filter 222 determines is inconsistent with the expected symmetry is discarded while data which is determined to be consistent 235 is stored in a storage device of the client/server 270. Consequently, using the known symmetry of certain unitary operators such as C-Swap gates, the effects of noise after computation is mitigated without the need for rigorous error correction.
Returning to
As one example, using the convention that the top-most qubit in the five-qubit output state after the circuit shown in
A detailed description of the five qubit implementation shown in
One embodiment of a method for filtering data in accordance with symmetries is illustrated in
At 403, each data point is evaluated to determine whether it is consistent with the expected symmetry associated with its quantum gate. If not, then the data point is discarded at 404. If so, then the data point is stored at 405. When the last data point has been evaluated, determined at 406, the process ends.
The above error-mitigation techniques scale well to larger system sizes since the number of discarded states scales with the size of the Hilbert space of the system, but it will break down at larger circuit depths. Therefore it is a particularly beneficial technique for the NISQ (Noisy Intermediate-Scale Quantum) era, where short-depth circuits acting on several qubit systems without fault tolerance are expected to be useful for certain applications.
The data shown in
As mentioned above,
The efficient simulation of correlated quantum systems is the most promising near-term application of quantum computers. Described below is an implementation for a measurement of the second Renyi entropy of the ground state of the two-site Fermi-Hubbard model on a 5-qubit programmable quantum computer based on trapped ions. This disclosure illustrates the extraction of a non-linear characteristic of a quantum state using a controlled-swap gate acting on two copies of the state. This scalable measurement of entanglement on a universal quantum computer will, with more qubits, provide insights into many-body quantum systems that are impossible to simulate on classical computers.
One of the striking differences between classical and quantum systems is the phenomenon of entanglement. Analyzing large entangled states is of considerable interest for quantum computing applications. This is particularly relevant to quantum chemistry and materials science simulations involving interacting fermions [1, 2], small versions of which have been simulated on few-qubit quantum computers [3-5]. Recently, a quantum algorithm was developed to construct the entanglement spectrum of an arbitrary wave function prepared on a quantum computer via measurement of the Renyi entropies [6]. In the present description, the second Renyi entropy is measured in a 5-qubit circuit by implementing a controlled-swap (C-Swap) gate, and experimental errors are mitigated by exploiting the symmetry properties of this gate (as described generally above). Previous measurements of the Renyi entropy such as [7] were not implemented on universal machines and may not be easily generalizable to arbitrary Hamiltonians or scalable to larger systems.
For a many-body quantum system ideally described by the state |Ψ and composed of two subsystems A and B, the nth Renyi entropy is given by
where
R
n
=Tr({circumflex over (ρ)}An) (1)
is the trace of the nth power of the reduced density matrix {circumflex over (ρ)}A=TrB(|ΨΨ|). For non-zero entanglement, R2<1, which has the same universality properties as the von Neumann entropy S=−Tr({circumflex over (ρ)}A log({circumflex over (ρ)}A)). Both are measures of the entanglement between A and B, and provide valuable information about the underlying physics of the system. For example, the Renyi entropy can be used to study out-of-equilibrium scaling of entanglement [8-13], which includes distinguishing many-body localized states from thermalized states [14-18] through their time dependence and dimensional scaling law [19], and to study topological order [20, 21] and quantum critical systems [22-24].
The system under investigation in the present case is the two-site Fermi-Hubbard model, which describes interacting electrons on a lattice [25, 26]. Despite its simplicity, it has been postulated as a model for complex phenomena such as high-temperature superconductivity. Since its behavior in the thermodynamic limit remains inaccessible to classical numerical techniques, it has become a prime candidate for simulation by quantum computers [27, 28].
Several co-designed techniques are employed. First, an efficient mapping from the electronic problem to the qubit space is determined. Second, a circuit is developed for digitized adiabatic evolution to prepare the ground state of the model, parametrized by the Trotter step size and the total evolution time. Based on available experimental resources and estimated Trotter errors, a set of parameters are chosen that best correspond to the result from exact diagonalization. The C-Swap gate is realized, which is the key to efficiently extracting the second Renyi entropy. Finally, all of these elements are integrated into one circuit (an embodiment shown in
In one embodiment, the relevant quantum circuits are implemented on a trapped-ion system, that constitutes a programmable five-quibit quantum computer with full connectivity [34, 35]. Qubits are realized in the hyperfine-split 2S1/2 ground level of 171Yb+ ions confined in a Paul trap. Single- and two-qubit gate fidelities are typically 99.1(5)% and 98.5(5)%, respectively. Typical gate times are 10 μs for single- and 210 μs for two-qubit gates. The computational gates such as H, CNOT, and C-Swap are generated in a modular fashion by a compiler which breaks them down into constituent physical-level single- and two-qubit gates.
The Fermi-Hubbard Hamiltonian is
Ĥ=−J(Ĉi,σ†Ĉj,σ+Ĉj,σ†Ĉi,σ)+UΣi=lN{circumflex over (n)}i↑{circumflex over (n)}i↓ (2)
where Ĉi,σ† and Ĉi,σ are the electron creation and annihilation operators, respectively, for spin state σ∈{↓,↑} and site i, and {circumflex over (n)}i,σ=Ĉi,σ†=Ĉi,σ is the electron number operator. Here J is the hopping strength and U is the on-site interaction. We consider the smallest non-trivial version of the model, which involves two sites and two electrons with total spin Sz=0 along thez-axis.
Typically, when mapping electronic problems to qubits, the Jordan-Wigner [36] or Bravyi-Kitaev [2] mappings are used, both of which work in the second quantized basis. Here, the number of qubits Nq is equal to the number of single-electron states Ns, which would require Nq=Ns=4 qubits.
However, in many problems, there are additional symmetries or conservation laws that can reduce the size of the Hilbert space. The Hamiltonian above conserves both the number of electrons Ne and the total spin along z, S. Therefore, a first quantization mapping, in which the Hilbert space sizes of the qubit system and the many-electron problem are equal, uses qubits most efficiently. This is an important optimization for near-term quantum hardware.
In first quantization, the Hilbert space size is 4, which can be mapped to two qubits as |00={1↑1↓}, |01={1↑2↓}, |10={2↑1↓}, and |11={2↑2↓}. {iσijσi} represent the Slater determinants, which satisfy the number and spin conservation laws of the Hamiltonian. In this mapping, one qubit represents the up spin space and the other the down spin space. In this basis, the Hamiltonian is
This can be written in terms of operators acting on the two qubits (up to a constant, and scaling energy by j) [37, 38]
Where {circumflex over (X)}1 and {circumflex over (Z)}1 are Pauli matrices.
To prepare the ground state of Ĥ at finite U, we use digitized adiabatic evolution from the zero-interaction ground state. The time-dependent Fermi-Hubbard Hamiltonian Ĥ (t) is
from t=0 to t=UT by linear interpolation. At U=0, the ground state is (|0)⊗(|0>+|1>), which can be prepared with Hadamard gates (see
The first order Trotterization for a Hamiltonian with two non-commuting terms Ĥa,b is exp (−i (Ĥa+Ĥb)δ)=exp (−iĤa,δ)exp(−iĤb,δ)+(δ2). For larger evolution Time T and smaller step size the approximation of the ground state is more accurate (see Supplementary Material). Here, at time t=mδ, where m is an integer, we set
Putting together Trotterization and digitized adiabatic evolution, we obtain the following sequence of unitary operations to prepare the ground state:
Following [39], we use the convention that {circumflex over (R)}x(θ)=exp(−iθ{circumflex over (X)}/2), and similarly for {circumflex over (Z)}. This leads us to the circuit for the digitized adiabatic evolution as shown in
The evolution on a classical computer is simulated to investigate the scaling of the error in R2 in the first order Trotter approximation (see Supplementary Material). For the experimental implementation, the memory depth of the arbitrary waveform generator used to control the laser pulses limits the length of a gate sequence to 8 ms, bounding the number of Trotter steps to Nsteps≤6. Two different methods are implemented for evolving to finite U.
Method I: For a fixed T and δ, one can sample at intervals of T/δ and Nsteps=UT/δ. In order to evolve from U=0 to U=6, we choose T/δ=1 and go from Nsteps=0 to Nsteps=0. As a result, only finitely-spaced values of U can be chosen. Here, smaller values of U involve fewer gates and will be less affected by experimental errors.
Method II: Fix Nsteps=5, and hence sample any value of U up to Nsteps. In this case, T=Nsteps δ/U. Here, the same number of gates are performed at every value of U and so the magnitude of the experimental error should be similar at every point.
Based on simulations, the parameters are chosen that seem to most closely follow the results from exact diagonalization. For method I,δ=0.1 and T=0.1, while for method II, δ=0.25 and T=1.25/U.
The digitized adiabatic evolution is implemented by itself for both methods in a two-qubit experiment on our system. The qubits are prepared along the x-axis of the Bloch sphere, in the ground state of the non-interacting Hamiltonian (U=0) using Hadamard gates (see
To measure R2, the technique outlined in [6] may be followed, which requires two copies of the state |Ψ>=Σi,jcij|ai and |bj, where |ai and |bj are the basis states of subspace A and B, respectively. R2 is given by the expectation value of the Swap operator on subspace A,
R
2=ψ|ψ′|SwapA|Ψ|Ψ′, (7)
where the apostrophe indicates states belonging to sub-system 2, and the operator SwapA acts as follows:
SwapA|ψ|ψ′=Σi,jΣi,jCijCi,j,|ai,|bi|ai|bj,. (8)
To extract R2 experimentally, the Swap-gate is applied to the subsystems A of two copies of the adiabatically evolved state, conditional on the state of an ancilla qubit. The ancilla qubit is prepared and measured in the x-basis by applying a Hadamard gate before and after the C-Swap gate (see
The C-Swap or Fredkin gate [42] has been experimentally implemented in NMR [43] and photonic systems [44, 45]. This embodiment of the invention is the first implementation of a C-Swap gate with trapped ions. Its evolution operator is:
This gate is realized by programming the quantum compiler to break it down into gates from the native library [34, 35]. It requires seven entangling gates and fourteen single-qubit rotations. Each logical input state is applied and the output state probabilities recorded. The results are shown in
With all elements of the circuit in place, the entire algorithm is implemented to adiabatically evolve two copies of the two-qubit Fermi-Hubbard system and measure the second Renyi entropy using the top qubit 301 as the ancilla (see
To distinguish between these two phenomena, the techniques described herein may be used to detect erroneous runs using the additional information available in the four data qubits representing the two systems. The eigenvalues of the Swap operator are ±1 with the corresponding eigen-states being even and odd functions of the qubits being swapped. For any operator {circumflex over (V)}, with eigenvalues λm and eigenvectors |m such that {circumflex over (V)}|m=λm|m, and a state |Φ=Σmdm|m, the expectation value |Φ|{circumflex over (V)}|Φh_ĵV j_i can be obtained by applying {circumflex over (V)} conditional on the state of an ancilla qubit. The ancilla is prepared along x before the controlled-{circumflex over (V)} operation and measured in the X-basis thereafter. Just before measurement, the qubits are in the following state, where the first ket in each term describes the ancilla qubit:
|0Σm(1+λm)dm|m+|1Σm(1+λm)dm|m. (10)
This is essentially the circuit used to measure the expectation value of the SwapA operator to determine the Renyi entropy. Therefore the observation can be made that the probability of |1ai|bj|1ai,|bj, is 0 if i′=i or if j′=j. This implies that twelve of the 32 possible output states of the 5-qubit register should have zero-weight when it comes to evaluating R2 (see Supplementary Material). The data is re-analyzed after discarding such outcomes and find the values given by the filled symbols in
In summary, the above-described implementation demonstrates a complete chain of steps (i.e. the ‘full quantum computing stack’) to simulate a model Hamiltonian on a quantum computer and measure bipartite entanglement. Each step is scalable to a larger system of qubits on the trapped-ion hardware platform. The technique can also be implemented on different quantum computing architectures. The error-mitigation is expected to scale well to larger system sizes since the number of states it discards scales with the size of the Hilbert space of the system, but it will break down at larger circuit depths. Therefore it is a good technique for the NISQ (Noisy Intermediate-Scale Quantum) era, where short-depth circuits may be expected to be acting on several qubit systems without fault tolerance to be useful for certain applications.
The following are example implementations of different embodiments of the invention.
An apparatus comprising: a symmetry detector to analyze quantum program code to identify symmetries associated with one or more quantum gates indicated by the quantum program code, the quantum gates to be implemented by the quantum bits (qubits) of a quantum processor to generate result data; and a symmetry-based filter to analyze the result data generated by the quantum processor in view of the identified symmetries, the symmetry detector to identify and filter a first portion of the result data which is inconsistent with the identified symmetries.
The apparatus of Example 1 further comprising: a filter configurator to apply the symmetries identified by the symmetry detector to dynamically configure or generate the symmetry-based filter.
The apparatus of Example 1 wherein the quantum program code comprises Open Quantum Assembly Language (QASM) code.
The apparatus of Example 1 wherein the quantum processor comprises a trapped ion quantum processor in which each qubit is implemented as a state of an ion.
The apparatus of Example 1 wherein the quantum processor comprises a quantum dot device in which each state comprises an electron spin orientation associated with a quantum dot.
The apparatus of Example 1 wherein the quantum processor comprises a five qubit processor having four data qubits and one ancilla qubit.
The apparatus of Example 1 wherein at least one of the quantum gates comprises a C-Swap gate and the symmetries are those known for C-Swap gates.
The apparatus of Example 7 wherein the five qbits can represent a state from |00000> to |11111>, represented by decimal values 0 to 31, and wherein the symmetries associated with the C-Swap gate imply that the states corresponding to decimal numbers 16, 17, 18, 20, 21, 23, 24, 26, 27, 29, 30, and 31 are non-symmetric, wherein the first portion of the result data filtered by the symmetry-based filter includes data having one or more of these states.
A method comprising: evaluating quantum program code to identify symmetries associated with one or more quantum gates indicated by the quantum program code executing the one or more quantum gates indicated by the quantum program code a quantum processor comprising a plurality of quantum bits (qubits) to generate result data; and analyzing the result data generated by the quantum processor in view of the identified symmetries to identify a first portion of the result data which is inconsistent with the identified symmetries.
The method of Example 9 further comprising: filtering out the first portion of the result data to generate final result data, the final result data being consistent with the identified symmetries.
The method of Example 9 wherein the quantum program code comprises Open Quantum Assembly Language (QASM) code.
The method of Example 9 wherein the quantum processor comprises a trapped ion quantum processor in which each qubit is implemented as a state of an ion.
The apparatus of Example 9 wherein the quantum processor comprises a quantum dot device in which each state comprises an electron spin orientation associated with a quantum dot.
The method of Example 9 wherein the quantum processor comprises a five qbit processor.
The method of Example 9 wherein at least one of the quantum gates comprises a C-Swap gate and the symmetries are those known for C-Swap gates.
The method of Example 15 wherein the five qbits can represent a state from |00000> to |11111>, represented by decimal values 0 to 31, and wherein the symmetries associated with the C-Swap gate imply that the states corresponding to decimal numbers 16, 17, 18, 20, 21, 23, 24, 26, 27, 29, 30, and 31 are non-symmetric, wherein the first portion of the result data filtered by the symmetry-based filter includes data having one or more of these states.
A machine-readable medium having program code stored thereon which, when executed by a machine, causes the machine to perform the operations of: evaluating quantum program code to identify symmetries associated with one or more quantum gates indicated by the quantum program code executing the one or more quantum gates indicated by the quantum program code a quantum processor comprising a plurality of quantum bits (qubits) to generate result data; and analyzing the result data generated by the quantum processor in view of the identified symmetries to identify a first portion of the result data which is inconsistent with the identified symmetries.
The machine-readable medium of Example 17 further comprising program code to cause the operation of: filtering out the first portion of the result data to generate final result data, the final result data being consistent with the identified symmetries.
The machine-readable medium of Example 17 wherein the quantum program code comprises Open Quantum Assembly Language (QASM) code.
The machine-readable medium of Example 17 wherein the quantum processor comprises a trapped ion quantum processor in which each qubit is implemented as a state of an ion.
The apparatus of Example 17 wherein the quantum processor comprises a quantum dot device in which each state comprises an electron spin orientation associated with a quantum dot.
The machine-readable medium of cl Example aim 17 wherein the quantum processor comprises a five qbit processor.
The machine-readable medium of Example 17 wherein at least one of the quantum gates comprises a C-Swap gate and the symmetries are those known for C-Swap gates.
The machine-readable medium of Example 23 wherein the five qbits can represent a state from |00000> to |11111>, represented by decimal values 0 to 31, and wherein the symmetries associated with the C-Swap gate imply that the states corresponding to decimal numbers 16, 17, 18, 20, 21, 23, 24, 26, 27, 29, 30, and 31 are non-symmetric, wherein the first portion of the result data filtered by the symmetry-based filter includes data having one or more of these states.
In the above detailed description, reference is made to the accompanying drawings that form a part hereof, and in which is shown, by way of illustration, embodiments that may be practiced. It is to be understood that other embodiments may be utilized and structural or logical changes may be made without departing from the scope of the present disclosure. Therefore, the following detailed description is not to be taken in a limiting sense.
Given that fully fault-tolerant quantum computing may not be realized for many years, the embodiments of the invention may be used to provide the maximum computing power from imperfect qubit systems even without reaching the fault-tolerant threshold. Consequently, these embodiments will significantly improve the results generated by first and subsequent generations of quantum computers, making them more useful to customers.
Various operations may be described as multiple discrete actions or operations in turn in a manner that is most helpful in understanding the claimed subject matter. However, the order of description should not be construed as to imply that these operations are necessarily order dependent. In particular, these operations may not be performed in the order of presentation. Operations described may be performed in a different order from the described embodiment. Various additional operations may be performed, and/or described operations may be omitted in additional embodiments. Terms like “first,” “second,” “third,” etc. do not imply a particular ordering, unless otherwise specified.
For the purposes of the present disclosure, the phrase “A and/or B” means (A), (B), or (A and B). For the purposes of the present disclosure, the phrase “A, B, and/or C” means (A), (B), (C), (A and B), (A and C), (B and C), or (A, B, and C). The term “between,” when used with reference to measurement ranges, is inclusive of the ends of the measurement ranges. As used herein, the notation “A/B/C” means (A), (B), and/or (C).
The description uses the phrases “in an embodiment” or “in embodiments,” which may each refer to one or more of the same or different embodiments. Furthermore, the terms “comprising,” “including,” “having,” and the like, as used with respect to embodiments of the present disclosure, are synonymous.
Embodiments of the invention may include various steps, which have been described above. The steps may be embodied in machine-executable instructions which may be used to cause a general-purpose or special-purpose processor to perform the steps. Alternatively, these steps may be performed by specific hardware components that contain hardwired logic for performing the steps, or by any combination of programmed computer components and custom hardware components.
As described herein, instructions may refer to specific configurations of hardware such as application specific integrated circuits (ASICs) configured to perform certain operations or having a predetermined functionality or software instructions stored in memory embodied in a non-transitory computer readable medium. Thus, the techniques shown in the figures can be implemented using code and data stored and executed on one or more electronic devices (e.g., an end station, a network element, etc.). Such electronic devices store and communicate (internally and/or with other electronic devices over a network) code and data using computer machine-readable media, such as non-transitory computer machine-readable storage media (e.g., magnetic disks; optical disks; random access memory; read only memory; flash memory devices; phase-change memory) and transitory computer machine-readable communication media (e.g., electrical, optical, acoustical or other form of propagated signals—such as carrier waves, infrared signals, digital signals, etc.).
In addition, such electronic devices typically include a set of one or more processors coupled to one or more other components, such as one or more storage devices (non-transitory machine-readable storage media), user input/output devices (e.g., a keyboard, a touchscreen, and/or a display), and network connections. The coupling of the set of processors and other components is typically through one or more busses and bridges (also termed as bus controllers). The storage device and signals carrying the network traffic respectively represent one or more machine-readable storage media and machine-readable communication media. Thus, the storage device of a given electronic device typically stores code and/or data for execution on the set of one or more processors of that electronic device. Of course, one or more parts of an embodiment of the invention may be implemented using different combinations of software, firmware, and/or hardware. Throughout this detailed description, for the purposes of explanation, numerous specific details were set forth in order to provide a thorough understanding of the present invention. It will be apparent, however, to one skilled in the art that the invention may be practiced without some of these specific details. In certain instances, well known structures and functions were not described in elaborate detail in order to avoid obscuring the subject matter of the present invention. Accordingly, the scope and spirit of the invention should be judged in terms of the claims which follow.