0% found this document useful (0 votes)
8 views

Steane code

Uploaded by

viswadevadi
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
8 views

Steane code

Uploaded by

viswadevadi
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 45

Multiple Particle Interference and Quantum

arXiv:quant-ph/9601029v3 13 May 1996

Error Correction

Andrew Steane∗
Clarendon Laboratory, Parks Road, Oxford, OX1 3PU, England.

November 20, 1995

Abstract

The concept of multiple particle interference is discussed, using


insights provided by the classical theory of error correcting codes.
This leads to a discussion of error correction in a quantum com-
munication channel or a quantum computer. Methods of error cor-
rection in the quantum regime are presented, and their limitations
assessed. A quantum channel can recover from arbitrary decoherence
of x qubits if K bits of quantum information are encoded using n
quantum bits, where K/n can be greater than 1 − 2H(2x/n), but
must be less than 1 − 2H(x/n). This implies exponential reduction
of decoherence with only a polynomial increase in the computing re-
sources required. Therefore quantum computation can be made free
of errors in the presence of physically realistic levels of decoherence.
The methods also allow isolation of quantum communication from
noise and evesdropping (quantum privacy amplification).


Electronic address: [email protected]

1
1 Introduction

The concepts of quantum interference, correlations and entanglement are at


the heart of quantum mechanics. A quantum interference between two parts
a system’s evolution is prevented when the system interacts with another so
as to produce an entangled state. In such situations, properties of the two
entangled systems are correlated, and correlations of this type are subject
to the Bell inequalities (Bell 1964), which shows that they are non-local in
character. Whereas for many quantum mechanical effects a model can be
given which relies only on classical concepts, this non-locality is a feature of
quantum mechanics which is alien to the very structure of other (classical)
theories. (Many texts are available as an introduction to this broad subject,
for example that of Shimony 1989.)

One way of shedding light on the nature of quantum mechanics is to pose the
question “to what extent can quantum mechanical behaviour be modelled
in classical terms?” To make this slightly vague question more concrete,
it can be posed thus: “to what extent can quantum mechanical behaviour
be simulated by means of a universal computer operating according to the
laws of classical mechanics?” Such a ‘universal’ computer is universal in
the sense of a universal Turing machine: it can simulate the behaviour
of any other computer in the set of all possible computers (Turing 1936).
However, as long as the set of ‘possible’ computers includes only those
operating by classical laws of physics, then the non-local correlations which
arise in the real world cannot be simulated, as was discussed by Feynman
1982. To simulate them, the computer must be allowed to operate according
to the laws of quantum mechanics. Hence one introduces the concept of
the quantum, as opposed to classical, computer (see Deutsch 1985; Ekert
1995), and the question under consideration can be re-phrased: “to what
extent can a quantum computer perform calculations which are beyond
the computing abilities of a classical computer?” For the physicist, this
question addresses fundamental questions concerning the nature of our most
basic physical theory. However, the answer is also of considerable practical
interest because computing ability is an extremely useful kind of ability.

The theoretical analysis of quantum computers has by now passed some im-
portant milestones, among them the demonstration of how to construct a

2
universal quantum computer (Deutsch 1985), the discovery of simple univer-
sal quantum gates (Deutsch et al. 1995, Barenco 1995, DiVincenzo 1995),
and the presentation of algorithms for idealised quantum computers which
surpass the computing ability of known algorithms for classical computers,
and which appear to surpass even what is in principle possible classically
(Deutsch & Jozsa 1992, Bernstein 1993, Shor 1994, Simon 1994). It has
been obvious from the outset that quantum computation is different from
classical computation precisely because of the possibility of quantum inter-
ference and entanglement. However, this entanglement is itself sensitive to
a problem which is unavoidable in the quantum context, namely, decoher-
ence of the state of the computer (Zurek 1993, Landauer 1995). The useful
algorithms just mentioned were initialy proposed under the assumption of
the idealised case that this decoherence, or generally any process involving
loss of quantum information, is negligible. However, it can be argued that
the possibility of decoherence is itself just as fundamental a feature of quan-
tum mechanics as the interference and entanglement of which a quantum
computer takes advantage. Such decoherence must be considered, for ex-
ample, in any discussion of the “Schrödinger’s cat” paradox (Schrödinger
1935; for a text-book treatment see, for example, Peres 1993). The cat in
Schrödinger’s thought-experiment corresponds here to the quantum com-
puter itself. Hence, the idealisation in which decoherence is taken to be
negligible is not merely a limit on the practical application of the theory
of quantum computation, it is in fact an “idealisation too far”, since it in-
volves neglecting a basic aspect of quantum theory, as has been emphasized
by Landauer 1995.

This paper discusses both the nature of quantum interference involving


many particles, and also the question of decoherence in quantum comput-
ers. It is shown that both questions are intimately concerned with the
issue of error correction which arises in classical information theory. Unruh
1995 and Palma et al. 1996 calculated the sensitivity of a ‘bare’ quantum
computer to thermal decoherence. Here, we are concerned with the differ-
ent question of how to add redundancy to such a ‘bare’ computer in order
to stabilise it against all error processes, including decoherence. The clas-
sical theory of error correction which is invoked is a well-founded body of
knowledge involving some beautiful mathematical concepts, and we can take
advantage of this knowledge in our quest to understand quantum mechan-

3
ics more fully. This paper does not assume much familiarity with classical
error correction, however. At the risk of alienating experts, concepts from
classical information theory are introduced for the most part with sufficient
explanation to allow readers unfamiliar with this material to follow the ar-
gument. The readily available textbooks such as MacWilliams & Sloane
1977 and Hamming 1986 give further explanation.

In section 2 a general theory of interference involving many particles is pre-


sented. It is shown that an interesting class of entanglements involving
many particles (or other simple quantum systems) can be understood by
appealing to the known theory of classical error correcting codes. In section
3 the same concepts are applied to the problem of error correction in a set
of two-state systems (‘quantum bits’). Coding and correction methods are
presented which allow the problem of decoherence in a quantum computer
to be circumvented. The same methods allow privacy in quantum cryptog-
raphy to be enhanced (for a review and references to this subject, see, for
example, Hughes et al. 1995 and Phoenix and Townsend 1995.) In section
4 the limitations of these coding methods are estimated, by a calculation
reminiscent of Shannon’s main theorem for communication through a noisy
channel. A full quantum equivalent to Shannon’s theorem is not found, and
this is a limitation of the present work, but the ideas presented here suggest
ways of tackling this more general question. The conclusions of the present
discussion are hopeful, however, in that they suggest that error-free quan-
tum computation is possible using resources (numbers of quantum bits and
of operations) that are only a polynomial factor greater than those required
by an ideal quantum computer. Indeed, the judicious use of redundency and
error correction allows the probability of decoherence to fall exponentially
with the amount of redundency. This is a conclusion which has commonly
been imagined to be ruled out for quantum systems. The implementation of
the error correction procedure to be described, without introducing exces-
sive extra decoherence, remains a severe technological challenge, however.

2 Multiple particle interference and parity


checks

4
2.1 Single parity check

Consider a two-state quantum system. Its two-dimensional Hilbert space is


spanned by two orthogonal states which will be written |0i and |1i. These
states may for example be different states of motion of a spinless particle of
no internal structure, or they may be different internal states, such as those
of a two-level atom. The simple concept of quantum interference
√ arises when
such a system is in a state such as (|0i+exp(iφ) |1i)/ 2, and √ measurements
are performed which project the state onto (|0i ± |1i)/ 2. Now, what
happens if this system interacts with another two-state system, such that√the
total state of the pair is the entangled state (|0i⊗|0i+exp(iφ) |1i⊗|1i)/ 2 ?
In this case, measurements on either subsystem alone (hereafter called a
‘particle’) will not reveal any interference effect (any dependence
√ on the
value of φ). If both particles are measured in the (|0i ± |1i)/ 2 basis, on
the other hand, and the results of the measurements on each particle pair
are compared, then a correlation is observed which is sensitive to φ. The
probability that the particles are found in the same state is equal to cos2 φ/2.
Whereas before we had a single particle interference effect, we now have a
two-particle interference, in the sense that no measurements on individual
particles reveal the interference phase φ, while combining measurements on
both particles makes the interference ‘fringe’ cos2 φ/2 observable.

The above argument was extended by Greenberger et al. 1990, so that


one speaks of an “n-particle interference,” meaning a state of n particles in
which no measurements on any subset of the n particles (containing 1, 2 or
any number up to n − 1 particles) will suffise to reveal an interference, but
once all n are measured (in the correct basis), and correlations established
between the results, the interference becomes apparent. Such an n-particle
interference is the state
 n n
 √
|n, φi = |000 · · · 0i + exp(iφ)|111 · · · 1i / 2, (1)
where there are n zeroes or ones in the ket labels, and the usual convention
has been followed of writing product states (|0i ⊗ |0i ⊗ · · ·) by the notation
|00 · · ·i. When n = 2 the correlations are subject to the most simple type
of Bell inequality. When n = 3 we have the ‘GHZ’ state of Greenberger,
Horne and Zeilinger 1989, in which correlations can be found which are both
non-local and which occur with certainty. Also, Zurek 1981 stressed that

5
three particles are sufficient and necessary to establish a ‘preferred’ basis for
inter-particle correlations. For larger n, Mermin 1990 derived a Bell-type
inequality which becomes more and more severe as n grows.

