970 IEEE COMMUNICATIONS SURVEYS & TUTORIALS, VOL. 21, NO. 1, FIRST QUARTER 2019 Duality of Quantum and Classical Error Correction Codes: Design Principles and Examples Zunaira Babar, Daryus Chandra , Student Member, IEEE, Hung Viet Nguyen , Member, IEEE, Panagiotis Botsinis, Member, IEEE, Dimitrios Alanis , Student Member, IEEE, Soon Xin Ng , Senior Member, IEEE, and Lajos Hanzo , Fellow, IEEE

Abstract— codes (QECCs) can be EXIT EXtrinsic Information Transfer constructed from the known classical coding paradigm by exploit- FPTD Fully-Parallel Turbo Decoder ing the inherent isomorphism between the classical and quantum FPQTD Fully-Parallel Quantum Turbo Decoder regimes, while also addressing the challenges imposed by the strange laws of quantum physics. In this spirit, this paper pro- GF Galois Field vides deep insights into the duality of quantum and classical GV Gilbert-Varshamov bound , hence aiming for bridging the gap between them. IRCC IRregular Explicitly, we survey the rich history of both classical as well LDPC Low Density Parity Check as quantum codes. We then provide a comprehensive slow-paced LUT Look-Up Table tutorial for constructing stabilizer-based QECCs from arbitrary binary as well as quaternary codes, as exemplified by the dual- MAP Maximum A Posteriori containing and non-dual-containing Calderbank–Shor–Steane ML Maximum Likelihood (CSS) codes, non-CSS codes and entanglement-assisted codes. MLSE Maximum Likelihood Sequence Estimation Finally, we apply our discussions to two popular code families, MRRW McEliece-Rodemich-Rumsey-Welch namely to the family of Bose–Chaudhuri–Hocquenghem as well PCM Parity Check Matrix as of convolutional codes and provide detailed design examples for both their classical as well as their quantum versions. PGZ Peterso-Gorenstein-Zierler QBCH Quantum Bose-Chaudhuri-Hocquenghem Index Terms—Channel coding, quantum error correction, QBER Quantum Bit Error Ratio BCH codes, convolutional codes. QCC Quantum Convolutional Code QECC Quantum ACRONYMS QIRCC Quantum IRregular Convolutional Code ARQ Automatic-Repeat-reQuest QKD AWGN Additive White Gaussian Noise QLDPC Quantum Low Density Parity Check BCH Bose-Chaudhuri-Hocquenghem QRS Quantum Reed-Solomon BCJR Bahl, Cocke, Jelinek and Raviv QSC Quantum BER Bit Error Ratio QSDC Quantum Secure Direct Communication BICM Bit-Interleaved Coded QTC Quantum BICM-ID Bit-Interleaved Coded Modulation with Iterative QURC Quantum Unity Rate Code Decoding RM Reed-Muller CCMC Continuous-input Continuous-output RRNS Redundant Residue Number System Memoryless Channel RS Reed-Solomon CNOT Controlled-NOT RSC Recursive Systematic Convolutional CRC SISO Soft-In Soft-Out CRSS Calderbank-Rains-Shor-Sloane SNR Signal-to-Noise Ratio CSS Calderbank-Shor-Steane SOVA Soft-Output Viterbi Algorithm EA Entanglement-Assisted TCM Trellis-Coded Modulation TTCM Turbo Trellis Coded Modulation Manuscript received February 6, 2018; revised June 12, 2018; accepted URC Unity Rate Code July 22, 2018. Date of publication July 31, 2018; date of current ver- VA Viterbi Algorithm sion February 22, 2019. This work was supported in part by the European Research Council through the Advanced Fellow Award QuantCom and XOR Exclusive OR. in part by the Engineering and Physical Sciences Research Council under Grant EP/PO34284/1. The research data for this paper is avail- able at [https://doi.org/10.5258/SOTON/D0616]. (Corresponding author: LIST OF SYMBOLS Lajos Hanzo.) The authors are with the School of Electronics and Computer Science, General Notation University of Southampton, Southampton SO17 1BJ, U.K. (e-mail: • The notation |. is used to indicate a quantum [email protected]; [email protected]; [email protected]; |ψ [email protected]). state. Therefore, represents a having the Digital Object Identifier 10.1109/COMST.2018.2861361 state ψ. This work is licensed under a Creative Commons Attribution 3.0 License. For more information, see http://creativecommons.org/licenses/by/3.0/ BABAR et al.: DUALITY OF QUANTUM AND CLASSICAL ERROR CORRECTION CODES: DESIGN PRINCIPLES AND EXAMPLES 971

• The notation |.| is used to indicate a magnitude operation. Therefore, |α| represents the magnitude of a complex number α. • The notation  is used to indicate the symplectic product. • The notation ⊗ is used to indicate the tensor product. • The notation  is used to indicate the discrete convolution operation. • The notation is used to indicate the sum operation. • The notation , is used to represent the inner product. • The GF(4) variables are represented with a ˆ on top, e.g., xˆ. • The notation (n, k) is used for a classical code, while the notation [n, k] is used for a quantum code. • The superscript T is used to indicate the matrix transpose operation. Therefore, xT represents the transpose of the matrix x. Special Symbols η Spectral efficiency. Fig. 1. Realization of a classical and quantum bit using the of an B Classical channel bandwidth. , where spin-up denotes the state |0 (or classical bit 0), while spin- c Number of pre-share entangled (ebits). down represents the state |1 (or classical bit 1). A qubit exists in superposition C Classical code space. of the two states, but collapses to a single definite value (or state) upon measurement. C Quantum code space. C Set of complex numbers. C Classical channel channel. In the midst of the fast technological advances seen over the . CQ ( ) capacity. last several decades, ‘Quantum Technology’ has emerged as a E Entanglement consumption rate. promising candidate, which has the potential of radically rev- F q Galois field GF(q). olutionizing the way we compute as well as communicate. G Generator matrix. Quantum technology derives its strengths from harnessing G n n-qubit Pauli . the peculiar laws of quantum physics, namely the super- gi ith stabilizer generator. position and entanglement. The fundamental postulates of H Parity check matrix. quantum physics are rather different from the widely known H Stabilizer group. and well-understood laws of classical physics, as exemplified . H2( ) Binary entropy function. by Newton’s laws and Maxwell’s equations. H Hadamard gate. A classical bit can assume the value of either 0 or 1 at I Pauli-I operator. any particular instant. By contrast, a quantum bit (qubit),1 k Length of information word. which is the integral constituent unit of a quantum system, n Length of codeword. exists in a ‘superposition’ of the states |0 and |1 until it is N Classical noise power. ‘measured’ or ‘observed’, as illustrated in Fig. 1. Explicitly, a p Channel error (or flip) rate, e.g., channel depolariz- qubit concurrently exists in the states |0 and |1. The resul- ing probability. tant superimposed state of a qubit can be described using the P Pauli error inflicted on the transmitted codeword. state vector: Rc Equivalent classical coding rate of a quantum code. RQ Quantum coding rate. |ψ = α|0 + β|1, (1) S Classical signal power. Tr[.] Trace operator. where |is called the Ket or Dirac notation [1] used for denot- V Clifford encoder. ing a . Furthermore, the complex coefficients α X Pauli-X operator. and β may take any arbitrary value as long as |α|2 +|β|2 =1. Y Pauli-Y operator. Upon ‘measurement’ or ‘observation’ invoked for determining Z Pauli-Z operator. its value, the qubit |ψ either collapses to the state |0 or to the state |1, which may happen with a probability of |α|2 and 2 I. INTRODUCTION |β| , respectively, as exemplified in Fig. 1. Hence, a qubit is F COMPUTERS that you build are quantum, basically a 2-dimensional state vector, while an N-qubit com- N I Then spies everywhere will all want ’em. posite system may be represented as a 2 -dimensional state Our codes will all fail, And they’ll read our e-mail, 1A classical bit or qubit can take different forms, for example two energy levels of an atom, different alignments of a nuclear/electronic/atomic spin, Till we get crypto that’s quantum, and daunt ’em. two different photon polarizations, or the charge/current/energy of a Josephson Jennifer and Peter Shor junction. 972 IEEE COMMUNICATIONS SURVEYS & TUTORIALS, VOL. 21, NO. 1, FIRST QUARTER 2019

2 2 Fig. 2. Comparison of classical and quantum processing of a function f (x)definedasf (x):{0, 1} →{0, 1} [3]. Classical system serially computes f (x) for all possible x ∈{00, 01, 10, 11}; hence, requiring four evaluations. By contrast, a quantum system concurrently processes all the possible x values, since a 2-qubit quantum register exists in superposition of all the four states, i.e., |ψ = α0|00 + α1|01 + α2|10 + α3|11; hence, requiring a single evaluation. The resulting outcome (α0|f (00) + α1|f (01) + α2|f (10) + α3|f (11)) is also in superposition of all the four possibilities. Please note that it is not possible to read all the four values of f (x), since the quantum register will collapse to one of the four values upon measurement. Nonetheless, the superimposed output may be processed further to get a desired property of the function f (x), for example the minimum or maximum of f (x)[4]Ð[7]. vector, which is formulated as: exemplified by Shor’s pioneering factorization algorithm [6] α | ... α | ... ··· α | ... , and Grover’s search algorithm [7]. This astounding processing 0 00 0 + 1 00 1 + + 2N −1 11 1 (2) power is derived from the inherent quantum parallelism result- 2N−1 ing from quantum-domain superposition. More specifically, in 2 where αi ∈ C and |αi | =1. To elaborate further, an contrast to an N-bit classical register, which can only store one i=0 of the 2N possible values, an N-qubit quantum register can N-qubit system concurrently exists in superposition of all the N 2N possible values, which gives quantum systems the inherent hold all the 2 possible values (or states) concurrently, hence property of quantum parallelism, as exemplified in Fig. 2.2 facilitating parallel processing, whose complexity is deemed In contrast to superposition, ‘entanglement’, which Einstein equivalent to a single classical evaluation. This massive paral- termed as a ‘spooky action at a distance’ [8], is the myste- lel processing potential may be beneficially exploited in large- rious, correlation-like property of two or more qubits, which scale communication systems’ processes, for example in multi- implies that the entangled N-qubit state cannot be expressed as user detection [9], [10] and in routing optimization [11], [12], tensor product of the individual qubits. For example, consider as well as in diverse other applications, such as data a 2-qubit state |ψ given by: mining [13] and Gait Recognition [14], [15], just to name a few. |ψ = α|00 + β|11, (3) It is anticipated that the enormous processing capability of quantum algorithms may threaten the integrity and having non-zero coefficients α and β. It is impossible to of the state-of-the-art trusted classical public key encryption, express |ψ as the tensor product of constituent qubits, because which relies on the computational complexity of the underly- we have [2]: ing mathematical functions. While classical cryptography is at α|00 + β|11 =( α1|0 + β1|1) ⊗ (α2|0 + β2|1), (4) risk of being deciphered due to , quantum communications support secure data dissemination, since any α β for any choice of i and i subject to normalization, where ‘measurement’ or ‘observation’ by an eavesdropper perturbs 3 ⊗ denotes the tensor product. Consequently, a strange rela- the quantum superposition, hence intimating the parties con- tionship exists between the two entangled qubits, which entails cerned [2], [16]. Some of the main applications of secure quan- that measuring one of them also reveals the value of the other, tum communications are Quantum Key Distribution (QKD) even if they are geographically separated. Explicitly, if the first techniques [17], [18], Quantum Secure Direct Communication qubit of Eq. (3) collapses to the state |0 upon measurement, (QSDC) [19]Ð[21], and unconditional quantum location veri- 2 which may happen with a probability |α| , then the second fication [22] for the future driverless ‘Quantum Car’ [23] and qubit is definitely |0. Similarly, if the first qubit collapses to quantum geo encryption [24]. Deploying quantum communi- 2 the state |1, which may occur with a probability |β| , then cations is also imperative for making the future ‘Quantum the second qubit is also |1. Internet’ (Qinternet) [25] a reality. Explicitly, the Qinternet The phenomenon of ‘superposition’ as well as ‘entangle- is envisaged as a global network of heterogeneous quantum ment’ have no counterparts in the classical domain, but they systems, which may be interconnected through quantum chan- give rise to a new range of powerful computing and secure nels in pursuit of building larger quantum systems, for example communication paradigms. For example, quantum comput- ultra-powerful distributed quantum computers [26], [27], long- ing algorithms have the potential to solve problems often haul secure QKD, QKD and quantum based location verifica- deemed intractable at a substantially reduced complexity, as tion aided secure banking transactions, as well as ultra-precise quantum clocks for global synchronization, as illustrated in 2Please refer to [2] for the fundamentals of . 3The right hand side of Eq. (4) can be expanded as follows: Fig. 3. It is pertinent to mention here that the quantum back- haul, which is likely to be a combination of free-space wireless α|00 + β|11 = α1α2|00 + α1β2|01 + β1α2|10 + β1β2|11. channels and optical fibers, is particularly suitable for the BABAR et al.: DUALITY OF QUANTUM AND CLASSICAL ERROR CORRECTION CODES: DESIGN PRINCIPLES AND EXAMPLES 973

Fig. 3. Stylized illustration of the global ‘Qinternet’ interconnecting hetero- geneous quantum processing and communication nodes over large distances, for example for distributed quantum computing, long-haul QKD, QKD and location verification aided secure banking transactions, as well as for quantum clock aided ultra-precise synchronization and navigation.

Qinternet owing to the inherent quantum parallelism [25]. More specifically, an N-qubit quantum state would require only N uses of the quantum channel for transmitting the complete state information, while 2N channel uses would be required if classical transmission is invoked. Similarly, if kN-qubit quantum nodes are entangled, then their overall capacity will be that of a (kN)-qubit system having a 2kN - dimensional state space. By contrast, if the kN-qubit nodes are classically connected, they will have an effective state space of n k2 . Hence, quantum connectivity guarantees an exponentially Fig. 4. Paper rationale. larger state space compared to classical connectivity. Unfortunately, the quantum channels as well as the quantum systems of Fig. 3 are not perfect, which is a major impedi- reliable quantum computation, we have to resort to Quantum ment to the practical realization of a global Qinternet. More Error Correction Codes (QECCs), which exploit redundancy specifically, qubits may experience both channel-induced as in the quantum domain. More explicitly, similar to the clas- well as quantum processing impairments [28]. Explicitly, the sical error correction codes, QECCs redress the perturbations deleterious quantum channel attenuation measured in dB per resulting from quantum impairments, hence enabling qubits to km severely limits the reliable transmission rate, or equiv- retain their coherent quantum states for longer durations with alently the transmission range. For example, the secret key a high probability. This has been experimentally demonstrated transmission rate of a QKD system decays exponentially in [35]Ð[37]. with the distance [29]. By contrast, the quantum processing QECCs relying on the quantum-domain redundancy are impairments are inflicted by the imperfections in the quantum indispensable for conceiving a quantum communication hardware, such as the quantum gates. system supporting the transmission of Quantum-based communication systems support the trans- and also for quantum computing. Therefore, in this paper, we mission of both classical as well as of quantum information. survey the intricate journey from the realm of classical chan- When the information to be transmitted is classical, we may nel coding theory to that of the QECCs, while also providing a invoke the family of classical error correction techniques for slow-paced tutorial on the duality of these two seemingly dif- counteracting the impact of quantum impairments [30], [31]. ferent coding regimes. In particular, we provide deeper insights More specifically, the classical information is first encoded into the subtle similarities and differences between them. using a classical error correction code. The encoded bits are then mapped onto the qubits, which are transmitted over a quantum channel. The mapping of classical bits to qubits may A. Outline be carried out for example by the so-called superdense cod- Fig. 4 captures the rationale of this paper, while Fig. 5 ing protocol [30], [32]. Likewise, QKD also relies on classical provides an overview at a glance. We commence our dis- error correction codes [33], [34]. By contrast, for a more gen- course in Section II, where we detail the various quantum eral communication system, which supports the transmission channel models and highlight the duality between the widely of both classical as well as quantum information, and for used quantum depolarizing channel and the classical discrete 974 IEEE COMMUNICATIONS SURVEYS & TUTORIALS, VOL. 21, NO. 1, FIRST QUARTER 2019

Fig. 6. Quantum channel models.

II. QUANTUM DECOHERENCE Environmental decoherence generally constitutes a major source of quantum impairments, which may occur for example during quantum transmission or quantum processing as well as in quantum memories. In this section, we review the quantum channels of Fig. 6, which are widely used for modeling envi- Fig. 5. Paper structure. ronmental decoherence. Explicitly, our intention is to help the readers understand the duality between quantum and classical channels.

A. Amplitude Damping Channel quaternary channel. We then survey the rich history of clas- sical and quantum codes in Section III. In Section IV,we In the simple terms, environmental decoherence may be detail the transition from the classical to the quantum code described as the undesired interaction, or more specifically designs with the help of simple design examples. Specifically, entanglement, of the qubit with the environment, which per- we design the quantum counterpart of the simple classical turbs its coherent superposition of basis states. In one such rate-1/3 repetition code. We then generalize our discussions instance, the qubit (or quantum system) loses energy due to its in Section V, where we present the quantum version of classi- interaction with the environment, for example the excited state cal linear block codes by relying on the so-called stabilizer of the qubit decays due to the spontaneous emission of a pho- formalism, which is a theoretical framework conceived for ton or the photon is lost (or absorbed) during its transmission constructing quantum codes from the existing families of through optical fibers [38], [39]. This decoherence process can classical error correction codes. Continuing further our dis- be conveniently modeled using an amplitude damping channel. cussions, we next detail the quantum to classical isomorphism Let us consider a qubit realized using a two-level atom having | | in Section VI, which is a useful analysis technique for map- the ground state 0 and the excited state 1 . Furthermore, let | | ping quantum codes onto the equivalent classical codes and 0 E and 1 E be the basis states of the environment initial- | vice versa. The quantum-to-classical mapping allows us to ized to the vacuum state 0 E . Then, the amplitude damping use the state-of-the-art classical syndrome decoding techniques channel characterizes the evolution of the resultant system as in the quantum realm, while the inverse mapping, i.e., the follows [39]: classical-to-quantum mapping, helps in importing arbitrary | | →| | , 0 0 E 0 0 E classical codes into the quantum domain. Furthermore, based √ |1|0 → 1 − γ|1|0 + γ|0|1 , (5) on this isomorphism, we present the taxonomy of stabilizer E E E codes in Section VII. We also detail the associated design where γ is the damping probability, or more specifically the principles with examples. In Section VIII, we delve deeper probability of losing a photon. In physically tangible terms, into a pair of popular code families, explicitly the Bose- Eq. (5) implies that the state of the qubit remains the same if Chaudhuri-Hocquenghem (BCH) codes and the convolutional it is in the ground state |0, while it looses a photon with a codes, by providing tutorial insights into their classical as well probability of γ, when in the excited state |1. Explicitly, in as quantum counterparts. Finally, we conclude our discourse the event of a photon loss, the state of the qubit changes from in Section IX. |1 to |0, while that of the environment changes from |0E BABAR et al.: DUALITY OF QUANTUM AND CLASSICAL ERROR CORRECTION CODES: DESIGN PRINCIPLES AND EXAMPLES 975

to |1E ; hence resulting in the state |0|1E of Eq. (5), which example of |ψ = α|0 + β|1, the error operator E0 corrupts may occur with a probability of γ. Based on Eq. (5), a qubit |ψ as follows: |ψ = α|0 + β|1, which is in coherent superposition of the 10 α basis states, entangles with the environment as: E |ψ = √ 0 0 1 − γ β √ |ψ|0 → α|0 + β 1 − γ|1 |0 + γβ|0|1 . α E E E = √ 1 − γβ (6) ≡ α|0 + 1 − γβ|1, (10) It is pertinent to mention here that |ψ is generally not an 2 2 isolated qubit. It may be entangled with other qubits as part which occurs with a probability of |E0|ψ| =(1−γβ ). Upon of an N-qubit composite quantum system. Hence, slightly normalization, the corrupted state of Eq. (10) is reduced to: α β √ ‘abusing’ the usual notation, the coefficients and repre- α β 1 − γ sent the (N-1)-qubit states entangled to the states |0 and |1, E0|ψ = |0 + |1. (11) − γβ2 − γβ2 respectively, of the qubit undergoing decoherence. We further- 1 1 more assume that each qubit interacts independently with the Similarly, the error operator E1 acts on |ψ as follows: environment, hence the associated decoherence process is tem- √ 0 γ α porally and spatially uncorrelated. We can readily infer from E |ψ = 1 00 β Eq. (6) that if the environment is found to be in state |0 , √ √ E γβ then |ψ decoheres to (α|0 + β 1 − γ|1), which reduces to √ = α β −γ 0 √ |0 + √ 1 |1 upon normalization, otherwise √ 1−γβ2 1−γβ2 ≡ γβ|0, (12) |ψ collapses to |0. |E |ψ|2 γβ2 If a quantum system is a statistical ensemble of pure states, which happens with a probability of 1 = and is | γ then it may be described using the density operator (also called equivalent to the classical bit 0 . In realistic systems, at ) ρ, as follows: time instant t is characterized by the qubit relaxation time T1 as follows [40]: ρ ≡ p |ψ ψ |, (7) − / i i i γ =1− e t T1 . (13) i where pi denotes the probability of occurrence of the ith pure B. Phase Damping Channel state |ψi . Explicitly, a pure quantum state is one whose state vector |ψ is exactly known. Hence, it is described by a single Another instantiation of environmental decoherence, known state vector |ψ and the density operator of Eq. (7) reduces to as dephasing or phase damping, characterizes the loss of quan- ρ = |ψψ|. By contrast, the mixed state of Eq. (7) is a prob- tum information without the loss of energy, which may occur abilistic mixture (not superposition) of different pure states for example due to the scattering of photons, or the perturba- tion of electronic states caused by stray electrical charges. The |ψi . Hence, we do not exactly know the state of the system error operators of the resultant phase damping channel NPD and it may be found in the ith pure state |ψi with a probabil- are defined as follows [2]: ity of pi . This may happen for example due to coupling with the environment or due to inaccuracies of the equipment. The 10 00 E = √ , E = √ , (14) loss of energy in a generalized quantum system described by 0 0 1 − λ 1 0 λ Eq. (7) may be modeled using an amplitude damping channel where λ is the scattering probability of a photon (without loss N , which maps an input state, having the density operator AD of energy). We may observe that E of Eq. (14) is similar ρ, as follows: 0 to the E0 of the amplitude damping channel, while the error † † N (ρ)=E ρE + E ρE , (8) operator E1 acts on |ψ as follows: AD 0 0 1 1 4 00 α where the error operators (also called Kraus operators) E0 E |ψ √ 1 = λ β and E1 are given by [2]: 0 √ 0 10√ 0 γ = √ E0 = , E1 = . (9) λβ 0 1 − γ 00 √ ≡ λβ| , The decohered state of a qubit may be readily described by 1 (15) 2 2 using the error operators of Eq. (9). Resuming our previous which occurs with a probability of |E1|ψ| = λβ and it is equivalent to the classical state |1. The probability λ relies 4A quantum channel N is a completely positive, trace-preserving linear mapping, which maps an input state having the density ρ as [2]: on the relaxation time T1 as well as on the dephasing time T , i.e., we have [40]: † 2 N (ρ)= Ek ρE , k t − 2t k λ =1− e T1 T2 . (16) E where the matrices k are known as the Kraus operators or error operators E† E I Intuitively, Eq. (13) and Eq. (16) imply that the qubit is likely of the channel. Furthermore, we have k k k = ,whereI is an identity matrix. to decohere if the operation time (transmission or processing 976 IEEE COMMUNICATIONS SURVEYS & TUTORIALS, VOL. 21, NO. 1, FIRST QUARTER 2019

The operator Z is a phase-flip operator, which acts as: α Z|ψ 10 = − β 0 1 α ≡ α| −β| , = −β 0 1 (21)

while X is a bit-flip operator analogous to the classical NOT gate, which yields: α X|ψ 01 = β 10 β ≡ β| α| . = α 0 + 1 (22)

By contrast, Y is a combined bit-and-phase-flip operator (Y = Fig. 7. Schematic of Pauli-I, Pauli-Z, Pauli-X and Pauli-Y gates. iXZ), which acts on |ψ as: 0 −i α Y|ψ = i 0 β or storage) t is comparable to the relaxation time T1 and the dephasing time T . Equivalently, T and T characterize the −iβ 2 1 2 = ≡−i(β|0−α|1). (23) life-time of a reliable qubit. iα

C. Pauli Channel Hence, the Pauli channel of Eq. (17) maps the input state |ψ onto a linear combination of the original state (Pauli-I The environmental decoherence can be modeled using a operation), phase-flipped state (Pauli-Z operation), bit-flipped combined amplitude and phase damping channel. However, state (Pauli-X operation), as well as bit-and-phase-flipped state it is not feasible to classically simulate such channels for an (Pauli-Y operation) during the process of decoherence. In N-qubit composite system, since the resultant system has a essence, the resultant quantum error is continuous in nature. 2N -dimensional Hilbert space. For the sake of facilitating effi- We may observe in Eq. (19) furthermore that the time T cient classical simulations,5 the combined amplitude and phase 1 affects bit-flips, phase-flips as well as bit-and-phase-flips. By damping channel can be approximated using a so-called Pauli contrast, the time T is only related to the phase-flip errors. channel N , which maps an input state, having the density 2 P This is because the bit-flip as well as bit-and-phase-flip errors operator ρ, as follows [41]: are associated with amplitude damping, while the phase-flip NP(ρ)=(1− pz − px − py )IρI + pz ZρZ + px XρX + py YρY, errors result from phase damping. In most practical systems, (17) the value of T1 is several orders of magnitude higher than that of T [42], [43]. Consequently, most practical quantum where I, X, Y and Z are single-qubit Pauli operators (or gates) 2 systems behave as so-called asymmetric channels and they of Fig. 7 defined as: experience more phase-flips than bit-flips as well as bit-and- 10 01 I = , X = , phase-flips. Furthermore, a special class of Pauli channels, 01 10 known as the ‘depolarizing channel’, models the worst-case 10 0 −i scenario by assuming that all three errors are equally likely, Z = , Y = , (18) 0 −1 i 0 i.e., (pz = px = py ). Explicitly, a depolarizing channel having the probability p inflicts a phase-flip (Pauli-Z)ora while pz , px and py are the probabilities of encounter- ing Z, X and Y Pauli errors, respectively, which rely bit-flip (Pauli-X) or bit-and-phase-flip (Pauli-Y) error with / on the qubit relaxation and dephasing time as given a probability of p 3 each, which may be mathematically encapsulated as: below: 1 −t/T1 p px = py = 1 − e NDP(ρ)=(1− p)ρ + (ZρZ + XρX + YρY). (24) 4 3 1 −t/T1 −t/T2 pz = 1+e − 2e . (19) In this treatise, we will only consider the widely used depo- 4 larizing channel model. Explicitly, I is an identity operator, or merely a repeat The aforementioned quantum channel models are summa- |ψ gate, which leaves the state intact, as shown rized in Fig. 8. We may observe in Fig. 8 that the Pauli below: channel may be deemed to be the quantum analogue of the α I|ψ 10 classical discrete quaternary channel. However, while the clas- = β 01 sical quaternary channel may inflict only one of the four α possible errors, the error inflicted by the Pauli channel may ≡ α| β| . = β 0 + 1 (20) be in superposition of the four possible errors, i.e., I, Z, X and Y. The Pauli channel may further be simplified by 5Classical modeling of quantum systems is discussed in Section VI. using two independent bit-flip and phase-flip channels, which BABAR et al.: DUALITY OF QUANTUM AND CLASSICAL ERROR CORRECTION CODES: DESIGN PRINCIPLES AND EXAMPLES 977

Fig. 8. Mathematical interpretation of quantum channel models.

are analogous to classical binary symmetric channels hav- Fig. 9. Shannon capacity limit for AWGN channel characterized by Eq. (26). ing cross-over probabilities of (px + py ) and (pz + py ), respectively.

III. HISTORICAL OVERVIEW OF CLASSICAL &QUANTUM ERROR CORRECTION CODES In this section, we survey the major milestones both in the realm of classical as well as in quantum coding theory, which are chronologically arranged in Table I.

A. Classical Coding Theory 1) Design Objectives: Shannon’s pioneering work [44]on classical channel capacity marks the beginning of classical coding theory. Explicitly, Shannon predicted that sophisticated channel coding techniques, having coding rate R lower than the Shannon limit (or channel capacity) C, may be invoked for the sake of achieving reliable transmission over a noisy bandwidth-limited channel. Intuitively, this implies that it is Fig. 10. Stylized representation of conflicting design parameters affecting possible to transmit information virtually free from errors, the design of classical codes. as long as the coding rate does not exceed the Shannon limit,which is characterized by the channel bandwidth B (Hz), the signal power S (Watts) and the uncorrelated Additive White between the bandwidth and the SNR, as detailed and exempli- Gaussian Noise (AWGN) power N (Watts) as follows: fied in [141, Sec. 2.13.1]. However, an infinite bandwidth does S not guarantee an infinite transmission rate, because the noise C = B log 1+ , (25) 2 N power also increases upon increasing bandwidth, as shown mathematically in [141]. or equivalently in terms of the spectral efficiency (bits/s/Hz) as: Shannon did not provide any explicit code constructions C S in his seminal work [44]. However, his work inspired the η = =log 1+ . (26) B 2 N research community to design practical codes in line with the achievable code design region of Fig. 9. This in turn Hence, the Shannon limit of Eq. (25) (and equivalently highlighted various other conflicting design trade-offs, which Eq. (26)) quantifies the highest possible coding rates still capa- are captured in Fig. 10. For example, given particular chan- ble of ensuring error-free transmission, as illustrated in Fig. 9. nel conditions, a code may be optimized to achieve a lower Furthermore, we may infer from Eq. (25) that the resultant Bit Error Ratio (BER) or a higher coding gain.6 However, information transfer rate of a system is limited by the channel this typically imposes an increased decoding complexity and bandwidth B as well as the system’s Signal-to-Noise Ratio transmission delay, or reduced effective , as detailed (SNR) S/N. As demonstrated in Fig. 9, the capacity limit in [141] and [142]. increases upon increasing the SNR. Ultimately, when the SNR The Shannon limit of Eq. (25) quantifies the capacity of approaches infinity in the noiseless scenario, it is possible a Continuous-input Continuous-output Memoryless Channel to achieve an infinite transmission rate even for a very low bandwidth. Similarly, the capacity limit also increases upon 6Coding gain quantifies the reduction in bit-energy achieved at a certain increasing the bandwidth. Hence, we may strike a trade off BER, when error correction is invoked. 978 IEEE COMMUNICATIONS SURVEYS & TUTORIALS, VOL. 21, NO. 1, FIRST QUARTER 2019

