Quantum error correction: Difference between revisions

From Wikipedia, the free encyclopedia
Jump to navigation Jump to search
imported>OAbot
m Open access bot: url-access updated in citation with #oabot.
imported>Alenoach
copyedit, removed some bold formatting (MOS:BOLD)
 
Line 1: Line 1:
{{short description|Process in quantum computing}}
{{short description|Process in quantum computing}}
{{use dmy dates|cs1-dates=yy|date=May 2023}}
{{use dmy dates|cs1-dates=yy|date=May 2023}}
'''Quantum error correction''' ('''QEC''') is a set of techniques used in [[Quantum computer|quantum computing]] to protect [[quantum information]] from errors due to [[decoherence]] and other [[quantum noise]]. Quantum error correction is theorised as essential to achieve [[Quantum threshold theorem|fault tolerant quantum computing]] that can reduce the effects of noise on stored quantum information, faulty quantum gates, faulty quantum state preparation, and faulty measurements. Effective quantum error correction would allow quantum computers with low qubit fidelity to execute algorithms of higher complexity or greater [[Circuit complexity|circuit depth]].<ref>{{cite journal |last1=Cai |first1=Weizhou |last2=Ma |first2=Yuwei |date=2021 |title=Bosonic quantum error correction codes in superconducting quantum circuits |journal=Fundamental Research |volume=1 |issue=1 |pages=50–67 |doi=10.1016/j.fmre.2020.12.006 |quote=A practical quantum computer that is capable of large circuit depth, therefore, ultimately calls for operations on logical qubits protected by quantum error correction|doi-access=free |arxiv=2010.08699 |bibcode=2021FunRe...1...50C }}</ref>


Classical [[error correction]] often employs [[Redundancy (information theory)|redundancy]]. The simplest albeit inefficient approach is the [[repetition code]]. A repetition code stores the desired (logical) information as multiple copies, and—if these copies are later found to disagree due to errors introduced to the system—determines the most likely value for the original data by majority vote. For instance, suppose we copy a bit in the one (on) state three times. Suppose further that noise in the system introduces an error that corrupts the three-bit state so that one of the copied bits becomes zero (off) but the other two remain equal to one. Assuming that errors are independent and occur with some sufficiently low probability ''p'', it is most likely that the error is a single-bit error and the intended message is three bits in the one state. It is possible that a double-bit error occurs and the transmitted message is equal to three zeros, but this outcome is less likely than the above outcome. In this example, the logical information is a single bit in the one state and the physical information are the three duplicate bits. Creating a physical state that represents the logical state is called ''encoding'' and determining which logical state is encoded in the physical state is called ''decoding''. Similar to classical error correction, QEC codes do not always correctly decode logical qubits, but instead reduce the effect of noise on the logical state.
'''Quantum error correction''' ('''QEC''') comprises a set of techniques used in [[quantum memory]] and [[quantum computing]] to protect [[quantum information]] from errors arising from [[Quantum decoherence|decoherence]] and other sources of quantum noise. QEC schemes that employ codewords stabilized by a set of commuting operators are known as ''[[stabilizer code]]s'', and the corresponding codewords are referred to as ''quantum error-correcting codes'' (QECCs).


Copying quantum information is not possible due to the [[no-cloning theorem]]. This theorem seems to present an obstacle to formulating a theory of quantum error correction. But it is possible to ''spread'' the (logical) information of one logical [[qubit]] onto a highly entangled state of several (physical) qubits. [[Peter Shor]] first discovered this method of formulating a ''quantum error correcting code'' by storing the information of one qubit onto a highly entangled state of nine qubits.<ref name="Shor1995">{{cite journal
== Overview ==
| last = Shor
Much of the terminology in QEC is derived from its classical counterpart, the ''[[Error correction code|classical error-correcting code]]''. In classical coding theory, a code is commonly denoted by the notation <math>[n,k,d]</math>, which represents the encoding of <math>k</math> logical bits into <math>n</math> physical bits with code distance <math>d</math>; that is, any logical operation requires flipping at least d bits. Analogously, a quantum code that encodes k logical qubits into n physical qubits with code distance d is denoted by <math>[[n,k,d]]</math>. Although this qubit-to-qubit encoding is the most common setting, other variants exist—such as encodings between qubits and oscillators, or between oscillators themselves—since physical implementations of quantum information may involve systems with more than two energy levels.
| first = Peter W.
| author-link = Peter W. Shor
| title = Scheme for reducing decoherence in quantum computer memory
| journal =  Physical Review A
| volume = 52
| issue = 4
| pages = R2493–R2496
| year = 1995 | doi = 10.1103/PhysRevA.52.R2493
| pmid = 9912632
| bibcode = 1995PhRvA..52.2493S
}}
</ref>


In classical error correction, ''syndrome decoding'' is used to diagnose which error was the likely source of corruption on an encoded state. An error can then be reversed by applying a corrective operation based on the syndrome. Quantum error correction also employs syndrome measurements. It performs a multi-qubit measurement that does not disturb the quantum information in the encoded state but retrieves information about the error. Depending on the QEC code used, syndrome measurement can determine the occurrence, location and type of errors. In most QEC codes, the type of error is either a bit flip, or a sign (of the [[phase (waves)|phase]]) flip, or both (corresponding to the [[Pauli matrices]] X, Z, and Y). The measurement of the syndrome has the [[projection (linear algebra)|projective]] effect of a [[quantum measurement]], so even if the error due to the noise was arbitrary, it can be expressed as a combination of [[Basis (linear algebra)|basis]] operations called the error basis (which is given by the Pauli matrices and the [[identity (mathematics)|identity]]). To correct the error, the Pauli operator corresponding to the type of error is used on the corrupted qubit to revert the effect of the error.
Based on the parameters <math>[[n,k,d]]</math>, one can define a key figure of merit for QECCs—the '''code rate''', given by the ratio <math>\tfrac{k}{n}</math>. The code rate measures a code's efficiency: a higher value corresponds to lower resource overhead. It generally depends on the code distance d. An ideal QECC simultaneously achieves a large distance and a high code rate. Consequently, optimizing QECC designs to improve code rate while maintaining sufficient distance is a central objective in QEC, both theoretically and experimentally. Conversely, for cases where <math>k</math> and <math>d</math> are fixed (often small), increasing the code rate reduces resource requirements, making such codes particularly suitable for small-scale or resource-limited experimental implementations.


The syndrome measurement provides information about the error that has happened, but not about the information that is stored in the logical qubit—as otherwise the measurement would destroy any [[quantum superposition]] of this logical qubit with other qubits in the [[quantum computer]], which would prevent it from being used to convey quantum information.
Before considering scenario-dependent objectives, a QEC scheme fundamentally consists of three stages:


==Bit-flip code==
# '''Encoding''' the logical information into physical carriers,
# '''Transmitting or storing''' the encoded information through a spatial or temporal channel (corresponding to communication or memory, respectively), and
# '''Syndrome extraction and recovery''' (decoding) to identify and correct errors.


The repetition code works in a [[Classical information channel|classical channel]], because classical bits are easy to measure and to repeat. This approach does not work for a quantum channel in which, due to the [[no-cloning theorem]], it is not possible to repeat a single qubit three times. To overcome this, a different method has to be used, such as the ''three-qubit bit-flip code'' first proposed by Asher Peres in 1985.<ref>{{cite journal
A QECC is constructed under specific assumptions about the types of errors that may occur and must be capable of correcting them. The stabilizers to be measured are carefully chosen so as not to reveal any logical information, but only information about the errors themselves—as otherwise the measurement would destroy any [[quantum superposition]] of this logical qubit with other qubits in the quantum computer, which would prevent it from being used to convey quantum information. In most QECCs, the type of error is either a bit flip, or a phase flip, or both (corresponding to the [[Pauli matrices]] <math>X</math>, <math>Y</math>, and <math>Z</math>).
| last = Peres
| first = Asher
| title = Reversible Logic and Quantum Computers
| journal =  Physical Review A
| volume = 32
| issue = 6
| pages = 3266–3276
| year = 1985
| doi = 10.1103/PhysRevA.32.3266
| pmid = 9896493
| bibcode = 1985PhRvA..32.3266P
}}</ref> This technique uses [[Quantum entanglement|entanglement]] and syndrome measurements and is comparable in performance with the repetition code.