Is there a simple way of seeing that the state |n, φi is an n-particle interfer-
ence? Clearly, a ‘which path’ argument will suffice. If any set of less than
n particles is measured, the remaining unmeasured two-state system could
in principle be measured in the {|0i , |1i} basis, thus indicating which of
n n
the two ‘paths’ |000 · · · 0i or |111 · · · 1i the whole system followed, which
prevents any interference between those paths1 .

In the case that all n particles are measured so as to observe a φ-dependent


result, it is instructive to examine how such interference can come about,
it being a property of all n particles, and not of any subset. To this end,
a simple notation will be introduced. The pair of states {|0i , |1i} will be
referred to as ‘basis 1’, and
√ written using standard (unbarred)
√ labels. The
states |0 i ≡ (|0i + |1i)/ 2, and |1 i ≡ (|0i − |1i)/ 2, will be referred
to as ‘basis 2’, and distinguished from basis 1 by using bars over the ket
symbols. (The two bases are related by a rotation in Hilbert space through
45 degrees).

Consider the three-particle interference |3, φi = (|000i + exp(iφ) |111i)/ 2.
To observe the interference, measurements must be carried out in basis 2
on all the particles. Therefore, it is useful to write the state |3, φi in terms
of basis states of basis 2:
  
|3, φi ≡ 1 + eiφ |000 i + |011 i + |101 i + |110 i /4
  
+ 1 − eiφ |111 i + |100 i + |010 i + |001 i /4 (2)

Measurements carried out in basis 2 will collapse the state onto one of the
8 product states |000 i, |001 i · · · |111 i. Examining equation (2), one finds
that the probability of obtaining an even number of 1’s is equal to cos2 φ/2.
In other words, the information on the value of φ is contained in the parity
check of the total state in basis 2. We are using the word ‘parity’ in the
sense of the parity check for binary communication channels.
1
If this description in terms of ‘following a path’ is felt to be too reliant on an as-
sumption of wavefunction collapse, it can always be stated more elaborately in terms of
entanglements with external measuring devices, and the same conclusion is obtained.

6
With this insight in terms of parity, a new way of explaining the n-particle
inteference arises. For, to learn the parity of a string of n bits, it is ob-
vious that one must know the value of all n bits. No subset of the bits
contains this information. It is important to note that when φ = 0, all the
4 possible product states of even parity appear, and when φ = π, all the 4
possible product states of odd parity appear. If this were not the case, then
sometimes a subset containing less than 3 bits would define the parity. For
example, if we know from the outset that the product state |111 i is not
present in the final superposition, then whenever measurements of the first
two bits both yield 1, we know immediately that the overall parity is even,
without measuring the third bit.

The parity check argument is true for any n (this was shown by Steane
1996a and will also be demonstrated below). The parity check is a two-
valued quantity, and thus can store a single bit of information. It may be
imagined as a single bit stored symetrically among all the n bits.

2.2 Multiple parity checks

Once the n-particle interference has been understood as a parity check in


basis 2, the concept of multiple-particle interference can be generalised.
For, an overall parity check is the simplest example of error detection in a
classical communication channel. More advanced types of error detection
and correction are associated with more complicated types of n-particle
interferences. To understand the details, we make use of theorems 1 to 3
of Steane 1996a, which are reproduced below. Before they are presented, a
few notations will be introduced.

First, the two-state systems which have so far been referred to as ‘particles’
will hereafter be called qubits2 . The product states in either of bases 1
or 2 (e.g. |0010i or |01101 i) will be referred to as words, since each such
state is identified by a unique string of bits when written in the relevent
basis. A superposition of product states defines a set of words. A set of
words is called a code, following standard nomenclature in the theory of
2
The word ‘qubit’ for ‘quantum bit’ is now a standard term for a two-state system.

7
error correcting codes. When writing superposition (entangled) states, the
overall normalisation factor will often be omitted, since it is not important
to the main argument, and can always be reintroduced easily if necessary.
The theorems derived in Steane 1996a are as follows.

Theorem 1. The word |000 · · · 0i consisting of all zeroes in basis 1 is equal


to a superposition of all 2n possible words in basis 2, with equal coefficients.

Theorem 2. If the j’th bit of each word is complemented (0 ↔ 1) in basis


1, then all words in basis 2 in which the j’th bit is set (is a 1̄) change sign.

Theorem 3. When the quantum state of the system forms a linear code
C in basis 1, in a superposition with equal coefficients, then in basis 2 the
words appearing in the superposition are those of the dual code C ⊥ .

Theorems 1 and 2 are easy to prove, while theorem 3 requires further com-
ment. A linear code C is any set of n-bit words for which if the bitwise
exclusive-or (addition modulo 2) operation ⊕ is carried out between any
two words in the code, then the resulting word is also in the code. Such
codes can be expressed in terms of an (n × k) generator matrix G, whose
k rows are n-bit words. The code consists of all linear combinations (by
bitwise exclusive-or) of the rows of G. This produces 2k different words
in the code. It can be shown that any linear code is also fully defined by its
(n × (n − k)) parity check matrix H. The code consists of all words u for
which Hj · u has even parity, for all rows Hj of H, where the dot indicates
the bitwise and operation. When Hj · u has even parity, we say that “u
satisfies the parity check Hj ”. In other words, Hj singles out a subset of
the bits of u, and it is the parity of this subset which is “checked” when we
ascertain the parity of Hj · u.

If C is a linear code, then the dual code C ⊥ is defined to be the set of all
words v for which v · u has even parity for all u ∈ C. If C ⊥ is the dual
of C, then C is the dual of C ⊥ . The only property of dual codes which
will interest us for the moment is that the generator matrix of a code C is
the parity check matrix of the dual code C ⊥ . (This property is used in the
derivation of theorem 3, see Steane 1996a.)

Using the formalism, it is possible to generalise the concept of multiple-

8
particle (or multiple-qubit) interference. It is necessary first to extend
slightly the definition of the generator matrix. We associate with each
row Gj of the matrix a phase factor exp iφj , and when different rows are
combined, these factors multiply:

Gj ⊕ Gk = ei(φj +φk ) (|Gj | ⊕ |Gk |) (j 6= k), (3)

where |Gj | signifies the j’th row with phase factor set to 1. If a row is
combined with itself, the resulting phase factor is defined to be 1, so that
the zero word is produced: Gj ⊕ Gj = 000 · · · 0. One may regard the words
as vectors in a discrete n-dimensional vector space (Hamming space), and
the phase factors as scalars.

The generalised multiple-particle interference is defined through the follow-


ing theorem.

Theorem 4. If G generates the state in basis 1, then the probability that


the parity check |Gj | is satisfied in basis 2 varies as cos2 φj /2.

Proof. This is closely related to the proof of theorem 3. To find the effect
of the j’th row of G, first consider the state |G′ i generated by G′ in basis 1,
where G′ consists of all rows of G except the j ′ th, with all phase factors set
to 1. By theorem 3, for this state, all the parity checks of G′ are satisfied in
basis 2. Now complement, in basis 1, the qubits specified by the j’th row
of G. Call the resulting state |G′′ i. By repeated applications of theorem 2,
this has the effect that all words change sign in basis 2 which do not satisfy
the parity check |Gj |. Now form
   
1 + eiφj 1 − eiφj
(|G′ i + |G′′ i) + (|G′ i − |G′′ i) ≡ |G′ i + eiφj |G′′ i . (4)
2 2
The left hand side of this equivalence shows that the probability that the
j’th parity check is satisfied in basis 2 is proportional to cos2 φj /2, since if
|G′ i and |G′′ i are added (subtracted), all words which satisfy (respectively
fail to satisfy) the parity check |Gj | disappear in basis 2. The right hand side
of the equivalence is the state generated by G′ with the row Gj added to it,
since the selective bit-complementing operation which was carried out is in
fact the exclusive-or operation. By applying this argument successively
to all the rows of G, the theorem is proved.

9
Theorem 4 is more easily understood in terms of an example, which will
now be provided. Consider the generator matrix
 
  0 0 0 1 1 1 1
Gs = eiφ1 eiφ2 eiφ3  0 1 1 0 0 1 1 .
 
(5)
1 0 1 0 1 0 1

This equation is to be understood as a 3-column matrix of phase factors


multiplying a 3-row matrix of 7-bit words. Gs generates the state
 
|Gs i = |0000000i + eiφ3 |1010101i + eiφ2 |0110011i + eiφ3 |1100110i
n  o
+eiφ1 |0001111i + eiφ3 |1011010i + eiφ2 |0111100i + eiφ3 |1101001i(6)

This code, appearing in basis 1, is well known in classical coding theory. It


is called the simplex code, since the 8 words define the 8 vertices of a regu-
lar simplex in 7-dimensional space (see for example MacWilliams & Sloane
1977). In the quantum mechanical context, the code appears in |Gs i as a 7-
particle entanglement containing three 4-particle interferences. Each phase
φj is associated with a multiple-particle correlation among all those qubits
which are selected by the j’th row of Gs . Thus, by examining the matrix
Gs (equation (5)), one sees that for this example case there are 3 correla-
tions, each involving a different 4-member subset of the 7 qubits. These
correlations can be revealed by measuring the qubits in basis 2, and calcu-
lating the relevent parity checks. I conjecture that such correlations satisfy
Bell-type inequalities similar to those deduced by Mermin 1990, though a
demonstration is beyond the scope of the present work. One may regard the
linear codes as a generalisation to many qubits of the 2-qubit “Bell basis”
{|00i ± |11i , |01i ± |10i}.