TABLE I MAJOR ACHIEVEMENTS IN THE CLASSICAL AND QUANTUM CODING PARADIGMS

(CCMC), which may only be achieved by infinitely long conceived for characterizing the rate-versus-minimum-distance random-like codes. Since the state-of-the-art communication trade-off, rather than the rate-versus-SNR trade-off of Fig. 9. systems transmit binary information, several bounds have been Explicitly, these bounds provide either an upper or a lower BABAR et al.: DUALITY OF QUANTUM AND CLASSICAL ERROR CORRECTION CODES: DESIGN PRINCIPLES AND EXAMPLES 979

TABLE II RATE-VERSUS-MINIMUM-DISTANCE BOUNDS FOR CLASSICAL CODES [147], [148]. H2(p) DENOTES THE BINARY ENTROPY FUNCTION,WHICH IS EQUIVALENT TO H2(p)=p log2(p)+(1− p)log2(1 − p)

the rate-versus-minimum-distance trade-off. Consequently, for the sake of approximating the optimum trade-off between the coding rate and the minimum distance, a simple invert- ible closed-form analytical expression R(δ)=(2δ − 1)2 was proposed in [147], which satisfies all the asymptotic bounds of Table II, as demonstrated in Fig. 11. Akhtman et al. [147] also formulated the corresponding closed-form expressions for finite block-lengths, satisfying all the finite bounds of Table II. 2) Error Correction Codes: In 1950, Hamming con- ceived the first practical family of classical error correction codes [45]. More specifically, Hamming proposed an infi- nite family of binary linear block codes capable of encoding k =(2r − 1 − r) information bits into n =(2r − 1) coded bits for r ≥ 2. The resultant codewords had a min- imum of dmin =3, hence correcting t =(dmin − 1)/2=1errors. The Hamming codes may dmin Fig. 11. Rate (R = k/n) versus normalized minimum distance δ = n be classified as being ‘perfect’ codes, since the associated asymptotic bounds [148]. The closed-form approximation of [147] is also / − / r − 2 coding rate R = k n =1 r (2 1) is the maximum plotted, which relies on a simple quadratic function R(δ)=(2δ − 1) and satisfies all the bounds. Upper bounds are plotted in blue, while the lower coding rate achievable for dmin =3and for a block length r bound is plotted in red. of n =(2 − 1). Following these developments, in 1954, Reed [46] and Muller [47] independently conceived a class of multiple error correcting block codes, known as Reed-Muller limit on the maximum coding rate R = k/n given the minimum (RM) codes. Reed also introduced a simple majority-logic Hamming distance dmin, or vice versa. Here, k and n denote based hard-decision decoder for RM codes in [46]. The same the number of information and coded bits, respectively, while year, a soft-decision based decoding algorithm, known as the minimum Hamming distance is defined as the minimum Wagner decoding [48], was developed for a special class of distance between any two legitimate binary codewords. Hence RM codes. the resultant code is capable of correcting t =(dmin − 1)/2 The afore-mentioned linear block codes primarily relied on errors. Table II enlists the popular finite block-length as well maximizing the minimum distance for a given pair of (n, k) as asymptotic (n →∞) coding bounds, while Fig. 11 plots codewords encoding k bits into n, or equivalently maximizing the asymptotic bounds. Specifically, the Singleton bound [143] the coding rate given the dmin and n. The resultant families is a loose upper bound, while the Gilbert-Varshamov (GV) of Hamming and RM codes only support a limited range of bound [146] is the tightest lower bound. Furthermore, the code parameters given by (n, k, dmin). For the sake of design- [45] provides a tight upper bound at high ing more codes offering a wider range of code parameters coding rates, while the McEliece-Rodemich-Rumsey-Welch at an affordable implementation complexity, Elias discovered (MRRW) bound [144] is the tightest upper bound for low convolutional codes in 1955 [49], which marks the commence- and medium coding rates. The bounds of Table II give a ment of the so-called probabilistic coding era. Convolutional range of achievable minimum distances, or more specifically codes are capable of supporting encoding and decoding proce- δ dmin the normalized minimum distances = n , for the desired dures operating in a sliding window, hence resulting in lower coding rate, and hence do not provide a precise solution to latencies than the above block codes. In this spirit, Viterbi 980 IEEE COMMUNICATIONS SURVEYS & TUTORIALS, VOL. 21, NO. 1, FIRST QUARTER 2019 invented a Maximum Likelihood Sequence Estimation (MLSE) joint coding and modulation scheme called Trellis-Coded (or equivalently minimum Euclidean distance) algorithm for Modulation (TCM) [66]Ð[68]. Explicitly, TCM is a joint convolutional codes [62]. Explicitly, the Viterbi Algorithm channel coding and modulation scheme, which absorbs the (VA) aims for finding the most likely error sequence at an redundant coding bits by expanding the constellation size to affordable decoding complexity. Although the VA is an MLSE accommodate more bits/symbols and hence maintains a fixed algorithm, the resultant BER of the system is close to the min- bandwidth. TCM provides attractive performance gains over imum possible BER, but the latter was only achievable by a convolutional codes, while incurring a similar decoding com- complex Maximum Likelihood (ML) decoder, which evaluates plexity. In 1992, another coded modulation scheme termed as all valid coded sequences. To circumvent the high complexity Bit-Interleaved Coded Modulation (BICM) [71], [72] was con- of the latter ML decoder, Bahl et al. proposed the minimum ceived for transmission over channels, which invoked BER decoding algorithm in 1974 [64], which was named the bit-based interleavers in conjunction with Gray-coded bit-to- Maximum A Posteriori (MAP) algorithm. It is also known as symbol mapping. More specifically, parallel bit interleavers are BCJR after its inventors Bahl, Cocke, Jelinek and Raviv. used at the output of a convolutional code in this joint coding Pursuing further the realm of block codes, Prange inves- and modulation scheme for the sake of increasing the resultant tigated cyclic codes in 1957 [50]. Since the cyclic shift diversity gain by exploiting the fading of the bits in a multi- of codewords of cyclic codes are also legitimate code- bit symbol; hence enhancing the system’s performance over words, the associated encoding and decoding procedures fading channels. However, BICM does not outperform TCM can be efficiently implemented using shift registers. Inspired over AWGN channels, since it exhibits a reduced minimum by these developments, Hocquenghem [51]aswellas Euclidean distance. Bose and Ray-Chaudhuri [52], [149] independently discovered Despite being into the fifth decade of coding theory, the the family of Bose-Chaudhuri-Hocquenghem (BCH) codes in notion of operating near the Shannon limit was far from real- 1959 and 1960, respectively. Specifically, BCH codes con- ization until Berrou et al. [73], [74] conceived turbo codes stitute the family of multiple-error correcting cyclic block in 1993. More specifically, turbo code rely on a parallel con- codes, which encode k ≥ (n − rt) information bits into catenation of Recursive Systematic Convolutional (RSC) codes n =(2r −1) coded bits, so that the resultant codewords exhibit with an interleaver between them. At the decoder, soft iterative the maximum possible minimum Hamming distance. In 1960, decoding is invoked, which relies on the Soft-In Soft-Out Reed and Solomon conceived a non-binary version of BCH (SISO) MAP algorithm of [64]. It is pertinent to mention codes referred to as Reed-Solomon (RS) codes [53], while the here that the MAP algorithm only slightly outperforms the VA following year Gorenstein and Zierler developed the Peterson- in terms of the achievable BER for non-iteratively decoded Gorenstein-Zierler (PGZ) decoding scheme for non-binary convolutional codes, while imposing a substantially higher RS/BCH codes. Later, Berlekamp and Massey developed the complexity. Consequently, MAP decoding was rarely used for Berlekamp-Massey decoding algorithm for cyclic RS/BCH decoding convolutional codes, until turbo codes were invented. codes in [56]Ð[59], while a soft-decision aided Chase decoder But given that turbo decoders require bit-by-bit soft-metrics, was proposed in [63]. Both these decoding algorithms are they required complex MAP decoding. Fortunately, the com- widely adopted for decoding BCH as well as RS codes. plexity of turbo decoders may be reduced by invoking less Unfortunately BCH codes did not find much practical appli- complex SISO decoders, for example the Soft-Output Viterbi cations, except as Cyclic Redundancy Check (CRC) codes in Algorithm (SOVA) [69], the Max-Log-MAP algorithm [70] Automatic-Repeat-reQuest (ARQ) systems. By contrast, RS and the Log-MAP algorithm [77]. codes have found several practical applications owing to their Berrou’s turbo revolution triggered intensive research efforts inherent capability of correcting both random as well as burst directed towards designing iterative ‘turbo-like’ codes. In par- of errors. Explicitly, RS codes are widely employed in mag- ticular, it led to the renaissance of Low Density Parity Check netic tape and disk storage, which are susceptible to burst (LDPC) codes in 1995 [78], [79]. LDPC codes were proposed errors. Furthermore, they are also used as outer codes in by Gallager as early as 1962 [55]. However, the associated concatenated coding schemes, which have been integrated in complexity was deemed enormous in that era. Consequently, various standardized systems, such as the deep-space coding LDPC codes were abandoned for decades to come. However, standard [150]. Another major milestone in algebraic coding the invention of turbo codes revived the research interest in was achieved with the development of non-binary Redundant LDPC codes. Various variants of LDPC codes have been Residue Number System (RRNS) codes [60], [61], which are proposed over the years, which are known to operate arbi- also maximum minimum-distance codes and hence exhibit trarily close to the Shannon limit at sufficiently long code- similar distance properties to RS codes. word lengths, for example irregular LDPC codes [89], [90], By 1980, error correction codes were successfully deployed LDPC convolutional codes [104], protograph-based LDPC in various deep-space, satellite and mobile communications codes [113] and spatially coupled LDPC codes [129]. systems in conjunction with modulation schemes. However, Turbo revolution also led to other iterative coding schemes, the error correction and modulation modules were treated which include for example Turbo BCH codes [81], Turbo independently and the redundancy of the codes extended the Hamming codes [91], BICM with Iterative Decoding (BICM)- bandwidth requirement, when the signal constellation size was ID [92], Turbo Trellis Coded Modulation (TTCM) [103], fixed. For the sake of circumventing this disadvantage of cod- punctured turbo codes [105] and Unity Rate Code (URC) ing, Ungerboeck invented a bandwidth-efficient trellis-based assisted concatenated coding schemes [108].Theinventionof BABAR et al.: DUALITY OF QUANTUM AND CLASSICAL ERROR CORRECTION CODES: DESIGN PRINCIPLES AND EXAMPLES 981

EXtrinsic Information Transfer (EXIT) charts [109], [115]by codes and LDPC codes have been chosen for the control and Ten Brink in 2001 marks another important milestone in the data channels, respectively. realm of the afore-mentioned concatenated schemes relying on To conclude, classical turbo, LDPC and polar codes have iterative decoding. More specifically, EXIT charts constitute a made it possible to operate arbitrarily close to the Shannon semi-analytical tool, which aids the design of near-capacity limit of Fig. 9. For example, the 1/2-rate turbo code of [73] iterative schemes [142], [151]. Quantitatively, the resultant operates within 0.7 dB of the Shannon limit at a block length systems may operate within 1 dB of the Shannon limit, see of 65,536 bits, while the 1/2-rate irregular LDPC code of [90] for example the IRregular Convolutional Code (IRCC) assisted surpasses the performance of comparable turbo codes and concatenated schemes of [111], the TTCM of [119] and the operates only 0.13 dB away from Shannon capacity at a block BICM-ID of [126]. length of 106 bits. Furthermore, polar codes [125] provably With the help of intensive research efforts, turbo cod- achieve the capacity, albeit at infinitely long block lengths. ing was successfully commercialized within just a few years Hence, our ambition to reach the Shannon limit in turn resulted and was incorporated into various standardized systems, in long decoding delays, which motivated the research on par- such as mobile communication systems and video broadcast allel decoding architectures, for example on the fully-parallel systems [142]. In particular, turbo coding was incorporated LDPC and turbo decoders of [137] and [155], respectively. in the 3G UMTS [152] and LTE [153] mobile stan- The decoding latencies associated with polar codes are even dards. However, the high latency associated with turbo codes higher due to the serial nature of the polar decoder. Hence, it is anticipated to be a major impediment in next-generation seems that the research community first designed practically systems supporting ‘tactile services’. Consequently, a Fully- infeasible codes in the spirit of reaching the Shannon limit Parallel Turbo Decoder (FPTD) was recently conceived by and then changed the ultimate goal to that of reducing the Maunder in [137], which significantly reduces the associ- decoding delays. Therefore, it remains an open challenge to ated latency; hence making turbo codes a promising candi- design codes, which strike exactly the desired design trade-offs date for next-generation systems. Over the years, the LDPC amongst all the parameters of Fig. 10. Explicitly, we need a coding scheme has proved to be a fierce competitor of code, which maximizes the coding rate for the given chan- turbo codes, which has also been adopted by various stan- nel conditions, while minimizing the achievable BER, system dards, for example WiMax, IEEE 802.11n, IEEE 802.3an, bandwidth, delay and implementation complexity. It is also and DVB-S2. desirable that the code should be rate-compatible, hence capa- Arikan’s polar code [125] conceived in 2009 sparked ble of operating in diverse use-cases under diverse channel another wave of excitement within the coding community, conditions. This is particularly important in the context of since it is the first class of channel codes, which provably the on-going debates concerning the systems promising achieves the capacity of symmetric memoryless channels, seamless connectivity for diverse use-cases. while imposing only a modest encoding and decoding com- plexity. Polar codes invoke a short and simple kernel code, so that the physical channels are polarized into virtual channels, B. Quantum Coding Theory which are either perfectly noiseless or completely random, 1) Design Objectives: With around seven decades of rich provided that the block length is sufficiently long. At prac- history, classical coding theory is already quite mature. By tical block lengths, the channels are polarized into a set of contrast, quantum coding theory is still in its infancy, since high-reliability and low-reliability virtual channels. Finally, the implementation of quantum technology has not been com- the information bits are sent across the high-reliability chan- mercialized. Researchers have been actively working on dis- nels, while dummy bits, called ‘frozen bits’, are transmitted covering the quantum versions of the existing classical codes. via the low-reliability channels. If the block lengths are suf- In duality to the classical coding theory, QECCs are designed ficiently long, then the fraction of high reliability virtual to achieve the quantum channel capacity [93], [156], [157], channels is equivalent to the achievable channel capacity. At or more precisely the hashing bound. Explicitly, the hashing the receiver, the polar decoder invokes a low-complexity suc- bound is only a lower bound, because the actual capacity of a cessive cancellation decoding algorithm, which processes the quantum channel may be higher due to the ‘degenerate’ nature received bits serially. Despite having a low encoding and of quantum codes [158], [159]. To elaborate further, the notion decoding complexity, Polar codes, relying on cyclic redun- of degeneracy implies that different error patterns may yield dancy check-aided successive cancellation list decoding, are the same corrupted quantum state. For instance, let us consider capable of outperforming the standardized LTE turbo and the state |ψ = |00+|11, which may experience the channel- WiMax LDPC codes at moderate block lengths, as demon- induced error IZ or ZI. We may observe that both these error strated in [154]. Furthermore, the coding rate of polar codes patterns result in the same channel output, i.e., (|00−|11). can be varied almost continuously by changing the number Consequently, the error patterns IZ and ZI are classified as of frozen bits, hence making them ideal for rate-compatible degenerate errors, as further discussed in Section V. Similarly, scenarios. However, a major limitation of polar codes is the error pattern ZZ leaves the state |ψ intact analogous to the high latency associated with the polar decoder, since it the error-free scenario; hence ZZ and II are also degenerate sequentially processes the received information. Nonetheless, errors. polar codes have already found their way into the 5G system In duality to the Shannon limit of Eq. (25), the hashing for enhanced mobile broadband communications, where polar bound is completely specified by the channel’s depolarizing 982 IEEE COMMUNICATIONS SURVEYS & TUTORIALS, VOL. 21, NO. 1, FIRST QUARTER 2019

Fig. 13. Stylized representation of conflicting design parameters affecting Fig. 12. Hashing bounds for the unassisted (c = 0) and maximally- the design of quantum codes. entangled (c = n − k) quantum codes, characterized by Eq. (27)andEq.(29), respectively. The enclosed region, labeled the ‘hashing region’, quantifies the capacity for 0 < c < (n − k). In duality to the classical coding bounds of Table II, Table III enlists the quantum coding bounds, which charac- probability p as follows [85], [131]: terize the rate-versus-minimum-distance trade-off for quan- − − , tum codes. Analogous to the classical coding bounds, the CQ (p)=1 H2(p) p log2(3) (27) quantum Singleton bound serves as a loose upper bound, where H2(p) denotes the binary entropy function. Explicitly, the quantum Hamming bound as a tighter upper bound, a random quantum code C may exhibit an arbitrarily low and the quantum GV bound as the tightest lower bound. Quantum Bit Error Ratio (QBER) at a depolarizing proba- Furthermore, Ashikhmin and Litsyn extended the classical bility of p, if its coding rate does not exceed the hashing limit linear programming approach to quantum codes using the CQ (p)ofEq.(27) and the codeword has a sufficiently long MacWilliams identities [163] for the sake of tightening the length. quantum Hamming bound. However, despite all efforts, a wide The Hashing bound of Eq. (27) is only valid for gap existed between the upper and lower coding bounds until unassisted quantum codes. Explicitly, there exists Chandra et al. conceived a closed-form expression [148]for a family of Entanglement-Assisted (EA) quantum characterizing the rate-versus-minimum-distance trade-off for codes [112], [116]Ð[118], which does not exist in the quantum codes. As demonstrated in Fig. 14, the closed-form classical domain. In contrast to the unassisted quantum codes, formulation of [148] satisfies all the known coding bounds. the EA quantum codes rely on pre-shared noiseless entangled Fig. 15 portrays the growth of achievable minimum distance qubits, which naturally increases the achievable capacity. upon increasing the codeword length based on the finite- Given that c entangled qubits are pre-shared with the receiver length closed-form formulation of [148]. We may observe over a noiseless channel, the associated EA hashing bound is in Fig. 15 that the minimum distance increases almost lin- given by [131], [160]: early with the codeword length, hence it is termed as the ‘unbounded minimum distance’. Consequently, it is desirable C (p)=1− H (p) − p log (3) + E, (28) Q 2 2 to conceive code structures having an unbounded minimum where E denotes the ‘entanglement consumption’ rate, which distance. c 2) Error Correction Codes: The rate-1/3 repetition code is equivalent to E = n for a code having k information qubits, n coded qubits and 0 ≤ c ≤ (n − k) pre-shared qubits. is the simplest single-error correcting code in the classical Explicitly, when c = 0, Eq. (28) reduces to the unassisted hash- coding paradigm, which relies on the cloning of informa- ing bound of Eq. (27). By contrast, when c has the maximum tion bits. Unfortunately, qubits cannot be cloned owing to value of (n − k), we get the maximally-entangled quantum the existence of the no-cloning theorem. Hence, it was gener- codes and the associated maximally-entangled hashing bound ally believed that QECCs are infeasible, until Shor pioneered is [131], [160]: the first quantum code in 1995 [80]. Shor’s code of [80]isa rate-1/9 code capable of correcting a single bit-flip, phase-flip − H2(p) p log2(3) CQ (p)=1− . (29) as well as bit-and-phase-flip error. Motivated by this break- 2 through, Calderbank and Shor [83] as well as Steane [82], [84] Hence, as shown in Fig. 12, an EA quantum code can operate independently conceived a generalized framework for con- anywhere in the hashing region, which is bounded by Eq. (27) structing quantum codes from classical binary linear codes, and Eq. (29). Furthermore, in duality to Fig. 10, the parameters which constitutes the popular family of Calderbank-Shor- involved in the design of QECCs are illustrated in Fig. 13. Steane (CSS) codes. Explicitly, the CSS construction relies BABAR et al.: DUALITY OF QUANTUM AND CLASSICAL ERROR CORRECTION CODES: DESIGN PRINCIPLES AND EXAMPLES 983