Various strategies exist for encoding and decoding, including classical algorithms that map measured error syndromes to their corresponding recovery operations. The sequence of applied quantum gates can also be optimized, as multi-qubit gates are generally more challenging to implement than single-qubit ones. Furthermore, the total number of possible syndromes is <math>2^{n-k}</math>, which can be prohibitively large for a simple lookup-table approach. Consequently, efficient classical decoding algorithms are generally required, except in cases where the code structure is sufficiently simple.<ref name=":0">{{Citation |last=Chang |first=En-Jui |title=Overlapped-repetition Shor codes achieving fourfold asymptotic rate |date=2025-10-23 |arxiv=2510.21030 }}</ref>
Compared with quantum memory, where channel-induced errors are the primary concern, the frequent application of quantum gates in quantum computation necessitates [[Fault tolerance|fault-tolerant]] design. For QECCs implemented on qubit-based platforms, fault tolerance additionally accounts for imperfect quantum gates, faulty state preparation, and measurement errors. In contrast, for QECCs that encode information into oscillators, the term ''fault tolerance'' is sometimes used interchangeably with ordinary quantum error correction and does not carry additional meaning.<ref>{{cite journal |last1=Cai |first1=Weizhou |last2=Ma |first2=Yuwei |date=2021 |title=Bosonic quantum error correction codes in superconducting quantum circuits |journal=Fundamental Research |volume=1 |issue=1 |pages=50–67 |arxiv=2010.08699 |bibcode=2021FunRe...1...50C |doi=10.1016/j.fmre.2020.12.006 |quote=A practical quantum computer that is capable of large circuit depth, therefore, ultimately calls for operations on logical qubits protected by quantum error correction |doi-access=free}}</ref>
=== Types of errors ===
The types of errors that occur in a quantum system depend strongly on the underlying physical platform, rather than on device-independent assumptions. For instance, even when a qubit is under active control, it remains coupled to its environment through nonzero [[Einstein coefficients]]. When the environment is cooled to its vacuum state, this coupling gives rise to [[Amplitude damping channel|amplitude-damping]] errors (or excitation loss), which reflect the system's tendency to relax toward thermal equilibrium and are characterized by a [[Relaxation (physics)|relaxation]] time. Moreover, even an isolated qubit possesses an intrinsic [[Hamiltonian (quantum mechanics)|Hamiltonian]] corresponding to its internal dynamics, leading to coherent errors. Together, amplitude damping and coherent evolution contribute to [[dephasing]], one of the dominant noise processes in most qubit implementations.
As noted earlier, most QECCs assume that the dominant errors are bit flips, phase flips, or combinations of both—corresponding to the Pauli operators. An implicit assumption in this framework is that general physical errors can be approximated as elements of the [[Pauli group]]. Under this model, each qubit's error can be represented by two classical bits (00: no error, 01: <math>Z</math>, 10: <math>X</math>, 11: <math>Y</math>). Consequently, errors on an n-qubit system can be described by a binary string of length 2n, allowing classical error-correction techniques to be applied under suitable constraints. Although this approximation does not capture all realistic noise processes, it remains widely used because it greatly simplifies both theoretical analysis and code design.
=== More general QEC schemes ===
The <math>[[n,k,d]]</math> QECCs do not encompass all possible quantum codes. These belong to the class of '''additive codes''', defined within the stabilizer formalism. A more general class, known as '''non-additive codes''',<ref>{{Cite book |last1=Calderbank |first1=A.R. |last2=Rains |first2=E.M. |last3=Shor |first3=P.W. |last4=Sloane |first4=N.J.A. |chapter=Quantum error correction via codes over GF(4) |date=1997 |title=Proceedings of IEEE International Symposium on Information Theory |pages=292– |arxiv=quant-ph/9608006 |doi=10.1109/ISIT.1997.613213 |isbn=0-7803-3956-8 }}</ref> extends beyond this framework. For instance, the <math>((5,6,2))</math> code<ref>{{Cite journal |last1=Rains |first1=Eric M. |last2=Hardin |first2=R. H. |last3=Shor |first3=Peter W. |last4=Sloane |first4=N. J. A. |date=1997-08-04 |title=A Nonadditive Quantum Code |url=https://link.aps.org/doi/10.1103/PhysRevLett.79.953 |journal=Physical Review Letters |volume=79 |issue=5 |pages=953–954 |arxiv=quant-ph/9703002 |doi=10.1103/PhysRevLett.79.953 |bibcode=1997PhRvL..79..953R }}</ref> encodes more than two qubits <math>(\log_2 6\approx 2.585)</math> into five physical qubits with code distance two.  Non-additive codes can, in principle, achieve higher code rates than additive ones, but their construction and analysis are considerably more challenging. As a result, they remain relatively unexplored, with only limited studies to date.
Beyond encoding qubits into qubits, quantum information can also be stored in more general physical systems, such as <math>d</math>-level systems (qudits) or infinite-dimensional oscillators. Encoding a smaller logical system into a larger physical Hilbert space is an active area of research.
== Important code families ==
{| class="wikitable"
|+Some of the earliest and most significant codes encoding logical qubit(s) into physical qubits
!Year
!
!n
!k
!d
!Note
|-
|1995
|Shor code<ref>{{Cite journal |last=Shor |first=Peter W. |date=1995-10-01 |title=Scheme for reducing decoherence in quantum computer memory |url=https://link.aps.org/doi/10.1103/PhysRevA.52.R2493 |journal=Physical Review A |volume=52 |issue=4 |pages=R2493–R2496 |doi=10.1103/PhysRevA.52.R2493 |pmid=9912632 |bibcode=1995PhRvA..52.2493S |url-access=subscription }}</ref>
|9
|1
|3
|The first quantum code corrects a single Pauli error.
|-
|1996
|[[Steane code]]<ref>{{Cite journal |last=Steane |first=Andrew |title=Multiple-particle interference and quantum error correction |url=https://royalsocietypublishing.org/doi/10.1098/rspa.1996.0136 |journal=Proceedings of the Royal Society of London. Series A: Mathematical, Physical and Engineering Sciences |date=1996 |volume=452 |issue=1996 |pages=2551–2577 |doi=10.1098/rspa.1996.0136 |arxiv=quant-ph/9601029 |bibcode=1996RSPSA.452.2551S }}</ref>
|7
|1
|3
|It improves the code rate with a design distinct from the Shor code.
|-
|1996
|Laflamme code<ref>{{Cite journal |last1=Laflamme |first1=Raymond |last2=Miquel |first2=Cesar |last3=Paz |first3=Juan Pablo |last4=Zurek |first4=Wojciech Hubert |date=1996-07-01 |title=Perfect Quantum Error Correcting Code |url=https://link.aps.org/doi/10.1103/PhysRevLett.77.198 |journal=Physical Review Letters |language=en |volume=77 |issue=1 |pages=198–201 |arxiv=quant-ph/9602019 |doi=10.1103/PhysRevLett.77.198 |pmid=10061806 |bibcode=1996PhRvL..77..198L |issn=0031-9007}}</ref>
|5
|1
|3
|The smallest possible code corrects a single Pauli error.
|-
|1997
|[[Toric code]]<ref>{{Cite journal |last=Kitaev |first=A Yu |date=1997-12-31 |title=Quantum computations: algorithms and error correction |url=https://www.mathnet.ru/php/archive.phtml?wshow=paper&jrnid=rm&paperid=892&option_lang=eng |journal=Russian Mathematical Surveys |volume=52 |issue=6 |pages=1191–1249 |doi=10.1070/rm1997v052n06abeh002155 |bibcode=1997RuMaS..52.1191K |issn=0036-0279|url-access=subscription }}</ref>
|<math>2d^2</math>
|1
|<math>d</math>
|The pioneer of '''topological codes'''.
|-
|1998
|[[Surface code]]<ref>{{Citation |last1=Bravyi |first1=S. B. |title=Quantum codes on a lattice with boundary |date=1998-11-20 |id=arXiv:quant-ph/9811052 |last2=Kitaev |first2=A. Yu |arxiv=quant-ph/9811052 |bibcode=1998quant.ph.11052B }}</ref>
|<math>2nm+n+m+1</math>
|1
|<math>\min(n,m)</math>
|A topological code only needs local stabilizer checks.
|}
The first QECC, named after [[Peter Shor]], can be generalized as a <math>[[d^2,1,d]]</math> code, which increases the code distance at the expense of a reduced code rate. Its design philosophy employs inner and outer <math>[d,1,d]</math> [[repetition code]]s to independently correct bit-flip and phase-flip errors. In contrast, [[Andrew Steane]] improved the code rate by replacing repetition codes with the classical <math>[7,4]</math> [[Hamming code]] and treating bit-flip and phase-flip errors symmetrically, without distinguishing inner and outer layers. The approach of Steane can be generalized as <math>[[2^r-1, 2^r-1-2r,3]]</math> quantum Hamming codes.<ref>{{Cite journal |last=Steane |first=A. M. |date=1996-12-01 |title=Simple quantum error-correcting codes |url=https://link.aps.org/doi/10.1103/PhysRevA.54.4741 |journal=Physical Review A |volume=54 |issue=6 |pages=4741–4751 |doi=10.1103/PhysRevA.54.4741 |pmid=9914038 |arxiv=quant-ph/9605021 |bibcode=1996PhRvA..54.4741S }}</ref> A generalization of these approaches led to the development of the [[CSS code]]s—named after [[Robert Calderbank]], [[Peter Shor]], and Andrew Steane. The structure of CSS codes is particularly well-suited for [[Fault tolerance|fault-tolerant]] syndrome measurement, as the <math>X</math> and <math>Z</math> stabilizers are cleanly separated.
While the Shor code emphasizes code distance and the Steane code emphasizes code rate, other CSS codes can be constructed to balance these parameters. For example, using overlapped-repetition codes<ref>{{Cite journal |last1=Fletcher |first1=Andrew S. |last2=Shor |first2=Peter W. |last3=Win |first3=Moe Z. |title=Channel-Adapted Quantum Error Correction for the Amplitude Damping Channel |journal=IEEE Transactions on Information Theory |date=2008 |volume=54 |issue=12 |pages=5705–5718 |arxiv=0710.1052 |doi=10.1109/TIT.2008.2006458 |bibcode=2008ITIT...54.5705F |issn=1557-9654}}</ref><ref name=":3">{{Cite journal |last1=Chang |first1=En-Jui |last2=Lai |first2=Ching-Yi |date=2025-05-05 |title=High-rate amplitude-damping Shor codes with immunity to collective coherent errors |url=https://link.aps.org/doi/10.1103/PhysRevA.111.052602 |journal=Physical Review A |volume=111 |issue=5 |article-number=052602 |arxiv=2412.16450 |doi=10.1103/PhysRevA.111.052602 |bibcode=2025PhRvA.111e2602C }}</ref><ref name=":0" /> enables CSS codes with improved performance and the <math>[[7,1,3]]</math> Shor-type code is shown. Furthermore, this Shor-type code can be modified as subsystem codes such as the [[Bacon–Shor code]]<ref>{{Cite journal |last=Bacon |first=Dave |date=2006-01-30 |title=Operator quantum error-correcting subsystems for self-correcting quantum memories |journal=Physical Review A |volume=73 |issue=1 |arxiv=quant-ph/0506023 |bibcode=2006PhRvA..73a2340B |doi=10.1103/PhysRevA.73.012340 |s2cid=118968017 |article-number=012340}}</ref> which might optimize the syndrome measurement.
The [[Threshold theorem|quantum threshold theorem]], shows that quantum computations of arbitrary length are possible. It states that errors can be corrected by recursively concatenating quantum codes—such as CSS codes—across logarithmically many levels, provided the error rate of individual [[Quantum logic gate|quantum gates]] remains below a certain threshold. Above this threshold, attempts to measure syndromes and correct errors would introduce more errors than they eliminate.<ref name="DiVincenzo 3260–3263">{{Cite journal |last1=DiVincenzo |first1=David P. |last2=Shor |first2=Peter W. |date=1996-10-07 |title=Fault-Tolerant Error Correction with Efficient Quantum Codes |url=https://link.aps.org/doi/10.1103/PhysRevLett.77.3260 |journal=Physical Review Letters |volume=77 |issue=15 |pages=3260–3263 |doi=10.1103/PhysRevLett.77.3260 |pmid=10062174 |arxiv=quant-ph/9605031 |bibcode=1996PhRvL..77.3260D }}</ref> As of 2004, estimates suggest this threshold could be as high as 1–3%,<ref>{{cite journal |last=Knill |first=Emanuel |date=November 2, 2004 |title=Quantum Computing with Very Noisy Devices |journal=Nature |volume=434 |issue=7029 |pages=39–44 |arxiv=quant-ph/0410199 |bibcode=2005Natur.434...39K |doi=10.1038/nature03350 |pmid=15744292 |s2cid=4420858}}</ref> assuming a sufficiently large number of qubits is available.
To achieve a higher code rate for encoding a single logical qubit with single-error correction, [[Raymond Laflamme]] et al. discovered a five-qubit code using four stabilizers that mix <math>X</math> and <math>Z</math> operators. A well-known variant employs four cyclic <math>XZZXI</math> stabilizers. Although this code is clearly not a CSS code, DiVincenzo and Shor demonstrated that it can still be made fault-tolerant.<ref name="DiVincenzo 3260–3263"/> The five-qubit code is the smallest possible code capable of protecting one logical qubit against arbitrary single-qubit errors. According to the '''quantum Hamming bound''', encoding a single logical qubit with the ability to correct any single-qubit error requires at least five physical qubits.
Beyond coding-theoretic designs, topological QECCs are particularly intuitive to visualize and can provide a clear layout of local stabilizer measurements, which is experimentally friendly. [[Alexei Kitaev]] introduced the toric code without boundaries, which was later adapted into the surface code with boundaries, yielding a 2D planar layout that avoids non-local measurements.<ref>{{cite journal |last1=Fowler |first1=Austin G. |last2=Mariantoni |first2=Matteo |last3=Martinis |first3=John M. |last4=Cleland |first4=Andrew N. |date=2012-09-18 |title=Surface codes: Towards practical large-scale quantum computation |journal=Physical Review A |volume=86 |issue=3 |arxiv=1208.0928 |bibcode=2012PhRvA..86c2324F |doi=10.1103/PhysRevA.86.032324 |issn=1050-2947 |article-number=032324}}</ref> Surface codes are pivotal for scalable quantum error correction in 2025, enabling below-threshold logical qubits with improved fidelity in superconducting systems.<ref>{{Cite journal |last1=Acharya |first1=Rajeev |last2=Abanin |first2=Dmitry A. |last3=Aghababaie-Beni |first3=Laleh |last4=Aleiner |first4=Igor |last5=Andersen |first5=Trond I. |last6=Ansmann |first6=Markus |last7=Arute |first7=Frank |last8=Arya |first8=Kunal |last9=Asfaw |first9=Abraham |last10=Astrakhantsev |first10=Nikita |last11=Atalaya |first11=Juan |last12=Babbush |first12=Ryan |last13=Bacon |first13=Dave |last14=Ballard |first14=Brian |last15=Bardin |first15=Joseph C. |date=February 2025 |title=Quantum error correction below the surface code threshold |journal=Nature |language=en |volume=638 |issue=8052 |pages=920–926 |doi=10.1038/s41586-024-08449-y |pmid=39653125 |issn=1476-4687 |pmc=11864966 |arxiv=2408.13687 |bibcode=2025Natur.638..920G }}</ref>
{| class="wikitable"
|+Some of the most significant codes encoding a qubit into an oscillator and their subsequent extensions
!Year
!
!Year
!extensions
!Modes
|-
|1999
|[[Cat state]]'''<ref name=":2">{{Cite journal |last1=Cochrane |first1=P. T. |last2=Milburn |first2=G. J. |last3=Munro |first3=W. J. |date=1999-04-01 |title=Macroscopically distinct quantum-superposition states as a bosonic code for amplitude damping |journal=Physical Review A |volume=59 |issue=4 |pages=2631–2634 |arxiv=quant-ph/9809037 |bibcode=1999PhRvA..59.2631C |doi=10.1103/PhysRevA.59.2631 |s2cid=119532538}}</ref>'''
|2019
|Pair-cat codes<ref>{{Cite journal |last1=Albert |first1=Victor V |last2=Mundhada |first2=Shantanu O |last3=Grimm |first3=Alexander |last4=Touzard |first4=Steven |last5=Devoret |first5=Michel H |last6=Jiang |first6=Liang |date=2019-06-12 |title=Pair-cat codes: autonomous error-correction with low-order nonlinearity |journal=Quantum Science and Technology |volume=4 |issue=3 |page=035007 |doi=10.1088/2058-9565/ab1e69 |arxiv=1801.05897 |bibcode=2019QS&T....4c5007A |issn=2058-9565}}</ref>
|It uses 2-mode and encodes a qubit.
|-
|2001
|[[Gottesman–Kitaev–Preskill code|Gottesman-Kitaev-Preskill (GKP) code]]<ref>{{Cite journal |last1=Gottesman |first1=Daniel |last2=Kitaev |first2=Alexei |last3=Preskill |first3=John |year=2001 |title=Encoding a qubit in an oscillator |journal=Physical Review A |volume=64 |issue=1 |arxiv=quant-ph/0008040 |bibcode=2001PhRvA..64a2310G |doi=10.1103/PhysRevA.64.012310 |s2cid=18995200 |article-number=012310}}</ref>
|2022
|Multi-mode GKP codes<ref>{{Cite journal |last1=Royer |first1=Baptiste |last2=Singh |first2=Shraddha |last3=Girvin |first3=S.M. |date=2022-03-07 |title=Encoding Qubits in Multimode Grid States |url=https://link.aps.org/doi/10.1103/PRXQuantum.3.010335 |journal=PRX Quantum |volume=3 |issue=1 |article-number=010335 |doi=10.1103/PRXQuantum.3.010335 |arxiv=2201.12337 |bibcode=2022PRXQ....3a0335R }}</ref>
|It uses multi-mode and encode multi-qubits.
|-
|2016
|Binomial code<ref>{{Cite journal |last1=Michael |first1=Marios H. |last2=Silveri |first2=Matti |last3=Brierley |first3=R. T. |last4=Albert |first4=Victor V. |last5=Salmilehto |first5=Juha |last6=Jiang |first6=Liang |last7=Girvin |first7=S. M. |date=2016-07-14 |title=New Class of Quantum Error-Correcting Codes for a Bosonic Mode |url=https://link.aps.org/doi/10.1103/PhysRevX.6.031006 |journal=Physical Review X |volume=6 |issue=3 |article-number=031006 |arxiv=1602.00008 |doi=10.1103/PhysRevX.6.031006 |bibcode=2016PhRvX...6c1006M }}</ref>
|2025
|Extended binomial codes<ref name=":6">{{Cite journal |last=Chang |first=En-Jui |date=2025-09-09 |title=High-rate extended binomial codes for multiqubit encoding |url=https://link.aps.org/doi/10.1103/hwfz-c6vy |journal=Physical Review A |volume=112 |issue=3 |article-number=032419 |arxiv=2501.07093 |doi=10.1103/hwfz-c6vy |bibcode=2025PhRvA.112c2419C }}</ref>
|It uses multi-mode and encode multi-qubits.
|}
Unlike a two-level system, a '''[[quantum harmonic oscillator]]''' possesses infinitely many energy levels within a single physical system. These codes exploit the inherent redundancy within a single oscillator, rather than relying on multiple two-level qubits for encoding.
While the cat code and GKP codes are purely bosonic with no direct qubit correspondence, (extended) binomial codes<ref name=":6" /> are closely related to (high-rate) Shor codes.<ref name=":3" /> The underlying idea is to treat the grouped qubits in each inner repetition code as identical particles, mapping them to a single bosonic mode in the Fock basis, thereby linking qubit codes to bosonic codes.
=== Other code families ===
* '''Constant-excitation codes'''<ref>{{Cite journal |last=Chang |first=En-Jui |date=2025-11-05 |title=Quantum dual extended Hamming code immune to collective coherent errors |url=https://link.aps.org/doi/10.1103/qzd2-b2mx |journal=Physical Review A |volume=112 |issue=5 |article-number=052410 |arxiv=2503.05249 |doi=10.1103/qzd2-b2mx |bibcode=2025PhRvA.112e2410C }}</ref> are designed to protect against collective coherent errors arising from the intrinsic Hamiltonian of physical qubits during an unknown storage or transmission duration, such as when the receiver may be in motion.
* [[Entanglement-assisted stabilizer formalism]], constructed by [[Todd Brun]] et al., is an extension of the standard [[stabilizer formalism]] that incorporates [[quantum entanglement]] shared between a sender and a receiver.
* [[Eric Rains]]<ref>{{Cite journal |last=Rains |first=E.M. |title=Quantum codes of minimum distance two |journal=IEEE Transactions on Information Theory |date=1999 |volume=45 |issue=1 |pages=266–271 |arxiv=quant-ph/9704043 |doi=10.1109/18.746807 |bibcode=1999ITIT...45..266R |issn=1557-9654}}</ref> and [[John A. Smolin|John Smolin]] et al.<ref>{{Cite journal |last1=Smolin |first1=John A. |last2=Smith |first2=Graeme |last3=Wehner |first3=Stephanie |date=2007-09-28 |title=Simple Family of Nonadditive Quantum Codes |url=https://link.aps.org/doi/10.1103/PhysRevLett.99.130505 |journal=Physical Review Letters |volume=99 |issue=13 |article-number=130505 |doi=10.1103/PhysRevLett.99.130505 |pmid=17930569 |arxiv=quant-ph/0701065 |bibcode=2007PhRvL..99m0505S }}</ref> generalize previous non-additive codes to more distance two cases. Yu et al.<ref>{{Cite journal |last1=Yu |first1=Sixia |last2=Chen |first2=Qing |last3=Lai |first3=C. H. |last4=Oh |first4=C. H. |date=2008-08-29 |title=Nonadditive Quantum Error-Correcting Code |url=https://link.aps.org/doi/10.1103/PhysRevLett.101.090501 |journal=Physical Review Letters |volume=101 |issue=9 |article-number=090501 |doi=10.1103/PhysRevLett.101.090501 |pmid=18851592 |arxiv=0704.2122 |bibcode=2008PhRvL.101i0501Y }}</ref><ref>{{Cite journal |last1=Yu |first1=Sixia |last2=Chen |first2=Qing |last3=Oh |first3=C. H. |title=Two Infinite Families of Nonadditive Quantum Error-Correcting Codes |journal=IEEE Transactions on Information Theory |date=2015 |volume=61 |issue=12 |pages=7012–7016 |doi=10.1109/TIT.2015.2489645 |bibcode=2015ITIT...61.7012Y |issn=0018-9448}}</ref> further improve the code distance to three.
* Noh ''et al.'' proposed a QEC scheme that protects a single oscillator using an ancillary GKP state.<ref>{{Cite journal |last1=Noh |first1=Kyungjoo |last2=Girvin |first2=S. M. |last3=Jiang |first3=Liang |date=2020-08-18 |title=Encoding an Oscillator into Many Oscillators |url=https://link.aps.org/doi/10.1103/PhysRevLett.125.080503 |journal=Physical Review Letters |volume=125 |issue=8 |article-number=080503 |doi=10.1103/PhysRevLett.125.080503 |pmid=32909762 |arxiv=1903.12615 |bibcode=2020PhRvL.125h0503N }}</ref>
==Experimental realization==
There have been several experimental realizations of CSS-based codes. The first demonstration was with [[Nuclear magnetic resonance quantum computer|nuclear magnetic resonance qubits]].<ref>{{cite journal |last1=Cory |first1=D. G. |last2=Price |first2=M. D. |last3=Maas |first3=W. |last4=Knill |first4=E. |last5=Laflamme |first5=R. |last6=Zurek |first6=W. H. |last7=Havel |first7=T. F. |last8=Somaroo |first8=S. S. |year=1998 |title=Experimental Quantum Error Correction |journal=Phys. Rev. Lett. |volume=81 |issue=10 |pages=2152–2155 |arxiv=quant-ph/9802018 |bibcode=1998PhRvL..81.2152C |doi=10.1103/PhysRevLett.81.2152 |s2cid=11662810}}</ref> Subsequently, demonstrations have been made with linear optics,<ref>{{cite journal |last1=Pittman |first1=T. B. |last2=Jacobs |first2=B. C. |last3=Franson |first3=J. D. |year=2005 |title=Demonstration of quantum error correction using linear optics |journal=Phys. Rev. A |volume=71 |issue=5 |arxiv=quant-ph/0502042 |bibcode=2005PhRvA..71e2332P |doi=10.1103/PhysRevA.71.052332 |s2cid=11679660 |article-number=052332}}</ref> trapped ions,<ref>{{cite journal |last1=Chiaverini |first1=J. |last2=Leibfried |first2=D. |last3=Schaetz |first3=T. |last4=Barrett |first4=M. D. |last5=Blakestad |first5=R. B. |last6=Britton |first6=J. |last7=Itano |first7=W. M. |last8=Jost |first8=J. D. |last9=Knill |first9=E. |last10=Langer |first10=C. |last11=Ozeri |first11=R. |last12=Wineland |first12=D. J. |year=2004 |title=Realization of quantum error correction |journal=Nature |volume=432 |issue=7017 |pages=602–605 |bibcode=2004Natur.432..602C |doi=10.1038/nature03074 |pmid=15577904 |s2cid=167898}}</ref><ref>{{cite journal |last1=Schindler |first1=P. |last2=Barreiro |first2=J. T. |last3=Monz |first3=T. |last4=Nebendahl |first4=V. |last5=Nigg |first5=D. |last6=Chwalla |first6=M. |last7=Hennrich |first7=M. |last8=Blatt |first8=R. |year=2011 |title=Experimental Repetitive Quantum Error Correction |journal=Science |volume=332 |issue=6033 |pages=1059–1061 |bibcode=2011Sci...332.1059S |doi=10.1126/science.1203329 |pmid=21617070 |s2cid=32268350}}</ref> and superconducting ([[transmon]]) qubits.<ref>{{cite journal |last1=Reed |first1=M. D. |last2=DiCarlo |first2=L. |last3=Nigg |first3=S. E. |last4=Sun |first4=L. |last5=Frunzio |first5=L. |last6=Girvin |first6=S. M. |last7=Schoelkopf |first7=R. J. |year=2012 |title=Realization of Three-Qubit Quantum Error Correction with Superconducting Circuits |journal=Nature |volume=482 |issue=7385 |pages=382–385 |arxiv=1109.4948 |bibcode=2012Natur.482..382R |doi=10.1038/nature10786 |pmid=22297844 |s2cid=2610639}}</ref>
* In 2016 for the first time the lifetime of a quantum bit was prolonged by employing a QEC code.<ref name=":5">{{Cite journal |last1=Ofek |first1=Nissim |last2=Petrenko |first2=Andrei |last3=Heeres |first3=Reinier |last4=Reinhold |first4=Philip |last5=Leghtas |first5=Zaki |last6=Vlastakis |first6=Brian |last7=Liu |first7=Yehan |last8=Frunzio |first8=Luigi |last9=Girvin |first9=S. M. |last10=Jiang |first10=L. |last11=Mirrahimi |first11=Mazyar |date=August 2016 |title=Extending the lifetime of a quantum bit with error correction in superconducting circuits |journal=Nature |volume=536 |issue=7617 |pages=441–445 |bibcode=2016Natur.536..441O |doi=10.1038/nature18949 |issn=0028-0836 |pmid=27437573 |s2cid=594116}}</ref>
** The error-correction demonstration was performed on [[Cat state|Schrödinger-cat states]] encoded in a superconducting resonator, and employed a [[quantum controller]] capable of performing real-time feedback operations including read-out of the quantum information, its analysis, and the correction of its detected errors. The work demonstrated how the quantum-error-corrected system reaches the break-even point at which the lifetime of a logical qubit exceeds the lifetime of the underlying constituents of the system (the physical qubits).
** Other error correcting codes have also been implemented, such as one aimed at correcting for photon loss, the dominant error source in photonic qubit schemes.<ref>{{cite journal |last1=Lassen |first1=M. |last2=Sabuncu |first2=M. |last3=Huck |first3=A. |last4=Niset |first4=J. |last5=Leuchs |first5=G. |last6=Cerf |first6=N. J. |last7=Andersen |first7=U. L. |year=2010 |title=Quantum optical coherence can survive photon losses using a continuous-variable quantum erasure-correcting code |journal=Nature Photonics |volume=4 |issue=10 |page=700 |arxiv=1006.3941 |bibcode=2010NaPho...4..700L |doi=10.1038/nphoton.2010.168 |s2cid=55090423}}</ref><ref>{{cite journal |last1=Guo |first1=Qihao |last2=Zhao |first2=Yuan-Yuan |last3=Grassl |first3=Markus |last4=Nie |first4=Xinfang |last5=Xiang |first5=Guo-Yong |last6=Xin |first6=Tao |last7=Yin |first7=Zhang-Qi |last8=Zeng |first8=Bei |author8-link=Bei Zeng |year=2021 |title=Testing a quantum error-correcting code on various platforms |journal=Science Bulletin |volume=66 |issue=1 |pages=29–35 |arxiv=2001.07998 |bibcode=2021SciBu..66...29G |doi=10.1016/j.scib.2020.07.033 |pmid=36654309 |s2cid=210861230}}</ref>
* In 2021, an [[Controlled NOT gate|entangling gate]] between two logical qubits encoded in [[Toric code|topological quantum error-correction codes]] has first been realized using 10 ions in a [[Trapped ion quantum computer|trapped-ion quantum computer]].<ref>{{cite news |date=13 January 2021 |title=Error-protected quantum bits entangled for the first time |url=https://phys.org/news/2021-01-error-protected-quantum-bits-entangled.html |access-date=30 August 2021 |work=phys.org |language=en}}</ref><ref>{{cite journal |last1=Erhard |first1=Alexander |last2=Poulsen Nautrup |first2=Hendrik |last3=Meth |first3=Michael |last4=Postler |first4=Lukas |last5=Stricker |first5=Roman |last6=Stadler |first6=Martin |last7=Negnevitsky |first7=Vlad |last8=Ringbauer |first8=Martin |last9=Schindler |first9=Philipp |last10=Briegel |first10=Hans J. |last11=Blatt |first11=Rainer |last12=Friis |first12=Nicolai |last13=Monz |first13=Thomas |date=13 January 2021 |title=Entangling logical qubits with lattice surgery |journal=Nature |language=en |volume=589 |issue=7841 |pages=220–224 |arxiv=2006.03071 |bibcode=2021Natur.589..220E |doi=10.1038/s41586-020-03079-6 |issn=1476-4687 |pmid=33442044 |s2cid=219401398}}</ref>
* 2021 also saw the first experimental demonstration of fault-tolerant Bacon-Shor code in a single logical qubit of a trapped-ion system, i.e. a demonstration for which the addition of error correction is able to suppress more errors than is introduced by the overhead required to implement the error correction as well as fault tolerant Steane code.<ref>{{Cite web |last=Bedford |first=Bailey |date=2021-10-04 |title=Foundational step shows quantum computers can be better than the sum of their parts |url=https://phys.org/news/2021-10-foundational-quantum-sum.html |access-date=2021-10-05 |website=phys.org |language=en}}</ref><ref>{{Cite journal |last1=Egan |first1=Laird |last2=Debroy |first2=Dripto M. |last3=Noel |first3=Crystal |last4=Risinger |first4=Andrew |last5=Zhu |first5=Daiwei |last6=Biswas |first6=Debopriyo |last7=Newman |first7=Michael |last8=Li |first8=Muyuan |last9=Brown |first9=Kenneth R. |last10=Cetina |first10=Marko |last11=Monroe |first11=Christopher |date=2021-10-04 |title=Fault-tolerant control of an error-corrected qubit |journal=Nature |language=en |volume=598 |issue=7880 |pages=281–286 |bibcode=2021Natur.598..281E |doi=10.1038/s41586-021-03928-y |issn=0028-0836 |pmid=34608286 |s2cid=238357892}}</ref><ref>{{Cite journal |last=Ball |first=Philip |date=2021-12-23 |title=Real-Time Error Correction for Quantum Computing |journal=Physics |language=en |volume=14 |bibcode=2021PhyOJ..14..184B |doi=10.1103/Physics.14.184 |s2cid=245442996 |doi-access=free |article-number=184}}</ref>
** In a different direction, using an encoding corresponding to the Jordan-Wigner mapped Majorana zero modes of a Kitaev chain, researchers were able to perform quantum teleportation of a logical qubit, where an improvement in fidelity from 71% to 85% was observed.<ref>{{Cite journal |last1=Huang |first1=He-liang |date=2021-03-03 |title=Emulating Quantum Teleportation of a Majorana Zero Mode Qubit |journal=Phys. Rev. Lett. |language=en |volume=126 |issue=9 |arxiv=2009.07590 |bibcode=2021PhRvL.126i0502H |doi=10.1103/PhysRevLett.126.090502 |pmid=33750174 |article-number=090502}}</ref>
* In 2022, researchers at the [[University of Innsbruck]] have demonstrated a fault-tolerant universal set of gates on two logical qubits in a trapped-ion quantum computer.
** They have performed a logical two-qubit controlled-NOT gate between two instances of the seven-qubit color code, and fault-tolerantly prepared a logical [[Magic state distillation|magic state]].<ref>{{cite journal |last1=Postler |first1=Lukas |last2=Heußen |first2=Sascha |last3=Pogorelov |first3=Ivan |last4=Rispler |first4=Manuel |last5=Feldker |first5=Thomas |last6=Meth |first6=Michael |last7=Marciniak |first7=Christian D. |last8=Stricker |first8=Roman |last9=Ringbauer |first9=Martin |last10=Blatt |first10=Rainer |last11=Schindler |first11=Philipp |last12=Müller |first12=Markus |last13=Monz |first13=Thomas |date=25 May 2022 |title=Demonstration of fault-tolerant universal quantum gate operations |journal=Nature |volume=605 |issue=7911 |pages=675–680 |arxiv=2111.12654 |bibcode=2022Natur.605..675P |doi=10.1038/s41586-022-04721-1 |pmid=35614250 |s2cid=244527180}}</ref>
* In 2022, research at University of Engineering and Technology Lahore demonstrated error cancellation by inserting single-qubit Z-axis rotation gates into strategically chosen locations of the superconductor quantum circuits.<ref name=":1">{{Cite journal |last1=Ahsan |first1=Muhammad |last2=Naqvi |first2=Syed Abbas Zilqurnain |last3=Anwer |first3=Haider |date=2022-02-18 |title=Quantum circuit engineering for correcting coherent noise |journal=Physical Review A |volume=105 |issue=2 |arxiv=2109.03533 |bibcode=2022PhRvA.105b2428A |doi=10.1103/physreva.105.022428 |issn=2469-9926 |s2cid=237442177 |article-number=022428}}</ref>
** The scheme has been shown to effectively correct errors that would otherwise rapidly add up under constructive interference of coherent noise. This is a circuit-level calibration scheme that traces deviations (e.g. sharp dips or notches) in the decoherence curve to detect and localize the coherent error, but does not require encoding or parity measurements.<ref>{{Cite web |last=Steffen |first=Matthias |date=20 Oct 2022 |title=What's the difference between error suppression, error mitigation, and error correction? |url=https://research.ibm.com/blog/quantum-error-suppression-mitigation-correction |access-date=2022-11-26 |website=IBM Research Blog |language=en}}</ref> However, further investigation is needed to establish the effectiveness of this method for the incoherent noise.
* In February 2023, researchers at Google claimed to have decreased quantum errors by increasing the qubit number in experiments, they used a fault tolerant [[surface code]] measuring an error rate of 3.028% and 2.914% for a distance-3 qubit array and a distance-5 qubit array respectively.<ref>{{Cite journal |author=((Google Quantum AI)) |date=2023-02-22 |title=Suppressing quantum errors by scaling a surface code logical qubit |journal=Nature |language=en |volume=614 |issue=7949 |pages=676–681 |arxiv=2207.06431 |bibcode=2023Natur.614..676G |doi=10.1038/s41586-022-05434-1 |issn=1476-4687 |pmc=9946823 |pmid=36813892 |doi-access=free}}</ref><ref>{{Cite web |last=Boerkamp |first=Martijn |date=2023-03-20 |title=Breakthrough in quantum error correction could lead to large-scale quantum computers |url=https://physicsworld.com/breakthrough-in-quantum-error-correction-could-lead-to-large-scale-quantum-computers/ |access-date=2023-04-01 |website=Physics World |language=en-GB}}</ref><ref>{{Cite web |last=Conover |first=Emily |date=2023-02-22 |title=Google's quantum computer reached an error-correcting milestone |url=https://www.sciencenews.org/article/google-quantum-computer-sycamore-milestone |access-date=2023-04-01 |website=ScienceNews |language=en-US}}</ref>
* In April 2024, researchers at [[Microsoft Azure Quantum|Microsoft]] claimed to have successfully tested a quantum error correction code that allowed them to achieve an error rate with logical qubits that is 800 times better than the underlying physical error rate.<ref>{{Cite web |last=Smith-Goodson |first=Paul |date=2024-04-18 |title=Microsoft And Quantinuum Improve Quantum Error Rates By 800x |url=https://www.forbes.com/sites/moorinsights/2024/04/18/microsoft-and-quantinuum-improve-quantum-error-rates-by-800x/ |access-date=2024-07-01 |website=Forbes |language=en-US}}</ref>
** This qubit virtualization system was used to create 4 logical qubits with 30 of the 32 qubits on Quantinuum's trapped-ion hardware. The system uses an active syndrome extraction technique to diagnose errors and correct them while calculations are underway without destroying the logical qubits.<ref>{{Cite web |last=Yirka |first=Bob |date=2024-04-05 |title=Quantinuum quantum computer using Microsoft's 'logical quantum bits' runs 14,000 experiments with no errors |url=https://phys.org/news/2024-04-quantinuum-quantum-microsoft-logical-bits.html |access-date=2024-07-01 |website=Phys.org |language=en-US}}</ref>
* In January 2025, researchers at [[UNSW Sydney]] managed to develop an error correction method using [[antimony]]-based materials, including [[antimonides]], leveraging high-dimensional quantum states ([[qudit]]s) with up to eight states. By encoding quantum information in the nuclear spin of a [[phosphorus]] atom embedded in [[silicon]] and employing advanced pulse control techniques, they demonstrated enhanced error resilience.<ref>{{cite journal |last=Yu |first=Xi |display-authors=et al. |year=2025 |title=Schrödinger cat states of a nuclear spin qudit in silicon |journal=Nature Physics |volume=21 |issue=3 |pages=362–367 |arxiv=2405.15494 |bibcode=2025NatPh..21..362Y |doi=10.1038/s41567-024-02745-0}}</ref>
==Classical codes as bias quantum code==
Classical [[Error correction code|error-correcting codes]] that employ redundancy can be mapped to '''biased quantum codes''' that correct either Pauli X (bit-flip) or Pauli Z (phase-flip) errors. The simplest, though inefficient, example is the [[repetition code]]. In a repetition code, the logical information is stored as multiple copies of a bit. If these copies are later found to disagree due to errors, the most likely original value is inferred via majority vote.
For example, consider a logical bit in the "1" state copied three times. If noise corrupts one of the three bits, leaving the other two unchanged, the most likely scenario is that a single-bit error occurred, and the original logical value was "1." While it is possible that two bits flip, producing three zeros, this outcome is less probable. In this example, the logical information is the single bit, and the three copies are the physical representation.
Repetition codes work in classical channels because classical bits can be freely measured and duplicated. In quantum channels, however, the [[no-cloning theorem]] prevents copying an unknown qubit, seemingly posing an obstacle to quantum error correction. This challenge is overcome by encoding the logical information of a single qubit into a highly entangled state of multiple physical qubits. For example, the '''three-qubit bit-flip code''', first proposed by [[Asher Peres]] in 1985,<ref>{{Cite journal |last=Peres |first=Asher |date=1985-12-01 |title=Reversible logic and quantum computers |url=https://link.aps.org/doi/10.1103/PhysRevA.32.3266 |journal=Physical Review A |volume=32 |issue=6 |pages=3266–3276 |doi=10.1103/PhysRevA.32.3266 |pmid=9896493 |bibcode=1985PhRvA..32.3266P |url-access=subscription }}</ref> uses entanglement and syndrome measurements to correct errors in a manner analogous to the classical repetition code. A '''phase-flip code''' is similarly constructed and is equivalent to the bit-flip code up to transversal [[Hadamard transform|Hadamard gates]].
=== Bit-flip code ===
[[File:Quantum error correction of bit flip using three qubits.svg|upright=1.35|thumb|right|[[Quantum circuit]] of the bit flip code]]
[[File:Quantum error correction of bit flip using three qubits.svg|upright=1.35|thumb|right|[[Quantum circuit]] of the bit flip code]]
Consider the situation in which we want to transmit the state of a single qubit <math>\vert\psi\rangle</math> through a noisy [[Quantum channel|channel]] <math>\mathcal E</math>. Let us moreover assume that this channel either flips the state of the qubit, with probability <math>p</math>, or leaves it unchanged. The action of <math>\mathcal E</math> on a general input <math>\rho</math> can therefore be written as <math>\mathcal E(\rho) = (1-p) \rho + p\cdot\rho </math>.
Consider the situation in which we want to transmit the state of a single qubit <math>\vert\psi\rangle</math> through a noisy [[Quantum channel|channel]] <math>\mathcal E</math>. Let us moreover assume that this channel either flips the state of the qubit, with probability <math>p</math>, or leaves it unchanged. The action of <math>\mathcal E</math> on a general input <math>\rho</math> can therefore be written as <math>\mathcal E(\rho) = (1-p) \rho + p\cdot X \rho X </math>.


Let <math>|\psi\rangle = \alpha_0|0\rangle + \alpha_1|1\rangle</math> be the quantum state to be transmitted. With no error-correcting protocol in place, the transmitted state will be correctly transmitted with probability <math>1-p</math>. We can however improve on this number by ''encoding'' the state into a greater number of qubits, in such a way that errors in the corresponding logical qubits can be detected and corrected. In the case of the simple three-qubit repetition code, the encoding consists in the mappings <math>\vert0\rangle\rightarrow\vert0_{\rm L}\rangle\equiv\vert000\rangle</math> and <math>\vert1\rangle\rightarrow\vert1_{\rm L}\rangle\equiv\vert111\rangle</math>. The input state <math>\vert\psi\rangle</math> is encoded into the state <math>\vert\psi'\rangle = \alpha_0 \vert000\rangle + \alpha_1 \vert111\rangle</math>. This mapping can be realized for example using two CNOT gates, entangling the system with two [[Ancilla bit#Ancilla qubits|ancillary qubits]] initialized in the state <math>\vert0\rangle</math>.<ref>{{cite book |last1=Nielsen |first1=Michael A. |last2=Chuang |first2=Isaac L. |author-link1=Michael A. Nielsen |author-link2=Isaac L. Chuang |year=2000 |title=Quantum Computation and Quantum Information |publisher=Cambridge University Press}}</ref> The encoded state <math>\vert\psi'\rangle</math> is what is now passed through the noisy channel.
Let <math>|\psi\rangle = \alpha_0|0\rangle + \alpha_1|1\rangle</math> be the quantum state to be transmitted. With no error-correcting protocol in place, the transmitted state will be correctly transmitted with probability <math>1-p</math>. We can however improve on this number by ''encoding'' the state into a greater number of qubits, in such a way that errors in the corresponding logical qubits can be detected and corrected. In the case of the simple three-qubit repetition code, the encoding consists in the mappings <math>\vert0\rangle\rightarrow\vert0_{\rm L}\rangle\equiv\vert000\rangle</math> and <math>\vert1\rangle\rightarrow\vert1_{\rm L}\rangle\equiv\vert111\rangle</math>. The input state <math>\vert\psi\rangle</math> is encoded into the state <math>\vert\psi'\rangle = \alpha_0 \vert000\rangle + \alpha_1 \vert111\rangle</math>. This mapping can be realized for example using two CNOT gates, entangling the system with two [[Ancilla bit#Ancilla qubits|ancillary qubits]] initialized in the state <math>\vert0\rangle</math>.<ref>{{cite book |last1=Nielsen |first1=Michael A. |last2=Chuang |first2=Isaac L. |author-link1=Michael A. Nielsen |author-link2=Isaac L. Chuang |year=2000 |title=Quantum Computation and Quantum Information |publisher=Cambridge University Press}}</ref> The encoded state <math>\vert\psi'\rangle</math> is what is now passed through the noisy channel.
Line 55: Line 162:
     P_3 &=|001\rangle\langle001|+|110\rangle\langle110|.
     P_3 &=|001\rangle\langle001|+|110\rangle\langle110|.
\end{align}</math>This reveals which qubits are different from the others, without at the same time giving information about the state of the qubits themselves. If the outcome corresponding to <math>P_0</math> is obtained, no correction is applied, while if the outcome corresponding to <math>P_i</math> is observed, then the Pauli ''X'' gate is applied to the <math>i</math>-th qubit. Formally, this correcting procedure corresponds to the application of the following map to the output of the channel:
\end{align}</math>This reveals which qubits are different from the others, without at the same time giving information about the state of the qubits themselves. If the outcome corresponding to <math>P_0</math> is obtained, no correction is applied, while if the outcome corresponding to <math>P_i</math> is observed, then the Pauli ''X'' gate is applied to the <math>i</math>-th qubit. Formally, this correcting procedure corresponds to the application of the following map to the output of the channel:
<math display="block">\mathcal E_{\operatorname{corr}}(\rho)=P_0\rho P_0 + \sum_{i=1}^3 X_i P_i \rho\, P_i X_i.</math>
<math display="block">\mathcal E_{\operatorname{corr}}(\rho)=P_0\rho P_0 + \sum_{i=1}^3 X_i P_i \rho\, P_i X_i.</math>Note that, while this procedure perfectly corrects the output when zero or one flips are introduced by the channel, if more than one qubit is flipped then the output is not properly corrected. For example, if the first and second qubits are flipped, then the syndrome measurement gives the outcome <math>P_3</math>, and the third qubit is flipped, instead of the first two. To assess the performance of this error-correcting scheme for a general input we can study the [[Fidelity of quantum states|fidelity]] <math>F(\psi')</math> between the input <math>\vert\psi'\rangle</math> and the output <math>\rho_{\operatorname{out}}\equiv\mathcal E_{\operatorname{corr}}(\mathcal E(\vert\psi'\rangle\langle\psi'\vert))</math>. Being the output state <math>\rho_{\operatorname{out}}</math> correct when no more than one qubit is flipped, which happens with probability <math>(1-p)^3 + 3p(1-p)^2</math>, we can write it as <math>[(1-p)^3+3p(1-p)^2]\,\vert\psi'\rangle\langle\psi'\vert + (...)</math>, where the dots denote components of <math>\rho_{\operatorname{out}}</math> resulting from errors not properly corrected by the protocol. It follows that <math display="block">F(\psi')=\langle\psi'\vert\rho_{\operatorname{out}}\vert\psi'\rangle\ge (1-p)^3 + 3p(1-p)^2=1-3p^2+2p^3.</math>This [[Fidelity of quantum states|fidelity]] is to be compared with the corresponding fidelity obtained when no error-correcting protocol is used, which was shown before to equal <math>{1-p}</math>. A little algebra then shows that the fidelity ''after'' error correction is greater than the one without for <math>p<1/2</math>. Note that this is consistent with the working assumption that was made while deriving the protocol (of <math>p</math> being small enough).


Note that, while this procedure perfectly corrects the output when zero or one flips are introduced by the channel, if more than one qubit is flipped then the output is not properly corrected. For example, if the first and second qubits are flipped, then the syndrome measurement gives the outcome <math>P_3</math>, and the third qubit is flipped, instead of the first two. To assess the performance of this error-correcting scheme for a general input we can study the [[Fidelity of quantum states|fidelity]] <math>F(\psi')</math> between the input <math>\vert\psi'\rangle</math> and the output <math>\rho_{\operatorname{out}}\equiv\mathcal E_{\operatorname{corr}}(\mathcal E(\vert\psi'\rangle\langle\psi'\vert))</math>. Being the output state <math>\rho_{\operatorname{out}}</math> correct when no more than one qubit is flipped, which happens with probability <math>(1-p)^3 + 3p(1-p)^2</math>, we can write it as <math>[(1-p)^3+3p(1-p)^2]\,\vert\psi'\rangle\langle\psi'\vert + (...)</math>, where the dots denote components of <math>\rho_{\operatorname{out}}</math> resulting from errors not properly corrected by the protocol. It follows that <math display="block">F(\psi')=\langle\psi'\vert\rho_{\operatorname{out}}\vert\psi'\rangle\ge (1-p)^3 + 3p(1-p)^2=1-3p^2+2p^3.</math>This [[Fidelity of quantum states|fidelity]] is to be compared with the corresponding fidelity obtained when no error-correcting protocol is used, which was shown before to equal <math>{1-p}</math>. A little algebra then shows that the fidelity ''after'' error correction is greater than the one without for <math>p<1/2</math>. Note that this is consistent with the working assumption that was made while deriving the protocol (of <math>p</math> being small enough).
=== Sign-flip code ===
 
[[File:Quantum error correction of phase flip using three qubits.svg|upright=1.4|thumb|[[Quantum circuit]] of the phase-flip code]]
==Sign-flip code==
[[File:Quantum error correction of phase flip using three qubits.svg|upright=1.5|thumb|right|[[Quantum circuit]] of the phase-flip code]]
The bit flip is the only kind of error in classical computers. In quantum computers, however, another kind of error is possible: the sign flip. Through transmission in a channel, the relative sign between <math>|0\rangle</math> and <math>|1\rangle</math> can become inverted. For instance, a qubit in the state <math>|-\rangle=(|0\rangle-|1\rangle)/\sqrt{2}</math> may have its sign flip to <math>|+\rangle=(|0\rangle+|1\rangle)/\sqrt{2}.</math>
The bit flip is the only kind of error in classical computers. In quantum computers, however, another kind of error is possible: the sign flip. Through transmission in a channel, the relative sign between <math>|0\rangle</math> and <math>|1\rangle</math> can become inverted. For instance, a qubit in the state <math>|-\rangle=(|0\rangle-|1\rangle)/\sqrt{2}</math> may have its sign flip to <math>|+\rangle=(|0\rangle+|1\rangle)/\sqrt{2}.</math>


Line 70: Line 175:
In the Hadamard basis, bit flips become sign flips and sign flips become bit flips. Let <math>E_\text{phase}</math> be a quantum channel that can cause at most one phase flip. Then the bit-flip code from above can recover <math>|\psi\rangle</math> by transforming into the Hadamard basis before and after transmission through <math>E_\text{phase}</math>.
In the Hadamard basis, bit flips become sign flips and sign flips become bit flips. Let <math>E_\text{phase}</math> be a quantum channel that can cause at most one phase flip. Then the bit-flip code from above can recover <math>|\psi\rangle</math> by transforming into the Hadamard basis before and after transmission through <math>E_\text{phase}</math>.


==Shor code==
==Encoding logical qubits into physical qubits==


The error channel may induce either a bit flip, a sign flip (i.e., a phase flip), or both. It is possible to correct for both types of errors on a logical qubit using a well-designed QEC code. One example of a code that does this is the Shor code, published in 1995.<ref name="Shor1995" /><ref>{{Cite journal |last1=Devitt |first1=Simon J |last2=Munro |first2=William J |last3=Nemoto |first3=Kae |date=2013-06-20 |title=Quantum error correction for beginners |url=http://dx.doi.org/10.1088/0034-4885/76/7/076001 |journal=Reports on Progress in Physics |volume=76 |issue=7 |pages=076001 |doi=10.1088/0034-4885/76/7/076001 |pmid=23787909 |arxiv=0905.2794 |bibcode=2013RPPh...76g6001D |s2cid=206021660 |issn=0034-4885}}</ref>{{Rp|page=10}} Since these two types of errors are the only types of errors that can result after a projective measurement, a Shor code corrects arbitrary single-qubit errors.
===Shor code===
 
The error channel may induce either a bit flip, a sign flip (i.e., a phase flip), or both. It is possible to correct for both types of errors on a logical qubit using a well-designed QEC code. One example of a code that does this is the Shor code, published in 1995.<ref name="Shor1995">{{cite journal |last=Shor |first=Peter W. |author-link=Peter W. Shor |year=1995 |title=Scheme for reducing decoherence in quantum computer memory |journal=Physical Review A |volume=52 |issue=4 |pages=R2493–R2496 |bibcode=1995PhRvA..52.2493S |doi=10.1103/PhysRevA.52.R2493 |pmid=9912632}}
</ref><ref>{{Cite journal |last1=Devitt |first1=Simon J |last2=Munro |first2=William J |last3=Nemoto |first3=Kae |date=2013-06-20 |title=Quantum error correction for beginners |journal=Reports on Progress in Physics |volume=76 |issue=7 |article-number=076001 |doi=10.1088/0034-4885/76/7/076001 |pmid=23787909 |arxiv=0905.2794 |bibcode=2013RPPh...76g6001D |s2cid=206021660 |issn=0034-4885}}</ref>{{Rp|page=10}} Since these two types of errors are the only types of errors that can result after a projective measurement, a Shor code corrects arbitrary single-qubit errors.


[[File:Shore code.svg|upright=1.8|thumb|right|Quantum circuit to encode a single logical qubit with the Shor code and then perform bit flip error correction on each of the three blocks.]]
[[File:Shore code.svg|upright=1.8|thumb|right|Quantum circuit to encode a single logical qubit with the Shor code and then perform bit flip error correction on each of the three blocks.]]
Line 101: Line 209:
If ''U'' is equal to ''I'', then no error occurs. If <math>U=X</math>, a bit flip error occurs. If <math>U=Z</math>, a sign flip error occurs. If <math>U=iY</math> then both a bit flip error and a sign flip error occur. In other words, the Shor code can correct any combination of bit or phase errors on a single qubit.
If ''U'' is equal to ''I'', then no error occurs. If <math>U=X</math>, a bit flip error occurs. If <math>U=Z</math>, a sign flip error occurs. If <math>U=iY</math> then both a bit flip error and a sign flip error occur. In other words, the Shor code can correct any combination of bit or phase errors on a single qubit.


More generally, the error operator ''U'' does not need to be unitary, but can be an Kraus operator from a [[quantum operation]] representing a system interacting with its environment.
More generally, the error operator ''U'' does not need to be unitary, but can be a Kraus operator from a [[quantum operation]] representing a system interacting with its environment.


== Bosonic codes ==
==Application==
Several proposals have been made for storing error-correctable quantum information in bosonic modes.{{Clarification needed|date=May 2022|reason=Clarify why they are called bosonic codes, what they have to do with bosons.}} Unlike a two-level system, a [[quantum harmonic oscillator]] has infinitely many energy levels in a single physical system. Codes for these systems include cat,<ref name=":2">{{Cite journal| last1=Cochrane| first1=P. T. |last2=Milburn| first2=G. J.| last3=Munro| first3=W. J.| date=1999-04-01| title=Macroscopically distinct quantum-superposition states as a bosonic code for amplitude damping| journal=Physical Review A| volume=59| issue=4| pages=2631–2634| doi=10.1103/PhysRevA.59.2631| arxiv=quant-ph/9809037| bibcode=1999PhRvA..59.2631C| s2cid=119532538}}</ref><ref name=":3">{{Cite journal| last1=Leghtas| first1=Zaki| last2=Kirchmair| first2=Gerhard| last3=Vlastakis| first3=Brian| last4=Schoelkopf| first4=Robert J.| last5=Devoret| first5=Michel H.| last6=Mirrahimi| first6=Mazyar| date=2013-09-20| title=Hardware-Efficient Autonomous Quantum Memory Protection| journal=Physical Review Letters| volume=111| issue=12| pages=120501| doi=10.1103/physrevlett.111.120501| pmid=24093235| arxiv=1207.0679| s2cid=19929020| bibcode=2013PhRvL.111l0501L| issn=0031-9007}}</ref><ref name=":4">{{Cite journal| last1=Mirrahimi| first1=Mazyar| last2=Leghtas| first2=Zaki| last3=Albert| first3=Victor V| last4=Touzard| first4=Steven| last5=Schoelkopf| first5=Robert J| last6=Jiang| first6=Liang| last7=Devoret| first7=Michel H| date=2014-04-22| title=Dynamically protected cat-qubits: a new paradigm for universal quantum computation|journal=New Journal of Physics| volume=16| issue=4| pages=045014| doi=10.1088/1367-2630/16/4/045014| arxiv=1312.2017| bibcode=2014NJPh...16d5014M| s2cid=7179816| issn=1367-2630}}</ref> Gottesman-Kitaev-Preskill (GKP),<ref>{{Cite journal| arxiv=quant-ph/0008040| author1=Daniel Gottesman| author2=Alexei Kitaev| author3=John Preskill| title=Encoding a qubit in an oscillator| journal=Physical Review A| volume=64| issue=1| pages=012310| doi=10.1103/PhysRevA.64.012310| bibcode=2001PhRvA..64a2310G| year=2001| s2cid=18995200}}</ref> and binomial codes.<ref name=":0">{{Cite journal| last1=Michael| first1=Marios H.| last2=Silveri| first2=Matti| last3=Brierley| first3=R. T.| last4=Albert| first4=Victor V.| last5=Salmilehto| first5=Juha| last6=Jiang| first6=Liang| last7=Girvin| first7=S. M.| date=2016-07-14| title=New Class of Quantum Error-Correcting Codes for a Bosonic Mode| journal=Physical Review X| volume=6| issue=3| pages=031006| doi=10.1103/PhysRevX.6.031006 |arxiv=1602.00008| bibcode=2016PhRvX...6c1006M| s2cid=29518512}}</ref><ref>{{Cite journal| first1=Victor V. |last1=Albert| first2=Kyungjoo |last2=Noh| first3=Kasper |last3=Duivenvoorden| first4=Dylan J. |last4=Young| first5=R. T. |last5=Brierley| first6=Philip |last6=Reinhold| first7=Christophe |last7=Vuillot| first8=Linshu |last8=Li| first9=Chao |last9=Shen| first10=S. M. |last10=Girvin| first11=Barbara M. |last11=Terhal| first12=Liang |last12=Jiang| year=2018| title=Performance and structure of single-mode bosonic codes| journal=Physical Review A| volume=97| issue=3| pages=032346| arxiv=1708.05010| s2cid=51691343| bibcode=2018PhRvA..97c2346A| doi=10.1103/PhysRevA.97.032346}}</ref> One insight offered by these codes is to take advantage of the redundancy within a single system, rather than to duplicate many two-level qubits.


=== Binomial code ===
===In quantum metrology===
Written in the [[Fock state|Fock]] basis, the simplest binomial encoding is
<math display="block">|0_{\rm L}\rangle=\frac{|0\rangle+|4\rangle}{\sqrt{2}},\quad |1_{\rm L}\rangle=|2\rangle,</math>
where the subscript L indicates a "logically encoded" state. Then if the dominant error mechanism of the system is the stochastic application of the bosonic [[lowering operator]] <math>\hat{a},</math> the corresponding error states are <math>|3\rangle</math> and <math>|1\rangle,</math> respectively. Since the codewords involve only even photon number, and the error states involve only odd photon number, errors can be detected by measuring the [[photon number]] parity of the system.<ref name=":0" /><ref name=nature13436>{{Cite journal| last1=Sun| first1=L.| last2=Petrenko| first2=A.| last3=Leghtas| first3=Z.| last4=Vlastakis| first4=B.| last5=Kirchmair| first5=G.| last6=Sliwa| first6=K. M.| last7=Narla| first7=A.| last8=Hatridge| first8=M.| last9=Shankar| first9=S.| last10=Blumoff| first10=J.| last11=Frunzio| first11=L.| last12=Mirrahimi| first12=M.| last13=Devoret| first13=M. H.| last14=Schoelkopf| first14=R. J.| date=July 2014| title=Tracking photon jumps with repeated quantum non-demolition parity measurements| journal=Nature| language=en| volume=511| issue=7510| pages=444–448| doi=10.1038/nature13436| pmid=25043007| issn=1476-4687| arxiv=1311.2534| bibcode=2014Natur.511..444S| s2cid=987945}}</ref> Measuring the odd parity will allow correction by application of an appropriate unitary operation without knowledge of the specific logical state of the qubit. However, the particular binomial code above is not robust to two-photon loss.


===Cat code===
Quantum error correction can be applied to [[quantum metrology]]. Thus, a logical qubit is stored in several physical qubits. In the case of a linear interferometer, there is not interaction between the logical qubits. However, the dynamics is given with operators that contain multiqubit correlation operators of the physical qubits corresponding to a logical qubits. In this scheme, the errors can be detected, and corrected following the general rules of quantum error correction.<ref>{{cite journal |last1=Dür |first1=W. |last2=Skotiniotis |first2=M. |last3=Fröwis |first3=F. |last4=Kraus |first4=B. |title=Improved Quantum Metrology Using Quantum Error Correction |journal=Physical Review Letters |date=26 February 2014 |volume=112 |issue=8 |article-number=080801 |doi=10.1103/PhysRevLett.112.080801|arxiv=1310.3750 |bibcode=2014PhRvL.112h0801D }}</ref><ref>{{cite journal |last1=Kessler |first1=E. M. |last2=Lovchinsky |first2=I. |last3=Sushkov |first3=A. O. |last4=Lukin |first4=M. D. |title=Quantum Error Correction for Metrology |journal=Physical Review Letters |date=16 April 2014 |volume=112 |issue=15 |article-number=150802 |doi=10.1103/PhysRevLett.112.150802 |pmid=24785020 |arxiv=1310.3260 |bibcode=2014PhRvL.112o0802K }}</ref>
[[Cat state|Schrödinger cat states]], superpositions of coherent states, can also be used as logical states for error correction codes. Cat code, realized by Ofek et al.<ref name=":5" /> in 2016, defined two sets of logical states: <math>\{|0^+_L\rangle, |1^+_L\rangle\} </math> and <math>\{|0^-_L\rangle, |1^-_L\rangle\} </math>, where each of the states is a superposition of [[coherent state]] as follows


<math display="block">\begin{aligned}
In another approach, the goal is not correcting the quantum state, but to keep a state that makes quantum metrology with high precision possible even if noise is present. It has been observed that some quantum states that cannot outperform separable states in quantum metrology, can be better than separable states in the multi-copy case, hence their metrological abilities can be activated.<ref>{{cite journal |last1=Tóth |first1=Géza |last2=Vértesi |first2=Tamás |last3=Horodecki |first3=Paweł |last4=Horodecki |first4=Ryszard |title=Activating Hidden Metrological Usefulness. |journal=Physical Review Letters |date=7 July 2020 |volume=125 |issue=2 |article-number=020402 |doi=10.1103/PhysRevLett.125.020402|pmid=32701319 |arxiv=1911.02592 |bibcode=2020PhRvL.125b0402T }}</ref>
    |0^+_L\rangle& \equiv |\alpha\rangle + |-\alpha\rangle, \\
Thus, instead of stroring each logical qubit in several physical qubits, we store several copies of the entire quantum state. For instance, consider an <math>N</math>-qubit quantum state <math>\varrho</math> living in the space
    |1^+_L\rangle& \equiv |i\alpha\rangle + |-i\alpha\rangle, \\
    |0^-_L\rangle& \equiv |\alpha\rangle - |-\alpha\rangle, \\
    |1^-_L\rangle& \equiv |i\alpha\rangle - |-i\alpha\rangle.
\end{aligned}</math>


Those two sets of states differ from the photon number parity, as states denoted with <math>^+</math> only occupy even photon number states and states with <math>^-</math> indicate they have odd parity. Similar to the binomial code, if the dominant error mechanism of the system is the stochastic application of the bosonic [[lowering operator]] <math>\hat{a}</math>, the error takes the logical states from the even parity subspace to the odd one, and vice versa. Single-photon-loss errors can therefore be detected by measuring the photon number parity operator <math>\exp(i\pi \hat{a}^\dagger\hat{a}) </math> using a dispersively coupled ancillary qubit.<ref name=nature13436/>
<math>\{|0\rangle^{\otimes N},|1\rangle^{\otimes N}\}.</math>


Still, cat qubits are not protected against two-photon loss <math>\hat{a}^2</math>,  dephasing noise <math>\hat{a}^\dagger\hat{a}</math>, photon-gain error <math>\hat{a}^\dagger</math>, etc.<ref name=":2" /><ref name=":3" /><ref name=":4" />
This subspace includes the noisy quantum state


==General codes==
<math>p|{\rm GHZ}_N\rangle\langle {\rm GHZ}_N|+(1-p)\frac{(|0\rangle\langle 0|)^{\otimes N}+(|1\rangle\langle 1|)^{\otimes N}}{2},</math>
In general, a ''quantum code'' for a [[quantum channel]] <math>\mathcal{E}</math> is a subspace <math>\mathcal{C} \subseteq \mathcal{H}</math>, where <math>\mathcal{H}</math> is the state Hilbert space, such that there exists another quantum channel <math>\mathcal{R}</math> with
<math display="block"> (\mathcal{R} \circ \mathcal{E})(\rho) = \rho \quad \forall \rho = P_{\mathcal{C}}\rho P_{\mathcal{C}},</math>
where <math>P_{\mathcal{C}}</math> is the [[orthogonal projection]] onto <math>\mathcal{C}</math>. Here <math>\mathcal{R}</math> is known as the ''correction operation''.


A ''non-degenerate code'' is one for which different elements of the set of correctable errors produce linearly independent results when applied to elements of the code. If distinct of the set of correctable errors produce orthogonal results, the code is considered ''pure''.<ref>{{cite journal |first1=A. R. |last1=Calderbank |first2=E. M. |last2=Rains |first3=P. W. |last3=Shor |first4=N. J. A. |last4=Sloane |title=Quantum Error Correction via Codes over GF(4) |journal=IEEE Transactions on Information Theory |volume=44 |issue=4 |year=1998 |pages=1369–1387 |doi=10.1109/18.681315 |arxiv=quant-ph/9608006 |s2cid=1215697 }}</ref>
where the [[Greenberger–Horne–Zeilinger state|Greenberger-Horne-Zeilinger (GHZ) state]] is given as


==Models==
<math>|{\rm GHZ}_N\rangle=\frac1 {\sqrt 2}(|0\rangle^{\otimes N} + |1\rangle^{\otimes N}). </math>


Over time, researchers have come up with several codes:
Let us consider <math>M</math> copies of the state


* [[Peter Shor]]'s 9-qubit-code, a.k.a. the Shor code, encodes 1 logical qubit in 9 physical qubits and can correct for arbitrary errors in a single qubit.
<math>\varrho_{M\text{-copy}}=\varrho^{\otimes M}.</math>
* [[Andrew Steane]] found a code that does the same with 7 instead of 9 qubits, see [[Steane code]].
* [[Raymond Laflamme]] and collaborators found a class of 5-qubit codes that do the same, which also have the property of being [[fault-tolerant]]. A [[Five-qubit error correcting code|5-qubit code]] is the smallest possible code that protects a single logical qubit against single-qubit errors.
* A generalisation of the technique used by [[Andrew Steane|Steane]], to develop the [[Steane code|7-qubit code]] from the [[Hamming(7,4)|classical [7, 4] Hamming code]], led to the construction of an important class of codes called the [[CSS code]]s, named for their inventors: [[Robert Calderbank]], Peter Shor and Andrew Steane. According to the quantum Hamming bound, encoding a single logical qubit and providing for arbitrary error correction in a single qubit requires a minimum of 5 physical qubits.
* A more general class of codes (encompassing the former) are the [[stabilizer code]]s discovered by [[Daniel Gottesman]], and by [[Robert Calderbank]], [[Eric Rains]], Peter Shor, and [[N. J. A. Sloane]]; these are also called [[additive code]]s.
*Two dimensional [[Bacon–Shor code]]s are a family of codes parameterized by integers ''m'' and ''n''. There are ''nm'' qubits arranged in a square lattice.<ref>{{Cite journal|last=Bacon|first=Dave|date=2006-01-30|title=Operator quantum error-correcting subsystems for self-correcting quantum memories|journal=Physical Review A|volume=73|issue=1| pages=012340| doi=10.1103/PhysRevA.73.012340| arxiv=quant-ph/0506023|bibcode=2006PhRvA..73a2340B| s2cid=118968017}}</ref>
* [[Alexei Kitaev]]'s [[toric code|topological quantum code]]s, introduced in 1997 as the toric code, and the more general idea of a [[topological quantum computer]] are the basis for various code types.<ref>
{{ cite conference
|url= https://link.springer.com/book/10.1007/978-1-4615-5923-8
|last= Kitaev
|first= Alexei
|title= Quantum Error Correction with Imperfect Gates
|date= July 31, 1997
|publisher= Springer
|doi= 10.1007/978-1-4615-5923-8
|book-title= Quantum Communication, Computing, and Measurement
|pages= 181–188
|url-access= subscription
}}
</ref>
* [[Todd Brun]], [[Igor Devetak]], and [[Min-Hsiu Hsieh]] also constructed the [[entanglement-assisted stabilizer formalism]] as an extension of the standard [[stabilizer formalism]] that incorporates [[quantum entanglement]] shared between a sender and a receiver.
* The ideas of stabilizer codes, CSS codes, and topological codes can be expanded into the 2D planar [[surface code]], of which various types exist.<ref>{{cite journal | last1=Fowler | first1=Austin G. | last2=Mariantoni | first2=Matteo | last3=Martinis | first3=John M. | last4=Cleland | first4=Andrew N. | title=Surface codes: Towards practical large-scale quantum computation | journal=Physical Review A | volume=86 | issue=3 | date=2012-09-18 | page=032324 | issn=1050-2947 | doi=10.1103/PhysRevA.86.032324| arxiv=1208.0928 | bibcode=2012PhRvA..86c2324F }}</ref> As of June 2024, the 2D planar surface code is generally considered the most well-studied type of quantum error correction, and one of the leading contenders for practical use in quantum computing.<ref>{{cite arXiv | last1=Gidney | first1=Craig | last2=Newman | first2=Michael | last3=Brooks | first3=Peter | last4=Jones | first4=Cody | title=Yoked surface codes | date=2023 | class=quant-ph | eprint=2312.04522 }}</ref><ref>{{cite journal | last1=Horsman | first1=Dominic | last2=Fowler | first2=Austin G | last3=Devitt | first3=Simon | last4=Meter | first4=Rodney Van | title=Surface code quantum computing by lattice surgery | journal=New Journal of Physics | volume=14 | issue=12 | date=2012-12-01 | issn=1367-2630 | doi=10.1088/1367-2630/14/12/123011 | page=123011| arxiv=1111.4022 | bibcode=2012NJPh...14l3011H }}</ref>


That these codes allow indeed for quantum computations of arbitrary length is the content of the [[quantum threshold theorem]], found by [[Michael Ben-Or]] and [[Dorit Aharonov]], which asserts that you can correct for all errors if you concatenate quantum codes such as the CSS codes—i.e. re-encode each logical qubit by the same code again, and so on, on logarithmically many levels—''provided'' that the error rate of individual [[quantum gate]]s is below a certain threshold; as otherwise, the attempts to measure the syndrome and correct the errors would introduce more new errors than they correct for.
Then, the following Hamiltonian


As of late 2004, estimates for this threshold indicate that it could be as high as 1–3%,<ref>{{cite journal
<math>H=\sum_{n=1}^N \prod_{m=1}^M \sigma_z^{(n,m)}</math>
|last= Knill
|first= Emanuel
|arxiv= quant-ph/0410199
|title= Quantum Computing with Very Noisy Devices
|date= November 2, 2004
|doi=10.1038/nature03350
|pmid= 15744292
|volume=434
|issue= 7029
|journal=Nature
|pages=39–44
|bibcode=2005Natur.434...39K
|s2cid= 4420858
}}</ref> provided that there are sufficiently many [[qubit]]s available.


==Experimental realization==
acts on the <math>M</math>-copy quantum state. Here, <math>\sigma_z^{(n,m)}</math> is the Pauli spin matrix <math>\sigma_z</math> for the ''nth'' qubit of the ''mth'' copy. The metrological usefulness characterized by the [[quantum Fisher information]] as
There have been several experimental realizations of CSS-based codes. The first demonstration was with [[Nuclear magnetic resonance quantum computer|nuclear magnetic resonance qubits]].<ref>{{cite journal | last1 = Cory | first1 = D. G. | last2 = Price | first2 = M. D. | last3 = Maas | first3 = W. | last4 = Knill | first4 = E. | last5 = Laflamme | first5 = R. | last6 = Zurek | first6 = W. H. | last7 = Havel | first7 = T. F. | last8 = Somaroo | first8 = S. S. | year = 1998| title = Experimental Quantum Error Correction | journal = Phys. Rev. Lett. | volume = 81 | issue = 10| pages = 2152–2155 | doi = 10.1103/PhysRevLett.81.2152 | arxiv = quant-ph/9802018 | bibcode = 1998PhRvL..81.2152C | s2cid = 11662810 }}</ref> Subsequently, demonstrations have been made with linear optics,<ref>{{cite journal | last1 = Pittman | first1 = T. B. | last2 = Jacobs | first2 = B. C. | last3 = Franson | first3 = J. D. | year = 2005 | title = Demonstration of quantum error correction using linear optics | journal = Phys. Rev. A | volume = 71 | issue = 5| page = 052332 | doi = 10.1103/PhysRevA.71.052332 | arxiv = quant-ph/0502042 | bibcode = 2005PhRvA..71e2332P | s2cid = 11679660 }}</ref> trapped ions,<ref>{{cite journal | last1 = Chiaverini | first1 = J. | last2 = Leibfried | first2 = D. | last3 = Schaetz | first3 = T. | last4 = Barrett | first4 = M. D. | last5 = Blakestad | first5 = R. B. | last6 = Britton | first6 = J. | last7 = Itano | first7 = W. M. | last8 = Jost | first8 = J. D. | last9 = Knill | first9 = E. | last10 = Langer | first10 = C. | last11 = Ozeri | first11 = R. | last12 = Wineland | first12 = D. J. | year = 2004 | title = Realization of quantum error correction | journal = Nature | volume = 432 | issue = 7017| pages = 602–605 | doi = 10.1038/nature03074 | pmid = 15577904 | bibcode = 2004Natur.432..602C | s2cid = 167898 }}</ref><ref>{{cite journal | last1 = Schindler | first1 = P. | last2 = Barreiro | first2 = J. T. | last3 = Monz | first3 = T. | last4 = Nebendahl | first4 = V. | last5 = Nigg | first5 = D. | last6 = Chwalla | first6 = M. | last7 = Hennrich | first7 = M. | last8 = Blatt | first8 = R. | year = 2011 | title = Experimental Repetitive Quantum Error Correction | journal = Science | volume = 332 | issue = 6033| pages = 1059–1061 | doi = 10.1126/science.1203329 | pmid = 21617070 | bibcode = 2011Sci...332.1059S | s2cid = 32268350 }}</ref> and superconducting ([[transmon]]) qubits.<ref>{{cite journal | last1 = Reed | first1 = M. D. | last2 = DiCarlo | first2 = L. | last3 = Nigg | first3 = S. E. | last4 = Sun | first4 = L. | last5 = Frunzio | first5 = L. | last6 = Girvin | first6 = S. M. | last7 = Schoelkopf | first7 = R. J. | year = 2012 | title = Realization of Three-Qubit Quantum Error Correction with Superconducting Circuits | journal = Nature | volume = 482 | issue = 7385| pages = 382–385 | doi = 10.1038/nature10786 | pmid = 22297844 | arxiv = 1109.4948 | bibcode = 2012Natur.482..382R | s2cid = 2610639 }}</ref>


In 2016 for the first time the lifetime of a quantum bit was prolonged by employing a QEC code.<ref name=":5">{{Cite journal |last1=Ofek |first1=Nissim |last2=Petrenko |first2=Andrei |last3=Heeres |first3=Reinier |last4=Reinhold |first4=Philip |last5=Leghtas |first5=Zaki |last6=Vlastakis |first6=Brian |last7=Liu |first7=Yehan |last8=Frunzio |first8=Luigi |last9=Girvin |first9=S. M. |last10=Jiang |first10=L. |last11=Mirrahimi |first11=Mazyar |date=August 2016 |title=Extending the lifetime of a quantum bit with error correction in superconducting circuits |journal=Nature |volume=536 |issue=7617 |pages=441–445 |doi=10.1038/nature18949 |pmid=27437573 |issn=0028-0836 |bibcode=2016Natur.536..441O |s2cid=594116}}</ref> The error-correction demonstration was performed on [[Cat state|Schrödinger-cat states]] encoded in a superconducting resonator, and employed a [[quantum controller]] capable of performing real-time feedback operations including read-out of the quantum information, its analysis, and the correction of its detected errors. The work demonstrated how the quantum-error-corrected system reaches the break-even point at which the lifetime of a logical qubit exceeds the lifetime of the underlying constituents of the system (the physical qubits).
<math>F_Q[\varrho,H]</math>


Other error correcting codes have also been implemented, such as one aimed at correcting for photon loss, the dominant error source in photonic qubit schemes.<ref>{{cite journal |last1=Lassen |first1=M. |last2=Sabuncu |first2=M. |last3=Huck |first3=A. |last4=Niset |first4=J. |last5=Leuchs |first5=G. |last6=Cerf |first6=N. J. |last7=Andersen |first7= U. L. |year=2010 |title=Quantum optical coherence can survive photon losses using a continuous-variable quantum erasure-correcting code |journal=Nature Photonics |volume=4 |issue=10| page=700 |doi=10.1038/nphoton.2010.168 | arxiv = 1006.3941 |bibcode=2010NaPho...4..700L |s2cid=55090423}}</ref><ref>{{cite journal| last1=Guo| first1=Qihao| last2=Zhao| first2=Yuan-Yuan| last3=Grassl| first3=Markus| last4=Nie| first4=Xinfang| last5=Xiang| first5=Guo-Yong| last6=Xin| first6=Tao| last7=Yin| first7=Zhang-Qi| last8=Zeng| first8=Bei| author8-link=Bei Zeng| title=Testing a quantum error-correcting code on various platforms| journal=Science Bulletin| year=2021| volume=66| issue=1| pages=29–35| doi=10.1016/j.scib.2020.07.033| pmid=36654309 |arxiv=2001.07998| bibcode=2021SciBu..66...29G| s2cid=210861230}}</ref>
increases exponentially with the number of copies, <math>M</math>,
and approaches the metrological usefulness of the GHZ state, <math>4N^2.</math> Separable states reach <math>4N.</math><ref name="NJP2024" />


In 2021, an [[Controlled NOT gate|entangling gate]] between two logical qubits encoded in [[Toric code|topological quantum error-correction codes]] has first been realized using 10 ions in a [[Trapped ion quantum computer|trapped-ion quantum computer]].<ref>{{cite news |title=Error-protected quantum bits entangled for the first time |url=https://phys.org/news/2021-01-error-protected-quantum-bits-entangled.html |access-date=30 August 2021 |work=phys.org |date=13 January 2021 |language=en}}</ref><ref>{{cite journal |last1=Erhard |first1=Alexander |last2=Poulsen Nautrup |first2=Hendrik |last3=Meth |first3=Michael |last4=Postler |first4=Lukas |last5=Stricker |first5=Roman |last6=Stadler |first6=Martin |last7=Negnevitsky |first7=Vlad |last8=Ringbauer |first8=Martin |last9=Schindler |first9=Philipp |last10=Briegel |first10=Hans J. |last11=Blatt |first11=Rainer |last12=Friis |first12=Nicolai |last13=Monz |first13=Thomas |title=Entangling logical qubits with lattice surgery |journal=Nature |date=13 January 2021 |volume=589 |issue=7841 |pages=220–224 |doi= 10.1038/s41586-020-03079-6 |pmid=33442044 |s2cid=219401398 |arxiv=2006.03071 |bibcode=2021Natur.589..220E |language=en |issn=1476-4687}}</ref> 2021 also saw the first experimental demonstration of fault-tolerant Bacon-Shor code in a single logical qubit of a trapped-ion system, i.e. a demonstration for which the addition of error correction is able to suppress more errors than is introduced by the overhead required to implement the error correction as well as fault tolerant Steane code.<ref>{{Cite web |last=Bedford |first=Bailey |date=2021-10-04 |title=Foundational step shows quantum computers can be better than the sum of their parts |website=phys.org |url=https://phys.org/news/2021-10-foundational-quantum-sum.html |access-date=2021-10-05 |language=en}}</ref><ref>{{Cite journal| last1=Egan| first1=Laird| last2=Debroy| first2=Dripto M.| last3=Noel| first3=Crystal| last4=Risinger| first4=Andrew| last5=Zhu| first5=Daiwei| last6=Biswas| first6=Debopriyo| last7=Newman| first7=Michael| last8=Li| first8=Muyuan| last9=Brown| first9=Kenneth R.| last10=Cetina| first10=Marko| last11=Monroe| first11=Christopher|date=2021-10-04| title=Fault-tolerant control of an error-corrected qubit| journal=Nature| volume=598| issue=7880| pages=281–286| language=en| doi=10.1038/s41586-021-03928-y| pmid=34608286| bibcode=2021Natur.598..281E| s2cid=238357892| issn=0028-0836}}</ref><ref>{{Cite journal| last=Ball| first=Philip| date=2021-12-23| title=Real-Time Error Correction for Quantum Computing| journal=Physics| language=en| volume=14| at=184| s2cid=245442996| doi=10.1103/Physics.14.184| bibcode=2021PhyOJ..14..184B| doi-access=free}}</ref> In a different direction, using an encoding corresponding to the Jordan-Wigner mapped Majorana zero modes of a Kitaev chain, researchers were able to perform quantum teleportation of a logical qubit, where an improvement in fidelity from 71% to 85% was observed.<ref>{{Cite journal| last1=Huang | first1=He-liang | date=2021-03-03 | title=Emulating Quantum Teleportation of a Majorana Zero Mode Qubit| journal=Phys. Rev. Lett.| language=en| volume=126| at=090502 | doi=10.1103/PhysRevLett.126.090502| arxiv=2009.07590}}</ref> 
If the state is outside of the subspace described above, then it can be brought back to the subspace with the usual steps of error correction with the bitflip code.


In 2022, researchers at the [[University of Innsbruck]] have demonstrated a fault-tolerant universal set of gates on two logical qubits in a trapped-ion quantum computer. They have performed a logical two-qubit controlled-NOT gate between two instances of the seven-qubit colour code, and fault-tolerantly prepared a logical [[Magic state distillation|magic state]].<ref>{{cite journal |last1=Postler |first1=Lukas |last2=Heußen |first2=Sascha |last3=Pogorelov |first3=Ivan |last4=Rispler |first4=Manuel |last5=Feldker |first5=Thomas |last6=Meth |first6=Michael |last7=Marciniak |first7=Christian D. |last8=Stricker |first8=Roman |last9=Ringbauer |first9=Martin |last10=Blatt |first10=Rainer |last11=Schindler |first11=Philipp |last12=Müller |first12=Markus |last13=Monz |first13=Thomas |title=Demonstration of fault-tolerant universal quantum gate operations |journal=Nature |date=25 May 2022 |volume=605 |issue=7911 |pages=675–680 |doi=10.1038/s41586-022-04721-1 |pmid=35614250 |arxiv=2111.12654 |s2cid=244527180 |bibcode=2022Natur.605..675P}}</ref>
In another example, one can see that in this scheme a phase error is suppressed even without error correction. Let us call the three copies of the <math>N</math>-qubit GHZ state then a single phase


In February 2023, researchers at Google claimed to have decreased quantum errors by increasing the qubit number in experiments, they used a fault tolerant [[surface code]] measuring an error rate of 3.028% and 2.914% for a distance-3 qubit array and a distance-5 qubit array respectively.<ref>{{Cite journal |author=((Google Quantum AI)) |date=2023-02-22 |title=Suppressing quantum errors by scaling a surface code logical qubit |journal=Nature |language=en |volume=614 |issue=7949 |pages=676–681 |doi=10.1038/s41586-022-05434-1 |doi-access=free |pmid=36813892 |pmc=9946823 |bibcode=2023Natur.614..676G |issn=1476-4687}}</ref><ref>{{Cite web |last=Boerkamp |first=Martijn |date=2023-03-20 |title=Breakthrough in quantum error correction could lead to large-scale quantum computers |website=Physics World |url=https://physicsworld.com/breakthrough-in-quantum-error-correction-could-lead-to-large-scale-quantum-computers/ |access-date=2023-04-01 |language=en-GB}}</ref><ref>{{Cite web |last=Conover |first=Emily |date=2023-02-22 |title=Google's quantum computer reached an error-correcting milestone |website=ScienceNews |language=en-US |url=https://www.sciencenews.org/article/google-quantum-computer-sycamore-milestone |access-date=2023-04-01}}</ref>
<math>|\Psi\rangle=|{\rm GHZ}_N\rangle\otimes|{\rm GHZ}_N\rangle\otimes|{\rm GHZ}_N\rangle,</math>


In April 2024, researchers at [[Microsoft Azure Quantum|Microsoft]] claimed to have successfully tested a quantum error correction code that allowed them to achieve an error rate with logical qubits that is 800 times better than the underlying physical error rate.<ref>{{Cite web |last=Smith-Goodson |first=Paul |date=2024-04-18 |title=Microsoft And Quantinuum Improve Quantum Error Rates By 800x |website=Forbes |language=en-US |url=https://www.forbes.com/sites/moorinsights/2024/04/18/microsoft-and-quantinuum-improve-quantum-error-rates-by-800x/ |access-date=2024-07-01}}</ref>
and consider the Hamiltonian above. Then, the metrological usefulness of the state is characterized by the quantum Fisher information <math>F_Q[|\Psi\rangle\langle\Psi|,H]</math>.


This qubit virtualization system was used to create 4 logical qubits with 30 of the 32 qubits on Quantinuum's trapped-ion hardware. The system uses an active syndrome extraction technique to diagnose errors and correct them while calculations are underway without destroying the logical qubits.<ref>{{Cite web |last=Yirka |first=Bob |date=2024-04-05 |title=Quantinuum quantum computer using Microsoft's 'logical quantum bits' runs 14,000 experiments with no errors |website=Phys.org |language=en-US |url=https://phys.org/news/2024-04-quantinuum-quantum-microsoft-logical-bits.html |access-date=2024-07-01}}</ref>
Let us denote the state after one of the qubits passes through a phase flip channel by <math>\varrho_{\rm phaseflip}.</math> It can be shown that the metrological usefulness of the state does not change


In January 2025, researchers at [[UNSW Sydney]] managed to develop an error correction method using [[antimony]]-based materials, including [[antimonides]], leveraging high-dimensional quantum states ([[qudit]]s) with up to eight states. By encoding quantum information in the nuclear spin of a [[phosphorus]] atom embedded in [[silicon]] and employing advanced pulse control techniques, they demonstrated enhanced error resilience.<ref>{{cite journal |last=Yu |first=Xi |display-authors=et al. |year=2025 |title=Schrödinger cat states of a nuclear spin qudit in silicon |journal=Nature Physics |doi=10.1038/s41567-024-02745-0 |arxiv=2405.15494 }}</ref>
<math>F_Q[\varrho_{\rm phaseflip},H]=F_Q[|\Psi\rangle\langle\Psi|,H]</math>


== Quantum error correction without encoding and parity checks ==
and it remains maximal. Thus, even without an error correction step, the metrological properties remain the same. (See the Supplement E in Ref.,<ref name="NJP2024">{{cite journal |last1=Trényi |first1=Róbert |last2=Lukács |first2=Árpád |last3=Horodecki |first3=Paweł |last4=Horodecki |first4=Ryszard |last5=Vértesi |first5=Tamás |last6=Tóth |first6=Géza |title=Activation of metrologically useful genuine multipartite entanglement |journal=New Journal of Physics |date=1 February 2024 |volume=26 |issue=2 |page=023034 |doi=10.1088/1367-2630/ad1e93|arxiv=2203.05538 |bibcode=2024NJPh...26b3034T }}</ref> and Ref.<ref>{{cite web |title=Three-copy example to suppress phase errors |url=https://www.gtoth.eu/Transparencies/Talk_ActivatingMetrologicalUsefulGME_Gdansk2023_short.pdf}}</ref>)
In 2022, research at University of Engineering and Technology Lahore demonstrated error cancellation by inserting single-qubit Z-axis rotation gates into strategically chosen locations of the superconductor quantum circuits.<ref name=":1">{{Cite journal |last1=Ahsan |first1=Muhammad |last2=Naqvi |first2=Syed Abbas Zilqurnain |last3=Anwer |first3=Haider |date=2022-02-18 |title=Quantum circuit engineering for correcting coherent noise |journal=Physical Review A |volume=105 |issue=2 |page=022428 |doi=10.1103/physreva.105.022428 |arxiv=2109.03533 |bibcode=2022PhRvA.105b2428A |s2cid=237442177 |issn=2469-9926}}</ref> The scheme has been shown to effectively correct errors that would otherwise rapidly add up under constructive interference of coherent noise. This is a circuit-level calibration scheme that traces deviations (e.g. sharp dips or notches) in the decoherence curve to detect and localize the coherent error, but does not require encoding or parity measurements.<ref>{{Cite web |last=Steffen |first=Matthias |date=20 Oct 2022 |title=What's the difference between error suppression, error mitigation, and error correction? |url=https://research.ibm.com/blog/quantum-error-suppression-mitigation-correction |access-date=2022-11-26 |website=IBM Research Blog |language=en}}</ref> However, further investigation is needed to establish the effectiveness of this method for the incoherent noise.<ref name=":1" />


==See also==
==See also==

Latest revision as of 02:29, 1 January 2026

Template:Short description Template:Use dmy dates

Quantum error correction (QEC) comprises a set of techniques used in quantum memory and quantum computing to protect quantum information from errors arising from decoherence and other sources of quantum noise. QEC schemes that employ codewords stabilized by a set of commuting operators are known as stabilizer codes, and the corresponding codewords are referred to as quantum error-correcting codes (QECCs).

Overview

Much of the terminology in QEC is derived from its classical counterpart, the classical error-correcting code. In classical coding theory, a code is commonly denoted by the notation [n,k,d], which represents the encoding of k logical bits into n physical bits with code distance d; that is, any logical operation requires flipping at least d bits. Analogously, a quantum code that encodes k logical qubits into n physical qubits with code distance d is denoted by [[n,k,d]]. Although this qubit-to-qubit encoding is the most common setting, other variants exist—such as encodings between qubits and oscillators, or between oscillators themselves—since physical implementations of quantum information may involve systems with more than two energy levels.

Based on the parameters [[n,k,d]], one can define a key figure of merit for QECCs—the code rate, given by the ratio kn. The code rate measures a code's efficiency: a higher value corresponds to lower resource overhead. It generally depends on the code distance d. An ideal QECC simultaneously achieves a large distance and a high code rate. Consequently, optimizing QECC designs to improve code rate while maintaining sufficient distance is a central objective in QEC, both theoretically and experimentally. Conversely, for cases where k and d are fixed (often small), increasing the code rate reduces resource requirements, making such codes particularly suitable for small-scale or resource-limited experimental implementations.

Before considering scenario-dependent objectives, a QEC scheme fundamentally consists of three stages:

  1. Encoding the logical information into physical carriers,
  2. Transmitting or storing the encoded information through a spatial or temporal channel (corresponding to communication or memory, respectively), and
  3. Syndrome extraction and recovery (decoding) to identify and correct errors.

A QECC is constructed under specific assumptions about the types of errors that may occur and must be capable of correcting them. The stabilizers to be measured are carefully chosen so as not to reveal any logical information, but only information about the errors themselves—as otherwise the measurement would destroy any quantum superposition of this logical qubit with other qubits in the quantum computer, which would prevent it from being used to convey quantum information. In most QECCs, the type of error is either a bit flip, or a phase flip, or both (corresponding to the Pauli matrices X, Y, and Z).

Various strategies exist for encoding and decoding, including classical algorithms that map measured error syndromes to their corresponding recovery operations. The sequence of applied quantum gates can also be optimized, as multi-qubit gates are generally more challenging to implement than single-qubit ones. Furthermore, the total number of possible syndromes is 2nk, which can be prohibitively large for a simple lookup-table approach. Consequently, efficient classical decoding algorithms are generally required, except in cases where the code structure is sufficiently simple.[1]

Compared with quantum memory, where channel-induced errors are the primary concern, the frequent application of quantum gates in quantum computation necessitates fault-tolerant design. For QECCs implemented on qubit-based platforms, fault tolerance additionally accounts for imperfect quantum gates, faulty state preparation, and measurement errors. In contrast, for QECCs that encode information into oscillators, the term fault tolerance is sometimes used interchangeably with ordinary quantum error correction and does not carry additional meaning.[2]

Types of errors

The types of errors that occur in a quantum system depend strongly on the underlying physical platform, rather than on device-independent assumptions. For instance, even when a qubit is under active control, it remains coupled to its environment through nonzero Einstein coefficients. When the environment is cooled to its vacuum state, this coupling gives rise to amplitude-damping errors (or excitation loss), which reflect the system's tendency to relax toward thermal equilibrium and are characterized by a relaxation time. Moreover, even an isolated qubit possesses an intrinsic Hamiltonian corresponding to its internal dynamics, leading to coherent errors. Together, amplitude damping and coherent evolution contribute to dephasing, one of the dominant noise processes in most qubit implementations.

As noted earlier, most QECCs assume that the dominant errors are bit flips, phase flips, or combinations of both—corresponding to the Pauli operators. An implicit assumption in this framework is that general physical errors can be approximated as elements of the Pauli group. Under this model, each qubit's error can be represented by two classical bits (00: no error, 01: Z, 10: X, 11: Y). Consequently, errors on an n-qubit system can be described by a binary string of length 2n, allowing classical error-correction techniques to be applied under suitable constraints. Although this approximation does not capture all realistic noise processes, it remains widely used because it greatly simplifies both theoretical analysis and code design.

More general QEC schemes

The [[n,k,d]] QECCs do not encompass all possible quantum codes. These belong to the class of additive codes, defined within the stabilizer formalism. A more general class, known as non-additive codes,[3] extends beyond this framework. For instance, the ((5,6,2)) code[4] encodes more than two qubits (log262.585) into five physical qubits with code distance two. Non-additive codes can, in principle, achieve higher code rates than additive ones, but their construction and analysis are considerably more challenging. As a result, they remain relatively unexplored, with only limited studies to date.

Beyond encoding qubits into qubits, quantum information can also be stored in more general physical systems, such as d-level systems (qudits) or infinite-dimensional oscillators. Encoding a smaller logical system into a larger physical Hilbert space is an active area of research.

Important code families

Some of the earliest and most significant codes encoding logical qubit(s) into physical qubits
Year n k d Note
1995 Shor code[5] 9 1 3 The first quantum code corrects a single Pauli error.
1996 Steane code[6] 7 1 3 It improves the code rate with a design distinct from the Shor code.
1996 Laflamme code[7] 5 1 3 The smallest possible code corrects a single Pauli error.
1997 Toric code[8] 2d2 1 d The pioneer of topological codes.
1998 Surface code[9] 2nm+n+m+1 1 min(n,m) A topological code only needs local stabilizer checks.

The first QECC, named after Peter Shor, can be generalized as a [[d2,1,d]] code, which increases the code distance at the expense of a reduced code rate. Its design philosophy employs inner and outer [d,1,d] repetition codes to independently correct bit-flip and phase-flip errors. In contrast, Andrew Steane improved the code rate by replacing repetition codes with the classical [7,4] Hamming code and treating bit-flip and phase-flip errors symmetrically, without distinguishing inner and outer layers. The approach of Steane can be generalized as [[2r1,2r12r,3]] quantum Hamming codes.[10] A generalization of these approaches led to the development of the CSS codes—named after Robert Calderbank, Peter Shor, and Andrew Steane. The structure of CSS codes is particularly well-suited for fault-tolerant syndrome measurement, as the X and Z stabilizers are cleanly separated.

While the Shor code emphasizes code distance and the Steane code emphasizes code rate, other CSS codes can be constructed to balance these parameters. For example, using overlapped-repetition codes[11][12][1] enables CSS codes with improved performance and the [[7,1,3]] Shor-type code is shown. Furthermore, this Shor-type code can be modified as subsystem codes such as the Bacon–Shor code[13] which might optimize the syndrome measurement.

The quantum threshold theorem, shows that quantum computations of arbitrary length are possible. It states that errors can be corrected by recursively concatenating quantum codes—such as CSS codes—across logarithmically many levels, provided the error rate of individual quantum gates remains below a certain threshold. Above this threshold, attempts to measure syndromes and correct errors would introduce more errors than they eliminate.[14] As of 2004, estimates suggest this threshold could be as high as 1–3%,[15] assuming a sufficiently large number of qubits is available. To achieve a higher code rate for encoding a single logical qubit with single-error correction, Raymond Laflamme et al. discovered a five-qubit code using four stabilizers that mix X and Z operators. A well-known variant employs four cyclic XZZXI stabilizers. Although this code is clearly not a CSS code, DiVincenzo and Shor demonstrated that it can still be made fault-tolerant.[14] The five-qubit code is the smallest possible code capable of protecting one logical qubit against arbitrary single-qubit errors. According to the quantum Hamming bound, encoding a single logical qubit with the ability to correct any single-qubit error requires at least five physical qubits.

Beyond coding-theoretic designs, topological QECCs are particularly intuitive to visualize and can provide a clear layout of local stabilizer measurements, which is experimentally friendly. Alexei Kitaev introduced the toric code without boundaries, which was later adapted into the surface code with boundaries, yielding a 2D planar layout that avoids non-local measurements.[16] Surface codes are pivotal for scalable quantum error correction in 2025, enabling below-threshold logical qubits with improved fidelity in superconducting systems.[17]

Some of the most significant codes encoding a qubit into an oscillator and their subsequent extensions
Year Year extensions Modes
1999 Cat state[18] 2019 Pair-cat codes[19] It uses 2-mode and encodes a qubit.
2001 Gottesman-Kitaev-Preskill (GKP) code[20] 2022 Multi-mode GKP codes[21] It uses multi-mode and encode multi-qubits.
2016 Binomial code[22] 2025 Extended binomial codes[23] It uses multi-mode and encode multi-qubits.

Unlike a two-level system, a quantum harmonic oscillator possesses infinitely many energy levels within a single physical system. These codes exploit the inherent redundancy within a single oscillator, rather than relying on multiple two-level qubits for encoding.

While the cat code and GKP codes are purely bosonic with no direct qubit correspondence, (extended) binomial codes[23] are closely related to (high-rate) Shor codes.[12] The underlying idea is to treat the grouped qubits in each inner repetition code as identical particles, mapping them to a single bosonic mode in the Fock basis, thereby linking qubit codes to bosonic codes.

Other code families

  • Constant-excitation codes[24] are designed to protect against collective coherent errors arising from the intrinsic Hamiltonian of physical qubits during an unknown storage or transmission duration, such as when the receiver may be in motion.
  • Entanglement-assisted stabilizer formalism, constructed by Todd Brun et al., is an extension of the standard stabilizer formalism that incorporates quantum entanglement shared between a sender and a receiver.
  • Eric Rains[25] and John Smolin et al.[26] generalize previous non-additive codes to more distance two cases. Yu et al.[27][28] further improve the code distance to three.
  • Noh et al. proposed a QEC scheme that protects a single oscillator using an ancillary GKP state.[29]

Experimental realization

There have been several experimental realizations of CSS-based codes. The first demonstration was with nuclear magnetic resonance qubits.[30] Subsequently, demonstrations have been made with linear optics,[31] trapped ions,[32][33] and superconducting (transmon) qubits.[34]

  • In 2016 for the first time the lifetime of a quantum bit was prolonged by employing a QEC code.[35]
    • The error-correction demonstration was performed on Schrödinger-cat states encoded in a superconducting resonator, and employed a quantum controller capable of performing real-time feedback operations including read-out of the quantum information, its analysis, and the correction of its detected errors. The work demonstrated how the quantum-error-corrected system reaches the break-even point at which the lifetime of a logical qubit exceeds the lifetime of the underlying constituents of the system (the physical qubits).
    • Other error correcting codes have also been implemented, such as one aimed at correcting for photon loss, the dominant error source in photonic qubit schemes.[36][37]
  • In 2021, an entangling gate between two logical qubits encoded in topological quantum error-correction codes has first been realized using 10 ions in a trapped-ion quantum computer.[38][39]
  • 2021 also saw the first experimental demonstration of fault-tolerant Bacon-Shor code in a single logical qubit of a trapped-ion system, i.e. a demonstration for which the addition of error correction is able to suppress more errors than is introduced by the overhead required to implement the error correction as well as fault tolerant Steane code.[40][41][42]
    • In a different direction, using an encoding corresponding to the Jordan-Wigner mapped Majorana zero modes of a Kitaev chain, researchers were able to perform quantum teleportation of a logical qubit, where an improvement in fidelity from 71% to 85% was observed.[43]
  • In 2022, researchers at the University of Innsbruck have demonstrated a fault-tolerant universal set of gates on two logical qubits in a trapped-ion quantum computer.
    • They have performed a logical two-qubit controlled-NOT gate between two instances of the seven-qubit color code, and fault-tolerantly prepared a logical magic state.[44]
  • In 2022, research at University of Engineering and Technology Lahore demonstrated error cancellation by inserting single-qubit Z-axis rotation gates into strategically chosen locations of the superconductor quantum circuits.[45]
    • The scheme has been shown to effectively correct errors that would otherwise rapidly add up under constructive interference of coherent noise. This is a circuit-level calibration scheme that traces deviations (e.g. sharp dips or notches) in the decoherence curve to detect and localize the coherent error, but does not require encoding or parity measurements.[46] However, further investigation is needed to establish the effectiveness of this method for the incoherent noise.
  • In February 2023, researchers at Google claimed to have decreased quantum errors by increasing the qubit number in experiments, they used a fault tolerant surface code measuring an error rate of 3.028% and 2.914% for a distance-3 qubit array and a distance-5 qubit array respectively.[47][48][49]
  • In April 2024, researchers at Microsoft claimed to have successfully tested a quantum error correction code that allowed them to achieve an error rate with logical qubits that is 800 times better than the underlying physical error rate.[50]
    • This qubit virtualization system was used to create 4 logical qubits with 30 of the 32 qubits on Quantinuum's trapped-ion hardware. The system uses an active syndrome extraction technique to diagnose errors and correct them while calculations are underway without destroying the logical qubits.[51]
  • In January 2025, researchers at UNSW Sydney managed to develop an error correction method using antimony-based materials, including antimonides, leveraging high-dimensional quantum states (qudits) with up to eight states. By encoding quantum information in the nuclear spin of a phosphorus atom embedded in silicon and employing advanced pulse control techniques, they demonstrated enhanced error resilience.[52]

Classical codes as bias quantum code

Classical error-correcting codes that employ redundancy can be mapped to biased quantum codes that correct either Pauli X (bit-flip) or Pauli Z (phase-flip) errors. The simplest, though inefficient, example is the repetition code. In a repetition code, the logical information is stored as multiple copies of a bit. If these copies are later found to disagree due to errors, the most likely original value is inferred via majority vote.

For example, consider a logical bit in the "1" state copied three times. If noise corrupts one of the three bits, leaving the other two unchanged, the most likely scenario is that a single-bit error occurred, and the original logical value was "1." While it is possible that two bits flip, producing three zeros, this outcome is less probable. In this example, the logical information is the single bit, and the three copies are the physical representation.

Repetition codes work in classical channels because classical bits can be freely measured and duplicated. In quantum channels, however, the no-cloning theorem prevents copying an unknown qubit, seemingly posing an obstacle to quantum error correction. This challenge is overcome by encoding the logical information of a single qubit into a highly entangled state of multiple physical qubits. For example, the three-qubit bit-flip code, first proposed by Asher Peres in 1985,[53] uses entanglement and syndrome measurements to correct errors in a manner analogous to the classical repetition code. A phase-flip code is similarly constructed and is equivalent to the bit-flip code up to transversal Hadamard gates.

Bit-flip code

File:Quantum error correction of bit flip using three qubits.svg
Quantum circuit of the bit flip code

Consider the situation in which we want to transmit the state of a single qubit |ψ through a noisy channel . Let us moreover assume that this channel either flips the state of the qubit, with probability p, or leaves it unchanged. The action of on a general input ρ can therefore be written as (ρ)=(1p)ρ+pXρX.

Let |ψ=α0|0+α1|1 be the quantum state to be transmitted. With no error-correcting protocol in place, the transmitted state will be correctly transmitted with probability 1p. We can however improve on this number by encoding the state into a greater number of qubits, in such a way that errors in the corresponding logical qubits can be detected and corrected. In the case of the simple three-qubit repetition code, the encoding consists in the mappings |0|0L|000 and |1|1L|111. The input state |ψ is encoded into the state |ψ=α0|000+α1|111. This mapping can be realized for example using two CNOT gates, entangling the system with two ancillary qubits initialized in the state |0.[54] The encoded state |ψ is what is now passed through the noisy channel.

The channel acts on |ψ by flipping some subset (possibly empty) of its qubits. No qubit is flipped with probability (1p)3, a single qubit is flipped with probability 3p(1p)2, two qubits are flipped with probability 3p2(1p), and all three qubits are flipped with probability p3. Note that a further assumption about the channel is made here: we assume that acts equally and independently on each of the three qubits in which the state is now encoded. The problem is now how to detect and correct such errors, while not corrupting the transmitted state.

File:Fidelity Error Correction Bit Flips.svg
Comparison of output minimum fidelities, with (red) and without (blue) error correcting via the three qubit bit flip code. Notice how, for p1/2, the error correction scheme improves the fidelity.

Let us assume for simplicity that p is small enough that the probability of more than a single qubit being flipped is negligible. One can then detect whether a qubit was flipped, without also querying for the values being transmitted, by asking whether one of the qubits differs from the others. This amounts to performing a measurement with four different outcomes, corresponding to the following four projective measurements:P0=|000000|+|111111|,P1=|100100|+|011011|,P2=|010010|+|101101|,P3=|001001|+|110110|.This reveals which qubits are different from the others, without at the same time giving information about the state of the qubits themselves. If the outcome corresponding to P0 is obtained, no correction is applied, while if the outcome corresponding to Pi is observed, then the Pauli X gate is applied to the i-th qubit. Formally, this correcting procedure corresponds to the application of the following map to the output of the channel: corr(ρ)=P0ρP0+i=13XiPiρPiXi.Note that, while this procedure perfectly corrects the output when zero or one flips are introduced by the channel, if more than one qubit is flipped then the output is not properly corrected. For example, if the first and second qubits are flipped, then the syndrome measurement gives the outcome P3, and the third qubit is flipped, instead of the first two. To assess the performance of this error-correcting scheme for a general input we can study the fidelity F(ψ) between the input |ψ and the output ρoutcorr((|ψψ|)). Being the output state ρout correct when no more than one qubit is flipped, which happens with probability (1p)3+3p(1p)2, we can write it as [(1p)3+3p(1p)2]|ψψ|+(...), where the dots denote components of ρout resulting from errors not properly corrected by the protocol. It follows that F(ψ)=ψ|ρout|ψ(1p)3+3p(1p)2=13p2+2p3.This fidelity is to be compared with the corresponding fidelity obtained when no error-correcting protocol is used, which was shown before to equal 1p. A little algebra then shows that the fidelity after error correction is greater than the one without for p<1/2. Note that this is consistent with the working assumption that was made while deriving the protocol (of p being small enough).

Sign-flip code

File:Quantum error correction of phase flip using three qubits.svg
Quantum circuit of the phase-flip code

The bit flip is the only kind of error in classical computers. In quantum computers, however, another kind of error is possible: the sign flip. Through transmission in a channel, the relative sign between |0 and |1 can become inverted. For instance, a qubit in the state |=(|0|1)/2 may have its sign flip to |+=(|0+|1)/2.

The original state of the qubit |ψ=α0|0+α1|1 will be changed into the state |ψ=α0|++++α1|.

In the Hadamard basis, bit flips become sign flips and sign flips become bit flips. Let Ephase be a quantum channel that can cause at most one phase flip. Then the bit-flip code from above can recover |ψ by transforming into the Hadamard basis before and after transmission through Ephase.

Encoding logical qubits into physical qubits

Shor code

The error channel may induce either a bit flip, a sign flip (i.e., a phase flip), or both. It is possible to correct for both types of errors on a logical qubit using a well-designed QEC code. One example of a code that does this is the Shor code, published in 1995.[55][56]Template:Rp Since these two types of errors are the only types of errors that can result after a projective measurement, a Shor code corrects arbitrary single-qubit errors.

File:Shore code.svg
Quantum circuit to encode a single logical qubit with the Shor code and then perform bit flip error correction on each of the three blocks.

Let E be a quantum channel that can arbitrarily corrupt a single qubit. The 1st, 4th and 7th qubits are for the sign flip code, while the three groups of qubits (1,2,3), (4,5,6), and (7,8,9) are designed for the bit flip code. With the Shor code, a qubit state |ψ=α0|0+α1|1 will be transformed into the product of 9 qubits |ψ=α0|0S+α1|1S, where |0S=122(|000+|111)(|000+|111)(|000+|111) |1S=122(|000|111)(|000|111)(|000|111)

If a bit flip error happens to a qubit, the syndrome analysis will be performed on each block of qubits (1,2,3), (4,5,6), and (7,8,9) to detect and correct at most one bit flip error in each block.

If the three bit flip group (1,2,3), (4,5,6), and (7,8,9) are considered as three inputs, then the Shor code circuit can be reduced as a sign flip code. This means that the Shor code can also repair a sign flip error for a single qubit.

The Shor code also can correct for any arbitrary errors (both bit flip and sign flip) to a single qubit. If an error is modeled by a unitary transform U, which will act on a qubit |ψ, then U can be described in the form U=c0I+c1X+c2Y+c3Z where c0,c1,c2, and c3 are complex constants, I is the identity, and the Pauli matrices are given by X=(0110);Y=(0ii0);Z=(1001).

If U is equal to I, then no error occurs. If U=X, a bit flip error occurs. If U=Z, a sign flip error occurs. If U=iY then both a bit flip error and a sign flip error occur. In other words, the Shor code can correct any combination of bit or phase errors on a single qubit.

More generally, the error operator U does not need to be unitary, but can be a Kraus operator from a quantum operation representing a system interacting with its environment.

Application

In quantum metrology

Quantum error correction can be applied to quantum metrology. Thus, a logical qubit is stored in several physical qubits. In the case of a linear interferometer, there is not interaction between the logical qubits. However, the dynamics is given with operators that contain multiqubit correlation operators of the physical qubits corresponding to a logical qubits. In this scheme, the errors can be detected, and corrected following the general rules of quantum error correction.[57][58]

In another approach, the goal is not correcting the quantum state, but to keep a state that makes quantum metrology with high precision possible even if noise is present. It has been observed that some quantum states that cannot outperform separable states in quantum metrology, can be better than separable states in the multi-copy case, hence their metrological abilities can be activated.[59] Thus, instead of stroring each logical qubit in several physical qubits, we store several copies of the entire quantum state. For instance, consider an N-qubit quantum state ϱ living in the space

{|0N,|1N}.

This subspace includes the noisy quantum state

p|GHZNGHZN|+(1p)(|00|)N+(|11|)N2,

where the Greenberger-Horne-Zeilinger (GHZ) state is given as

|GHZN=12(|0N+|1N).

Let us consider M copies of the state

ϱM-copy=ϱM.

Then, the following Hamiltonian

H=n=1Nm=1Mσz(n,m)

acts on the M-copy quantum state. Here, σz(n,m) is the Pauli spin matrix σz for the nth qubit of the mth copy. The metrological usefulness characterized by the quantum Fisher information as

FQ[ϱ,H]

increases exponentially with the number of copies, M, and approaches the metrological usefulness of the GHZ state, 4N2. Separable states reach 4N.[60]

If the state is outside of the subspace described above, then it can be brought back to the subspace with the usual steps of error correction with the bitflip code.

In another example, one can see that in this scheme a phase error is suppressed even without error correction. Let us call the three copies of the N-qubit GHZ state then a single phase

|Ψ=|GHZN|GHZN|GHZN,

and consider the Hamiltonian above. Then, the metrological usefulness of the state is characterized by the quantum Fisher information FQ[|ΨΨ|,H].

Let us denote the state after one of the qubits passes through a phase flip channel by ϱphaseflip. It can be shown that the metrological usefulness of the state does not change

FQ[ϱphaseflip,H]=FQ[|ΨΨ|,H]

and it remains maximal. Thus, even without an error correction step, the metrological properties remain the same. (See the Supplement E in Ref.,[60] and Ref.[61])

See also

References

<templatestyles src="Reflist/styles.css" />

  1. a b Script error: No such module "citation/CS1".
  2. Script error: No such module "Citation/CS1".
  3. Script error: No such module "citation/CS1".
  4. Script error: No such module "Citation/CS1".
  5. Script error: No such module "Citation/CS1".
  6. Script error: No such module "Citation/CS1".
  7. Script error: No such module "Citation/CS1".
  8. Script error: No such module "Citation/CS1".
  9. Script error: No such module "citation/CS1".
  10. Script error: No such module "Citation/CS1".
  11. Script error: No such module "Citation/CS1".
  12. a b Script error: No such module "Citation/CS1".
  13. Script error: No such module "Citation/CS1".
  14. a b Script error: No such module "Citation/CS1".
  15. Script error: No such module "Citation/CS1".
  16. Script error: No such module "Citation/CS1".
  17. Script error: No such module "Citation/CS1".
  18. Script error: No such module "Citation/CS1".
  19. Script error: No such module "Citation/CS1".
  20. Script error: No such module "Citation/CS1".
  21. Script error: No such module "Citation/CS1".
  22. Script error: No such module "Citation/CS1".
  23. a b Script error: No such module "Citation/CS1".
  24. Script error: No such module "Citation/CS1".
  25. Script error: No such module "Citation/CS1".
  26. Script error: No such module "Citation/CS1".
  27. Script error: No such module "Citation/CS1".
  28. Script error: No such module "Citation/CS1".
  29. Script error: No such module "Citation/CS1".
  30. Script error: No such module "Citation/CS1".
  31. Script error: No such module "Citation/CS1".
  32. Script error: No such module "Citation/CS1".
  33. Script error: No such module "Citation/CS1".
  34. Script error: No such module "Citation/CS1".
  35. Script error: No such module "Citation/CS1".
  36. Script error: No such module "Citation/CS1".
  37. Script error: No such module "Citation/CS1".
  38. Script error: No such module "citation/CS1".
  39. Script error: No such module "Citation/CS1".
  40. Script error: No such module "citation/CS1".
  41. Script error: No such module "Citation/CS1".
  42. Script error: No such module "Citation/CS1".
  43. Script error: No such module "Citation/CS1".
  44. Script error: No such module "Citation/CS1".
  45. Script error: No such module "Citation/CS1".
  46. Script error: No such module "citation/CS1".
  47. Script error: No such module "Citation/CS1".
  48. Script error: No such module "citation/CS1".
  49. Script error: No such module "citation/CS1".
  50. Script error: No such module "citation/CS1".
  51. Script error: No such module "citation/CS1".
  52. Script error: No such module "Citation/CS1".
  53. Script error: No such module "Citation/CS1".
  54. Script error: No such module "citation/CS1".
  55. Script error: No such module "Citation/CS1".
  56. Script error: No such module "Citation/CS1".
  57. Script error: No such module "Citation/CS1".
  58. Script error: No such module "Citation/CS1".
  59. Script error: No such module "Citation/CS1".
  60. a b Script error: No such module "Citation/CS1".
  61. Script error: No such module "citation/CS1".

Script error: No such module "Check for unknown parameters".

Further reading

  • Script error: No such module "citation/CS1".
  • Script error: No such module "citation/CS1".
  • Script error: No such module "citation/CS1".
  • Script error: No such module "citation/CS1".
  • Script error: No such module "Citation/CS1".

External links

Template:Quantum computing Template:Quantum mechanics topics Template:Emerging technologies