This concludes the discussion of multiple particle interference per se. The
concepts introduced make a natural introduction to the following sections,
which will provide more information on these interferences, such as a method
for their generation, while discussing other issues.

10
3 Error Correction for Qubits

The set of n qubits which we have been discussing may be considered to


be a quantum computer (Deutsch 1985). In the course of a computation,
entangled states involving many qubits at once are produced, and one of the
fundamental problems of quantum computation is that such entanglements
are highly sensitive to decoherence. ‘Decoherence’ refers (cf Zurek 1993) to
one class of departures of the quantum state of the computer from the state
which it ought to have. We will not assume that decoherence is the only
type of error process, however. Rather, we seek to correct the computer
(or quantum channel) in the presence of completely general unknown de-
partures from the state the computer ought to have (that produced purely
by evolution under error-free computing operations)

An erroneous state of the whole computer will in general require correction


methods operating on the whole computer at once in order to correct it. A
method of this type was presented by Berthiame et al. 1994. Some types of
error can be corrected through a bit-by-bit method, on the other hand, in
which operations only on small subsets of the qubits are required. Shor 1995
proved that 9 qubits can be used to protect a single bit of quantum informa-
tion against single errors, and Steane 1995 introduced a 7-qubit scheme, and
a general method for correcting many errors, while discussing limitations to
robust encoding of a single qubit. The approach adopted in the latter work
is generalised in this paper to enable robust encoding of a whole computer.
Also, the method of how to carry out error correction without disrupting
the unitary evolution of the computation process is given.

The philosophy pursued in this paper is to adopt methods suggested by the


classical theory of error correction, and then to consider afterwards what
types of error can be corrected by such methods. It will be argued that
realistic physical systems can be found which are subject primarily to the
type of error whose correction we discuss. The general scenario is that of
a computer undergoing its normal computing operations, and interspersed
among these are error correction operations. The qubits are assumed to
decohere and generally change their state in an unpredictable manner. The
word ‘error’ will sometimes refer to a rotation of a qubit through π/2 radians
about a given axis in Hilbert space, which mimics the classical ‘error’ where

11
a bit is complemented, but in general the word will refer to any departure
of a qubit from the state it ought to be in.

A general error of a qubit can be considered as made up of phase error in


basis 1 (a rotation around the axis of the Poincaré or Bloch sphere) plus an
amplitude error in basis 1 (a rotation to different latitude on the sphere),
plus a contribution due to entanglement with external systems, which, once
those external degrees of freedom are traced over, causes the qubit’s state
to become mixed rather than pure. We will consider first the case of phase
error alone, then a restricted class of external entanglements, and then more
general errors.

3.1 Simplest case

Let us begin by considering the case that the qubits randomly dephase but
never entangle with the environment, and never flip in basis 1. This is the
simplest non-trivial case, and is practically interesting because it may be
possible to approximate it experimentally. In this simple situation, the only
errors are phase errors in basis 1.

The errors are modelled by rotating the j’th qubit using an operator
!
eiǫφj /2 0
−iǫφj /2 (7)
0 e
where the matrix has been written in basis 1. The angles φj are independent,
and ǫ is a parameter used to indicate the typical magnitude of the errors,
0 < ǫ ≤ 1. If the single qubit state a |0i + b |1i is subject to such errors, its
density matrix becomes
!
|a|2 αab∗
ρ = (8)
α∗ a∗ b |b|2
where α = eiǫφ . (9)
Since exp(iǫφ) = 1+O(ǫ), the error in the off-diagonal elements is of order ǫ.

Phase errors in basis 1 can be corrected as follows. Each qubit in the


quantum computer is ‘encoded’ using a set of three physical qubits, by the

12
encoding method shown in figure 1. This set is then ‘corrected’ from time
to time by the correction method shown in figure 2. Computing operations,
when required, can be carried out by a network equivalent to one which first
‘decodes’, then carries out the relevent operation, then encodes again. The
decoding operation is the inverse of the encoding one.

To understand the error-correction scheme, one notes that it is based on the


simplest classical error correction code, the n = 3 repetition code, operating
in basis 2. This is because phase errors in basis 1 cause amplitude errors
in basis 2, so we employ a scheme which corrects amplitude errors in basis
2. A general single-qubit state a |0i + b |1i is encoded by two controlled not
(cnot) operations in basis 2,3 acting on an initial state (a |0i + b |1i) ⊗ |00 i
(see figure 1). The state thus encoded using three qubits is

a (|000i + |011i + |101i + |110i) + b (|111i + |100i + |010i + |001i)


= (a + b) |000 i + (a − b) |111 i (10)

Therefore the only ‘legal’ states are |000 i and |111 i or linear combinations
of these.

The random phase errors in basis 1 cause departures from the subspace
spanned by |000 i and |111 i. As long as the errors are small, the component
which was |000 i is likely to remain in the region of Hilbert space spanned
by {|000 i , |001 i , |010 i , |100 i} while the component which was |111 i is
likely to remain in the region spanned by {|111 i , |110 i , |101 i , |011 i}. As
long as only such ‘single errors’ occur, they can be corrected.

The error corrector shown in figure 2 works as follows. First, two cnot
operations carry out parity checks. The checks required are those given by
the parity check matrix for the {000, 111} repetition code:
!
1 1 0
Hrep = (11)
1 0 1

After these checks, the ‘control’ qubit contains the state to be corrected,
and the other two ‘target’ qubits (hereafter called parity qubits) contain the
3
cnot in basis 1 is (|00i h00| + |01i h01| + |10i h11| + |11i h10|) where the first qubit
is the control, the second is the target. cnot in basis 2 (as here) is the operator having
the same form, but with 0 and 1 replaced by 0̄ and 1̄.

13
error syndrome. The two parity qubits containing the syndrome are now
measured. The syndrome indicates which qubit is to be complemented.
That is, if the measurements give 11 then the not operation is carried out
on the control qubit.4 Whatever the result of the measurements, the parity
qubits are reset to |00 i. After this, the three qubits are in the decoded
state. The final part of the error corrector reencodes the state.

The effect of the above transformations can easily be calculated. Once


the encoding has been carried out, yielding the state given by equation
(10), all three bits are subjected to errors given by the operator (7) with
independent unknown φ0 , φ1 , φ2 . The resulting erroneous state is to be
corrected. The two cnot operations are applied, and measurements are
modelled by projection operators. This yields 4 different density matrices
for the 4 different measurement outcomes. The not operation is carried
out on the relevent qubit or bits as indicated by the syndrome associated
with each density matrix. The resulting four density matrices are added
with the weights given by the probabilities of obtaining them. Now we are
at the stage just before the final reencoding. If instead of reencoding, we
simply extract the density matrix of the control qubit, the result is equation
(8) with
1
α = {cos(ǫφ0 ) + cos(ǫφ1 ) + cos(ǫφ2 )
2
− cos(ǫφ0 ) cos(ǫφ1 ) cos(ǫφ2 ) − i sin(ǫφ0 ) sin(ǫφ1 ) sin(ǫφ2 )} . (12)
When only one of the three angles φj is non-zero (that is, one qubit is
erroneous), the state is restored exactly, and when all three are non-zero,
the error term is of order ǫ3 instead of order ǫ, as a Taylor expansion of
the trigonometric functions will show (α = 1 + O(ǫ3 )). The corresponding
properties of classical single-error correction are that single errors are cor-
rected exactly, and error probabilities of order p become of order p2 after
correction. Since in this case the qubit error term goes directly to O(ǫ3 )
rather than O(ǫ2 ), the correction is efficient. In the next section a case
which mimics the classical behaviour more closely will be discussed.

It has been assumed throughout that the process of encoding and correcting
does not itself introduce more errors than it corrects.
4
not in basis 1 is the operator |0i h1| + |1i h0|. not in basis 2 (as here) is |0 i h 1 | +
|1 i h 0 |.

14
The discussion so far only demonstrates a modest correction ability. How-
ever, the concepts can be generalised, enabling the limitations of the method
to be derived. We turn to this in later sections. The main result so far is to
show that unitary evolution of a qubit can be preserved, while information
about error processes is nevertheless gathered and used to correct the qubit.
Next it will be shown that the general methods discussed in this paper are
not limited to the correction of unitary errors, but can enable the quantum
computer to recover from relaxation caused by erroneous coupling to its
environment.

3.2 Simplest Purity Amplification

The single error correction in basis 2 discussed in the previous section with
regard to unitary phase errors in basis 1 is also sufficient to correct a re-
stricted class of relaxation errors (ie errors caused by coupling to external
systems). The restricted class is relaxation which does not cause ampli-
tude errors in basis 1. One can model such relaxation either as a decay in
the off-diagonal density matrix elements of each qubit in basis 1, or as an
entanglement with the environment introduced by operators of the type
 
|0ij ⊗ |ψ1j i 1 0 0 0
0 1 0 0
 
|0ij ⊗ |ψ2j i  
Wj = . (13)
 q 
|1ij ⊗ |ψ1j i

 0 0 1 − ǫj 2ǫj − ǫ2j 
 q 
|1ij ⊗ |ψ2j i 0 0 − 2ǫj − ǫ2j 1 − ǫj