TABLE III RATE-VERSUS-MINIMUM-DISTANCE BOUNDS FOR QUANTUM CODES [148]

was also introduced, which was derived from dual-containing binary codes. Explicitly, dual-containing CSS codes consti- ⊥ tute a special type of CSS codes having C2 = C1 , where ⊥ 7 C1 is the dual code of C1. Following these principles, Steane [84] constructed a rate-1/7 single-error correcting code from the classical [7, 4, 3] . In the spirit of further improving the coding rate, Bennett et al. [85] and Laflamme et al. [86] independently designed the optimal rate- 1/5 single-error correcting quantum code, having the smallest possible codeword length. The CSS construction of [82]Ð[84] does not exploit the redundant qubits efficiently, since the bit-flip and the phase- flip errors are corrected independently by concatenating a pair of classical binary codes. For the sake of designing an optimal code having the smallest codeword length, similar to the rate-1/5 code of [85] and [86], it is important to jointly dmin Fig. 14. Rate (RQ = k/n) versus normalized minimum distance δ = n correct bit-flip and phase-flip errors. In pursuit of designing asymptotic bounds [148]. The closed-form approximation of [148] is also such optimized codes, Gottesman established the theory of δ 32 δ2− 16 δ plotted, which relies on a simple quadratic function RQ ( )= 9 3 +1 Quantum Stabilizer Codes (QSCs) [87] during his Ph.D. [88]. and satisfies all the bounds. Upper bounds are plotted in blue, while the lower bound is plotted in red. Explicitly, Gottesman presented a more general formalism, called stabilizer formalism, capable of facilitating the design of quantum codes from the classical binary and quaternary codes. As compared to the CSS codes, the stabilizer formalism imposes a more relaxed constraint, generally called the ‘sym- plectic product’ criterion, on the underlying classical codes; hence, the resultant QECCs can have either a CSS or a non- CSS (also called unrestricted) structure. In simple terms, the symplectic product criterion is the constraint imposed on the Parity Check Matrix (PCM) of the constituent classical code (or codes), which ensures that the resultant quantum code is a valid stabilizer code.8 Furthermore, while the CSS-type codes independently correct bit-flip and phase-flip errors, the non-CSS codes jointly correct bit-flip and phase-flip errors. The advent of stabilizer formalism sparked a major revolution in the history of quantum coding, leading to the devel- opment of various code families, which includes Quantum Bose-Chaudhuri-Hocquenghem (QBCH) codes [94]Ð[99], toric codes [100]Ð[102], Quantum Reed-Muller codes [106], Fig. 15. The growth of achievable minimum distance with increasing codeword length based on the finite-length closed-form formulation of [148]. Quantum Reed-Solomon codes (QRS) [107], Quantum Low Density Parity Check (QLDPC) codes [110], [164]Ð[166],

7Let C be a classical linear having the generator matrix G and on a pair of classical binary linear block codes C and C , ⊥ 1 2 the PCM H, then the dual code C is the code having the generator matrix T T which satisfy the criterion C2 ⊂ C1. Furthermore, a spe- H and the PCM G . cial class of CSS codes, called dual-containing CSS codes, 8Further details are given in Section VI. 984 IEEE COMMUNICATIONS SURVEYS & TUTORIALS, VOL. 21, NO. 1, FIRST QUARTER 2019

Quantum Convolutional Codes (QCC) [114], [167]Ð[169], properties are essential for constructing good turbo codes. Quantum Turbo Codes (QTC) [120], [121], Quantum Explicitly, a recursive inner code is required for achieving an IRregular Convolutional Codes (QIRCC) [3] as well Quantum unbounded minimum distance, while both component codes Unity Rate Codes (QURC) [139]. of a serially concatenated code must be noncatastrophic for The Quantum research fraternity has invested the last three ensuring decoding convergence to an infinitesimally low error decades in designing the quantum counterparts of the existing rate. Hence, the QTCs of [120] and [121] exhibit a bounded families of classical codes. Except for the parallel concate- minimum distance, since they rely on non-recursive non- nated codes as well as for the joint coding and modulation catastrophic QCCs. For the sake of designing near-capacity schemes of the classical regime, virtually all major fami- QTCs, Babar et al. [136] developed EXIT charts for the quan- lies of classical codes have a quantum counterpart. Amongst tum domain, while a Quantum IrRegular Convolutional Code these, short block codes are particularly important from an (QIRCC) structure and Quantum Unity Rate Code (QURC) implementation perspective, since the quantum technology were proposed in [3] and [139], respectively. Recently, a is still in its infancy and hence decoherence would prevent Fully-Parallel Quantum Turbo Decoder (FPQTD) was con- the implementation of long codes. However, the desire to ceived in [140], which substantially reduces the decoding approach the hashing bound of Fig. 13 motivated researchers latency. to design QLDPC [110], [164]Ð[166] codes and QTCs [120], Recall that stabilizer codes must satisfy the stringent sym- [121], which exploit iterative decoding. In particular, the plectic product criterion. Consequently, not every classical sparse nature of LDPC matrix is particularly important in the code can be ‘imported’ into the quantum realm. Furthermore, quantum domain for achieving fault-tolerant decoding, since the symplectic product criterion results in undesired code the qubits interact with only a limited number of other qubits characteristics, for example the unavoidable length-4 cycles during the syndrome computation process. Furthermore, since of QLDPC codes and the non-recursive nature of non- the LDPC matrix is sparse, the resultant QLDPC codes exhibit catastrophic QCCs. For the sake of overcoming the issues high degeneracy. However, the strict symplectic product cri- associated with the symplectic product criterion, the theory of terion associated with the design of stabilizer codes severely EA quantum codes was developed in [112] and [116]Ð[118], limits the performance of QLDPC codes. More specifically, which relies on the pre-sharing of entanglement between the owing to the symplectic criterion, the QLDPC matrix con- transmitter and the receiver. The notion of EA codes was sists of numerous short cycles, which have a length of 4. This adopted for nearly all coding families, including EA-QLDPC in turn degrades the performance of the LDPC decoder rely- codes [127], EA-QCCs [128] and EA-QTCs [130], [131], ing on the message passing algorithm, as detailed in [124]. hence alleviating the issues arising from the symplectic prod- Unfortunately, the LDPC decoder is not capable of capturing uct criterion. Explicitly, EA-QLDPC codes may be designed the impact of degenerate errors. In fact, the LDPC decoder suf- with no length-4 cycles in the binary formalism. Consequently, fers from the so-called ‘symmetric degeneracy error’ [124], the resultant performance is comparable to that of the classical which results from the degenerate errors. For the sake of LDPC codes. Similarly, EA-QCCs can be concurrently recur- improving the performance of the LDPC decoder in the sive as well as non-catastrophic [130], [131]. Consequently, wake of length-4 cycles and the symmetric degeneracy error, EA-QTCs are capable of having an unbounded minimum dis- Poulin et al. conceived heuristic methods in [122]. These meth- tance. Hence, the family of EA quantum codes finally brought ods primarily relied on introducing random perturbations for the performance of quantum codes in line with that of their triggering decoding convergence. Then the QLDPC decoding classical counterparts. methods were further improved in [123] and [124]. Despite Polar codes have also attracted considerable attention within these developments, the performance of QLDPC codes is still the quantum research fraternity. Inspired by the provably not comparable to that of classical LDPC codes. capacity achieving nature of Arikan’s polar codes as well In 2008, Poulin et al. constructed the quantum counter- as their efficient encoding and decoding structures, Wilde parts of turbo codes in [120] and [121]. While classical turbo and Guha demonstrated the existence of the quantum channel codes generally rely on the parallel concatenation of con- polarization phenomenon for classical and quantum informa- volutional codes, the QTCs of [120] and [121] rely on the tion in [132] and [133], respectively. The quantum polar codes serial concatenation of QCCs. As compared to QLDPC codes, of [132] and [133] invoked a quantum-domain successive QTCs offer more flexible code parameters, for example the cancellation decoder, which is based on the notion of quan- frame length, coding rate, constraint length as well as the tum hypothesis testing. The resultant decoder failed to match interleaver type. Furthermore, the iterative decoding of QTCs the decoding complexity of Arikan’s successive cancellation takes into account the impact of degenerate errors. However, decoder. This issue was addressed by Renes et al. [134], where the stabilizer-based QCCs cannot be concurrently recursive CSS-type quantum polar codes were constructed from the clas- as well as noncatastrophic9 [120], [121], [170]. Both these sical polar codes, resulting in quantum codes having efficient encoders as well as decoders. However, the quantum polar 9An encoder is catastrophic if it outputs a finite-weight coded sequence codes of [132]Ð[134] rely on the sharing of noiseless entangle- for an infinite-weight input sequence. Consequently, a catastrophic code may ment between the transmitter and the receiver. In this context, result in catastrophic error propagation, since a finite number of errors on the the first unassisted quantum polar codes were recently con- coded sequence may yield infinite number of errors on the decoded sequence. This in turn implies that the constituent codes of a concatenated code must ceived in [138], which marks another major milestone in the be non-catastrophic for the sake of achieving decoding convergence. development of quantum codes. BABAR et al.: DUALITY OF QUANTUM AND CLASSICAL ERROR CORRECTION CODES: DESIGN PRINCIPLES AND EXAMPLES 985

for classical), coding rate and delay. Then it could be extended to the complexity and other relevant metrics in future research.

IV. CLASSICAL-TO-QUANTUM TRANSITION The peculiar laws of quantum mechanics make quantum coding intrinsically different from their classical counterparts. Nevertheless, efficient quantum codes can be designed from the existing families of classical codes by cautiously address- ing the following challenges, which do not exist in the classical realm. 1) No-Cloning Theorem: Most classical error correction codes rely on cloning. Explicitly, multiple copies of the information bits are transmitted for the sake of pro- viding redundancy. Unfortunately, it is not possible to Fig. 16. Achievable performance at a word error rate (or frame error −3 rate) of 10 benchmarked against the Hashing bound for the ‘bicycle’ clone an arbitrary unknown qubit due to the no-cloning code (R = 0.25, n = 19,014) of [164], ‘SC QC-QLDPC’ code (R = 0.49, theorem [176]. n = 1,81,000) of [171], ‘non-binary QC-QLDPC’ code (R = 0.5, n = 20,560, 10 2) Measurement Operation: Classical codes rely on mea- GF(2 )) of [172]and[173], ‘LDGM-based SC-QLDPC’ code (R = 0.25, n = 76,800) of [174], ‘QTC-assisted LDGM-based SC-QLDPC’ code suring (or observing) the values of the received bits for (R = 0.25, n = 8,21,760) of [175] and QURC-QIRCC code (R = 0.5, hard-decision as well as soft-decision aided decoding. n = 2,000) of [139]. Unfortunately, it is not possible to measure (or observe) a qubit without perturbing it, which would result in the superimposed quantum states collapsing to the classical domain upon measurement. In a nutshell, similarly to classical coding, quantum cod- 3) Nature of Quantum Errors: Classical channels only ing research has also been steered towards approaching the impose bit-flip errors. By contrast, quantum chan- capacity limit. In this pursuit, codes relying on long code- nels inflict both bit-flips as well as phase-flip errors. word lengths were designed, as exemplified by the bicycle Furthermore, quantum impairments are continuous in QLDPC code (R = 0.25, n = 19,014) of [164], the Spatially- nature, since the received qubit may assume any value Coupled Quasi-Cyclic (SC QC) QLDPC code (R = 0.49, on the Bloch sphere. n = 1,81,000) of [171], the non-binary QC-QLDPC’ code In this Section, we elaborate on these challenges by designing (R = 0.5, n = 20,560, GF(210)) of [172] and [173], the the quantum counterparts of the simple rate-1/3 classical rep- Low Density Generator Matrix (LDGM)-based QLDPC code etition code, which can only correct a single classical error. (R = 0.25, n = 76,800) of [174], the QTC-assisted LDGM- The overall evolution is summarized in Fig. 17 at a glance. based SC-QLDPC code (R = 0.25, n = 8,21,760) of [175] and 1) No-Cloning Theorem: Quantum codes exploit quantum- the concatenated QURC-QIRCC code (R = 0.5, n = 2,000) domain redundancy without cloning the information qubits. of [139], whose performance is benchmarked against the The encoder of a 3-bit classical repetition code copies each hashing bound in Fig. 16. Such long codeword lengths are information bit thrice. Explicitly, the information bits 0 and 1 particularly detrimental in the quantum domain, because of are encoded as follows: the short relaxation and dephasing times of qubits. Explicitly, if the codewords are very long, then the qubits may deco- 0 → (000) 1 → (111). (30) here faster than they can be corrected. Hence, quantum codes relying on short block lengths are highly desirable, The encoding process of Eq. (30) does not have a quantum at least until the relaxation and dephasing times of qubits equivalent, because quantum information processing does not become sufficiently increased, as quantum-hardware matures. permit cloning. Let U be a hypothetical cloning (or copying) Furthermore, in the quest for designing the quantum coun- operation described as: terparts of the known classical codes, various EA schemes U|ψ = |ψ⊗|ψ. (31) have been proposed, which impose the additional overhead of ‘noiseless’ pre-shared qubits. This overhead must be min- Eq. (31) can be expanded as: imized for practical implementations. Overall, it remains an open challenge to holistically optimize the design trade-offs U|ψ =(α|0 + β|1) ⊗ (α|0 + β|1) depicted in Fig. 13. It would be an extremely beneficial = α2|00 + αβ|01 + αβ|10 + β2|11. (32) research objective to catalogue both the classical and quantum codes on the hypothetical pareto front of optimal solutions. Alternatively, Eq. (31) can also be evaluated by considering Explicitly, the optimal pareto front is the collection of optimal the linearity of the cloning operator. Consequently, we have: solutions in the spirit of Fig. 13, where none of the metrics can U|ψ = U(α|0 + β|1) be improved without degrading at least one of the other met- α U| β U| rics. This research could commence with a low-complexity = 0 + 0 triple-parameter optimization, including the QBER (or BER = α|00 + β|11. (33) 986 IEEE COMMUNICATIONS SURVEYS & TUTORIALS, VOL. 21, NO. 1, FIRST QUARTER 2019

Fig. 17. Transition of error correction codes from the classical to the quantum domain [3]. Encoder: Classical encoders copy the information bits. Unfortunately, no quantum cloning operator exists. Consequently, quantum codes entangle the information qubits with the auxiliary qubits, so that the information is cloned in the basis states. Channel: Classical information may experience only bit-flip errors, while qubits may experience bit-flip as well as phase-flip errors. The additional phase-flip errors of the quantum domain may be corrected by using the Hadamard basis {|+, |−}. Decoder: Classical decoders measure the received bits for estimating the transmitted information. Unfortunately, qubits cannot be measured without perturbing their superimposed quantum state. As an alternate, quantum codes rely on the PCM-based syndrome decoding, hence estimating the channel-induced error patterns without measuring the received qubits.

It can be readily seen in Eq. (32) and Eq. (33) that:

U(α|0 + β|1) = α U|0 + β U|0, (34) which violates the linearity of cloning operation. Hence, no cloning operator U exists in the quantum domain. Consequently, |ψ cannot be encoded to (|ψ⊗|ψ⊗|ψ). The 3-qubit bit-flip repetition code overcomes the cloning con- straint by cloning the basis states rather than the state |ψ, i.e., the computational basis states |0 and |1 are encoded as follows: Fig. 18. Encoding circuit of 3-qubit bit-flip repetition code, where the |0→|0≡|000, information qubit |ψ is encoded into |ψ with the help of two auxiliary qubits. |1→|1≡|111. (35)

Explicitly, two auxiliary qubits in state |0 are entangled with |ψ |ψ the information qubit |ψ with the aid of Controlled-NOT where 0 is the control qubit, while 1 is the target qubit. (CNOT) gates, as shown in the circuit of Fig. 18. CNOT rep- Consequently, the encoder of Fig. 18 replicates the compu- | | resents a two-qubit gate, which takes as its input a control tational basis states 0 and 1 three times in the encoded |ψ qubit and a target qubit. When the control qubit is in state |1, 3-qubit output , which is given by: the target qubit is flipped; otherwise, the target qubit is left |ψ⊗| ⊗2 →|ψ α| β| unchanged. More precisely, the output may be viewed as the 0 = 0 + 1 reversible counterpart operation of a classical Exclusive OR ≡ α|000 + β|111. (37) (XOR) gate; hence, the CNOT gate may be deemed to repre- sent a quantum counterpart of the classical XOR gate.10 This 2) Measurement Operation: Quantum codes have to esti- can be mathematically expressed as: mate the channel errors imposed without measuring (or observing) the received qubits. CNOT(|ψ0, |ψ1)=|ψ0⊗|ψ0 ⊕ ψ1, (36) At the receiver, the decoder of a 3-bit classical repetition code reads the received bits and decodes on the basis of 10Please note that while the classical XOR gate’s operation is irreversible, majority voting. For example, the received codeword (011) since two inputs are combined to yield a single XOR-ed output, a CNOT gate’s is decoded to 1, while (100) is decoded to 0. This requires operation is reversible, because we can reconstruct the two inputs (control and target) from the two outputs (control and target). In other words, CNOT is measuring (or observing) the received sequence, which is basically a reversible XOR gate in the classical domain. unfortunately not possible in the quantum domain. Explicitly, BABAR et al.: DUALITY OF QUANTUM AND CLASSICAL ERROR CORRECTION CODES: DESIGN PRINCIPLES AND EXAMPLES 987

TABLE IV LOOK-UP TABLE FOR THE RATE-1/3 CLASSICAL REPETITION CODE

if the received qubit (α|0 + β|1) is measured in the compu- tational basis, it will collapse to the states |0 and |1 with a Fig. 19. Decoding circuit of 3-qubit bit-flip repetition code. probability of |α|2 and |β|2, respectively. Alternatively, an (n, k) classical linear block code can be decoded using an (n − k) × n-element PCM H, so that all Explicitly, if |ψ is transmitted, then we may receive one of error-free legitimate codewords x yield: the following four codewords |ψˆ, assuming that only a single bit-flip is incurred during transmission: xHT =0. (38) α|000 + β|111 −−−−−III→ α|000 + β|111, Given a received codeword y = x + e, where e is the α|000 + β|111 −−−−−XII→ α|100 + β|011, channel-induced error vector, the associated (n − k)-bit syn- α| β| IXI α| β| , drome vector, which uniquely and unambiguously identifies 000 + 111 −−−−−→ 010 + 101 the error vector (if the number of channel-induced errors is α|000 + β|111 −−−−−IIX→ α|001 + β|110. (41) within the error correction capability of the code), is computed The syndrome computation process operates on each of the as: possible received codeword |ψˆ as follows. Firstly, if both the s = yHT =(x + e)HT = xHT + eHT = eHT . (39) first and second qubits as well as the first and third qubits remain identical, i.e., all three qubits remain identical, as in the Hence, the syndrome can be used for estimating the error case of error vector III, the auxiliary qubits remain unaltered: vector e using a pre-computed Look-Up Table (LUT). More α| β| ⊗| ⊗2 → α| β| explicitly, since an (n, k) linear block code has (n − k) par- 000 + 111 0 00000 + 11111 ity bits, we have 2(n−k) unique syndromes. Consequently, =(α|000 + β|111)|00. (42) we can estimate 2(n−k) unique n-bit error patterns, which are Secondly, when both the first and second qubits as well as pre-computed and stored in an LUT. Similarly, a 3-bit classi- the first and third qubits are different, as in the case of error cal repetition code can also be decoded using the PCM-based vector XII, both auxiliary qubits are flipped: syndrome decoding.11 The associated PCM is given by: ⊗ α|100 + β|011⊗|0 2 → α|10011 + β|01111 110 H = , (40) ≡ α| β| | . 101 ( 100 + 011 ) 11 (43) which yields a zero-valued syndrome vector for both valid Thirdly, when the first and second qubits are different, but the codewords (111) and (000), while at least one of the two syn- first and third qubits are identical, as in the case of error vector drome elements is 1 when a single bit-flip error is experienced. IXI, only the first auxiliary qubit is flipped. ⊗ The resultant LUT is given in Table IV, which records all the α|010 + β|101⊗|0 2 → α|01010 + β|10110 single bit-flip errors that may be estimated with the help of a =(α|010 + β|101)|10. (44) 3-bit classical repetition code. Intuitively, the first row of H compares the first two received bits of y. If both bits are equal, Finally, when the first and second qubits are identical, but the the associated syndrome bit is 0, while if they are different, first and third qubits are different, as in the case of error vector then the syndrome bit is 1. Similarly, the second row of H IIX, only the second auxiliary qubit is flipped. compares the first and third bit of y. ⊗ α|001 + β|110⊗|0 2 → α|00101 + β|11001 Working along similar lines, a 3-qubit bit-flip repetition code can be decoded using a syndrome decoder, which simply =(α|001 + β|110)|01. (45) compares the qubits without actually knowing their specific Then the auxiliary qubits of Eq. (42)Eq.(45) are measured values. This is achieved by using two additional auxiliary in the block M of Fig. 19 to yield the classical syndrome qubits and the CNOT gates of Eq. (36), as shown in the s, which can take one of the four possible values, i.e., 00, ‘Syndrome Processing’ block of Fig. 19. Explicitly, it may 11, 10 and 01. The syndrome s can then be used for estimat- be observed in Fig. 19 that the first auxiliary qubit is flipped, ing the error P˜ using the LUT of Fig. 19 seen in Table IV. if the first two qubits are different, while the second auxiliary Thereafter, the transmitted codeword is recovered by apply- qubit is flipped, when the first and third qubits are different. ing the recovery operation R of Fig. 19, which aims for

11 correcting the channel-induced flips based on the estimated In contrast to the conventional codeword decoding, which finds the most P˜ likely codeword, having the minimum Hamming distance, syndrome decoding error . Explicitly, in the context of the 3-qubit bit-flip rep- finds the most likely error, having the minimum . etition code, Pauli-X gates are applied during the recovery 988 IEEE COMMUNICATIONS SURVEYS & TUTORIALS, VOL. 21, NO. 1, FIRST QUARTER 2019 process for counteracting the impact of the estimated channel error patterns of Table IV. Finally, the estimated information word |ψ˜ is retrieved by feeding the recovered codeword |ψ˜ to the inverse encoder circuit, which is the same as that in Fig. 18, but operates from right to left, hence mapping the recovered encoded qubits onto the information qubits. It is pertinent to mention here that a classical repetition code is systematic in nature. Consequently, the information bit can be extracted from the received codeword without invoking an inverse encoding operation. By contrast, the information qubit of a quantum repetition code is entangled with auxil- Fig. 20. Encoding circuit of 3-qubit phase-flip repetition code, where the iary qubits and hence cannot be separated without an inverse information qubit |ψ is encoded into |ψ with the help of two auxiliary encoder. For example, if |ψ˜ = α|000 + β|111, then apply- qubits. ing the two CNOT gates of the inverse encoder of Fig. 18 yields: α|000 + β|100 =(α|0 + β|1)|00 ≡|ψ˜|00, (46) hence separating the information qubit |ψ˜ from the auxiliary qubits |00. 3) Nature of Quantum Errors: Quantum codes correct quantum bit-flip, phase-flip as well as bit-and-phase-flip errors. When the classical coded bits (000) or (111) are transmit- ted, a 0 may be flipped to a 1 and a 1 may be flipped to Fig. 21. Decoding circuit of 3-qubit phase-flip repetition code. a 0. Consequently, only discrete bit-flip errors are imposed on the transmitted codewords. By contrast, when a qubit is rather than the information qubit as follows: transmitted over the depolarizing channel of Section II-C,it may experience bit-flip, phase-flip as well as bit-and-phase |0→|0≡|+++, flip errors, as discussed in Section II. A 3-qubit phase-flip |1→|1 ≡ | − −−. (51) repetition code may be designed analogous to the bit-flip rep- etition code, since phase-flips and bit-flips only differ in their This can be achieved by using the encoding circuit of basis of operation. More specifically, bit-flips flip the compu- Fig. 20, which entangles two auxiliary qubits with the infor- tational basis {|0, |1}, while phase-flips flip the Hadamard mation qubit |ψ using CNOT and Hadamard gates. The basis {|+, |−} defined as: circuit of Fig. 20 is similar to that of the bit-flip repetition code. However, it invokes additional Hadamard gates, which |0 + |1 |+≡H|0 = √ , transform the computational basis to the Hadamard basis. 2 Consequently, |ψ is encoded as: | −| 0 1 ⊗ |− ≡ H|1 = √ , (47) |ψ⊗|0 2 →|ψ = α|0 + β|1 2 ≡ α| +++ + β| − −−. (52) where H represents a Hadamard gate acting on a single qubit and specified by the matrix [2]: Analogous to the 3-qubit bit-flip repetition decoder, the decoder of a 3-qubit phase-flip repetition code also uses two 1 11 H = √ . (48) auxiliary qubits for computing the associated 2-bit syndromes. 1 −1 2 The first syndrome compares the phase of the first and sec- Therefore, a phase-flip (Pauli-Z) switches the Hadamard basis ond qubits, while the second syndrome compares the phase states as follows: of the first and third qubits. This may be achieved using the decoding circuit of Fig. 21, which is the same as that of the Z| |−, + = 3-qubit bit-flip repetition code with the additional Hadamard Z|− = |+, (49) gates invoked for transforming the Hadamard basis back to the computational basis. In other words, we may say that while a bit-flip (Pauli-X) switches the computational basis, i.e., Hadamard gates are used at the input and output of the chan- we have: nel to transform the phase-flips to bit-flips. Hence, both bit-flip X|0 = |1, and phase-flip errors can be corrected by concatenating the 3- X|1 = |0. (50) qubit phase-flip and bit-flip repetition codes, which actually constitutes the rate-1/9 Shor code [80] capable of correcting a Hence, a 3-qubit phase-flip repetition code protects against sin- single bit-flip, or phase-flip or alternatively a bit-and-phase-flip gle phase-flip errors by replicating the Hadamard basis states error. More specifically, the information qubit is first encoded BABAR et al.: DUALITY OF QUANTUM AND CLASSICAL ERROR CORRECTION CODES: DESIGN PRINCIPLES AND EXAMPLES 989 in Hadamard basis using the mapping of Eq. (52). The resul- tant three coded qubits are then independently encoded using the bit-flip repetition code of Eq. (37).12 Hence, the basis states are mapped onto three 3-qubit blocks as follows: 1 1 |0≡√ (|000 + |111) ⊗ √ (|000 + |111) 2 2 Fig. 22. Schematic of a quantum communication system invoking a quantum 1 stabilizer code for error correction [124]. ⊗√ (|000 + |111), 2 1 1 |1≡√ (|000−|111) ⊗ √ (|000−|111) all the 2k complex coefficients [164]. Fortunately, this con- 2 2 tinuous search space is reduced to a discrete one upon the 1 ⊗ √ (|000−|111), (53) measurement of the auxiliary qubits used for computing the 2 syndrome. More specifically, although the 2k coefficients are where the three qubits within a block are the codewords of a continuous-valued, some what serendipitously, the entire con- bit-flip repetition code, while the three blocks are the result tinuum of errors can be rectified, if the code is capable of of phase-flip repetition encoding. Taking the tensor product in correcting discrete bit-flip, phase-flip as well as bit-and-phase- Eq. (53) yields: flip errors acting on the constituent qubits. For example, let us 1 assume that only a single bit-flip error may be inflicted during |0≡√ (|000000000 + |000000111 + |000111000 transmission. Then the received codeword of a 3-bit repetition 8 code can be expressed as: + |000111111 + |111000000 + |111000111 ˆ + |111111000 + |111111111), |ψ = p0III|ψ + p1XII|ψ + p2IXI|ψ + p3IIX|ψ, (56) 1 |1≡√ (|000000000−|000000111−|000111000 where p0 is the probability of error-free transmission, while 8 pi is the probability of encountering a bit-flip error on the ith + |000111111−|111000000 + |111000111 qubit. The syndrome computation process of Fig. 19 entangles + |111111000−|111111111). (54) two auxiliary qubits with |ψˆ of Eq. (56)as: ⊗ |ψ |ψˆ⊗|0 2 → p III|ψ |00 + p XII|ψ |11 Consequently, the encoded state is equivalent to: 0 1 1 IXI|ψ | IIX|ψ | , α|0 + β|1≡ √ (α + β)(|000000000 + |000111111 + p2 10 + p3 01 (57) 8 1 which collapses to one of the four superimposed states when + |111000111 + |111111000)+ √ (α − β) 8 the auxiliary qubits are measured. The resultant state can then × (|000000111 + |000111000 + |111000000 be corrected based on the specific syndrome observed. + |111111111), (55) V. S TABILIZER FORMALISM which may be decoded by concatenating the decoding circuits The family of Quantum Stabilizer Codes (QSCs) rely on of Fig. 19 and Fig. 21. Explicitly, the three 3-qubit blocks the same design principles as that of the repetition codes of of Eq. (53) are first independently decoded using the 3-qubit Section IV. In particular, QSCs rely on the PCM-based syn- bit-flip repetition decoder of Fig. 19, resulting in three infor- drome decoding of classical linear block codes, hence, finding mation qubits, which constitute the received codeword for the channel-induced error by measuring the auxiliary syn- the 3-qubit phase-flip repetition decoder. Consequently, the drome qubits, rather than by observing the received qubits. resultant three qubits are decoded using the 3-qubit phase-flip Intuitively, the stabilizer formalism [87], [88] may be inter- repetition decoder of Fig. 21. preted as the quantum-domain dual of the classical linear block Furthermore, as encapsulated in Eq. (24), the received qubit coding paradigm. Furthermore, most classical codes exploit may be in the superposition of all the possible errors. In the same basic infrastructure as that of the classical linear essence, an (n, k) classical code, designed to protect a k-bit block codes. Consequently, the stabilizer formalism provides message by encoding it into an n-bit codeword, aims for restor- a general theoretical framework for designing the quantum k ing one of the 2 valid codewords. By contrast, since a k-qubit versions of the known classical codes. In Section V-A,we k information word is completely described by 2 continuous- provide deeper insights into the duality of QSCs and classical valued complex coefficients, quantum codes have to restore linear block codes, while in Section V-B, we discuss the clas- sification of error patterns for both the QSCs as well as the 12The order of concatenation is very important. If the order of concatenation is reversed, i.e., if we invoke a bit-flip repetition code followed by a phase-flip classical linear block codes. repetition code, then the resultant quantum code encodes the basis states into:

|0→|+++⊗|+++⊗|+++, A. Stabilizer-Based Code Design |1 → | − −− ⊗ | − −− ⊗ | − −−, Fig. 22 shows the system model of a quantum communica- which constitutes a strong rate-1/9 phase-flip repetition code, but it is not tion system relying on a QSC. A classical linear block code C capable of correcting bit-flip errors. (n, k) encodes k-bit information word x into an n-bit codeword 990 IEEE COMMUNICATIONS SURVEYS & TUTORIALS, VOL. 21, NO. 1, FIRST QUARTER 2019 x with the aid of (n − k) parity bits 0n−k (initialized to zeros) as follows: − C = {x = x:0n k V}, (58) where V is an invertible encoding matrix of size (n × n). Fig. 23. of measuring the Z operator acting on the bottom Similarly, a QSC C[n, k]13 encodes a k-qubit information word qubit [2] for bit-flip correction. The top qubit is the auxiliary qubit used for |ψ computing the syndrome. The circuit on the left is more popular, while the (logical qubits) into an n-qubit codeword (physical qubits) one on the right is more suitable for implementation. |ψ with the help of (n − k) auxiliary qubits (also known as ancilla), as follows: TABLE V SINGLE-QUBIT BIT-FLIP ERRORS TOGETHER WITH THE ASSOCIATED EIGENVALUES FOR THE 3-QUBIT BIT-FLIP REPETITION CODE C = |ψ = V(|ψ⊗|0 − ) , (59) n k HAV I N G g1 = ZZI AND g2 = ZIZ where V is an n-qubit unitary encoder. Explicitly, the aux- iliary qubits of a QSC are analogous to the classical parity bits. The encoded qubits |ψ are transmitted over the quan- tum depolarizing channel of Section II-C, which imposes an n-qubit channel error vector P. The erroneous channel output |ψˆ may then be expressed as: the first and third qubits are different as in Eq. (43), then |ψˆ = P|ψ. (60) we have: ˆ Similar to the decoders of the 3-qubit bit-flip and phase-flip g1 |ψ = ZZI(α|100 + β|011) repetition codes of Fig. 19 and Fig. 21, the decoder of a QSC = −α|100−β|011 = −|ψˆ, invokes a 3-step process for correcting the transmission errors, ˆ which includes syndrome processing, error recovery (R) and g2 |ψ = ZIZ(α|100 + β|011) the inverse encoder. = −α|100−β|011 = −|ψˆ, (62) Let us now revisit the ‘syndrome processing’ block of 3-qubit bit-flip repetition code from the perspective of the sta- where both g1 as well as g2 yield an eigenvalue of −1. Recall bilizer formalism. Recall from Fig. 19 that we compute the from Eq. (38) that the PCM of a classical linear block code is first syndrome bit by comparing the first and second qubits in designed so that it yields an all-zero syndrome vector for legit- computational basis, while the second syndrome is obtained imate codewords, while yielding a non-zero syndrome vector by comparing the first and third qubits. This is equivalent to for erroneous codewords, provided the number of channel- measuring the eigenvalues14 corresponding to the 3-qubit Pauli induced errors is within the error correction capability of operators g1 = ZZI and g2 = ZIZ, which are known as the the code. Similarly, the stabilizer generators of a QSC have stabilizer generators. Explicitly, Pauli-Z based stabilizer gen- to be designed, so that they yield an eigenvalue of +1for erators are used for comparing qubits in computational basis, legitimate codewords, while resulting in an eigenvalue of −1 because they are capable of detecting errors in the compu- for corrupted codewords. Hence, in duality to the PCM H, tational basis, i.e., bit-flip errors. If the qubits, which are which completely specifies the codes space of a classical code being compared, are identical in computational basis, then C, the stabilizer generators define the code space a QSC. the Pauli-Z based stabilizer generators yield an eigenvalue Furthermore, the complete stabilizer group H of a QSC con- of +1, while if they are different, then the eigenvalue is sists of all the stabilizer generators and their products. For −1. For example, if the received codeword is a valid one, example, the stabilizer group H of the 3-qubit bit-flip repeti- implying that both the first and second qubits as well as tion code consists of the independent generators g1 and g2 as the first and third qubits are identical as in Eq. (42), then well as the product of g1 and g2, i.e., IZZ. we have: The +1 and −1 eigenvalues of Eq. (62) are mapped onto the classical syndromes 0 and 1, respectively, when the con- g |ψ = ZZI(α|000 + β|111)=|ψ, 1 stituent Z operators are realized using the quantum circuit of g2 |ψ = ZIZ(α|000 + β|111)=|ψ. (61) Fig. 23, where the circuit on the left may be deemed more pop- ular, while the one on the right is the equivalent circuit more Hence, the resultant eigenvalue is +1 for both g1 as well as suitable for implementation [2]. In both circuits of Fig. 23, g2, when a legitimate codeword is received. By contrast, if the top qubit is the auxiliary qubit used for computing the the corrupted codeword of |ψˆ = |100 + β|011 is received, syndrome, while the bottom qubit is the coded qubit sub- implying that both the first and second qubits as well as jected to the Z operator. The resultant syndromes are listed in Table V together with the associated single-qubit bit-flip 13We consistently use round brackets (.) for classical codes, while the errors, eigenvalues and the estimated error pattern Pˆ, which . square brackets [ ] are used for quantum codes. may be estimated using the syndrome decoding approach. 14The eigenvector of a linear transformation T is a non-zero vector v, which only changes by a scaling factor when T is applied, i.e., T(v)=λv.The Analogous to the 3-qubit bit-flip repetition code, the code- associated scaling factor λ is known as the eigenvalue. word of a 3-qubit phase-flip repetition code is stabilized by the BABAR et al.: DUALITY OF QUANTUM AND CLASSICAL ERROR CORRECTION CODES: DESIGN PRINCIPLES AND EXAMPLES 991

yield an eigenvalue of −1 for corrupted codewords, pro- vided the number of channel-induced errors is within the error correction capability of the stabilizer code. This is equivalent to the classical syndrome values of 0 and 1, respectively, which are the elements of the syndrome Fig. 24. Quantum circuit of measuring the X operator acting on the bottom vector of Eq. (39). Alternatively, we may say that result- qubit [2] for phase-flip correction. The top qubit is the auxiliary qubit used for P computing the syndrome. The circuit on the left is the more usual conceptual ing eigenvalue is +1, when the channel-induced error construction, while the one on the right is more suitable for implementation. commutes with the stabilizer gi , while it is −1, when the error anti-commutes with gi . This can be mathematically encapsulated as: g = XXI g = XIX generators 1 and 2 . We may notice here that |ψ, P P while Pauli-Z based stabilizer generators are invoked for bit- |ψˆ gi = gi gi = −|ψ, P −P , (65) flip detection, Pauli-X based stabilizer generators are invoked gi = gi for comparing qubits in the Hadamard basis, because they are where |ψˆ = P|ψ. The resultant eigenvalues can be capable of detecting errors in the Hadamard basis, i.e., phase- mapped onto the classical error syndrome s by invok- flip errors. The associated X operators can be implemented ing the quantum circuits of Fig. 23 and Fig. 24. Hence, using the circuit of Fig. 24. the set of stabilizers constitute the quantum counter- Recall from Section IV that Shor’s codewords consist of part of the classical PCM. However, the stabilizers must three 3-qubit blocks, so that the three qubits within each exhibit the additional commutativity property, which block constitute the codeword of a 3-qubit bit-flip repetition states that the stabilizers must be each other’s commu- code. Consequently, bit-flips may be detected by indepen- tative pairs. Explicitly, for a pair of stabilizers g and dently applying the stabilizer generators of the 3-qubit bit-flip 1 g ,wehave: repetition code to the three 3-qubit blocks, which is equivalent 2 to comparing the three qubits within each block. This results g1g2|ψ = g1|ψ = |ψ, (66) in the following six stabilizer generators: and similarly: g1 = ZZIIIIIII, g g |ψ = g |ψ = |ψ. (67) g2 = ZIZIIIIII, 2 1 2 IIIZZIIII, g3 = Hence, the commutativity criterion naturally arises, g4 = IIIZIZIII, which does not exist in the classical realm. Furthermore, H g5 = IIIIIIZZI, the associated stabilizer group , which contains the (n − k) stabilizers gi as well as all the products of g6 = IIIIIIZIZ, (63) gi , forms an Abelian subgroup of Gn . The decoder of which helps in detecting single bit-flip errors occurring in each Fig. 22 processes the syndrome of the received sequence |ψˆ 3-qubit block. By contrast, phase-flip errors may be detected with the aid of the associated stabilizers, which are by comparing the blocks using Pauli-X operators. Explicitly, implemented using auxiliary qubits. Analogous to the the phase information of a 3-qubit block is extracted by apply- decoders of the 3-qubit bit-flip and phase-flip repetition ing the XXX operator to the three qubits. For the 9-qubit codes seen in Fig. 19 and Fig. 21, respectively, the Shor’s code, which consists of three 3-qubit blocks, this may auxiliary qubits collapse to classical syndromes upon be implemented using the following two stabilizer generators: measurement, hence mapping the eigenvalues of +1 and −1 onto the classical bits 0 and 1, respectively. g7 = XXXXXXIII, The resultant classical syndrome bits are then fed to an g = XXXIIIXXX, (64) LUT or to a classical PCM-based syndrome decoder 8 for estimating the channel error vector P˜ (discussed where g compares the phase of the first two blocks, while g further in Section VI). 7 8 R R compares the phase of the first and third blocks. 2) Error Recovery ( ): The error recovery block of ˜ Based on the above discussions, the 3-step decoding process Fig. 22 recovers the potentially error-free codeword |ψ of Fig. 22 may be generalized as follows: using the estimated error pattern P˜. Naturally, if the 1) Syndrome Processing: While the code space C of a clas- number of errors exceeds the codes’ error-correction sical linear block code is defined by a PCM H having capability, the recovery process becomes flawed. Hence, (n − k) independent rows, the associated code space C its flawed corrective action actually precipitates more of a QSC is described by (n − k) independent n-qubit errors than we originally had. Pauli operators gi ,for1≤ i ≤ (n − k), which are gener- 3) Inverse Encoder: Finally, the inverse encoder of Fig. 22 ally termed as the stabilizer generators (or stabilizers in maps the recovered codeword |ψ˜ onto the estimated short). Explicitly, stabilizers are unique operators, which transmitted information word |ψ˜. More specifically, do not perturb the state of legitimate codewords, hence while an encoder maps the information words onto the yielding an eigenvalue of +1. Furthermore, stabilizers codewords, an inverse encoder works in the reverse 992 IEEE COMMUNICATIONS SURVEYS & TUTORIALS, VOL. 21, NO. 1, FIRST QUARTER 2019

direction, hence mapping the codewords onto the information words. Recall from Eq. (66) and Eq. (67) that the (n − k)sta- bilizer generators gi of a QSC always commute with each other. This implies that the constituent X, Y and Z operations must be selected so that all the resultant stabilizers commute. Explicitly, the non-Identity X, Y and Z operators intrinsically anti-commute with each other. For example, we have: Fig. 25. Error pattern classification for stabilizer codes. 01 0 −i i 0 XY = = = iZ, (68) 10 i 0 0 −i known as the centralizer (or normalizer) of the stabilizer code H H while: having the stabilizer group , which is denoted as C ( ) (or N (H)). In particular, the centralizer of an [n, k] QSC is a dual 0 −i 01 −i 0 YX = = = −iZ. (69) subspace consisting of n-tuple Pauli errors P∈G, which i 0 10 0 i n are orthogonal to all the stabilizers of the stabilizer group H. This implies that the operators XY and YX anti-commute, i.e., Furthermore, since the H is itself an Abelian group consist- we have: ing of mutually orthogonal generators, it is contained in the H⊂ H XY = −YX. (70) centralizer, i.e., we have N ( ). Recall that the stabilizer generators do not modify the state of valid codewords. This in Similarly, we can readily show that: turn implies that errors which belong to the stabilizer group, i.e., we have P∈H, do not corrupt the transmitted code- YZ = iX, ZY = −iX → YZ = −ZY words and therefore may be classified as harmless undetected ZX Y, XZ − Y → ZX −XZ. = i = i = (71) error patterns. This class of errors does not have any classical Owing to this anti-commutative nature of non-Identity Pauli counterpart. By contrast, those error patterns, which lie in the operators, the stabilizers have to be designed so that there are subspace N (H) \H, are the harmful undetected errors, which only an even number of indices having different non-Identity map one valid codeword onto another. Hence, as depicted in operators. For example, the 3-qubit Pauli operators ZZI and Fig. 25, quantum error patterns can be classified as follows: XYZ commute, because they consist of two indices having 1) Detected Errors Patterns: These error patterns fall out- different non-Identity operators. By contrast, the operators ZZI side the normalizer subspace, i.e., they satisfy P∈ and YZI anti-commute, since there is a single index, which Gn \ N (H). has different non-identity operators. 2) Harmful Undetected Error Patterns: This class of error patterns is defined as N (S) \H. B. Classification of Error Patterns 3) Harmless Undetected Errors Patterns: These error pat- terns fall in the stabilizer group H. Based on the aforementioned discussions, we may conclude The class of harmless undetected error patterns makes quan- that the stabilizer generators play the same role in quantum tum codes ‘degenerate’ [135]. More specifically, error patterns error correction as the classical PCM H in classical error P and P = g P are said to be degenerate, because they dif- correction. Explicitly, analogous to the classical PCM, stabi- i fer only by the elements of the stabilizer group, which are lizers yield syndrome bits, which in turn help in estimating harmless. Consequently, both P as well as P yield the same the quantum channel errors. More specifically, the error set output, as shown below: of a classical linear block code C having a PCM H can be P |ψ P |ψ P |ψ . classified as: [ ]=gi [ ]= gi (72) 1) Detected Error Patterns: These error patterns yield a Since gi [|ψ]=|ψ, we get: HT  non-trivial syndrome, i.e., e =0, which may be P [|ψ]=P[|ψ]. (73) corrected by the code. 2) Undetected Error Patterns: This class of error patterns This in turn implies that degenerate error patterns can be results in a trivial syndrome, i.e., eHT =0, which rectified by the same recovery operation. P IIX P P cannot be detected by the code. More specifically, an Let us consider the error patterns = and = g1 = ZZX undetected error maps the transmitted codeword onto , where g1 is the stabilizer of the 3-qubit bit-flip repetition another valid codeword. Since the resultant codeword code defined in Eq. (61). When these error patterns are applied still lies in the code space C, it does not trigger a non- to the legitimate codeword of Eq. (37), we get: zero syndrome. These undetected error patterns result IIX[α|000 + β|111]=α|001 + β|110, (74) from the limited minimum distance of the code. ZZX[α|000 + β|111]=α|001 + β|110. Analogous to the classical detected error patterns, quantum- domain detected error patterns anti-commute with at least Hence, P and P are degenerate errors, since both error one of the stabilizer generators, which results in a non-trivial patterns yield the same corrupted codeword. Furthermore, syndrome. Similarly, the quantum undetected error patterns degeneracy enhances the achievable capacity, because the commute with all the stabilizer generators, yielding an all- codewords are not corrupted by the harmless undetected zero syndrome. This commuting set of error patterns is also error patterns; hence, the impact of quantum impairments is BABAR et al.: DUALITY OF QUANTUM AND CLASSICAL ERROR CORRECTION CODES: DESIGN PRINCIPLES AND EXAMPLES 993

TABLE VI TABLE VII 2 QUANTUM-TO-CLASSICAL ISOMORPHISM (F2) ADDITION

Table IV and Table V. Similarly, the PCM of the 3-qubit phase- reduced. Equivalently, we may say that degeneracy enables a flip repetition code is: quantum code to pack more information as compared to the 000110 underlying classical design, because it can operate at a higher H = , (78) coding rate. 000101

wherewehaveg1 = XXI and g2 = XIX, while that of Shor’s VI. QUANTUM-TO-CLASSICAL ISOMORPHISM code is given in Eq. (79). ⎛ ⎞ Based on the duality of QSCs and classical linear block 110000000000000000 ⎜ ⎟ codes established in Section V, in this section we present the ⎜ ⎟ ⎜ 101000000000000000⎟ isomorphism between these two regimes, which in turn helps ⎜ ⎟ ⎜ 000110000000000000⎟ ⎜ ⎟ in constructing the quantum-domain versions of the known ⎜ 000101000000000000⎟ H ⎜ ⎟. classical codes. Explicitly, QSCs may be designed from binary = ⎜ ⎟ ⎜ 000000110000000000⎟ ⎜ ⎟ and quaternary classical codes using the quantum-to-classical ⎜ 000000101000000000⎟ ⎜ ⎟ mappings of Table VI, as detailed in Sections VI-A and VI-B, ⎝ 000000000111111000⎠ respectively. Furthermore, this quantum-to-classical isomor- 000000000111000111 phism also allows us to use the classical PCM-based syndrome (79) decoding procedures for decoding QSCs. Hence, an [n, k]QSC,having(n − k) stabilizers, can be A. Pauli-to-Binary Isomorphism characterized by a binary PCM of size (n − k) × 2n. Furthermore, the equivalent classical coding rate R can be Recall from Section V that stabilizers constitute the coun- c determined as follows: terparts of the classical PCM. Based on this duality, QSCs can − − be described using an equivalent binary PCM, which in turn 2n (n k) Rc = aids in designing quantum codes from the existing families 2n n + k of classical codes. More specifically, QSCs can be completely = characterized in the binary formalism by an equivalent binary 2n 1 k PCM H derived from the associated stabilizer generators. The = 1+ rows of H correspond to the stabilizers, while the constituent 2 n I, X, Y and Z Pauli operators of the stabilizers are mapped 1 = 1+R , (80) onto a pair of binary digits as follows: 2 Q I → (00), X → (01), Z → (10), Y → (11), where RQ is its quantum coding rate. Based on Eq. (80), the equivalent classical coding rate of the rate-1/3 quantum (75) repetition code is 2/3, while that of Shor’s rate-1/9 code is 5/9. where a binary 1 at the first index represents a Z operator, The binary formalism of Eq. (75) transforms the multi- while a binary 1 at the second index represents an X operator. plication of Pauli operators into the bit-wise addition of the The PCM H resulting from the Pauli-to-binary mapping of corresponding binary representation. For example, multiply- Eq. (75) can also be expressed as: ing the set of Pauli operators {I, X, Z, Y} with Pauli-X is equivalent to the second column of Table VII, if the Pauli oper- H =(H |H ), (76) 2 z x ators are mapped onto (F2) according to Eq. (75). Similarly, the commutative property of stabilizers in the Pauli formalism where Hz and Hx are (n − k) × n binary matrices corre- sponding to the Z and X operators, respectively. Let us recall implies that the rows of the PCM H must be orthogonal to that the 3-qubit bit-flip repetition code relied on the stabilizers each other with respect to symplectic product (also referred g = ZZI and g = ZIZ. Consequently, the associated PCM to as a twisted product) in the binary formalism. Explicitly, if 1 2 H H |H H is given by: the ith row of H is denoted as i =( zi xi ) following the notation of Eq. (76), then the commutativity of the stabilizers 110000 H = , (77) gi and gi is transformed into the symplectic product of rows 101000 Hi and Hi , which is computed as follows: where H is an all-zero matrix, since g and g do not contain x 1 2 H  H  H · H H · H . i i = zi xi + zi xi mod 2 (81) any Pauli-X operators. Furthermore, the Hz of Eq. (77)is identical to the PCM H of the classical repetition code given The resultant symplectic product yields a value of zero, if in Eq. (40), hence both yield identical syndrome patterns in the number of different non-Identity operators (X, Y or Z)in 994 IEEE COMMUNICATIONS SURVEYS & TUTORIALS, VOL. 21, NO. 1, FIRST QUARTER 2019