Here, |ψ1j i and |ψ2j i are orthogonal states of the environment, and the
product states on the left of the operator matrix indicate the basis in which
the matrix is written. The (real) parameter ǫj , bounded by 0 < ǫj ≤
1, indicates the strength of the entanglement with the environment. The
entanglement can be imagined as an imperfect (ǫ < 1) or perfect (ǫ = 1)
measurement of the qubit in basis 1. Such entanglements, when perfect,
have the effect of making the “interference phase” between the two parts
|0i and |1i of qubit’s state unobservable, as a straightforward analysis will
show. No amplitude error is introduced in basis 1, which is the clue that
the ‘simplest possible’ error-correction procedure introduced in the previous
section will be sufficient to correct errors having this form.

15
The effect of the entanglement Wj on a single qubit is calculated by op-
erating Wj on the joint qubit–environment state (a |0i + b |1i) ⊗ |ψ1 i, and
then obtaining the reduced density matrix of the qubit by tracing over the
environment variables. The result is a density matrix as in equation (8),
with
α = 1 − ǫ. (14)
This is clearly a mixed state when ǫ > 0, and the error term is of O(ǫ).

When we examine the density matrix in basis 2, this error appears partly
as an amplitude error, and it can be corrected by the encoding and cor-
recting procedure described in the previous section (figures 1 and 2). To
calculate the effects, first the general single-qubit state (a |0i + b |1i) is en-
coded using three qubits, then each of the three undergoes entanglement
with the environment, described by three operators W0 , W1 , W2 defined by
equation 13. The overall state then involves 8 different environment states,
associated with 8 different 3-qubit states. The error correction procedure is
carried out next. In the calculation, it appears as a set of eight independent
corrections on each of the eight 3-qubit states. The final ‘corrected’ 3-qubit
density matrix is then taken to be the weighted sum of the eight 3-qubit
density matrices associated with different states of the environment. The
density matrix of the control qubit is extracted, yielding the form (8) with
1 1
α =1− (ǫ0 ǫ1 + ǫ0 ǫ2 + ǫ1 ǫ2 ) + ǫ0 ǫ1 ǫ2 (15)
2 2
This result shows that when only a single qubit decoheres (ie only one of the
entanglement terms ǫj is non-zero), the state is corrected exactly (α = 1),
and when all three undergo errors, the error term is of O(ǫ2 ) instead of
O(ǫ). The corresponding properties of classical single-error correction are
that single errors are corrected exactly, and error probabilities of order p
become of order p2 after correction.

The fact that the corrected density matrix is nearer to ‘pure state’ condi-
tions than the original density matrix (when ǫ = ǫj < 1), is an example of a
general phenomenon called ‘quantum privacy amplification’ in the context
of a quantum communication channel (Bennett et al. 1995; Deutsch et al
1996), and which will be referred to here as ‘purity amplification’. The
ability to implement purity amplification is an important part of the gen-
eral problem of error correction in quantum communication channels and

16
computers. This section has shown that the approach to error correction
adopted in this paper is capable of handling purity amplification. Indeed,
the ‘quantum privacy amplification’ protocol described by Deutsch et al.
1996 can be understood as an implementation of single-error detection in
basis 1 and basis 2 simultaneously, by means of a single parity check in each
basis. The fact that it is a detection rather than correction scheme explains
why non-useful pairs of bits have to be thrown away.

3.3 General single error correction

Suppose now the type of error is completely general—there is an arbitrary


change in the state of a qubit, including possible relaxation. To correct this,
the method is to implement single error correction in both bases simultane-
ously. For this, the encoding used in the previous section is not sufficient,
since there single errors in basis 1 could not be corrected. To understand
the encoding requirements, the concept of minimum distance, introduced by
Hamming 1950, is employed. The Hamming distance between two words
is equal to the number of bits which must be complemented in order to
convert one word into the other. The minimum distance d of a code is the
minimum Hamming distance between any two words in the code. A code of
minimum distance d > 2x is necessary if x errors are to be corrected, since
only if fewer than d/2 errors occur can the codeword which gave rise to
the erroneous word can be identified unambiguously as the only codeword
within distance d/2 of the erroneous word. In what follows, the standard
notation [n, k, d] will be employed to refer to a linear code using n bits,
having 2k codewords and minimum distance d.

To correct for a general single error, we require an encoding allowing min-


imum distance 3 in both basis 1 and basis 2. A method to do this was
presented by Steane 1996a, as follows. We seek a code C having the follow-
ing properties: its dual code C ⊥ has minimum distance 3, and it is itself a
subcode of a of code C + of minimum distance 3. The reasoning behind this
is best demonstrated by means of an example.

The [7, 3, 4] simplex code presented in section 2.2 has the properties re-
quired. Its dual code is the [7, 4, 3] Hamming code which has minimum

17
distance 3, and it is a subcode of the [7, 4, 3] punctured Reed-Muller code,
also of minimum distance 3. n = 7 is the smallest number of bits for which
a code can be found with these properties. The encoding and correcting
procedure is shown in figures 3 and 4, and explained as follows.

The encoding method is based on the generator matrix of the [7, 3, 4] simplex
code, given by equation (5) with φ1 , φ2, φ3 = 0. The simplex code thus
generated will be called |Ci. It is the state |Gs i shown in equation (6) with
all phase angles set to zero. The essential idea is that a qubit state |0i is
encoded as |Ci, while a qubit state |1i is encoded as |¬Ci, which is |Ci with
the not operation carried out on all the qubits, ie the coset |C ⊕ 1111111i.
It is easy to deduce that when the qubit Q to be encoded is in the state |0i,
the encoder shown in figure 3 places the 7 qubits in the state |Ci. To see
that |1i becomes encoded as |¬Ci, consider the parity check matrix of |Ci:

1 1 0 1 0 0 1
 
 0 1 0 1 0 1 0 
HC =  (16)
 
1 0 0 1 1 0 0

 
1 1 1 0 0 0 0

Now, |¬Ci fails all those parity checks for which there is an odd number of
1’s in the relevent row of Hs , and passes the others. Hence, the operations
which generate |Ci when starting from |0000000i, will generate |¬Ci when
starting from |0010110i, since the complemented qubits ensure that the
final state will pass and fail the checks in HC in the way appropriate for
|¬Ci. This initial complementing of qubits is the job of the first two cnot
operations in the encoder. The encoder therefore encodes a general single
qubit state (a |0i + b |1i) as (a |Ci + b |¬Ci).

Now, |Ci and |¬Ci are subcodes (strictly, cosets) of the [7, 4, 3] punctured
Reed-Muller code C + whose parity check matrix is
 
0 1 1 1 1 0 0
HC+  1 0 1 1 0 1 0 
= 
(17)
1 1 0 1 0 0 1

All legal encoded states satisfy this parity check matrix, and this is the basis
of the corrector shown in figure 4. The operation of the corrector is similar
to that of the corrector presented in the previous section (figure 2). Multiple

18
cnot operations are used to carry out parity checks, the parity qubits are
measured, and the state corrected by means of not operations on qubits
identified by the measured syndrome. Finally, the state is reencoded.

So far, error correction has been carried out in basis 1. However, the coding
was carefully selected in such a way that only words in the [7, 4, 3] Hamming
code C ⊥ should appear in basis 2. Therefore, error correction can also be
carried out in basis 2. The corrector is based on the parity check matrix
of the [7, 4, 3] Hamming code, which is equal to the generator matrix of its
dual, the matrix GC given in equation (5). Now, it so happens that the
[7, 4, 3] Hamming code is the same as the [7, 4, 3] punctured Reed-Muller
code (this is not always true for higher order codes), as can be seen by the
fact that GC and HC+ are equal (one can be converted to the other by
linearly combining rows). Therefore, the corrector in basis 2 is once again
given by figure 4, only now all the operations are carried out in basis 2.

The correction scheme described will tend to keep the encoded state confined
to the region of Hilbert space spanned by the two state vectors {|Ci , |¬Ci}.
This is a two-dimensional subspace within the 128-dimensional total Hilbert
space. The subspace is also spanned by the state vectors {|H, e i , |H, o i}
defined by the even and odd parity subcodes of the [7, 4, 3] Hamming code in
basis 2, since theorem 4 implies that |Ci + |¬Ci ≡ |H, e i and |Ci − |¬Ci ≡
|H, o i, up to a normalisation factor. If an arbitrary single-qubit state is
encoded as (a |Ci + b |¬Ci), and then any one (but only one) of the 7 qubits
is allowed to change state and entangle with the environment in an arbitrary
manner, the error corrector described in this section will return the 7 qubits
exactly to the error-free state (a |Ci + b |¬Ci). This will be proved below
as part of the more general theorem 6. If more than one qubit is allowed to
undergo errors, then error terms which would be of order ǫ in the density
matrix of an uncorrected qubit become of order ǫ2 or higher when encoding
and correction is employed.

3.4 Multiple correction of multiple qubits

The previous sections have introduced almost sufficient insights to enable


the general problem of multiple error correction of many qubits to be ad-

19
dressed. The final ingredient is theorem 5 below. Before it is presented,
we remark that just as in classical information theory, it is necessary to
distinguish between the amount of information k and the number of bits
n used in a [n, k, d] code, it will be necessary here to distinguish between
the number K of independent quantum bits of information we wish to keep
free of errors, and the number n of qubits used to do this. Thus, in section
3.1 a single qubit was encoded, K = 1, by means of n = 3 encoding qubits,
and in section 3.3 a single qubit K = 1 was encoded by means of n = 7
encoding qubits.