TABLE VIII GF(4) ADDITION

Fig. 26. Effective error P corresponding to the n-qubit Pauli error P.

TABLE IX  the stabilizers gi and gi is even; hence, satisfying the com- GF(4) MULTIPLICATION mutativity criterion. Furthermore, since all stabilizers must be commutative, the symplectic product must be zero for all rows of H, i.e., the PCM H should satisfy: H HT H HT . z x + x z =0mod2 (82)

This in turn implies that any pair of classical binary codes TABLE X GF(4) HERMITIAN INNER PRODUCT having the PCMs Hz and Hx and satisfying the symplectic product of Eq. (82) may be used for constructing a valid QSC. The symplectic product of Eq. (82) may also be exploited for computing the syndrome of a QSC in the binary domain, for example during the PCM-based syndrome decoding. More specifically, the Pauli-to-binary isomorphism of Eq. (75) trans- forms an n-qubit Pauli error P∈Gn into an effective error vector P of length 2n. Explicitly, analogous to the H of where 0, 1, ω and ω are the elements of GF(4). Furthermore, Eq. (76), the effective error vector P may be expressed as the multiplication operation in the Pauli domain is equivalent P =(Pz |Px ), where Pz and Px denote the Pauli-Z and Pauli- to the addition operation in GF(4), while the commutativ- X errors, respectively. More precisely, a 1 at the tth index of ity (symplectic product) criterion in the Pauli domain is 15 Pz denotes a Pauli-Z (phase-flip) error on the tth qubit, while equivalent to the trace inner product [88] in GF(4). The a1atthetth index of Px represents the occurrence of the associated additive and multiplicative rules of GF(4) are listed Pauli-X (bit-flip) error on the tth qubit. Similarly, the Pauli-Y in Table VIII and Table IX,16 respectively. To elaborate fur- (bit-and-phase-flip) error on the tth qubit yields a 1 at the tth ther, multiplying the Pauli operators {I, X, Z, Y} with Pauli-X index of Pz as well as Px . Finally, the syndrome of a QSC is equivalent to adding the GF(4) element 1 (correspond- can be computed in the binary formalism using the symplectic ing to Pauli-X) to each element of GF(4), as done in the product and the effective error vector P as follows: second column of Table VIII. On the other hand, the com- mutative relationship between two GF(4) elements Aˆ and Bˆ H  T H T H T , s = P = z Px + x Pz mod 2 (83) may be established with the help of the trace inner product as follows:17 where the Hz and Hx are used for correcting bit-flip and phase-flip errors, respectively, as previously discussed in the TrAˆ, Bˆ =Tr Aˆ × Bˆ =0, (85) context of 3-qubit bit-flip and phase-flip repetition codes. The resultant syndrome has either a value of 0 or 1. Thus, the where , denotes the Hermitian inner product, while Bˆ is quantum-domain syndrome processing may be carried out in the conjugate18 of Bˆ . Moreover, Tr(0) = Tr(1) = 0,while the binary domain using the PCM H and the effective error Tr(ω)=Tr(ω)=1. Explicitly, both the Hermitian inner P. This in turn implies that the quantum decoding process is product and the trace inner product between the elements of equivalent to the syndrome decoding of the equivalent classical GF(4) are tabulated in Table X and Table XI, respectively. code relying on the PCM H [164]. However, since quantum If a QSC is characterized by the classical PCM Hˆ in the codes are degenerate, as discussed in Section V, quantum quaternary domain, then the commutativity constraint of the decoding aims for estimating the most probable error coset, stabilizers gi and gi is transformed into the trace inner prod- while the classical syndrome decoding estimates the most uct of the ith and i th row of Hˆ . Explicitly, this may be probable error. 15The trace operator of GF(4) maps x onto (x + x),wherex denotes the conjugate of x [96]. B. Pauli-to-Quaternary Isomorphism 16The addition and multiplication rules for GF(p), having a prime p,are the same as the modulo p addition and multiplication, while the rules for Analogous to the Pauli-to-binary isomorphism, the Pauli- m GF(p ), having m > 1, do not follow the conventional rules for modulo m to-quaternary isomorphism facilitates the design of quantum p addition and multiplication. For example, the addition of the elements of codes from the existing classical quaternary codes. Explicitly, GF(4) is equivalent to the bitwise modulo 2 addition of the equivalent 2-bit the I, X, Y and Z Pauli operators may be transformed into patterns. Hence, Table VIII may be obtained by mapping the 2-bit patterns of Table VII onto the corresponding GF(4) elements. the elements of Galois Field GF(4) using the mapping given 17GF(4) variables are denoted with aˆon top, e.g., xˆ. 2 below: 18The conjugate operation of GF(4) is defined as x = x [96]. Consequently, conjugation has no impact on the GF(4) elements 0 and 1, I → 0, X → 1, Z → ω, Y → ω, (84) while the elements ω and ω are swapped upon taking the conjugate. BABAR et al.: DUALITY OF QUANTUM AND CLASSICAL ERROR CORRECTION CODES: DESIGN PRINCIPLES AND EXAMPLES 995

TABLE XI GF(4) TRACE INNER PRODUCT

Fig. 27. Syndrome processing block of Fig. 22.

which in turn implies that α should also be zero in Eq. (91). formulated as: Hence, for a classical GF(4)-, the Hermitian inner n product of Eq. (91) must be zero, when the trace inner product ˆ ˆ ˆ ˆ ˆ ˆ Hi  Hi =TrHi , Hi =Tr Hit × Hit =0, (86) of Eq. (92) is zero. t=1 To conclude, the stabilizers may be mapped onto the equiv- alent binary or quaternary representations, as summarized in where Hˆ it is the element in the ith row and tth column of Hˆ . Let us now prove the equivalence of Eq. (81) and Eq. (86), Table VI. These mappings in turn help in designing quantum since both these equations correspond to the commutativity codes from the existing classical codes, as discussed further H H , H in the next section. Furthermore, since a QSC can be mapped requirement. Given i =( zi xi ) and the mapping of onto an equivalent classical binary or quaternary PCM, clas- Eq. (84), Hˆ i may be expressed as: sical PCM-based syndrome decoding may be invoked during Hˆ ωH H . i = zi + xi (87) the quantum decoding process. More explicitly, the ‘syndrome Substituting Eq. (87) into Eq. (86) yields: processing’ block of Fig. 22 may be expanded, as shown in Fig. 27. The process begins with the computation of the Hˆ  Hˆ  =Tr(ωHz + Hx ), ωHz + Hx i i i i i i syndrome of the received sequence |ψˆ using the stabilizer =Tr (ωHz + Hx ) ωHz + Hx i i i i generators, which collapse to a binary 0 or 1 upon measure- =Tr H H + ωH H + ωH H + H H . ment. The binary syndrome sequence s is then fed to a classical zi zi zi xi xi zi xi xi PCM-based syndrome decoder, which operates over the equiv- (88) alent classical PCM associated with the QSC for estimating ω ω ˜ Recall that Tr(1) = 0 and Tr( )=Tr( )=1. Therefore, the equivalent channel error P˜ (or Pˆ in quaternary domain). Eq. (88) reduces to: The classical PCM-based syndrome decoder of Fig. 27 is Hˆ  Hˆ  H H H H , exactly the same decoder, which we would use for any con- i i = zi xi + xi zi (89) ventional classical code, with the exception of the following which is the same as Eq. (81). Consequently, analogous to two differences: Eq. (83), the syndrome in the quaternary domain is com- 1) In contrast to the syndrome of a classical code, which is puted as: the product of the PCM and the transpose of the chan- n nel error (HPT ), the syndrome of a quantum code is Hˆ × ˆ , si =Tr(ˆsi )=Tr it Pt (90) computed using the symplectic product of Eq. (83)(or t=1 the trace inner product of Eq. (90)). where si is the syndrome corresponding to the ith row of Hˆ 2) The conventional classical decoding aims for estimating and Pˆt is the tth element of Pˆ , which represents the error the most probable error, given the observed syndrome, inflicted on the tth qubit. while quantum decoding aims for estimating the most Any arbitrary classical quaternary linear code, which is self- probable error coset, which takes into account the orthogonal with respect to the trace inner product of Eq. (86), degeneracy of quantum codes, as discussed in Section V. can be used for constructing a QSC. Since a quaternary linear Finally, the binary-to-Pauli mapping of Eq. (75)(or code is closed under multiplication by the elements of GF(4), quaternary-to-Pauli mapping of Eq. (84)) is invoked for map- this condition reduces to satisfying the Hermitian inner prod- ping the estimated binary (or quaternary) error onto the uct, rather than the trace inner product [96]. This can be proved equivalent Pauli error P˜. as follows. Let C be a classical linear code in GF(4) having codewords VII. TAXONOMY OF STABILIZER CODES u and v. Furthermore, let us assume that: The quantum-to-classical isomorphism of Section VI pro- u, v = α + βω. (91) vides a solid theoretical framework for building quantum codes from the known classical codes, which have already found For the sake of satisfying the symplectic product, we must their way into commercial applications. Particularly, quantum have: codes can be designed from a pair of arbitrary classical binary Tru, v =0. (92) codes, if they meet the symplectic criterion, or from arbitrary classical quaternary codes, if they satisfy the Hermitian inner Since Tr(ω) = 1, Eq. (92) is only valid, when β is zero product. Continuing further our discussions, in this section in Eq. (91). Furthermore, since the code C is GF(4)-linear, we present the taxonomy of stabilizer codes with the aid of Eq. (92) leads to: Fig. 28, which is based on the structure of the underlying Tru, ωv =0, (93) equivalent classical PCM H. 996 IEEE COMMUNICATIONS SURVEYS & TUTORIALS, VOL. 21, NO. 1, FIRST QUARTER 2019

TABLE XII ⊥ UNIQUE COSETS OF C1 IN C1

⊥ ⊂ to C1 C1. Explicitly, in case of dual-containing CSS codes, C2(n, k2) is the dual code of C1(n, k1). Therefore, we have k2 =(n − k1) and the resultant dual-containing CSS codes encodes (k1 − k2)=(2k1 − n) qubits into n coded qubits. We H  H classify the remaining CSS constructions, having z = x , as non-dual-containing CSS codes. An [n, k1 − k2] CSS code, relying on the binary codes C1 ⊥ 19 and C2 , is implemented by finding the unique cosets of k1−k2 C2 in C1, so that each of the 2 superimposed state can be mapped onto a unique coset of C2 in C1. These unique cosets are in turn derived by adding (bit-wise modulo-2) each Fig. 28. Taxonomy of Stabilizer Codes (CSS: Calderbank-Shor-Steane, EA: Entanglement-Assisted). codeword of C1 to the code space of C2. More specifically, if x1 ∈ C1 and x2 ∈ C2, then the normalized addition operation A. Calderbank-Shor-Steane Codes can be formulated as: Calderbank-Shor-Steane (CSS) codes [82]Ð[84] is a class 1 |x1 + C2 = |x1 + x2. (96) of stabilizer codes constructed from a pair of binary classical |C | 2 x2∈C2 codes. Specifically, the family of CSS codes may be defined as: | | k1 An [n, k1 − k2] CSS code can be designed from the binary Since the cardinality of C1 is C1 =2 , while that of C2 | | k2 | |/| | k1−k2 linear block codes C1(n, k1) and C2(n, k2), if the code space is C2 =2 , we get C1 C2 =2 unique cosets of k1−k2 − of C1 subsumes that of C2 (C2 ⊂ C1). Furthermore, if both C2 in C1. Consequently, each of the 2 (k1 k2)-qubit ⊥ orthogonal quantum state can be mapped onto a superposition C1 as well as the dual of C2, i.e., C2 , exhibit a minimum Hamming distance of dmin, then the resultant CSS code also of the codewords of the unique coset. exhibits a minimum distance of dmin; hence, it is capable Let us now consider the construction of Steane’s [7, 1] of concurrently correcting (dmin − 1)/2 bit-flips as well as code, which is derived from the dual-containing classical (7, 4) (d − 1)/2 phase-flips. Hamming code having the PCM: min ⎛ ⎞ Explicitly, analogous to Shor’s code, a CSS code indepen- 1101100 dently corrects bit-flip and phase-flip errors. More specifically, H = ⎝1011010⎠. (97) the binary code C1 is invoked for correcting bit-flips, while 0111001 ⊥ H the code C2 is used for phase-flip correction. Hence, if z H ⊥ The PCM H of Eq. (97) yields HHT =0, hence lending itself and x are the PCMs of C1 and C2 , respectively, then the resultant CSS code has the following PCM: to constructing a dual-containing CSS code. More specifically, C is the (7, 4) Hamming code, while C is its dual code, i.e., H 0 1 2 H H |H z , C = C ⊥, having the parameters (7, 3). Since HHT =0,the =[ z x ]= 0 H (94) 2 1 x code space of C2 is contained in that of C1, i.e., we have H 0 C ⊂ C . Furthermore, both C and C ⊥ = C can correct a H z H H 2 1 1 2 1 where we have z = 0 , x = H , while z and single error. Consequently, a single-error correcting CSS code x H − × × C ⊥ C x are (n k1) n and k2 n binary matrices, respec- can be constructed by finding the unique cosets of 1 in 1 tively. Furthermore, since C2 ⊂ C1, the symplectic condition using Eq. (96). This results in two unique cosets, which are of Eq. (82) is reduced to: listed in Table XII. These two cosets together yield the code T H H . 19Assume C1 =(0, 1, 2, 3) with k1 =2and C2 =(0, 2) with k2 =1, z x =0 (95) modulo 4 addition yields following cosets:

Hence, the process of designing a QSC is reduced to finding a 0+C2 ≡ (0, 2) = C2, pair of binary codes whose PCMs conform to the symplectic 1+C2 ≡ (1, 3) = 1 + C2, criterion of Eq. (95). Since the resultant PCM of Eq. (94) 2+C2 ≡ (2, 0) = C2, − − has (n k1 + k2) rows, the quantum code encodes (k1 k2) 3+C2 ≡ (3, 1) = 1 + C2. H information qubits into n qubits. Moreover, if we have z = H , then the resultant code is called a dual-containing (or Hence, resulting in two different cosets of C2 in C1, i.e., (0, 2) and (1, 3). x Equivalently, we may say that the two unique cosets (0, 2) and (1, 3) of C2 H H T self-orthogonal) code having z z =0, which is equivalent together constitute the code space of C1. BABAR et al.: DUALITY OF QUANTUM AND CLASSICAL ERROR CORRECTION CODES: DESIGN PRINCIPLES AND EXAMPLES 997

H H classical BERs for z and x , respectively, the resultant CSS code exhibits a QBER of: x z − x z ≈ x z , QBER = pe + pe pe pe pe + pe (100) z which is equivalent to 2pe for a dual-containing CSS code H H having x = z .

B. Non-CSS Codes We observed in the previous section that CSS codes inde- pendently correct bit-flip and phase-flip errors. This in turn results in a low coding rate. By contrast, non-CSS stabilizer codes are capable of exploiting the redundancy more effi- ciently, since they jointly correct bit-flip and phase-flip errors. The PCM of a non-CSS code assumes the general structure Fig. 29. Syndrome decoder for CSS-type Quantum Codes. of Eq. (76). Consequently, a pair of binary PCMs conforming to the symplectic product criterion of Eq. (82) or a classical quaternary PCM satisfying the trace inner product of Eq. (86) space of the (7, 4) Hamming code. The two orthogonal states may be used for designing a non-CSS stabilizer code. |0 and |1 of the single qubit information word are hence Calderbank, Rains, Shor and Sloane conceived a special encoded as follows: class of non-CSS codes, called Calderbank-Rains-Shor-Sloane 1 (CRSS) codes, which are constructed from the known classical |0≡√ (|0000000 + |0111001 + |1011010 + |1100011 quaternary codes as follows [96]: 8 An [n, k] QSC can be designed in the quaternary + |1101100 + |1010101 + |0110110 + |0001111), domain from a classical self-orthogonal (under the Hermitian 1 |1≡√ (|1111111 + |1000110 + |0100101 + |0011100 inner product) GF(4)-linear block code C (n, (n − k)/2). 8 Furthermore, if the dual (also called orthogonal) code | | | | . ⊥ + 0010011 + 0101010 + 1001001 + 1110000 ) C (n, (n + k)/2) exhibits a minimum Hamming distance of (98) dmin, then the resultant non-CSS code also exhibits a mini- mum distance of dmin; hence, it is capable of concurrently In other words, |0 and |1 are the equally weighted superpo- correcting (dmin − 1)/2 bit-flips as well as (dmin − 1)/2 sitions of all the codewords of the two cosets of Table XII. phase-flips. H H Furthermore, z and x of the resultant quantum code Based on this formalism, the PCM of the resultant CRSS space are equivalent to the binary PCM of the Hamming code is characterized as: code (Eq. (97)). Hence, the associated bit-flip and phase-flip Hˆ detecting stabilizers of the [7, 1] Steane’s code are as follows: Hˆ = c , (101) ωHˆ c g1 = ZZIZZII where Hˆ is the PCM of the dual code C ⊥(n, (n +k)/2).For g = ZIZZIZI c 2 example, there exists a classical self-orthogonal GF(4)-linear IZZZIIZ ⊥ g3 = code C(5, 2), whose dual code C (5, 3) is a Hamming code g = XXIXXII having the PCM Hˆ c given by [169]: 4 g = XIXXIXI ωωωω 5 Hˆ 0 . c = ω ωωω (102) g6 = IXXXIIX. (99) 0 We may observe in Eq. (99)aswellasinEq.(94) that the Consequently, the (5, 1) quantum Hamming code can be constructed as: bit-flip and phase-flip detecting stabilizers (or equivalently ⎛ ⎞ syndromes) of a CSS-type quantum code are independent. 0 ωωωω Therefore, bit-flip and phase-flip estimation may be car- ⎜ω 0 ωωω⎟ Hˆ = ⎜ ⎟. (103) ried out independently by two separate classical syndrome ⎝01ω ω 1⎠ H H ω ω decoders using z and x , respectively, as illustrated in 101 Fig. 29. Furthermore, when the simplified decoder of Fig. 29 Hˆ is invoked, the performance of CSS codes observed in the face Using the Pauli-to-GF(4) mapping of Eq. (84), the PCM of of the depolarizing channel of Eq. (24) is isomorphic to their Eq. (103) is mapped onto the stabilizer generators listed below: performance over two independent phase-flip and bit-flip chan- g1 = IYZZY nels, where each has a marginalized depolarizing probability g = YIYZZ of 2p/3. Hence, the QBER performance of CSS codes may be 2 IXYYX approximated by adding together the BERs of the constituent g3 = x z XIXYY. binary codes. More explicitly, given that pe and pe are the g4 = (104) 998 IEEE COMMUNICATIONS SURVEYS & TUTORIALS, VOL. 21, NO. 1, FIRST QUARTER 2019

Fig. 30. System Model: Quantum communication system relying on an entanglement-assisted quantum stabilizer code.

Hence, while a single-error correcting CSS-type code has a that the pre-sharing of ebits takes place over a noiseless chan- coding rate of 1/7, a single-error correcting non-CSS code nel. Furthermore, as illustrated in Fig. 30, the transmitter exhibits an improved coding rate of 1/5. The resultant codes only utilizes the transmitter’s half of the ebits for encoding may be decoded by invoking a classical non-binary syndrome the information word |ψ into the codeword |ψ. Finally, the decoder or a binary syndrome decoder operating over the encoded information is sent over a noisy quantum channel. At binary PCM of Eq. (76), which exploit the correlation the receiver, the received noisy codeword |ψˆ is combined with between the bit-flip and phase-flip errors, hence facilitating the receiver’s half of the c ebits during the decoding process. the joint decoding of bit-flip and phase-flip errors. This in Specifically, the stabilizers of an EA-QSC jointly act on |ψˆ turn provides enhanced decoding performance, albeit at the and the receiver’s ebits for computing the syndrome vector, cost of an increased decoding complexity. which is then fed to a classical syndrome decoder for estimat- ing the error pattern P˜, as previously shown in Fig. 27.The rest of the processing at the receiver is identical to that of the C. Entanglement-Assisted Codes unassisted QSC of Fig. 22. Let us recall that QSCs may be constructed from the clas- The Bell state of Eq. (105) has unique properties, which sical binary and quaternary codes only if the constituent facilitate the mapping of a set of non-commuting generators classical codes conform to the symplectic criterion of Eq. (82). into a set of commuting generators. More explicitly, the 2- Consequently, while every QSC may have a classical coun- qubit commuting generators XTX XRX and ZTX ZRX stabilize terpart, we cannot claim that every classical code has a the state |φ+, i.e., we have: stabilizer-based quantum version. Furthermore, the stringent symplectic criterion may result in various design issues, such XTX XRX , ZTX ZRX =0. (106) as the unavoidable short cycles in QLDPC codes and the non- recursive nature of non-catastrophic QCCs. For the sake of However, the Pauli operators acting on the individual qubits overcoming these limitations, the entanglement-assisted sta- anti-commute with each other, i.e., we have: bilizer formalism of [112] and [116] was conceived, which relies on entangled qubits pre-shared with the receiver over a XTX , ZTX =0 , noiseless channel. Explicitly, the EA formalism helps in trans- XRX , ZRX  . forming a set of non-commuting Pauli generators into a set =0 (107) of commuting generators, which in turn constitute valid stabi- Therefore, if we have a pair of non-commutative generators lizer codes. Consequently, when the underlying classical codes XTX and ZTX , which only act on the transmitter’s ebit, then do not satisfy the symplectic criterion, the EA formalism is these generators can be transformed into a pair of commuting invoked for making the resultant stabilizers commutative. generators by appropriately augmenting them with an addi- Fig. 30 shows the system model of a quantum communi- tional operator acting on the receiver’s ebit. Explicitly, the cation system relying on an Entanglement-Assisted Quantum operator acting on the receiver’s ebits is specifically chosen Stabilizer Code (EA-QSC). Explicitly, an [n, k, c] EA-QSC for ensuring that the resultant 2-qubit generators have an even encodes a k-qubit information word |ψ into an n-qubit code- number of indices, which have different non-identity operators; word |ψ with the help of (n − k − c) auxiliary qubits in state hence, resolving the anti-commutativity of the initial single |0 and c pre-shared entangled qubits (ebits). Explicitly, ebits qubit operators. may be created in the Bell state |φ+, expressed as: Let us now construct an EA-QSC from two binary codes 20 |00TX RX + |11TX RX having the PCMs : |φ+ = √ , (105) ⎛ ⎞ 2 0100 ⎜0000⎟ H = ⎜ ⎟, (108) so that the first qubit is retained at the transmitter, while the z ⎝1110⎠ associated entangled qubit is sent to the receiver before actual 0111 transmission commences, for example during off-peak hours, when the channels are under-utilized. The notations TX and 20This is an arbitrary, random example only conceived for illustrating the RX in Eq. (105) are used to identify the transmitter’s and construction of EA codes from the known classical codes. The associated receiver’s half of the ebit, respectively. It is generally assumed classical/quantum code may not have good error correction capabilities. BABAR et al.: DUALITY OF QUANTUM AND CLASSICAL ERROR CORRECTION CODES: DESIGN PRINCIPLES AND EXAMPLES 999

and: code space has an odd minimum Hamming distance of dmin, ⎛ ⎞ − / 1010 hence it is capable of correcting t =(dmin 1) 2 errors. ⎜1101⎟ Furthermore, BCH codes can be both systematic as well as H = ⎜ ⎟. (109) x ⎝1001⎠ non-systematic. However, systematic BCH codes are known 1110 to outperform their non-systematic counterparts [142]. This is because they can exploit their error-detection capability for H H The PCMs z and x may be concatenated for constructing disabling the decoding operations, when this would result in a non-CSS code having: ⎛ ⎞ correcting the wrong symbols owing to having more than t 01001010 errors. In such instances, the systematic BCH decoder sim- ⎜ 00001101⎟ ply retains the systematic part of the codeword. Unfortunately, H = ⎜ ⎟. (110) ⎝ 11101001⎠ the non-systematic decoder does not have separate information 01111110 and parity segments, hence it would correct the wrong sym- bols, when it is overloaded by more than t errors. This causes Unfortunately, the PCM of Eq. (110) does not meet the sym- even more errors after decoding than we had at the channel’s plectic product criterion of Eq. (82). Furthermore, the PCM H output. may be transformed into the following non-commutative Pauli A systematic binary BCH code encodes k information bits generators using the Pauli-to-binary mapping of Eq. (75): ⎛ ⎞ into n coded bits by appending (n − k) parity bits to the block XZXI of k information bits. The parity bits are computed from the ⎜ XX I X⎟ information bits based on the generator polynomial g(x), which H = ⎜ ⎟. (111) Q ⎝ YZZX⎠ is given by: XYYZ 2 n−k g(x)=g0 + g1x + g2x + ···+ gn−k x . (113) Explicitly, the first two generators (or rows) of HQ anti- commute, while all other generators (or rows) commute with As detailed in [142] and [177], the systematic encoder oper- each other. This is because the first two generators have a ates by first shifting the information polynomial d(x)tothe single index having different non-Identity operators. In other highest order position of the codeword c(x) by multiplying (n−k) words, only the operators acting on the second qubit anti- d(x) with x and then attaching the parity segment to it. commute, while the operators individually acting on all other Explicitly, the parity symbols denoted by the polynomial p(x) qubits commute. For the sake of making the generators of are defined according to the generator polynomial g(x), so that the resulting codeword c(x) is a valid codeword. The overall Eq. (111) commutative, the first two rows of HQ may be aug- mented with a pair of anti-commuting operators, as shown systematic encoding process may be summarized as: below: (n−k) ⎛ ⎞ c(x)=x .d(x)+p(x), (114) XZXI Z ⎜ XX I XX ⎟ where p(x) is defined as: H ⎜ ⎟, Q = ⎝ YZZXI ⎠ (112) − x (n k).d(x) XYYZ I p(x)=−Rem , (115) g(x) where the operators to the left of the vertical bar (|) act on for the sake of ensuring that c(x) constitutes a valid codeword, the n-qubit transmitted codewords, while those on the right of hence yielding a zero-valued remainder upon division by the the vertical bar act on the receiver’s half of the ebits. Hence, generator polynomial g(x), i.e., we have: only a single ebit is required in this design example. c(x) x (n−k).d(x)+p(x) Rem =Rem VIII. DESIGN EXAMPLES g(x) g(x) We may conclude from the above discussions that the sta- x (n−k).d(x) p(x) bilizer formalism is a useful framework for exploiting the =Rem +Rem =0, known classical coding families. In this section, we extend our g(x) g(x) discussions to the two widely used channel coding families, (116) i.e., the BCH codes (Section VIII-A) and the convolutional since, codes (Section VIII-B), emphasizing the duality between their classical and quantum versions. p(x) Rem = p(x), (117) g(x) A. Bose-Chaudhuri-Hocquenghem Codes according to Eq. (115). The corresponding polynomial 1) Classical Bose-Chaudhuri-Hocquenghem Codes [142]: multiplications and divisions of Eq. (114) and Eq. (115), Bose-Chaudhuri-Hocquenghem (BCH) codes are classified respectively, may be carried out by low-complexity shift as maximum minimum-distance multiple-error correcting register based operations, as exemplified below. cyclic block codes. A classical BCH code denoted as The encoder of a systematic BCH code may be implemented BCH(n, k, dmin) encodes k ≥ (n − mt) information bits into using shift registers, as depicted in Fig. 31, where ⊗ denotes n-bit codewords, where n =2m − 1, so that the resultant the multiplication operation, while ⊕ is the modulo-2 addition. 1000 IEEE COMMUNICATIONS SURVEYS & TUTORIALS, VOL. 21, NO. 1, FIRST QUARTER 2019

TABLE XIII BCH(15, 11, 3) ENCODING PROCESS FOR d = 11001110001 4 5 6 10 (d(x)=1+x + x + x + x + x ), WHICH YIELDS THE CODEWORD 2 4 5 8 9 10 14 c = 101011001110001 (c(x)=x + x + x + x + x + x + x )

Fig. 31. Schematic of the systematic BCH(n, k, dmin) encoder.

Fig. 32. Encoder of systematic BCH(15, 11, 3). Fig. 32. The resultant states are tabulated in Table XIII at each time instant. 2) Furthermore, since Switch 2 is downward position for Specifically, the information bits d(x) are encoded into the the first k = 11 time instances, the coded bits of c(x) coded bits c(x) as follows: are the same as the information bits d(x). 1) Switch 1 is closed during the first k time instants (or 3) Thereafter, since Switch 1 is opened and Switch 2 is clock cycles), hence allowing the information bits d(x)to moved to the upper position, the values within the shift flow into the (n − k) shift registers according to the rules registers represent the coded bits, as demonstrated in defined by the generator polynomial g(x). Explicitly, the Table XIII. Eventually, the shift registers are returned to contents of the shift registers after the kth time instant the initial all-zero state. constitute the parity bits. Equivalently, the encoding process of Table XIII may also be 2) Concurrently, Switch 2 is in the down position, so that represented by using the state transition diagram of Fig. 33, the k information bits d(x) constitute the first k bits of which shows all possible transitions for the BCH encoder of c(x). Fig. 32. In its conceptually simplest form, the decoding relies 3) After k time instants, Switch 1 is opened, while Switch on a simple decoding table, which has a total of 215 = 32768 2 is moved to the upper position. This clears the shift entries and 211 = 2048 legitimate codewords. Since this code registers by moving their contents to the output c(x). has dmin =3, the received corrupted codeword is readily Let us consider the BCH(15, 11, 3) code having the corrected in case of a single error, but the wrong legitimate generator polynomial21: codeword is selected in case of two errors. The state transition diagram of Fig. 33 also facilitates trellis decoding [65] of BCH g =23octal codes. However, the number of trellis states increases expo- (n−k) = 10011bin, nentially with (n − k), since the trellis has a total of 2 g(x)=x 4 + x +1. (118) states. As an alternative strategy, the Berlekamp-Massey algo- rithm [56]Ð[59] and Chase algorithm [63] are widely used for The associated encoding circuit of Fig. 32 can be easily efficiently decoding BCH codes. Fig. 34 portrays the coding derived from Fig. 31 based on the generator polynomial of gain versus coding rate trend at a BER of 10−6 for different- Eq. (118). We may observe in Eq. (118) that the coefficients rate BCH codes relying on the same codeword length, i.e., can only have a value of 1 or 0. Consequently, the multiplier for n = (15, 31, 63, 127). We may observe in Fig. 34 that is replaced by a direct hard-wire connection, if the cor- the coding gain increases upon increasing the coding rate responding coefficient is 1, while no connection is made, (or equivalently increasing k) until it reaches the maximum when the coefficient is 0. Let us assume an 11-bit input value. More specifically, the maximum coding gain is typically sequence d = 11001110001, which may also be represented achieved when the coding rate is between 0.5 and 0.6. 4 5 6 10 as d(x)=1+x + x + x + x + x . The encoding process 2) Quantum Bose-Chaudhuri-Hocquenghem Codes: proceeds as follows: Quantum BCH codes [94]Ð[99] can be derived from the 1) The shift registers are initialized to the all-zero state. classical dual-containing binary BCH codes as well as self- During the first k = 11 time instances, when the Switch orthogonal quaternary BCH codes. In this section, we will 1 is closed, the input bits flow into the shift registers of detail the construction of a dual-containing BCH code, based on our discussions of Section VII-A. 21The generator polynomial g(x) is often represented by an octal number, so that when it is converted to the binary notation, the right-most bit constitutes Let us recall from Section VII-A that if C is the classi- 0 the coefficient of x , i.e., the zero-degree coefficient. cal code specified by the PCM H and having the dual code BABAR et al.: DUALITY OF QUANTUM AND CLASSICAL ERROR CORRECTION CODES: DESIGN PRINCIPLES AND EXAMPLES 1001

Fig. 34. Coding gain versus coding rate for various families of BCH codes −6 at a BER of 10 over AWGN channel [142]. Berlekamp-Massey algorithm was invoked for decoding.

The encoder of QBCH[15, 7] may be derived using the method conceived by MacKay et al. [164], which proceeds as follows: 1) The classical dual-containing PCM H is first trans- H˜ I |P formed into the matrix =[(n−k) ] using elemen- tary row operations as well as column . Explicitly, the elementary row operations include row Fig. 33. State transition diagram for BCH(15, 11, 3). permutations and addition of one row to the other. Since − × I H is an (n k) n matrix, the resultant matrix (n−k) has dimensions (n − k) × (n − k), while P is an ⊥ ⊥ − × C , whose code space is subsumed by that of C (C ⊂ C ), (n k) k binary matrix. For the PCM H of Eq. (119), H˜ H then the resultant [n, k ] dual-containing CSS code, having we have = .  k =(2k − n), maps each of the 2k superimposed states of 2) As a next step, apply row operations to P so that it is P˜ I , Q Q − × a k -qubit information word onto a unique coset of the dual reduced to =[ (n−k) ], where is an (n k) k code C ⊥ in the code space of C. The cosets of C ⊥ in C binary matrix. Therefore, we get may be obtained by adding a legitimate codeword of C to ⎛ ⎞ ⊥ 10001111010 all the codewords of C , as previously shown in Eq. (96). ⎜ ⎟ ⎜ 01000111101⎟ However, only those codewords of C generate a unique coset P˜ = . ⎝ 00100011110⎠ of C ⊥, which do not differ by an element of C ⊥. Explicitly, 00011110101 the codewords x1 and x of C are said to differ by an element ⊥ 1 (120) of C , if their bit-wise modulo-2 addition yields a codeword ⊥ ⊥ of C , i.e., x1 + x = x2, where x2 ∈ C . Consequently, 1 ⊥ 3) The associated encoder may be implemented in two such codewords of C yield the same coset of C . steps, as shown in Fig. 35. In the first step, the matrix Let us elaborate on this by constructing the single-error cor- Q acts on the second block of (n − k) = 4 auxiliary (or recting QBCH[15,7] code from the dual-containing classical parity) qubits controlled by the last k =(2k − n)=7 BCH(15, 11) code of Fig. 32, whose PCM is: information qubits, which constitute the information word. More explicitly, a Controlled NOT (CNOT) gate H = acts on the ith qubit of the second block of (n − k) ⎛ ⎞ 100011110101100 qubits, which is controlled by the jth information qubit, ⎜ 010001111010110⎟ if Q =1. This may be formulated as follows ⎜ ⎟. ij ⎝ 001000111101011⎠ (119) ⊗(n−k) ⊗(n−k) ⊗(n−k) 000111101011001 |0 |0 |q→|0 |Qq|q. (121) 1002 IEEE COMMUNICATIONS SURVEYS & TUTORIALS, VOL. 21, NO. 1, FIRST QUARTER 2019

using quantum shift registers,22 which in turn makes the QBCH codes suitable for systems having cyclic symmetries, for example circular ion traps [179]. The binary syndrome val- ues obtained by applying the stabilizers of Table XIV are then fed to a classical Berlekamp-Massey decoder, which estimates the most likely error.

B. Convolutional Codes 1) Classical Convolutional Codes: Recall that an (n, k) block code encodes each block of k information bits indepen- dently into n coded bits. By contrast, an (n, k, m) convolutional code exemplified in Fig. 36 encodes the entire information sequence into a single coded sequence. More specifically, each k-bit input is encoded into n bits, so that the encoded output at each time instant also depends on the k information bits received in the m previous time instances. The resultant convo- lutional code has a memory of m, or equivalently a constraint length of (m + 1), which is implemented using linear shift registers. Furthermore, the code is specified by n generator polynomials, which define the topology of modulo-2 gates for generating the required coded sequence. Explicitly, generator polynomials define the connectivity between the current and Fig. 35. Encoder of QBCH[15, 7] [178]. m previous input sequences, which in turn ensures that the encoded sequence is a legitimate coded sequence. TABLE XIV Let us consider the systematic (2, 1, 2) convolutional code STABILIZERS OF THE QBCH[15, 7] of Fig. 36, which is specified by the following generator polynomials:

g0(x)=1 2 g1(x)=1+x + x . (122) The generator polynomials may also be expressed as a binary vector, where each bit signifies the presence or absence of a link. Consequently, the generator polynomials of Eq. (122) mayalsobeexpressedas:

g0 = (100) C The resultant states constitute the set of codewords in , g1 = (111), (123) which do not differ by any element of C⊥ and therefore are capable of generating unique cosets of C⊥. which are seen in Fig. 36. We may observe in Eq. (123) that g0 4) The second stage adds the codewords of C⊥ to the has a single non-zero entry. This is because of the systematic codewords of C generated in the previous step. More nature of the code. By contrast, a non-systematic convolutional specifically, the second stage on its own generates the code would have more than one non-zero term. Consequently, code space of C⊥ according to the PCM H˜ .Foraclas- the polynomial g0 of a non-systematic code would impose sical code C⊥, the first (n − k) bits are the systematic more constraints on the encoded sequence, hence resulting in information bits, which can have either the value of 0 or a more powerful code. − Let us consider a 10-bit input sequence d = 0011011000, 1. Consequently, the first (n k) = 4 auxiliary qubits 2 3 5 6 undergo a Hadamard transformation for the sake of gen- which may also be represented as d(x)=x + x + x + x . erating the complete code space of the classical code C⊥. This input sequence is encoded into a 20-bit coded sequence Finally, the matrix P acts on the last k qubits controlled using the encoder of Fig. 36. The associated encoding process by the first (n − k) qubits, hence generating the code is illustrated in Table XV. More explicitly, the shift register space of C⊥. More explicitly, a CNOT gate acts on the is initialized to the all-zero state. With each clock cycle, the state of register r0 is updated with the incoming information jth qubit, which is controlled by the ith qubit, if Pij =1. The stabilizers of the QBCH[15, 7] code are constructed bit, while its previous value is shifted to the next register r1. using the PCM of Eq. (119) by replacing the 1’s with Z (or X), Furthermore, the incoming information bit di constitutes the while the 0’s are replaced with I. The resultant stabilizer gen- systematic part of the coded bit c, while the output of the erators are listed in Table XIV. Furthermore, due to the cyclic modulo-2 adder of Fig. 36 constitutes the parity part. nature of BCH codes, both the encoder of Fig. 35 as well as 22Please note that implementation of quantum circuits is beyond the scope the stabilizer generators of Table XIV can be implemented of this paper. BABAR et al.: DUALITY OF QUANTUM AND CLASSICAL ERROR CORRECTION CODES: DESIGN PRINCIPLES AND EXAMPLES 1003

Let us first elaborate on the semi-infinite block structure of convolutional codes using a (2, 1, m) classical convolutional code having the generators: (0) (1) (m) g0 = g g ...g 0 0 0 (0) (1) ... (m) . g1 = g1 g1 g1 (124)

In essence, the generator polynomials g0 and g1 describe the encoder’s impulse response functions, which are con- volved with the input sequence [d =(d0d1d2 ...)] to yield (0) (1) (2) ... the encoded bit sequences [c0 =(c0 c0 c0 )] and Fig. 36. Schematic of the systematic (2, 1, 2) convolutional encoder. (0) (1) (2) ... [c1 =(c1 c1 c1 )], respectively. This encoding process TABLE XV can be mathematically encapsulated as: SYSTEMATIC (2,1,2)CONVOLUTIONAL CODE ENCODING PROCESS FOR 2 3 5 6  d = 0011011000 (d(x)=x + x + x + x ), WHICH YIELDS THE c0 = d g0 CODEWORD c = 01001010001011000000 4 6 10 12 13 c = d  g , (125) (c(x)=x + x + x + x + x + x ) 1 1 where  represents discrete convolution (modulo 2). The convolution process of Eq. (125) may also be expressed as: m (l) (i) (0) (1) ··· (m), cj = dl−i gj = dl gj + dl−1gj + + dl−m gj i=0 (126)

where j = 0, 1, l ≥ 0 and ul−i  0 for all l < i. Finally, the pair of encoded sequences c0 and c1 are multiplexed, yielding a single encoded sequence c as follows: (0) (0) (1) (1) (2) (2) ... . c = c0 c1 c0 c1 c0 c1 (127) The encoding process of Eq. (126) can also be represented in matrix notation as follows: c = dG, (128)

23 where the generator matrix G is constructed g1 as follows : ⎛ ⎞ g(0) g(1) ... g(m) ⎜ 01 01 01 ⎟ ⎜ g(0) g(1) ... g(m) ⎟ G = ⎜ 01 01 01 ⎟, ⎜ (0) (1) ... (m)⎟ (129) ⎝ g01 g01 g01 ⎠ .. .. Fig. 37. State transition diagram for systematic (2, 1, 2) convolutional code...... Broken lines indicate legitimate transitions due to a 0-valued input, while con- tinuous lines represent a 1-valued input. Furthermore, transitions are labeled and g(i)  (g(i)g(i)). The resultant matrix G of Eq. (129) has with the coded bits (c0c1). 01 0 1 a semi-infinite length, since the input sequence d may have an Analogous to BCH codes, the encoding operation of a con- arbitrary length. Furthermore, we may observe that the ith row − volution code may also be characterized using a state transition of G is obtained by shifting the (i 1)th row to the right by diagram, as demonstrated in Fig. 37 for the (2, 1, 2) convo- (n = 2) places. When d is truncated to have a finite length of × lutional code of Fig. 36. Consequently, convolutional codes N, then the matrix G of Eq. (129)isofsize(N 2(m + N)). invoke trellis decoding techniques, for example the Viterbi [62] For a more general convolutional code, having the parameters or MAP [64] algorithm, whose decoding complexity is pro- (n, k, m), the generator matrix G can be expressed as: m ⎛ ⎞ portional to the number of trellis states 2 . G(0) G(1) ... G(m) 2) Quantum Convolutional Codes: Quantum Convolutional ⎜ ⎟ ⎜ G(0) G(1) ... G(m) ⎟ Codes (QCCs) may be designed from the classical convo- G ⎜ ⎟, = ⎝ G(0) G(1) ... G(m)⎠ lutional codes by exploiting their semi-infinite block nature. . . Explicitly, convolutional codes may be represented as lin- ...... ear block codes having a semi-infinite length [180]. This (130) equivalence in turn helps in constructing the stabilizer based counterparts of the known classical codes. 23Zeros indicate blank spaces in the matrix. 1004 IEEE COMMUNICATIONS SURVEYS & TUTORIALS, VOL. 21, NO. 1, FIRST QUARTER 2019

TABLE XVI DESIGN GUIDELINES FOR CONSTRUCTING STABILIZER CODES

G(l) where is defined⎛ as: ⎞ g(l) g(l) ... g(l) ⎜ 1,1 1,2 1,n−1⎟ ⎜ (l) (l) (l) ⎟ ⎜g , g , ... g , − ⎟ G(l) = ⎜ 2 1 2 2 2 n 1⎟. (131) ⎜ . . . ⎟ ⎝ . . . ⎠ (l) (l) ... (l) gk,1 gk,2 gk,n−1 The PCM H of a convolutional code can also be expressed as a semi-infinite matrix similar to the generator matrix G of Eq. (130), as shown below: ⎛ ⎞ H(0) ⎜ (1) (0) ⎟ ⎜ H H ⎟ Fig. 38. Semi-infinite classical PCM H having a block-band structure. ⎜ ⎟ ⎜ H(2) H(1) H(0) ⎟ ⎜ ⎟ ⎜ . . . ⎟ ⎜ . . . ⎟ H = ⎜ . . . ⎟, ⎜ (m) (m−1) (m−2) (0) ⎟ where i denotes the row index within a block, while j is for ⎜H H H ... H ⎟ × ⎜ ⎟ the block index. Furthermore, 0j n is an all-zero row-vector ⎜ H(m) H(m−1) H(m−2) ... H(0)⎟ ⎝ ⎠ × . . . of size ( j n). In duality to Eq. (133), the stabilizer group . . . H of an [n, k, m] QCC may be formulated as [167]: (132) ⊗jn H = sp gj ,i = I ⊗ g0,i , 1 ≤ i ≤ (n − k), 0 ≤ j , where H(l) is a submatrix of size an ((n − k) × n). The (134) PCM H of Eq. (132) exhibits a block-band structure, which is also illustrated in Fig. 38. More specifically, if each row where sp denotes a symplectic group. of submatrices (H(m)H(m−1)H(m−2) ...H(0)) is viewed as Let us now design a CSS-type rate-1/3 QCC [168], [169] a single block, then H has a block-band structure, so that each from a classical self-dual rate-2/3 binary convolution code block is a time-shifted version of the previous block and the having the PCM: successive blocks have m overlapping submatrices. This block- ⎛ ⎞ ... band structure, which appears after the first m blocks, may be 111100110000 H ⎝ ...⎠, expressed as: = 000111100110 ... 0j ×n , , ≤ ≤ − , ≤ , hj ,i = h0,i 1 i (n k) 0 j (133) (135) BABAR et al.: DUALITY OF QUANTUM AND CLASSICAL ERROR CORRECTION CODES: DESIGN PRINCIPLES AND EXAMPLES 1005 and a minimum distance of 3. The corresponding X and Z regime. Explicitly, unlike a classical bit, a qubit cannot be stabilizers of a CSS-type QCC may be obtained by replacing copied and it collapses to a classical bit upon measure- the 1’s of Eq. (135) with Pauli X and Z operators, respectively. ment. Furthermore, while bit flips are the only type of errors Hence, the stabilizers of the resultant [3, 1] QCC are: experienced during transmission over a classical channel, a quantum channel may inflict both bit-flips as well as phase- g , =[XXX, XII, XXI], (136) 0 1 flips. Therefore, it is not feasible to directly map classical g0,2 =[ZZZ, ZII, ZZI], (137) codes onto their quantum counterparts. Nevertheless, quan- which can correct a single error. The associated stabilizer tum codes may be designed from the existing classical codes group H may be constructed using Eq. (134). by exploiting the subtle similarities between these two cod- Next, we design a non-CSS, or more precisely CRSS, QCC ing regimes. In particular, as detailed in Section II, quantum given by Forney in [168] and [169]. It is constructed from decoherence may be modeled using the quantum depolariz- the classical rate-2/3 quaternary convolutional code having the ing channel, which is deemed equivalent to a pair of binary PCM: symmetric channels, or more specifically to a classical 4-ary ⎛ ⎞ channel. This similarity has helped researchers to develop the ... 1111 w w¯ 00 0 quantum versions of the known classical codes, as evident H ⎝ ...⎠, = 00011 11 w w¯ from our survey of Section III. For the sake of providing ... deeper insights into the transition from classical to quantum (138) coding theory, we started our discussions in Section IV with a which is self-orthogonal. The stabilizers of the corresponding simple repetition code, which brought forth three fundamental [3, 1] QCC may be constructed using Eq. (101). Explicitly, the design principles: • The copying operation of classical codes is equivalent to stabilizers g0,i ,for1≤ i ≤ 2, are obtained by multiplying the H of Eq. (138) with the GF(4) elements w and w¯ , and mapping quantum entanglement; the resultant GF(4) elements onto the Pauli operators. Hence, • Measurement of a qubit may be circumvented by invok- the resultant stabilizers are: ing the classical syndrome decoding techniques; • Phase-flips may be corrected by using the Hadamard g0,1 =(XXX, XZY), (139) basis. g0,2 =(ZZZ, ZYX). (140) Based on these design principles, we detailed the stabilizer formalism in Section V, which is in essence the quantum- Analogous to other stabilizer codes, the binary syndrome domain counterpart of classical linear block codes. Since values obtained using the stabilizers of a QCC are fed to a most of the classical codes rely on the basic construction classical syndrome decoder. However, classical convolutional of linear block codes, the stabilizer formalism has helped codes generally employ either the Viterbi [62]ortheMAP[64] researchers to build on most of the known families of classi- decoding algorithm operating over a code trellis for the sake cal codes. In Section VI, we detailed the equivalence between of estimating the most likely codeword. By contrast, QCCs the quantum and classical parity check matrices, focusing invoke the syndrome-based error trellis [181]Ð[185] for esti- specifically on the Pauli-to-binary isomorphism as well as mating the most likely error pattern rather than the most likely on the Pauli-to-quaternary isomorphism. The Pauli-to-binary codeword. Explicitly, unlike the classic trellis of a convolu- isomorphism helps in designing quantum codes from arbi- tional code seen in Fig. 37, which is constructed using the trary classical binary codes, if they meet the symplectic encoding circuit, syndrome-based trellis is constructed using product criterion, while the Pauli-to-quaternary isomorphism the PCM H of Eq. (132). Furthermore, the conventional trel- allows us to harness arbitrary classical quaternary codes, lis, for example the one obtained using the state transition if they satisfy the Hermitian inner product. Furthermore, diagram of Fig. 37, is known as a code trellis, because each based on this isomorphism, we presented the taxonomy of path of it is a valid codeword. By contrast, each path of stabilizer codes in Section VII, namely the dual-containing the error trellis is a legitimate error sequence for a given and non-dual-containing Calderbank-Shor-Steane (CSS) codes observed syndrome. Therefore, a code trellis is used for code- non-CSS codes and entanglement-assisted codes, which are word decoding, while an error trellis is used for syndrome summarized in Table XVI. Finally, in Section VIII, we applied decoding. However, both trellis representations are equivalent, our discussions to a pair of popular code families of the classi- since every path in the error trellis corresponds to a path in cal world, namely the BCH codes and the convolutional codes, the code trellis. Furthermore, a degenerate Viterbi decoding for designing their quantum counterparts. algorithm was also conceived for QCCs in [135], which takes into account degenerate quantum errors, hence improving the decoding process. REFERENCES [1] P. A. Dirac, The Principles of Quantum Mechanics. London, U.K.: IX. CONCLUSION &DESIGN GUIDELINES Oxford Univ., 1982. [2] M. A. Nielsen and I. L. Chuang, Quantum Computation and QECCs are essential for rectifying the undesirable pertur- Quantum Information. Cambridge, U.K.: Cambridge Univ. Press, bations resulting from quantum decoherence. Unfortunately, 2000. [3] Z. Babar, P. Botsinis, D. Alanis, S. X. Ng, and L. Hanzo, “The road the well-developed classical coding theory, which has evolved from classical to quantum codes: A hashing bound approaching design over seven decades, cannot be directly applied to the quantum procedure,” IEEE Access, vol. 3, pp. 146Ð176, 2015. 1006 IEEE COMMUNICATIONS SURVEYS & TUTORIALS, VOL. 21, NO. 1, FIRST QUARTER 2019