Theorem 5. To encode K qubits with minimum distance d1 in one basis,


and minimum distance d2 in the other, it is sufficient to find a linear code
C +K of minimum distance d1 , whose K’th order subcode C is the dual of a
distance d2 code.
Corollary: Finding such a code is sufficient not only to demonstrate that
the encoding is possible, but also to make self-evident the physical procedures
for encoding and correction.

A K’th order subcode of C +K is a code obtained by adding K rows to the


parity check matrix of C +K .

Proof: The general insight is that whereas in classical theory, information


is encoded using different words of a code, in the quantum mechanical case,
information is encoded using different cosets of a code. Thus in section
3.3, cosets of the [7, 4, 3] punctured Reed-Muller code, were used, and in
section 3.1, the even parity and odd parity codes in basis 1 were cosets of
the [n, n, 1] code of all possible words.

To encode K qubits, we require 2K cosets. If these are all non-overlapping


cosets of a distance d1 code, then clearly they are all separated from one
another by at least d1 . That is, all words in one coset are at least d1 from all
words in another coset. We can ensure the cosets do not overlap by defining
them as follows. K new rows are added to the parity check matrix of C +K .
The new rows are linearly independent of each other and of all the other
rows. (If this is not possible then n must be increased and the argument
restarted). Each of the K new parity checks can either be satisfied or not
satisfied. This allows 2K different possibilities, each of which produces a
coset which has no words in common with any of the other cosets. Hence

20
the cosets are non-overlapping.

Suppose the first coset C is a code having a dual C ⊥ . To obtain one of


the other 2K − 1 cosets from C, it is sufficient to complement in basis 1
whichever parity qubits implement a parity check which C satisfies but the
new coset does not. The effect in the other basis is to change the sign of
some of the words (by theorem 2). (Equivalently, it is sufficient to change
the sign of the relevent rows of the parity check matrix in basis 1, which
is the generator matrix in basis 2, by theorem 4). Therefore, each coset
in basis 1 produces the words of C ⊥ in basis 2, with signs depending on
the coset. Hence, for any superposition of the cosets in basis 1, all words
appearing in basis 2 are in the code C ⊥ . Therefore, if we require minimum
distance d2 in basis 2, it is sufficient that C ⊥ should be a distance d2 code,
and the theorem is proved.

The coding method of theorem 5 uses a 2K -dimensional subspace to store


the quantum information, within a total Hilbert space of dimension 2n . The
subspace is spanned by the 2K cosets of C +K in basis 1, and by 2K cosets of
C ⊥ in basis 2. The encoding and correcting operations are deduced directly
from the parity check matrices of the relevant linear codes, in the manner
illustrated by figures 1 to 4. An alternative approach to error correction is
illustrated by figure 5. To implement correction in basis 1 (basis 2), a set
of n − k1 (respectively n − k2 ) ancillary qubits is introduced, and the error
syndrome is stored into this ancilla by means of multiple cnot operations.
The operations required are exactly those specified by the parity check ma-
trix of C +K (respectively C ⊥ ), which proves the corollary to theorem 5. The
ancilla is measured (in the relevent basis), and the result used to calculate
which qubits in the quantum computer are to undergo a not operation.

3.5 Error correction in two bases is sufficient

This section is dedicated to the proof of the following theorem.

Theorem 6. Error correction in basis 1 followed by error correction in basis


2 is sufficient to restore the quantum computer after arbitrary errors of a
small enough subset of its qubits. Specifically, if x qubits undergo errors,

21
then correction is successful if at least x errors can be corrected in both basis
1 and basis 2.

This theorem shows that the correction methods described in this paper are
not limited to the correction of simple ‘qubit complementing’ errors, but can
handle any error process, as long as it only affects a subset of the n qubits
in the computer. To keep a clear distinction, the word flip is reserved in this
section to refer to error processes of the form either |0i ↔ |1i (‘a flip in basis
1’) or |0 i ↔ |1 i (‘a flip in basis 2’). Completely general erroneous changes
in the state of a qubit, including entanglement with the environment, will
be referred to as defection5 .

The following notations will be used.


E
|Cii = the i’th coset of C +K .
|Cij i = the j’th coset of |Cii .
E
Cij / 1Sk = |Cij i subject to flips in basis 1 whose error syndrome isSk
E
Ci/ 2Sl = |Cii subject to flips in basis 2 whose error syndrome is Sl
|en i = a state of the environment.

As an example of the above, consider the state |Cii = |0000i + |0011i +


|1100i + |1111i. One pair of possible cosets is |Ci0 i = |0000i + |0011i and
|Ci1 i = |1100i+|1111i. Suppose the error syndrome for the case of no errors
is S0 , then |Cij / 1S0 i = |Cij i. If a single error in the last bit produces the
syndrome S1 , then |Ci0 / 1S1 i = |0001i+|0010i; |Ci1 / 1S1 i = |1101i+|1110i;
|Ci/ 2S1 i = |0000i − |0011i + |1100i − |1111i.

In what follows, we will require the following result:


x −1
2X E
|Cij i = Ci/ 2Sl (−1)wt(j·l) (18)
l=0

where the notation wt(j · l) means the Hamming weight6 of j · l, and the dot
5
Random unitary changes (rotations) of a qubit are caused by defects in the quantum
computer; to entangle randomly with the environment is to form a treacherous alliance
with an enemy of successful quantum computation.
6
The Hamming weight of a bit string x is the number of 1’s in x.

22
indicates the bitwise and operation carried out between j and l. The result
holds for a particular type of coset Cij , which will be identified shortly.

It is obvious that a code can be written as the sum of its cosets: |Cii =
j |Cij i. The content of (18) is the inverse result, that a coset |Cij i can
P

be written as a sum of (erroneous) codes. The flips in basis 2 cause sign


changes amongst the basis 1 words of |Cii in such a way that when the sum
in equation (18) is carried out, all words in |Cii which do not belong to
|Cij i cancel, so the result is |Cij i.

Proof of equation (18). If Cij is an x’th order coset of Ci, then the parity
check matrix for Cij consists of the parity check matrix of Ci, plus x extra
rows. We consider the case that each of these extra rows contains all zeroes
apart from a single 1. For example, for x = 3, n = 10, the 8 cosets might
be counted by the values of the fourth, sixth and tenth qubits in basis 1, in
which case the parity check matrix in basis 1 is
 
Hi
wt(j·001)
(−1) 0000000001
 
 
|Cij i ↔   (19)

 (−1)wt(j·010) 0000010000 

(−1)wt(j·100) 0001000000
where Hi is the parity check matrix of |Cii. The j’th coset passes or fails
these extra parity checks according as the bits of the binary value of j are
zero or one. This pass/fail property is indicated by the sign (power of −1)
in front of each row of the matrix.7 Thus, Ci0 is the set of words of Ci for
which the 4’th, 6’th and 10’th bits are zero, Ci5 is the set of words of Ci
for which the 4’th and 10’th bits are one, and the 6’th is zero, since decimal
5 is binary 101, and so on.

In general, the type of coset for which equation (18) holds is one consisting
of all words in |Cii for which a chosen set of x qubits has the value j in
basis 1.

Since the matrix in equation (19) is the parity check matrix of |Cij i in basis
1, it is the generator matrix in basis 2 of the same quantum state (theorem
7
This sign is an example of the phase factor introduced in section 2.2 to generalise
the use of such matrices in the quantum mechanical as opposed to classical context (cf
Theorem 4).

23
4). But, such a generator matrix will generate the code Ci plus 2x − 1
erroneous copies of Ci, where a given copy will have flips of just the bits
selected by those extra rows of the generator matrix which were used to
generate that copy. Hence, equation (18) is proved.

We now pass on to the question of general errors and their correction. A


general defection of a single qubit can be written
)
|0i |e0 i → |0i |e1 i + |1i |e2 i
(20)
|1i |e0 i → |0i |e3 i + |1i |e4 i

where no assumptions are made about the environment states |ei i—they
may or may not be orthogonal, and they may include arbitrary (complex)
coefficients (they are not normalised). A general defection of x qubits is
x −1
2X E
|ji |e0 i → j/ 1Sk |ejk i (21)
k=0

where |ji is any one of the 2x possible x-qubit words.

Now, suppose that in some state |Cii, a subset of the qubits defect. The
subset contains x qubits positioned anywhere among the n qubits of the total
P2x −1
system. A state |Cii (ie before defection) can be written |Cii = j=0 |Cij i
where the j’th coset consists of all words in |Cii for which the subset of x
bits has the value j in basis 1. A general defection among the x defecting
qubits is the process indicated by equation (21), with the n − x unchanged
qubits acting as spectators, and with j indicating the initial values of the
decohering qubits. Therefore, the effect of defection on |Cij i is
x −1
2X E
|Cij i |e0 i → Cij / 1Sk |ejk i . (22)
k=0

Note that the state of the environment after defection is independent of i


in this equation. This is because we selected the cosets |Cij i in such a way
as to bring exactly this property about. The environment does not ‘care’
about the state of the spectator qubits, so its final state is not sensitive to
which code |Cii gave rise to the coset |Cij i.

We now have enough results to prove Theorem 6.