[4] D. Deutsch, “Quantum theory, the church-turing principle and the uni- [28] S. Muralidharan et al., “Optimal architectures for long distance quan- versal quantum computer,” Proc. Roy. Soc. London A Math. Phys. Eng. tum communication,” Sci. Rep., vol. 6, Feb. 2016, Art. no. 20463. Sci., vol. 400, no. 1818, pp. 97Ð117, 1985. [Online]. Available: http://dx.doi.org/10.1038/srep20463 [5] D. Deutsch and R. Jozsa, “Rapid solution of problems by quan- [29] M. Takeoka, S. Guha, and M. M. Wilde, “Fundamental rate- tum computation,” Proc. Roy. Soc. London A Math. Phys. Eng. Sci., loss tradeoff for optical quantum key distribution,” Nat. vol. 439, no. 1907, pp. 553Ð558, 1992. Commun., vol. 5, p. 5235, Oct. 2014. [Online]. Available: [6] P. W. Shor, “Algorithms for quantum computation: Discrete loga- http://dx.doi.org/10.1038/ncomms6235 rithms and factoring,” in Proc. 35th Annu. Symp. Found. Comput. [30] Z. Babar, S. X. Ng, and L. Hanzo, “Near-capacity code design for Sci., Santa Fe, NM, USA, 1994, pp. 124Ð134. [Online]. Available: entanglement-assisted classical communication over quantum depolar- http://portal.acm.org/citation.cfm?id=1398518.1399018 izing channels,” IEEE Trans. Commun., vol. 61, no. 12, pp. 4801Ð4807, [7] L. K. Grover, “A fast quantum mechanical algorithm for database Dec. 2013. search,” in Proc. 28th Annu. ACM Symp. Theory Comput. (STOC), [31] Z. Babar, S. X. Ng, and L. Hanzo, “EXIT-chart aided code design Philadelphia, PA, USA, 1996, pp. 212Ð219. [Online]. Available: for symbol-based entanglement-assisted classical communication over http://doi.acm.org/10.1145/237814.237866 quantum channels,” in Proc. IEEE Veh. Technol. Conf. (VTC Fall), [8] M. Born, The Born-Einstein Letters. New York, NY, USA: Walker, Vancouver, BC, Canada, Sep. 2014, pp. 1Ð5. 1971. [32] C. H. Bennett and S. J. Wiesner, “Communication via one- and [9] P. Botsinis, D. Alanis, Z. Babar, S. X. Ng, and L. Hanzo, “Noncoherent two-particle operators on EinsteinÐPodolskyÐRosen states,” Phys. Rev. quantum multiple symbol differential detection for wireless systems,” Lett., vol. 69, no. 20, pp. 2881Ð2884, 1992. [Online]. Available: IEEE Access, vol. 3, pp. 569Ð598, 2015. http://dx.doi.org/%7B10.1103/PhysRevLett.69.2881%7D [10] P. Botsinis et al., “Quantum-aided multi-user transmission in [33] G. Brassard and L. Salvail, Secret-Key Reconciliation by non-orthogonal multiple access systems,” IEEE Access,vol.4, Public Discussion. Berlin, Heidelberg: Springer, 1994, pp. 7402Ð7424, 2016. pp. 410Ð423. [11] D. Alanis, P. Botsinis, Z. Babar, S. X. Ng, and L. Hanzo, “Non- [34] W. T. Buttler et al., “Fast, efficient error reconciliation for dominated quantum iterative routing optimization for wireless multihop ,” Phys. Rev. A, vol. 67, May 2003, networks,” IEEE Access, vol. 3, pp. 1704Ð1728, 2015. Art. no. 052303. [Online]. Available: http://link.aps.org/ [12] D. Alanis et al., “Quantum-assisted joint multi-objective routing and doi/10.1103/PhysRevA.67.052303 load balancing for socially-aware networks,” IEEE Access,vol.4, [35] D. G. Cory et al., “Experimental quantum error correction,” Phys. pp. 9993Ð10028, 2016. Rev. Lett., vol. 81, pp. 2152Ð2155, Sep. 1998. [Online]. Available: [13] T. J. Hastie, R. J. Tibshirani, and J. H. Friedman, The http://link.aps.org/doi/10.1103/PhysRevLett.81.2152 Elements of Statistical Learning: Data Mining, Inference, and [36] M. D. Reed et al., “Realization of three-qubit quantum error Prediction. New York, NY, USA: Springer, 2009. [Online]. Available: correction with superconducting circuits,” Nature, vol. 482, http://opac.inria.fr/record=b1127878 no. 7385, pp. 382Ð385, Feb. 2012. [Online]. Available: [14] J. Lu, G. Wang, and P. Moulin, “Human identity and gender recognition http://dx.doi.org/10.1038/nature10786 from gait sequences with arbitrary walking directions,” IEEE Trans. Inf. [37] G. Arrad, Y. Vinkler, D. Aharonov, and A. Retzker, “Increasing Forensics Security, vol. 9, no. 1, pp. 51Ð61, Jan. 2014. sensing resolution with error correction,” Phys. Rev. Lett., [15] D. S. Matovski, M. S. Nixon, S. Mahmoodi, and J. N. Carter, “The vol. 112, no. 15, Apr. 2014, Art. no. 150801. [Online]. Available: effect of time on gait recognition performance,” IEEE Trans. Inf. http://link.aps.org/doi/10.1103/PhysRevLett.112.150801 Forensics Security, vol. 7, no. 2, pp. 543Ð552, Apr. 2012. [38] I. L. Chuang, D. W. Leung, and Y. Yamamoto, “Bosonic quan- [16] S. Imre and F. Balazs, Quantum Computing and Communications: An tum codes for amplitude damping,” Phys. Rev. A, vol. 56, Engineering Approach. Hoboken, NJ, USA: Wiley, 2005. pp. 1114Ð1125, Aug. 1997. [Online]. Available: http://link.aps.org/ [17] S. Wiesner, “Conjugate coding,” SIGACT News, vol. 15, no. 1, doi/10.1103/PhysRevA.56.1114 pp. 78Ð88, Jan. 1983. [Online]. Available: http://doi.acm.org/ [39] J. Preskill, Lecture Notes for Physics 229: Quantum Information and 10.1145/1008908.1008920 Computation, vol. 16, California Inst. Technol., 1998. [18] C. H. Bennett and G. Brassard, “Quantum cryptography: Public key [40] J. Ghosh, A. G. Fowler, and M. R. Geller, “Surface code with deco- distribution and coin tossing,” in Proc. IEEE Int. Conf. Comput. Syst. herence: An analysis of three superconducting architectures,” Phys. Signal Process., 1984, pp. 175Ð179. Rev. A, vol. 86, Dec. 2012, Art. no. 062318. [Online]. Available: [19] A. Beige, B.-G. Englert, C. Kurtsiefer, and H. Weinfurter, “Secure http://link.aps.org/doi/10.1103/PhysRevA.86.062318 communication with single-photon two-qubit states,” J. Phys. A Math. [41] P. K. Sarvepalli, A. Klappenecker, and M. Rötteler, “Asymmetric quan- Gen., vol. 35, no. 28, Jul. 2002, Art. no. L407. [Online]. Available: tum codes: Constructions, bounds and performance,” Proc. Roy. Soc. http://stacks.iop.org/0305-4470/35/i=28/a=103 London A Math. Phys. Eng. Sci., vol. 465, no. 2105, pp. 1645Ð1672, [20] K. Boström and T. Felbinger, “Deterministic secure direct 2009. [Online]. Available: http://rspa.royalsocietypublishing.org/ communication using entanglement,” Phys. Rev. Lett., vol. 89, content/465/2105/1645 Oct. 2002, Art. no. 187902. [Online]. Available: http://link.aps.org/ doi/10.1103/PhysRevLett.89.187902 [42] L. M. K. Vandersypen et al., “Experimental realization of Shor’s quan- Nature [21] C. Wang, F.-G. Deng, Y.-S. Li, X.-S. Liu, and G. L. Long, “Quantum tum factoring algorithm using nuclear magnetic resonance,” , secure direct communication with high-dimension quantum superdense vol. 414, no. 6866, pp. 883Ð887, 2001. coding,” Phys.Rev.A, vol. 71, Apr. 2005, Art. no. 044305. [Online]. [43] H. V. Nguyen et al., “EXIT-chart aided quantum code design improves Available: http://link.aps.org/doi/10.1103/PhysRevA.71.044305 the normalised throughput of realistic quantum devices,” IEEE Access, [22] R. A. Malaney, “Location-dependent communications using vol. 4, pp. 10194Ð10209, 2016. quantum entanglement,” Phys.Rev.A, vol. 81, Apr. 2010, [44] C. Shannon, “A mathematical theory of communication,” Bell Syst. Art. no. 042319. [Online]. Available: http://link.aps.org/doi/10.1103/ Tech. J., vol. 27, no. 3, pp. 379Ð423, 1948. PhysRevA.81.042319 [45] R. W. Hamming, “Error detecting and error correcting codes,” Bell [23] R. Malaney, “The quantum car,” IEEE Wireless Commun. Lett.,vol.5, Labs Tech. J., vol. 29, no. 2, pp. 147Ð160, Apr. 1950. no. 6, pp. 624Ð627, Dec. 2016. [46] I. Reed, “A class of multiple-error-correcting codes and the decoding [24] R. Malaney, “Quantum geo-encryption,” in Proc. IEEE scheme,” Trans. IRE Prof. Group Inf. Theory, vol. 4, no. 4, pp. 38Ð49, Glob. Commun. Conf. (GLOBECOM), Dec. 2016, pp. 1Ð6, Sep. 1954. doi: 10.1109/GLOCOM.2016.7842191. [47] D. E. Muller, “Application of Boolean algebra to switching circuit [25] H. J. Kimble, “The quantum Internet,” Nature, vol. 453, design and to error detection,” Trans. IRE Prof. Group Electron. no. 7198, pp. 1023Ð1030, Jun. 2008. [Online]. Available: Comput., vol. EC-3, no. 3, pp. 6Ð12, Sep. 1954. http://dx.doi.org/10.1038/nature07127 [48] R. Silverman and M. Balser, “Coding for constant-data-rate systems,” [26] L. Jiang, J. M. Taylor, A. S. S¿rensen, and M. D. Lukin, “Distributed Trans. IRE Prof. Group Inf. Theory, vol. 4, no. 4, pp. 50Ð63, Sep. 1954. quantum computation based on small quantum registers,” Phys. [49] P. Elias, “Coding for noisy channels,” in IRE International Rev. A, vol. 76, Dec. 2007, Art. no. 062323. [Online]. Available: Convention Record. New York, NY, USA: Institute, 1955, http://link.aps.org/doi/10.1103/PhysRevA.76.062323 pp. 37Ð46. [27] C. Monroe et al., “Large-scale modular quantum-computer archi- [50] E. Prange, Cyclic Error-Correcting Codes in Two Symbols. Cambridge, tecture with atomic memory and photonic interconnects,” Phys. MA, USA: Air Force Cambridge Res. Center, 1957. Rev. A, vol. 89, Feb. 2014, Art. no. 022317. [Online]. Available: [51] A. Hocquenghem, “Codes Correcteurs d’Erreurs,” Chiffres (Paris), http://link.aps.org/doi/10.1103/PhysRevA.89.022317 vol. 2, pp. 147Ð156, Sep. 1959. BABAR et al.: DUALITY OF QUANTUM AND CLASSICAL ERROR CORRECTION CODES: DESIGN PRINCIPLES AND EXAMPLES 1007

[52] R. C. Bose and D. K. Ray-Chaudhuri, “On a class of error correcting [79] D. J. C. MacKay and R. M. Neal, “Near Shannon limit performance binary group codes,” Inf. Control, vol. 3, no. 1, pp. 68Ð79, 1960. of low density parity check codes,” Electron. Lett., vol. 32, no. 18, [53] I. S. Reed and G. Solomon, “Polynomial codes over certain finite p. 1645, Aug. 1996. fields,” J. Soc. Ind. Appl. Math., vol. 8, no. 2, pp. 300Ð304, [80] P. W. Shor, “Scheme for reducing decoherence in quantum computer 1960. memory,” Phys.Rev.A, vol. 52, no. 4, pp. R2493ÐR2496, Oct. 1995. [54] D. Gorenstein and N. Zierler, “A class of error-correcting codes in [Online]. Available: http://dx.doi.org/10.1103/PhysRevA.52.R2493 m p symbols,” J. Soc. Ind. Appl. Math., vol. 9, no. 2, pp. 207Ð214, [81] J. Hagenauer, E. Offer, and L. Papke, “Iterative decoding of binary 1961. block and convolutional codes,” IEEE Trans. Inf. Theory, vol. 42, no. 2, [55] R. Gallager, “Low-density parity-check codes,” IRE Trans. Inf. Theory, pp. 429Ð445, Mar. 1996. vol. 8, no. 1, pp. 21Ð28, Jan. 1962. [82] A. Steane, “Multiple-particle interference and quantum error correc- [56] E. Berlekamp, “On decoding binary BoseÐChadhuriÐHocquenghem tion,” Roy. Soc. London Proc. A, vol. 452, no. 1954, pp. 2551Ð2577, codes,” IEEE Trans. Inf. Theory, vol. 11, no. 4, pp. 577Ð579, Oct. 1965. Nov. 1995. [57] E. R. Berlekamp, Algebraic Coding Theory. New York, NY, USA: [83] A. R. Calderbank and P. W. Shor, “Good quantum error-correcting McGraw-Hill, 1968. codes exist,” Phys.Rev.A, vol. 54, no. 2, pp. 1098Ð1105, Aug. 1996. [58] J. Massey, “Step-by-step decoding of the BoseÐChaudhuriÐ [84] A. M. Steane, “Error correcting codes in quantum theory,” Phys. Rev. Hocquenghem codes,” IEEE Trans. Inf. Theory, vol. 11, no. 4, Lett., vol. 77, no. 5, pp. 793Ð797, Jul. 1996. pp. 580Ð585, Oct. 1965. [85] C. H. Bennett, D. P. DiVincenzo, J. A. Smolin, and W. K. Wootters, [59] J. Massey, “Shift-register synthesis and BCH decoding,” IEEE Trans. “Mixed-state entanglement and quantum error correction,” Phys. Rev. Inf. Theory, vol. IT-15, no. 1, pp. 122Ð127, Jan. 1969. A, vol. 54, no. 5, pp. 3824Ð3851, Nov. 1996. [Online]. Available: [60] R. W. Watson and C. W. Hastings, “Self-checked computation using http://link.aps.org/doi/10.1103/PhysRevA.54.3824 residue arithmetic,” Proc. IEEE, vol. 54, no. 12, pp. 1920Ð1931, [86] R. Laflamme, C. Miquel, J. P. Paz, and W. H. Zurek, Dec. 1966. “Perfect quantum error correcting code,” Phys. Rev. Lett., [61] N. S. Szabo and R. I. Tanaka, Residue Arithmetic and Its Applications vol. 77, no. 1, pp. 198Ð201, Jul. 1996. [Online]. Available: to Computer Technology. New York, NY, USA: McGraw-Hill, 1967. http://link.aps.org/doi/10.1103/PhysRevLett.77.198 [62] A. Viterbi, “Error bounds for convolutional codes and an asymptotically [87] D. Gottesman, “Class of quantum error-correcting codes saturat- optimum decoding algorithm,” IEEE Trans. Inf. Theory, vol. IT-13, ing the quantum Hamming bound,” Phys.Rev.A, vol. 54, no. 3, no. 2, pp. 260Ð269, Apr. 1967. pp. 1862Ð1868, Sep. 1996. [63] D. Chase, “Class of algorithms for decoding block codes with channel [88] D. Gottesman, “Stabilizer codes and quantum error correction,” Ph.D. measurement information,” IEEE Trans. Inf. Theory, vol. IT-18, no. 1, dissertation, California Inst. Technol., Pasadena, CA, USA, 1997. pp. 170Ð182, Jan. 1972. [89] M. G. Luby, M. Mitzenmacher, M. A. Shokrollahi, D. A. Spielman, [64] L. Bahl, J. Cocke, F. Jelinek, and J. Raviv, “Optimal decoding of linear and V. Stemann, “Practical loss-resilient codes,” in Proc. 29th Annu. codes for minimizing symbol error rate (corresp.),” IEEE Trans. Inf. ACM Symp. Theory Comput., El Paso, TX, USA, 1997, pp. 150Ð159. Theory, vol. IT-20, no. 2, pp. 284Ð287, Mar. 1974. [90] T. J. Richardson, M. A. Shokrollahi, and R. L. Urbanke, “Design of [65] J. Wolf, “Efficient maximum likelihood decoding of linear block codes capacity-approaching irregular low-density parity-check codes,” IEEE using a trellis,” IEEE Trans. Inf. Theory, vol. IT-24, no. 1, pp. 76Ð80, Trans. Inf. Theory, vol. 47, no. 2, pp. 619Ð637, Feb. 2001. Jan. 1978. [91] H. Nickl, J. Hagenauer, and F. Burkert, “Approaching Shannon’s capac- [66] G. Ungerboeck, “Channel coding with multilevel/phase signals,” IEEE ity limit by 0.2 dB using simple Hamming codes,” IEEE Commun. Trans. Inf. Theory, vol. IT-28, no. 1, pp. 55Ð67, Jan. 1982. Lett., vol. 1, no. 5, pp. 130Ð132, Sep. 1997. [67] G. Ungerboeck, “Trellis-coded modulation with redundant signal sets [92] X. Li and J. A. Ritcey, “Bit-interleaved coded modulation with iterative part I: Introduction,” IEEE Commun. Mag., vol. CM-25, no. 2, decoding,” IEEE Commun. Lett., vol. 1, no. 6, pp. 169Ð171, Nov. 1997. pp. 5Ð11, Feb. 1987. [93] S. Lloyd, “Capacity of the noisy quantum channel,” Phys. [68] G. Ungerboeck, “Trellis-coded modulation with redundant signal sets Rev. A, vol. 55, pp. 1613Ð1622, Mar 1997. [Online]. part II: State of the art,” IEEE Commun. Mag., vol. CM-25, no. 2, Available: http://link.aps.org/doi/10.1103/PhysRevA.55.1613 pp. 12Ð21, Feb. 1987. [94] A. M. Steane, “Simple quantum error-correcting codes,” Phys.Rev.A, [69] J. Hagenauer and P. Hoeher, “A Viterbi algorithm with soft-decision vol. 54, no. 6, pp. 4741Ð4751, 1996. outputs and its applications,” in Proc. IEEE Glob. Telecommun. Conf. [95] M. Grassl, T. Beth, and T. Pellizzari, “Codes for the quantum era- (GLOBECOM), 1989, pp. 1680Ð1686. sure channel,” Phys.Rev.A, vol. 56, pp. 33Ð38, Jul. 1997. [Online]. [70] W. Koch and A. Baier, “Optimum and sub-optimum detection of Available: http://link.aps.org/doi/10.1103/PhysRevA.56.33 coded data disturbed by time-varying intersymbol interference (appli- [96] A. R. Calderbank, E. M. Rains, P. M. Shor, and N. J. A. Sloane, cable to digital mobile radio receivers),” in Proc. IEEE Glob. “Quantum error correction via codes over GF(4),” IEEE Trans. Inf. Telecommun. Conf. (GLOBECOM), San Diego, CA, USA, 1990, Theory, vol. 44, no. 4, pp. 1369Ð1387, Jul. 1998. pp. 1679Ð1684. [97] M. Grassl and T. Beth, “Quantum BCH codes,” in Proc. Int. Symp. [71] E. Zevahi, “8-PSK trellis codes for a Rayleigh channel,” IEEE Trans. Theor. Elect. Eng. Magdeburg, Oct. 1999, pp. 207Ð212. [Online]. Commun., vol. 40, no. 5, pp. 873Ð884, May 1992. Available: http://arxiv.org/abs/quant-ph/9910060 [72] G. Caire, G. Taricco, and E. Biglieri, “Bit-interleaved coded modula- [98] A. M. Steane, “Enlargement of CalderbankÐShorÐSteane quantum tion,” IEEE Trans. Inf. Theory, vol. 44, no. 3, pp. 927Ð946, May 1998. codes,” IEEE Trans. Inf. Theory, vol. 45, no. 7, pp. 2492Ð2495, [73] C. Berrou, A. Glavieux, and P. Thitimajshima, “Near Shannon limit Nov. 1999. error-correcting coding and decoding: Turbo-codes. 1,” in Proc. Tech. [99] L. Xiaoyan, “Quantum cyclic and constacyclic codes,” IEEE Trans. Inf. Program IEEE Int. Conf. Commun. (ICC), vol. 2. Geneva, Switzerland, Theory, vol. 50, no. 3, pp. 547Ð549, Mar. 2004. May 1993, pp. 1064Ð1070. [100] A. Y. Kitaev, “Quantum computations: Algorithms and error correc- [74] C. Berrou and A. Glavieux, “Near optimum error correcting coding tion,” Russ. Math. Surveys, vol. 52, no. 6, pp. 1191Ð1249, 1997. and decoding: Turbo-codes,” IEEE Trans. Commun., vol. 44, no. 10, [101] A. Y. Kitaev, “Fault-tolerant quantum computation by Anyons,” Ann. pp. 1261Ð1271, Oct. 1996. Phys., vol. 303, no. 1, pp. 2Ð30, 2003. [75] R. Pyndiah, A. Glavieux, A. Picart, and S. Jacq, “Near optimum [102] K. Fujii, Quantum Computation With Topological Codes: From Qubit decoding of product codes,” in Proc. IEEE Glob. Telecommun. Conf. to Topological Fault-Tolerance, vol. 8. Singapore: Springer, 2015. (GLOBECOM), San Francisco, CA, USA, 1994, pp. 339Ð343. [103] P. Robertson and T. Worz, “Bandwidth-efficient turbo trellis-coded [76] R. M. Pyndiah, “Near-optimum decoding of product codes: Block modulation using punctured component codes,” IEEE J. Sel. Areas turbo codes,” IEEE Trans. Commun., vol. 46, no. 8, pp. 1003Ð1010, Commun., vol. 16, no. 2, pp. 206Ð218, Feb. 1998. Aug. 1998. [104] A. J. Felstrom and K. S. Zigangirov, “Time-varying periodic convo- [77] P. Robertson, E. Villebrun, and P. Hoeher, “A comparison of optimal lutional codes with low-density parity-check matrix,” IEEE Trans. Inf. and sub-optimal map decoding algorithms operating in the log domain,” Theory, vol. 45, no. 6, pp. 2181Ð2191, Sep. 1999. in Proc. IEEE Int. Conf. Commun. (ICC), vol. 2. Seattle, WA, USA, [105] O. F. Acikel and W. E. Ryan, “Punctured turbo-codes for BPSK/QPSK 1995, pp. 1009Ð1013. channels,” IEEE Trans. Commun., vol. 47, no. 9, pp. 1315Ð1323, [78] D. J. C. MacKay and R. M. Neal, “Good codes based on very sparse Sep. 1999. matrices,” Cryptography and Coding. Berlin, Germany: Springer, 1995, [106] A. M. Steane, “Quantum ReedÐMuller codes,” IEEE Trans. Inf. Theory, pp. 100Ð111. vol. 45, no. 5, pp. 1701Ð1703, Jul. 1999. 1008 IEEE COMMUNICATIONS SURVEYS & TUTORIALS, VOL. 21, NO. 1, FIRST QUARTER 2019

[107] M. Grassl, W. Geiselmann, and T. Beth, “Quantum ReedÐSolomon [132] M. M. Wilde and S. Guha, “Polar codes for classical-quantum codes,” in Proc. Appl. Algebra Algebraic Algorithms Error Correcting channels,” IEEE Trans. Inf. Theory, vol. 59, no. 2, pp. 1175Ð1187, Codes (AAECC), 1999, pp. 231Ð244. Feb. 2013. [108] D. Divsalar, S. Dolinar, and F. Pollara, “Serial concatenated trel- [133] M. M. Wilde and S. Guha, “Polar codes for degradable quantum lis coded modulation with rate-1 inner code,” in Proc. IEEE Glob. channels,” IEEE Trans. Inf. Theory, vol. 59, no. 7, pp. 4718Ð4729, Telecommun. Conf., San Francisco, CA, USA, Nov. 2000, pp. 777Ð782. Jul. 2013. [109] S. T. Brink, “Convergence behavior of iteratively decoded paral- [134] J. M. Renes, F. Dupuis, and R. Renner, “Efficient lel concatenated codes,” IEEE Trans. Commun., vol. 49, no. 10, polar coding of quantum information,” Phys. Rev. Lett., pp. 1727Ð1737, Oct. 2001. vol. 109, Aug. 2012, Art. no. 050504. [Online]. Available: [110] M. S. Postol, “A proposed quantum low density parity check code,” http://link.aps.org/doi/10.1103/PhysRevLett.109.050504 arXiv:quant-ph/0108131v1, 2001. [135] E. Pelchat and D. Poulin, “Degenerate Viterbi decoding,” IEEE Trans. [111] M. Tüchler and J. Hagenauer, “EXIT charts of irregular codes,” in Proc. Inf. Theory, vol. 59, no. 6, pp. 3915Ð3921, Jun. 2013. Conf. Inf. Sci. Syst., Princeton, NJ, USA, Mar. 2002, pp. 748Ð753. [136] Z. Babar, S. X. Ng, and L. Hanzo, “EXIT-chart-aided near-capacity [112] G. Bowen, “Entanglement required in achieving entanglement- quantum turbo code design,” IEEE Trans. Veh. Technol., vol. 64, no. 3, assisted channel capacities,” Phys.Rev.A, vol. 66, Nov. 2002, pp. 866Ð875, Mar. 2015. Art. no. 052313. [Online]. Available: http://link.aps.org/ [137] R. G. Maunder, “A fully-parallel turbo decoding algorithm,” IEEE doi/10.1103/PhysRevA.66.052313 Trans. Commun., vol. 63, no. 8, pp. 2762Ð2775, Aug. 2015. [113] J. Thorpe, “Low-density parity-check (LDPC) codes constructed from [138] J. M. Renes, D. Sutter, F. Dupuis, and R. Renner, “Efficient quantum protographs,” IPN Progr. Rep., vol. 42, no. 154, pp. 42Ð154, 2003. polar codes requiring no preshared entanglement,” IEEE Trans. Inf. [114] H. Ollivier and J.-P. Tillich, “Description of a quantum convolutional Theory, vol. 61, no. 11, pp. 6395Ð6414, Nov. 2015. code,” Phys. Rev. Lett., vol. 91, Oct. 2003, Art. no. 177902. [Online]. [139] Z. Babar et al., “Serially concatenated unity-rate codes improve Available: http://link.aps.org/doi/10.1103/PhysRevLett.91.177902 quantum codes without coding-rate reduction,” IEEE Commun. Lett., [115] J. Kliewer, S. X. Ng, and L. Hanzo, “Efficient computation of EXIT vol. 20, no. 10, pp. 1916Ð1919, Oct. 2016. functions for non-binary iterative decoding,” IEEE Trans. Commun., [140] Z. Babar et al., “Fully-parallel quantum turbo decoder,” IEEE Access, vol. 54, no. 12, pp. 2133Ð2136, Dec. 2006. vol. 4, pp. 6073Ð6085, 2016. [116] T. A. Brun, I. Devetak, and M.-H. Hsieh, “Correcting quantum errors [141] L. Hanzo, Near-Capacity Variable-Length Coding: Regular and EXIT- with entanglement,” Science, vol. 314, no. 5798, Oct. 2006. Chart-Aided Irregular Designs, vol. 20. Chichester, U.K.: Wiley, 2010. [117] T. A. Brun, I. Devetak, and M.-H. Hsieh, “General entanglement- [142] L. Hanzo, T. H. Liew, B. L. Yeap, R. Y. S. Tee, and S. X. Ng, assisted quantum error-correcting codes,” in Proc. IEEE Int. Symp. Inf. Turbo Coding, Turbo Equalisation and Space-Time Coding: EXIT- Theory, Nice, France, Jun. 2007, pp. 2101Ð2105. Chart-Aided Near-Capacity Designs for Wireless Channels, 2nd ed. New York, NY, USA: Wiley, 2011. [118] M.-H. Hsieh, I. Devetak, and T. Brun, “General entanglement- [143] R. C. Singleton, “Maximum distance Q-nary codes,” IEEE Trans. Inf. assisted quantum error-correcting codes,” Phys.Rev.A, Theory, vol. IT-10, no. 2, pp. 116Ð118, Apr. 1964. vol. 76, Dec. 2007, Art. no. 062313. [Online]. Available: [144] R. J. McEliece, E. R. Rodemich, H. Rumsey, Jr., and L. R. Welch, http://link.aps.org/doi/10.1103/PhysRevA.76.062313 “New upper bounds on the rate of a code via the DelsarteÐMacWilliams [119] S. X. Ng, O. R. Alamri, Y. Li, J. Kliewer, and L. Hanzo, “Near-capacity inequalities,” IEEE Trans. Inf. Theory, vol. IT-23, no. 2, pp. 157Ð166, turbo trellis coded modulation design based on EXIT charts and Mar. 1977. union bounds,” IEEE Trans. Commun., vol. 56, no. 12, pp. 2030Ð2039, [145] M. Plotkin, “Binary codes with specified minimum distance,” IRE Dec. 2008. Trans. Inf. Theory, vol. 6, no. 4, pp. 445Ð450, Sep. 1960. [120] D. Poulin, J.-P. Tillich, and H. Ollivier, “Quantum serial turbo-codes,” [146] E. N. Gilbert, “A comparison of signalling alphabets,” Bell Syst. Tech. in Proc. IEEE Int. Symp. Inf. Theory, Toronto, ON, Canada, Jul. 2008, J., vol. 31, no. 3, pp. 504Ð522, May 1952. pp. 310Ð314. [147] J. Akhtman, R. Maunder, N. Bonello, and L. Hanzo, “Closed-form [121] D. Poulin, J.-P. Tillich, and H. Ollivier, “Quantum serial turbo codes,” approximation of maximum free distance for binary block codes,” in IEEE Trans. Inf. Theory, vol. 55, no. 6, pp. 2776Ð2798, Jun. 2009. Proc. IEEE 70th Veh. Technol. Conf. Fall (VTC-Fall), 2009, pp. 1Ð3. [122] D. Poulin and Y. Chung, “On the iterative decoding of [148] D. Chandra et al., “Quantum coding bounds and a closed-form approx- sparse quantum codes,” Quantum Inf. Comput.,vol.8, imation of the minimum distance versus quantum coding rate,” IEEE no. 10, pp. 987Ð1000, Nov. 2008. [Online]. Available: Access, vol. 5, pp. 11557Ð11581, 2017. http://dl.acm.org/citation.cfm?id=2016985.2016993 [149] R. C. Bose and D. K. Ray-Chaudhuri, “Further results on error cor- [123] Y.-J. Wang, B. C. Sanders, B.-M. Bai, and X.-M. Wang, “Enhanced recting binary group codes,” Inf. Control, vol. 3, no. 3, pp. 279Ð290, feedback iterative decoding of sparse quantum codes,” IEEE Trans. Inf. 1960. Theory, vol. 58, no. 2, pp. 1231Ð1241, Feb. 2012. [150] Blue Book: Recommendations for Space Data System Standards: [124] Z. Babar, P. Botsinis, D. Alanis, S. X. Ng, and L. Hanzo, “Fifteen Telemetry Channel Coding, Consultative Committee for Space Data years of quantum LDPC coding and improved decoding strategies,” Syst., May 1984. IEEE Access, vol. 3, pp. 2492Ð2519, 2015. [151] M. El-Hajjar and L. Hanzo, “EXIT charts for system design and [125] E. Arikan, “Channel polarization: A method for constructing capacity- analysis,” IEEE Commun. Surveys Tuts., vol. 16, no. 1, pp. 127Ð153, achieving codes for symmetric binary-input memoryless channels,” 1st Quart., 2014. IEEE Trans. Inf. Theory, vol. 55, no. 7, pp. 3051Ð3073, Jul. 2009. [152] Universal Mobile System (UMTS); Multiplexing [126] R. Y. S. Tee, R. G. Maunder, and L. Hanzo, “EXIT-chart aided and Channel Coding (FDD), V9.3.0, ETSI Standard TS 125 222, 2012. near-capacity irregular bit-interleaved coded modulation design,” IEEE [153] LTE; Evolved Universal Terrestrial Radio Access (E-UTRA); Trans. Wireless Commun., vol. 8, no. 1, pp. 32Ð37, Jan. 2009. Multiplexing and Channel Coding, V13.1.0, ETSI Standard TS 136 212, [127] M.-H. Hsieh, T. A. Brun, and I. Devetak, “Entanglement-assisted 2016. quantum quasicyclic low-density parity-check codes,” Phys. Rev. [154] K. Niu, K. Chen, J. Lin, and Q. T. Zhang, “Polar codes: Primary con- A, vol. 79, Mar. 2009, Art. no. 032340. [Online]. Available: cepts and practical decoding algorithms,” IEEE Commun. Mag., vol. 52, http://link.aps.org/doi/10.1103/PhysRevA.79.032340 no. 7, pp. 192Ð203, Jul. 2014. [128] M. M. Wilde and T. A. Brun, “Entanglement-assisted quan- [155] N. Onizawa, T. Hanyu, and V. C. Gaudet, “Design of high-throughput tum convolutional coding,” Phys. Rev. A, vol. 81, Apr. 2010, fully parallel LDPC decoders based on wire partitioning,” IEEE Trans. Art. no. 042333. [Online]. Available: http://link.aps.org/doi/ Very Large Scale Integr. (VLSI) Syst., vol. 18, no. 3, pp. 482Ð489, 10.1103/PhysRevA.81.042333 Mar. 2010. [129] S. Kudekar, T. J. Richardson, and R. L. Urbanke, “Threshold satura- [156] P. W. Shor, “The quantum channel capacity and coherent information,” tion via spatial coupling: Why convolutional LDPC ensembles perform in Proc. Lecture Notes MSRI Workshop Quantum Comput., 2002. so well over the BEC,” IEEE Trans. Inf. Theory, vol. 57, no. 2, [157] I. Devetak, “The private classical capacity and of a pp. 803Ð834, Feb. 2011. quantum channel,” IEEE Trans. Inf. Theory, vol. 51, no. 1, pp. 44Ð55, [130] M. M. Wilde and M.-H. Hsieh, “Entanglement boosts quantum turbo Jan. 2005. codes,” in Proc. IEEE Int. Symp. Inf. Theory, Aug. 2011, pp. 445Ð449. [158] D. P. DiVincenzo, P. W. Shor, and J. A. Smolin, “Quantum- [131] M. M. Wilde, M.-H. Hsieh, and Z. Babar, “Entanglement-assisted channel capacity of very noisy channels,” Phys. Rev. quantum turbo codes,” IEEE Trans. Inf. Theory, vol. 60, no. 2, A, vol. 57, pp. 830Ð839, Feb. 1998. [Online]. Available: pp. 1203Ð1222, Feb. 2014. http://link.aps.org/doi/10.1103/PhysRevA.57.830 BABAR et al.: DUALITY OF QUANTUM AND CLASSICAL ERROR CORRECTION CODES: DESIGN PRINCIPLES AND EXAMPLES 1009

[159] G. Smith and J. A. Smolin, “Degenerate quantum codes for Pauli chan- Zunaira Babar received the B.Eng. degree in elec- nels,” Phys. Rev. Lett., vol. 98, Jan. 2007, Art. no. 030501. [Online]. trical engineering from the National University of Available: http://link.aps.org/doi/10.1103/PhysRevLett.98.030501 Science and Technology, Islamabad, Pakistan, in [160] C.-Y. Lai, T. Brun, and M. Wilde, “Dualities and identities for 2008 and the M.Sc. degree (Distinction) and the entanglement-assisted quantum codes,” Quantum Inf. Process., vol. 13, Ph.D. degree in wireless communications from the no. 4, pp. 957Ð990, 2014, doi: 10.1007/s11128-013-0704-8. University of Southampton, U.K., in 2011 and 2015, [161] E. Knill and R. Laflamme, “Theory of quantum error-correcting codes,” respectively, where she is currently a Research Phys. Rev. A, vol. 55, no. 2, p. 900, 1997. Fellow with the Southampton Wireless Group. [162] A. Ekert and C. Macchiavello, “Quantum error correction for commu- Her research interests include quantum error cor- nication,” Phys. Rev. Lett., vol. 77, no. 12, pp. 2585Ð2588, 1996. rection codes, channel coding, coded modulation, [163] A. Ashikhmin and S. Litsyu, “Upper bounds on the size of quan- iterative detection, and cooperative communications. tum codes,” IEEE Trans. Inf. Theory, vol. 45, no. 4, pp. 1206Ð1215, May 1999. [164] D. J. C. MacKay, G. Mitchison, and P. L. McFadden, “Sparse-graph codes for quantum error correction,” IEEE Trans. Inf. Theory, vol. 50, Daryus Chandra (S’13) received the M.Eng. degree no. 10, pp. 2315Ð2330, Oct. 2004. in electrical engineering from Universitas Gadjah [165] T. Camara, H. Ollivier, and J.-P. Tillich, “Constructions and Mada, Indonesia, in 2014. He is currently pursu- performance of classes of quantum LDPC codes,” arXiv:quant- ing the Ph.D. degree with the Southampton Wireless ph/0502086v2, 2005. Group, School of Electronics and Computer Science, [166] T. Camara, H. Ollivier, and J.-P. Tillich, “A class of quantum LDPC University of Southampton. He was a recipient of codes: Construction and performances under iterative decoding,” in the Scholarship Award from Indonesia Endowment Proc. IEEE Int. Symp. Inf. Theory, Jun. 2007, pp. 811Ð815. Fund for Education (LPDP). [167] H. Ollivier and J. P. Tillich, “Quantum convolutional codes: His research interests include channel codes, Fundamentals,” arXiv:quant-ph/0401134, 2004. quantum error correction codes, and quantum [168] G. D. Forney and S. Guha, “Simple rate-1/3 convolutional and tail- communications. biting quantum error-correcting codes,” in Proc. IEEE Int. Symp. Inf. Theory, Sep. 2005, pp. 1028Ð1032. [169] G. D. Forney, M. Grassl, and S. Guha, “Convolutional and tail-biting quantum error-correcting codes,” IEEE Trans. Inf. Theory, vol. 53, Hung Viet Nguyen (S’09–M’14) received the no. 3, pp. 865Ð880, Mar. 2007. B.Eng. degree in electronics and telecommunica- [170] M. Houshmand and M. M. Wilde, “Recursive quantum convolutional tions from the Hanoi University of Science and encoders are catastrophic: A simple proof,” IEEE Trans. Inf. Theory, Technology, Hanoi, Vietnam, in 1999 and the vol. 59, no. 10, pp. 6724Ð6731, Oct. 2013. M.Eng. degree in telecommunications from the [171] M. Hagiwara, K. Kasai, H. Imai, and K. Sakaniwa, “Spatially cou- Asian Institute of Technology, Bangkok, Thailand, pled quasi-cyclic quantum LDPC codes,” in Proc. IEEE Int. Symp. Inf. in 2002. Since 1999, he has been a Lecturer Theory, Aug. 2011, pp. 638Ð642. with the Post and Telecommunications Institute of [172] K. Kasai, M. Hagiwara, H. Imai, and K. Sakaniwa, “Non-binary quasi- Technology, Vietnam. He worked for the OPTIMIX cyclic quantum LDPC codes,” in Proc. IEEE Int. Symp. Inf. Theory, and CONCERTO European as well as EPSRC Aug. 2011, pp. 653Ð657. funded projects. He is currently a Research Fellow [173] K. Kasai, M. Hagiwara, H. Imai, and K. Sakaniwa, “Quantum error with 5G Innovation Centre, University of Surrey, U.K. His research interests correction beyond the bounded distance decoding limit,” IEEE Trans. include cooperative communications, channel coding, network coding, and Inf. Theory, vol. 58, no. 2, pp. 1223Ð1230, Feb. 2012. quantum communications. [174] I. Andriyanova, D. Maurice, and J.-P. Tillich, “Spatially coupled quan- tum LDPC codes,” in Proc. IEEE Inf. Theory Workshop, Sep. 2012, pp. 327Ð331. [175] D. Maurice, J.-P. Tillich, and I. Andriyanova, “A family of quan- tum codes with performances close to the hashing bound under Panagiotis Botsinis (S’12–M’15) received the iterative decoding,” in Proc. IEEE Int. Symp. Inf. Theory, Jul. 2013, M.Eng. degree from the School of Electrical pp. 907Ð911. and Computer Engineering, National Technical [176] W. K. Wootters and W. H. Zurek, “A single quantum cannot University of Athens, Greece, in 2010 and the M.Sc. be cloned,” Nature, vol. 299, no. 5886, pp. 802Ð803, Oct. 1982, degree (with Distinction) and the Ph.D. degree in doi: 10.1038/299802a0. wireless communications from the University of [177] L. Hanzo, T. H. Liew, and B. L. Yeap, Turbo Coding, Turbo Southampton, U.K., in 2011 and 2015, respectively, Equalisation and Space-Time Coding. Hoboken, NJ, USA; Wiley, 2002. where he is currently a Research Fellow with the [178] P. Botsinis et al., “Quantum error correction protects quantum Southampton Wireless Group, School of Electronics search algorithms against decoherence,” Sci. Rep., vol. 6, Dec. 2016, and Computer Science. Since 2010, he has been a Art. no. 38095. member of the Technical Chamber of Greece. [179] M. Grassl and T. Beth, “Cyclic quantum errorÐcorrecting codes and His research interests include quantum-assisted communications, quantum quantum shift registers,” in Proc. Roy. Soc. London A Math. Phys. computation, iterative detection, OFDM, MIMO, multiple access systems, Eng. Sci., vol. 456, no. 2003, pp. 2689Ð2706, 2000. coded modulation, channel coding, cooperative communications, and com- [180] S. Lin and D. J. Costello, Error Control Coding. Upper Saddle River, binatorial optimization. NJ, USA: Pearson, 2004. [181] J. Schalkwijk and A. Vinck, “Syndrome decoding of convolutional codes,” IEEE Trans. Commun., vol. COM-23, no. 7, pp. 789Ð792, Jul. 1975. Dimitrios Alanis (S’13) received the M.Eng. degree [182] J. Schalkwijk and A. Vinck, “Syndrome decoding of binary rate-1/2 in electrical and computer engineering from the convolutional codes,” IEEE Trans. Commun., vol. COM-24, no. 9, Aristotle University of Thessaloniki in 2011 and pp. 977Ð985, Sep. 1976. the M.Sc. degree in wireless communications from [183] J. Schalkwijk, A. Vinck, and K. Post, “Syndrome decoding of binary- the University of Southampton in 2012, where he rate k/n convolutional codes,” IEEE Trans. Inf. Theory, vol. IT-24, no. 5, is currently pursuing the Ph.D. degree with the pp. 553Ð562, Sep. 1978. Southampton Wireless Group, School of Electronics [184] M. Ariel and J. Snyders, “Soft syndrome decoding of binary convolu- and Computer Science. tional codes,” IEEE Trans. Commun., vol. 43, nos. 2Ð4, pp. 288Ð297, His research interests include quantum com- Feb./Apr. 1995. putation and quantum , quan- [185] V. Sidorenko and V. Zyablov, “Decoding of convolutional codes tum search algorithms, cooperative communications, using a syndrome trellis,” IEEE Trans. Inf. Theory, vol. 40, no. 5, resource allocation for self-organizing networks, bio-inspired optimization pp. 1663Ð1666, Sep. 1994. algorithms, and classical and quantum game theory. 1010 IEEE COMMUNICATIONS SURVEYS & TUTORIALS, VOL. 21, NO. 1, FIRST QUARTER 2019

Soon Xin Ng (S’99–M’03–SM’08) received the Lajos Hanzo (M’91–SM’92–F’04) received the B.Eng. degree (First Class) in electronic engineering degree in electronics in 1976, the Doctorate in and the Ph.D. degree in telecommunications from 1983, and the Honorary Doctorate degrees (Doctor the University of Southampton, Southampton, U.K., Honoris Causa) from the Technical University of in 1999 and 2002, respectively. From 2003 to 2006, Budapest in 2009 and the University of Edinburgh he was a Post-Doctoral Research Fellow working on in 2015. During his 40-year career in telecommuni- collaborative European research projects known as cations he has held various research and academic SCOUT, NEWCOM, and PHOENIX. Since 2006, he posts in Hungary, Germany, and the U.K. Since has been an Academic Staff Member with the School 1986, he has been with the School of Electronics of Electronics and Computer Science, University of and Computer Science, University of Southampton, Southampton, where he is currently an Associate U.K., where he holds the Chair in telecommunica- Professor in telecommunications. His research interests include adaptive tions. He has successfully supervised 112 Ph.D. students, co-authored 18 coded modulation, coded modulation, channel coding, space-time coding, joint Wiley/IEEE Press books on mobile radio communications totalling in excess source and channel coding, iterative detection, OFDM, MIMO, cooperative of 10 000 pages, published 1761 research contributions at IEEE Xplore, acted communications, distributed coding, quantum communications, quantum error both as a TPC and the General Chair of IEEE conferences, presented keynote correction codes, and joint wireless-and-optical-fibre communications. He has lectures and has been awarded a number of distinctions. He is currently direct- published over 240 papers and co-authored two Wiley/IEEE Press books in the ing a 40-strong academic research team, working on a range of research above areas. He was involved in the OPTIMIX and CONCERTO European projects in the field of wireless multimedia communications sponsored by projects as well as the IU-ATC and UC4G projects. He was the Principal industry, the Engineering and Physical Sciences Research Council, U.K., the Investigator of an EPSRC project on Cooperative Classical and Quantum European Research Council’s Advanced Fellow Grant, and the Royal Society’s Communications Systems. He is a fellow of the Higher Education Academy Wolfson Research Merit Award. He is an enthusiastic supporter of industrial in the U.K., a Chartered Engineer and a fellow of IET. and academic liaison and he offers a range of industrial courses. He was the Editor-in-Chief of the IEEE Press and a Chaired Professor with Tsinghua University, Beijing, from 2008 to 2012. He is also a Governor of the IEEE ComSoc and IEEE VTS. He is a fellow of the Royal Academy of Engineering, the Institution of Engineering and Technology, and the European Association for . For further informa- tion on research in progress and associated publications please refer to http://www-mobile.ecs.soton.ac.uk.