24
The proof: Using the encoding method of Theorem 5, a general state of a
computer before defection can be written
K −1
2X
|QCi = ci |Cii (23)
i=0

Expanding each state |Cii as a set of cosets, this is


K −1
2X x −1
2X
|QCi = ci |Cij i (24)
i=0 j=0

where we choose the set of cosets identified by the 2x possible values in


basis 1 of the x qubits which now defect. Using equation (22), the effect of
defection is
K −1
2X x −1 2x −1
2X E
Cij / 1Sk |ejk i .
X
|QCi |e0 i → ci (25)
i=0 j=0 k=0

Now apply error correction in basis 1. As long as x < d1 /2, this has the
effect that E E E
Cij / 1Sk 1 m0 → |Cij i 1 mk (26)
where |1 mk i indicates a state of the measuring apparatus used for correction
(cf figure 5). Therefore the total state of the quantum computer, environ-
ment and measuring apparatus becomes
K −1
2X x −1 2x −1
2X E
|Cij i 1 mk |ejk i
X
ci (27)
i=0 j=0 k=0
K −1
2X x −1
2X x −1
2X
!
E
1
= ci |Cij i mk , ejk . (28)
i=0 j=0 k=0

Note that the error correction has corrected all 2x cosets |Cij i in parallel.
The correction is not yet complete because each coset is entangled with a
different state of the environment.

Using equation (18), the total state given by (28) can be written
K −1
2X x −1 2x −1
2X x −1
2X
!
E E
2 wt(j·l) 1
X
ci Ci/ Sl (−1) mk , ejk . (29)
i=0 j=0 l=0 k=0

25
Now apply error correction in basis 2. As long as x < d2 /2, this has the
effect that E E E
Ci/ 2Sl 2 m0 → |Cii 2 ml (30)
where |2 ml i indicates a state of the measuring apparatus using for correction
in basis 2. Therefore the total state of the quantum computer, environment
and both measuring apparati becomes
K −1
2X x −1 2x −1
2X x −1
2X
!
E E
2 wt(j·l) 1
X
ci |Cii ml (−1) mk , ejk (31)
i=0 j=0 l=0 k=0
 K −1
 x −1 2x −1 x −1
2X 2X 2X
!
E E
2 wt(j·l) 1
X
=  ci |Cii ml (−1) mk , ejk (32)
i=0 j=0 l=0 k=0
E
2 1
= |QCi ⊗ m, m, e . (33)

Hence, the quantum computer becomes completely disentangled from its


environment, and is returned to its initial state. Therefore, error correction
in basis 1 and basis 2 is sufficient to restore the quantum computer after
arbitrary errors of x < d1 /2, d2 /2 qubits, and theorem 6 is proved.

4 Error rate limitations

We now turn to the question of whether errors can be supressed sufficiently


to enable useful computations to be carried out on a quantum computer.
This may also be regarded as a problem of communication over a noisy
quantum channel. The method is to establish the limitations implicit in the
coding method described by theorems 5 and 6.

The fundamental problem of the theory of classical error correcting codes


is to find codes of length n (ie n is the length of the words) and minimum
distance d which contain the maximum possible number of codewords. Let
this maximum possible number of codewords be A(n, d). Although A(n, d)
is not known in general, a number of upper and lower bounds have been
established. In what follows, we will make use of two simple bounds. The
first is the Hamming or sphere-packing bound introduced by Hamming 1950.

26
In the limit of large n, it takes the form
!!
log2 (A(n, d)) d
≤ 1−H (1 − ζ) (34)
n 2n

where ζ → 0 as n → ∞, and H(x) is the entropy function


1 1
H(x) ≡ x log2 + (1 − x) log2 . (35)
x 1−x
There are no codes of length n and distance d which have more words than
this upper limit, and usually the upper bound itself cannot be achieved.
This is the “bad news”. The good news is that useful codes do exist.
The Gilbert-Varshamov bound (Gilbert 1952; Varshamov 1957; see also
MacWilliams & Sloane 1977) is a sufficient but not necessary condition for
the existence of a [n, k, d] code. In the limit of large n, it takes the form
!!
k d
≥ 1−H (1 − ζ) (36)
n n

where ζ → 0 as n → ∞. It can be shown (MacWilliams & Sloane 1977) that


there exists an infinite sequence of [n, k, d] linear codes satisfying inequality
(36) with d/n ≥ δ if 0 ≤ δ < 1/2.

Theorem 5 states that to encode K qubits with minimum distances d1 and


d2 in bases 1 and 2, we require codes C +K , C, C ⊥ related as follows:
subcode dual
[n, x + K, d1] −→ [n, x, y] ←→ [n, n − x, d2 ] (37)

This implies that the codes C +K = [n, k1 , d1] and C ⊥ = [n, k2 , d2 ] have sizes
k1 , k2 related by
k1 + k2 = n + K (38)
Since all codes satisfy the Hamming bound (34), both C +K and C ⊥ do so.
Substituting in equation (38), this implies
! !
K d1 d2
≤1−H −H (39)
n 2n 2n

where the factors (1 − ζ) have been dropped for clarity (this will not affect
the argument).

27
Now, provided the parameters [n, k1 , d1 ] satisfy the Gilbert-Varshamov (G-
V) bound (36), then it is certainly possible to find a code C +K having size k1
and minimum distance d1 . What is the condition that such a code will have
associated with it a K’th order subcode C whose dual C ⊥ has minimum
distance d2 ? I conjecture that it is sufficient that C ⊥ also satisfy the Gilbert-
Varshamov bound. I have not been able to prove this, but the conjecture
seems reasonable since it is known that there is an infinite series of self-
dual codes which satisfy (36). Therefore in the set {C +K ↔ C ↔ C ⊥ }
= {[n, n/2 + K, d1] ↔ [n, n/2, d2 ] ↔ [n, n/2, d2]}, both C and C ⊥ can
satisfy the G-V bound simultaneously. In passing from C to C +K in this
case, one does not expect the minimum distance to fall especially rapidly,
so it is reasonable to suppose that C +K can also be found satisfying the
G-V bound.

Nota bene since submitting this manuscript I have learnt that Calderbank
and Shor 1996 have proved the above conjecture for the case d1 = d2 , by
proving that the G-V bound is a sufficient condition for the existence of
a weakly self-dual code, ie one containing its dual. These authors have
reported an independent derivation of the most important result (theorems
5 and 6 combined) of the present work.

It will be assumed, then, that a sufficient condition for K qubits to be


encoded with minimum distances d1 , d2 , is that C +K and C ⊥ both satisfy
the Gilbert-Varshamov bound. Substituting this bound (36) in equation
(38) leads to ! !
K d1 d2
≥1−H −H (40)
n n n
Inequalities (39) and (40) are closely related to Shannon’s main theorem in
the classical regime. The classical regime corresponds to the limit d2 /n → 0,
d1 = d, in which case we obtain 1 − H(d/2n) ≥ K/n ≥ 1 − H(d/n). The
context in which we have been working throughout corresponds classically
to a binary symmetric channel, having capacity C(p) = 1 − H(p) where
p is the error probability. Shannon’s theorem states that the rate K/n
can be arbitrarily close to capacity, while allowing error-free transmission.
This implies K/n ∼ 1 − H(p) is possible for a code of average distance
d = 2np(1 + ζ) with ζ arbitrarily close to zero. The averaging employed
here involves various technicalities which are discussed in standard texts; a

28
good introduction is given by Hamming 1986. For our present purposes, we
note simply that Shannon’s theorem gives K/n ∼ 1 − H(d/2n). Comparing
this with inequality (39), one sees that classically the Hamming bound gives
a good guide to the limits of what is possible for an average distance between
codewords, even though the minimum distance cannot not reach the upper
limit of the Hamming bound, and indeed more restrictive bounds are known
(see MacWilliams & Sloane 1977). This suggests that the Hamming bound
is a useful indicator in general, ie that codes which ‘approach’ it in an
average way do exist.

Returning to the quantum regime, let us consider for simplicity the case
d1 = d2 = d. This is the type of coding one would choose if the probabilities
of errors in bases 1 and 2 were equal. If they are not equal, one can always
choose d sufficiently large to allow correction in the most error-prone basis,
then it will also be more than sufficient for correction in the other basis.
For d1 = d2 = d, inequalities (39) and (40) give
! !
d 1 K d
 
H ≥ 1− ≥H , (41)
n 2 n 2n

which, in the case n ≫ K, implies


1 d 1
   
−1
H ≤ ≤ 2H −1 . (42)
2 n 2
The inverse entropy function H −1 (x) is defined for 0 < x ≤ 1/2 by H −1 (x) =
y iff x = H(y). Using H −1(1/2) ≃ 0.110028, we find that encoding K qubits
using n ≫ K allows d/n to be greater than 0.11, while d/n is certainly less
than 0.22006. These limits are shown on figure 6.

At this point, a complete discussion would introduce the notion of the ca-
pacity of a noisy quantum channel. The capacity would be limited by error
rates, and one would investigate whether error-free transmission is possible
at rates close to capacity, as in Shannon’s theorem. However, the capacity
of a noisy quantum channel is not yet understood, and the present author
has not developed a satisfactory definition. The equivalent of Shannon’s
noiseless coding theorem has been developed for the quantum regime by
Schumacher 1995, and it is found that the number K of qubits is a useful
measure of “amount of information” in the quantum case, as one would

29
hope. To understand the effect of noise (ie errors) in the quantum regime,
I conjecture that it is useful to model errors in a way analagous to that em-
ployed in classical information theory. That is, we assume that decoherence,
relaxation and so on in a real quantum computer or information channel
can be modelled by a stochastic treatment, in which, between two defined
times, each qubit either defects (undergoes an arbitrary error), or follows
the error-free evolution governed by the known parts of the system Hamil-
tonian. Which of these two occurs for any given qubit during any given
time interval is a random decision, the defection occuring with probability
p. This model is somewhat akin to the ‘quantum jump’ or ‘quantum Monte
Carlo’ models of dissipative processes in quantum mechanics introduced by
several authors in different contexts (Carmichael 1991; Dalibard et al. 1992;
Dum et al. 1992; Gisin 1984; Mølmer et al. 1993 and references therein).
This similarity suggests that the model can provide a realistic description
of a large class of real error processes8 . In fact the assumption we make is
not that error processes can be fully modelled in this way, but merely that a
scheme which can correct this assumed type of error will be able to correct
satisfactorily the errors in a real physical computer.

With our stochastic model of errors, an argument using the law of large
numbers can be employed to show that the probability that uncorrectable
errors occur falls to zero when codes of long enough minimum distance are
employed, just as in classical information theory. Thus, in the stochastic
model, the probability that exactly x errors (defections) occur among n
qubits is given by the binomial distribution, if we assume that errors in
different qubits are independent. The probability that any number up to x
qubits defect is
x
(ni) pi (1 − p)n−i .
X
F (x) = (43)
i=0

where p is the probability of defection of a single qubit, during some defined


interval of time t → t+∆t. When n, np ≫ 1, this can be approximated using
8
Note, however, that the occurence of a random defection is not to be identified
exactly with a quantum jump occuring in the quantum Monte Carlo method of Dalibard
et al. 1992, Mølmer et al. 1993, since in that method an error term still appears in the
state when no quantum jump occurs, due to the non-Hermitian part of the Hamiltonian
employed during the periods of evolution between jumps. The quantum Monte Carlo
method has exactly the stochastic form we require when only phase relaxation occurs in
one basis (“relaxation of type T2 ”, cf section 3.2).

30
√ q
the error function: F (x) ≃ erf((x−µ)/σ 2) where µ = np, σ = np(1 − p).
If an x-error correction scheme is implemented (using a code of distance
d = 2x + 1), then F (x) is the probability that the code can be corrected
successfully. When the correction is successful, the state of the quantum
computer is exactly what it should be (the assumptions of the stochastic
model permit this ‘unphysical’ conclusion).

If the whole computation requires a total number T of time steps, each of


duration ∆t, and error correction is carried out at the end of each time step,
then the probability that the whole computation is free of errors is

P (n, p, d, T ) = (F (x = ⌊(d − 1)/2⌋))T (44)

In the case of the binomial distribution, the law of large numbers is expressed
by the fact that once the number of correctable errors x = ⌊(d − 1)/2⌋
becomes larger than the mean number of errors µ = np, the error function
F (x) becomes arbitrarily close to 1 as n is increased. To see√just how close,
2
we use the asymptotic expansion 1 − erf(z) ≃ (exp(−z )/2 π)(1 − 1/2z 2 +
· · ·), for z ≫ 1, which gives

P (recover successfully after one timestep) ≃ F (x = d/2)


s
−n(d/2n − p)2
!
1 2p(1 − p)
≃ 1− exp
d/2n − p nπ 2p(1 − p)
d
where ∼ H −1 ((1 − K/n)/2)
2n
using inequalities (41). The probability that the computer cannot recover
from errors falls exponentially with n, as long as codes are used which keep
close to the maximum possible correction ability (ie Hamming distance),
and as long as p is below an upper bound which does not depend on n
or K. It has been supposed that such exponential stabilisation would be
impossible for a quantum computer. Indeed, it is a surprising result which
goes right against the usual conclusion of the Schrödinger cat paradox, in
which macroscopic superpositions appear to be inherently unstable, and
unstabilisable. However, using inequalities (42) (cf figure 6), we find that
error-free computation is guaranteed to be be possible if p <∼ 0.055. Error-
free computation is impossible if p >∼ 0.11003 if correction is attempted
using the type of coding method derived in this paper. However, we have

31
not ruled out the possible existence of more powerful correction methods
which would allow this upper limit on p to be increased.

As an example, consider a computer requiring K = 1000 qubits, which


are encoded using a set of n = 10000 qubits. Inequalities (41) allow d1 =
d2 = 939. Suppose the error (ie defection) probability during each time
step is p = 0.04, and T = 10000 time steps are required. During each
step, on average 400 errors occur, and the standard deviation of the error
distribution is about 20. The probability of error-free computation is, from
equation (44), P (n, p, d, T ) ≃ 0.01. If p is reduced to p = 0.03, on the
other hand, then F (x) ≃ 1 − 4 × 10−23 and error-free computation is almost
certain for any reasonable length T of the calculation.

5 Concluding remarks

The error correction methods which have been presented involve many two-
qubit cnot operations each time correction is carried out, and the whole
process only works if these operations can be performed without introduc-
ing too many extra errors. The number of 1’s in the parity check matrix of
a [n, k, d] code is about kd, since each message bit must be associated with
at least d − 1 parity checks. Therefore, the error corrector of such a code
involves of the order of kd two-qubit operations. For the case d1 = d2 one
uses coding with k1 = k2 ≃ n/2, and correction is carried out in both bases.
Therefore the total number of operations for one complete correction is of
order nd ≃ 2n2 p. A logical choice would be to correct the whole computer
every time an elementary computing operation is performed. Therefore,
the introduction of error correction causes the total number of two-qubit
operations to be multiplied by 2n2 p. This is a modest extension of the re-
sources necessary to complete a computation, since n itself does not increase
faster than the number K of bits of quantum information employed. The
great gains in computing power associated with “quantum parallelism” are
retained in the corrected noisy computer.

32
It may come as a surprise that the condition for error-free computation
derived above is simply an upper bound p < H −1 (1/2) ≃ 0.11 on the
error probability, rather than a scaling law for n as a function of K and
p. However, this is in the nature of the approach we have adopted, since
when np ≫ 1, the number of errors that actually occur during any one
time step is almost certainly very close to the average number np, so the
whole battle is won or lost on the ability to correct this number of errors.
The corresponding limit in the classical regime is p < H −1 (1) = 1/2, above
which error-free communication is impossible and the channel capacity falls
to zero. Indeed, if the only errors that occur in the quantum case are phase
errors in one of the bases (say basis 1), then we can afford to use d1 = 1, and
the coding problem reduces to the classical one, so p can approach H −1 (1)
once again. The factor 1/2 rather than 1 appearing in the inverse entropy
function arose because it was assumed just before inequalities (41) that
arbitrary unknown errors will require correction in both basis 1 and basis
2. It is here that the difference between a qubit and a classical bit enters:
the extra degrees of freedom associated with the qubit mean that we do not
know, in general, in which basis to correct it, so we are forced to correct
it in two mutually rotated bases. By theorem 3, this means that both a
code and its dual must be capable of correcting the expected error rate, so
both k/n and 1 − k/n are limited by Shannon’s theorem. The classical and
quantum cases can be compared thus:
Classical Quantum
) )
k/n < 1 − H(p) k/n < 1 − H(p)
(n ≫ K)
k/n > 0 1 − k/n < 1 − H(p)
⇒ H(p) < 1 ⇒ H(p) < 1/2
It should be stressed that the left hand side of this comparison represents
a well-founded body of knowledge, while the right hand side involves some
assumptions which remain to be investigated further.

The whole argument has assumed that the process of error correction does
not itself introduce defection (ie decoherence etc). However this is an unreal-
istic assumption, since the error correction procedure is itself a special kind
of quantum computation. Clearly, the probability of error during one time
step must be reckoned to increase with the number of operations needed to
implement error correction. However, such errors can be corrected during

33
the next time step, provided that they affect sufficiently few qubits. The
analysis of this in detail is an important avenue for future work.

In conclusion, the main contribution of this paper, and of Calderbank and


Shor 1996, has been to show how to adapt the classical methods of error
correction to the quantum regime. Theorems 5 and 6 are central. The sec-
tions leading up to them introduced the ideas, and those following examined
the implications. The theorems show that a macroscopic quantum system
can be stabilised by a judicious use of unitary operations and dissipative
measurements. This is a type of feedback loop or ‘quantum servo-control’.
Among the results gained along the way are a useful taxonomy of types of
multiple-particle (or multiple-qubit) interference, and a general insight into
how to perform quantum purity amplification. These are basic properties of
quantum theory, the former showing how information can be embodied in
many qubits simultaneously, and the latter showing how quantum commu-
nication can be isolated from noise and evesdropping. The linear codes we
have discussed constitute a generalisation of the ‘Bell basis’ to many qubits.

The obvious need now is for a fuller understanding of the capacity of a noisy
quantum channel. In particular, it would be useful to find out whether a
stochastic model for errors in a quantum channel is sufficient to enable the
error rate for many qubits to be estimated. Also, the effect of noise during
the error correction process needs to be investigated. On the experimental
side, an implementation of the simplest error correction schemes using 3 or
7 qubits would be a significant step forward.

I thank members of the Oxford Quantum Information group for commenting


on the manuscript. The author is supported by the Royal Society.

34
References
[] Barenco, A. 1995 A universal two-bit gate for quantum computation.
Proc. R. Soc. Lond. A 449, 679-683.

[] Bell, J. S. 1964 On the Einstein-Podolsky-Rosen paradox. Physics 1, 195-


200. Reprinted in Bell, J. S. 1987 Speakable and Unspeakable in Quantum
Mechanics, pp. 14-21. Cambridge University Press.

[] Bennett, C. H., Brassard, G., Popescu, S., Schumacher, B., Smolin, J.


& Wootters, W. K. 1995 Purification of noisy entanglement and faithful
teleportation via noisy channels. Phys. Rev. Lett. 76, 722-725.

[] Bernstein, E. & Vazirini, U. 1993 Quantum complexity theory. In Proceed-


ings of the 25’th Annual ACM Symposium on the Theory of Computing,
pp. 11-20. New York: Association for Computing Machinery.

[] Berthiaume A., Deutsch D. & Jozsa, R. 1994 The stabilisation of quantum


computation. In Proceedings of the Workshop on Physics and Computa-
tion, PhysComp 94, pp. 60-62. Los Alamitos: IEEE Computer Society
Press.

[] Carmichael, H. J. 1991 An open systems approach to quantum optics.


Lectures presented at l’Université Libre de Bruxelles, Bruxelles, Belgium,
autumn 1991.

[] Cirac, J. I. & Zoller, P. 1995 Quantum computations with cold trapped


ions. Phys. Rev. Lett. 74, 4091-4094.

[] Dalibard, J., Castin, Y. & Mølmer, K. 1992 Wave-function approach to


dissipative processes in quantum optics Phys. Rev. Lett. 68, 580-583.

[] Deutsch, D. 1985 Quantum theory, the Church-Turing principle and the


universal quantum computer. Proc. R. Soc. Lond. A 400, 97-117.

[] Deutsch, D. & Jozsa, R. 1992 Rapid solution of problems by quantum


computation. Proc. R. Soc. Lond. A 439, 553-558.

[] Deutsch, D., Barenco A., & Ekert, A. 1995 Universality in quantum com-
putation. Proc. R. Soc. Lond. A 449, 669-677.

35
[] Deutsch, D., Ekert, A., Jozsa, R., Macchiavello, C., Popescu, S., Sanpera,
A. 1996 Quantum privacy amplification and the security of quantum cryp-
tography over noisy channels. Oxford University preprint. Submitted to
Phys. Rev. Lett.

[] DiVincenzo, D. P. 1995 Two-bit gates are universal for quantum compu-


tation. Phys. Rev. A 51, 1015-1022.

[] Dum, R., Zoller, P., & Ritsch, H. 1992 Phys. Rev. A 45, 4879.

[] Ekert, A. 1995 in Atomic Physics 14 (ed. D. J. Wineland, C. E. Wieman


and S. J. Smith). New York: AIP Press. Also Ekert A. & Jozsa, R., Rev.
Mod. Phys. (to be published).

[] Feynman, R. P. 1982 Simulating physics with computers. Int. J. Theor.


Phys. 21, 467-488.

[] Gilbert, E. N. 1952 A comparison of signalling alphabets. Bell Syst. Tech.


J. 31, 504-522.

[] Gisin, N. 1984 Phys. Rev. Lett. 52, 1657; Helvetica Phys. Acta 62, 363
(1989).

[] Greenberger D. M., Horne M. A. & Zeilinger, A. 1989 Going beyond


Bell’s theorem. In Bell’s theorem, Quantum Theory, and Conceptions of
the Universe (ed. M. Kafatos), pp.73-76. Dordrecht: Kluwer Academic
Press.

[] Greenberger, D.M., Horne, M. A., Shimony A. & Zeilinger, A. 1990 Bell’s


theorem without inequalities. Am. J. Phys. 58, 1131-1143.

[] Hamming, R. W. 1950 Error detecting and error correcting codes. Bell


Syst. Tech. J. 29, 147-160.

[] Hamming, R. W. 1986 Coding and Information Theory, 2nd edn. Engle-


wood Cliffs: Prentice-Hall.

[] Hughes, R. J., Alde, D. M., Dyer, P., Luther, G. C., Morgan, G. L. &
Schauer, M. 1995 Contemp. Phys. 36, 149-163.

[] Landauer, R. 1995 Philos. Trans. R. Soc. London Ser. A. 353, 367.

36
[] MacWilliams, F. J. & Sloane, N. J. A. 1977 The Theory of Error-
Correcting Codes. Amsterdam: North Holland.
[] Palma, M. G., Suominen K-A. & Ekert, A. K. 1996 Proc. Roy. Soc. Lond.
A 452, 567-584.
[] Mermin, N. D. 1990 Extreme quantum entanglement in a superposition
of macroscopically distinct states. Phys. Rev. Lett. 65, 1838-1840.
[] Mølmer, K., Castin Y. & Dalibard, J. 1993 Monte Carlo wave-function
method in quantum optics. J. Opt. Soc. Am. B 10, 524-538.
[] Peres, A. 1993 Quantum Theory: Concepts and Methods. Dordrecht:
Kluwer Academic Press.
[] Phoenix, S. J. D. & Townsend, P. D. 1995 Quantum cryptography: how
to beat the code breakers using quantum mechanics. Contemp. Phys. 36,
165-195.
[] Schrödinger, E. 1935 Naturwiss. 23, 807. Translated in Quantum Theory
and Measurement (ed. J. A. Wheeler & W. H. Zurek). Princeton Univer-
sity Press 1983.
[] Schumacher, B. 1995 Quantum coding. Phys. Rev. A 51, 2738-2747.
[] Shimony, A. 1989 Conceptual foundations of quantum mechanics. In The
New Physics (ed. P. Davies) pp.373-395. Cambridge University Press.
[] Shor, P. W. 1994 Algorithms for quantum computation: Discrete loga-
rithms and factoring. In Proceedings of the 35’th Annual Symposium on
Foundations of Computer Science (ed. S. Goldwasser), pp. 124-134. Los
Alamitos: IEEE Computer Society Press.
[] Shor, P. W. 1995 Scheme for reducing decoherence in quantum computer
memory. Phys. Rev. A 52, R2493-R2496.
[] Simon, D. 1994 On the power of quantum computation. In Proceedings of
the 35’th Annual Symposium on Foundations of Computer Science (ed. S.
Goldwasser), pp. 116-123. Los Alamitos: IEEE Computer Society Press.
[] Steane, A. M. 1996 Error correcting codes in quantum theory. Submitted
to Phys. Rev. Lett.

37
[] Turing, A. M. 1936 Proc. Lond. Math. Soc. Ser 2 43, 544.

[] Unruh, W. G. 1995 Maintaining coherence in quantum computers. Phys.


Rev. A 51, 992-997.

[] Varshamov, R. R. 1957 Estimate of the number of signals in error cor-


recting codes. Dokl. Akad. Nauk. SSSR 117, 739-741.

[] Zurek, W. H. 1981 Pointer basis of quantum apparatus: Into what mix-


ture does the wave packet collapse? Phys. Rev. D 24, 1516-1525.

[] Zurek, W. H. 1993 Preferred states, predictability, classicality and the


environment-induced decoherence. Prog. Theor. Phys. 89, 281-312; see
also Zurek, W. H. 1991 Decoherence and the transition from quantum to
classical, Physics Today 44 October, 36.

38
Figure 1: Encoding for simplest error correction scheme. Initially Q is the
qubit to be encoded, and the three ‘encoding’ qubits are in the state |000 i.
Symbols: l= state swapping; ×| = controlled not in basis 2.

Figure 2: Simplest error correction scheme. All operations take place in


basis 2. After two cnot operations, the lower two qubits are measured in
basis 2. The results are fed to a classical ‘box’ which then complements
(not operation) one or more of the qubits, depending on the measurement
results. The two final cnot’s reencode the state (see text).

Figure 3: Encoder for the simplest scheme enabling single error correction in
both bases. The multiple cnot symbols mean successive cnot operations
carried out between the single control qubit and each of the target qubits.
The initial state is |00Q0000i. The first two cnot operations prepare for
the generation of a superposition of the simplex code and its complement.
The rest generates the code from this preparatory state. The symbol R
means the rotation |0i → |0 i, |1i → |1 i.

Figure 4: Error corrector for the code generated by figure 3. Multiple cnot
operations perform parity checks. The lower three qubits are measured, and
the results used to determine which qubits undergo a not operation. The
scheme is first applied in basis 1, then in basis 2 (see text).

Figure 5: Alternative method of error correction. Codes need not be cor-


rected ‘in place’ using the qubits of the computer itself (as in the previous
figures). It may be more convenient to establish the error syndrome using
a set of ancillary qubits. The example shown here carries out the same
correction as the corrector of figure 4.

Figure 6: Asymptotic bounds, in the limit of large n, on the rate of a


quantum code. Full curves: inequalities (41); dashed curve: Hamming
bound for a classical code (ie quantum case with phase errors only). The
upper full curve is an upper (Hamming) bound for the codes discussed in
the text, the lower full curve is a sufficient (Gilbert-Varshamov) condition
for the existence of the codes discussed.

39
Q
R
R
Q
R
1

0.8

0.6
K/n

0.4

0.2

0
0 0.1 0.2 0.3 0.4 0.5
d/n

You might also like