lopscience

¡opscience.iop.org

Home Search Collections Journals About Contact us My IOPscience

Self-correcting quantum computers

This article has been downloaded from IOPscience. Please scroll down to see the full text article.

2013 New J. Phys. 15 055023

(http://iopscience.iop.org/1367-2630/15/5/055023)

View the table of contents for this issue, or go to the journal homepage for more

Download details: IP Address: 134.68.190.47

The article was downloaded on 11/06/2013 at 18:40

Please note that terms and conditions apply.

New Journal of Physics

The open access journal for physics

Self-correcting quantum computers

H Bombin1,5, R W Chhajlany2, M Horodecki3 and M A Martin-Delgado4

1 Department of Physics, Massachusetts Institute of Technology, Cambridge, MA 02139, USA

2 Faculty of Physics, Adam Mickiewicz University, Poznan, Poland

3 Institute of Theoretical Physics and Astrophysics, University of Gdansk, Poland

4 Departamento de Física Teórica I, Universidad Complutense, E-28040 Madrid, Spain

E-mail: hector.bombin@gmail.com

New Journal of Physics 15 (2013) 055023 (42pp) Received 20 February 2013 Published 29 May 2013 Online at http://www.njp.org/

doi:10.1088/1367-2630/15/5/055023

Abstract. Is the notion of a quantum computer (QC) resilient to thermal noise unphysical? We address this question from a constructive perspective and show that local quantum Hamiltonian models provide self-correcting QCs. To this end, we first give a sufficient condition on the connectedness of excitations for a stabilizer code model to be a self-correcting quantum memory. We then study the two main examples of topological stabilizer codes in arbitrary dimensions and establish their self-correcting capabilities. Also, we address the transversality properties of topological color codes, showing that six-dimensional color codes provide a self-correcting model that allows the transversal and local implementation of a universal set of operations in seven spatial dimensions. Finally, we give a procedure for initializing such quantum memories at finite temperature.

5 Author to whom any correspondence should be addressed.

^ I Content from this work may be used under the terms of the Creative Commons Attribution 3.0 licence.

Any further distribution of this work must maintain attribution to the author(s) and the title of the work, journal citation and DOI.

New Journal of Physics 15 (2013) 055023 1367-2630/13/055023+42$33.00

© IOP Publishing Ltd and Deutsche Physikalische Gesellschaft

Contents

1. Introduction 3

2. Previous results 5

3. Subsystem approach to fault-tolerant quantum computing 5

4. Stabilizer codes and transversal gates 7

4.1. Stabilizer codes....................................................................7

4.2. Error correction....................................................................7

4.3. Dressed observables and critical syndromes......................................8

4.4. Transversal gates..................................................................9

4.5. CSS-like codes....................................................................10

5. Modeling interaction with the environment 11

5.1. Evolution in the weak coupling limit..............................................11

5.2. Fidelity and autocorrelation functions............................................12

5.3. Upper bound for the decay rate....................................................13

6. Conditions for self-correcting quantum memories 14

6.1. Stabilizer code models............................................................14

6.2. A bound in terms of critical syndromes............................................14

6.3. Sketch of the proof of stability of the Kitaev model..............................15

6.4. A criterion based on connectedness................................................17

6.5. Resilience to noise ................................................................19

7. Topological stabilizer codes 20

7.1. Local stabilizer codes..............................................................21

7.2. Homology groups..................................................................21

7.3. Codes from homology groups ....................................................22

7.4. Generalized toric codes............................................................24

7.5. Generalized color codes............................................................26

7.6. Transversality properties of color codes..........................................31

8. Self-correcting quantum computers 34

8.1. Initialization from thermal states..................................................34

8.2. Measurements......................................................................35

8.3. Transversal gates..................................................................36

9. Conclusions 37

10. Later results 38 Acknowledgments 39 Appendix A. Relationship between fidelity and the autocorrelation function: the proof

of proposition 1 39

Appendix B. A bound for connected collections 39

Appendix C. Proof of theorem 1 40

References 40

1. Introduction

The quest for a robust and stable quantum computer (QC) is a challenge in quantum information science and its construction will imply the discovery of new physics. We may classify QCs according to their protection against different decoherence sources, as follows: (i) bare QC, (ii) externally protected QC and (iii) internally protected QC. This sequence ranges in increasing degree of complexity. Case (i) corresponds to the ideal functioning of a QC without errors. This was the original formulation of the quantum circuit model prior to error correction [1]. The bare QC has already produced new physics by means of small-sized devices with ion traps, optical lattices and others [1, 2]. Case (ii) is a big step forward and corresponds to stabilizing the processing of quantum information by means of acting externally on the QC in order to repair the damage produced by errors and environment interactions. Fault-tolerant quantum computing is the paradigm of this method and the so-called error-threshold theorem is its successful outcome, meaning that quantum computation is not just analogue computation [3-10]. However, this approach has not yet met full experimental success. Case (iii) is a more demanding approach in which we ask the quantum device to have the ability to correct itself whenever an error occurs. Producing such a self-correcting QC will amount to finding a new quantum state of matter, and topological orders [11] constitute promising candidates for this or variants thereof.

In this paper, we take up the challenge of constructing a fully fledged self-correcting QC including all basic operations: (a) initialization, (b) quantum gates and (c) measurements. We address the formulation of this problem from a fundamental viewpoint, i.e. is it, in principle, possible to satisfy operations (a)-(c) in a self-correcting way? We answer positively this question and give an explicit construction of such an internally protected QC. Specifically, our solution is constructed by means of a special type of topological quantum codes, called topological color codes (TCC). To this aim, we construct a new lattice with D = 6 spatial dimensions and the desired properties in section 7.5.1. In order to appreciate the implications of this result, we may draw a comprehensive parallelism between the current achievements for externally and internally protected QCs.

This comparison states that, as long as the error rate p of the externally protected QC is low enough with respect to the threshold, arbitrary long-term reliable computations can be carried out. The bad news is that typical error thresholds pc are very small in practice and no quantum device of this type yet exists. Nevertheless, this result is considered a landmark of quantum computation, a proof of principle that quantum processing is possible. Interestingly enough, as for internally protected QCs, we have a very similar situation, with pros and cons. We shall prove that a complete self-correcting QC can be formulated as long as the spatial dimension D of the local array of qubits is high enough. This is a remarkable result from a fundamental point of view and sets the critical dimension of our constructions to Dc = 6. It opens up the way to improve these constructions in the direction of decreasing Dc, much like methods for increasing pc are actively sought after. An important remark is in order here: our models are solely constructed based upon qubits, i.e. spin-1/2 systems and simple interactions. It is known, however, that by changing the content and type of degrees of freedom, a quantum system can lower its critical dimension. Thus, it is conceivable that more elaborate models than those proposed here will be able to perform better as far as Dc is concerned. If this were not possible, then we would arrive at the remarkable result that a self-correcting QC is not realizable in a three-dimensional (3D) space lattice.

The issue of stability of self-correcting quantum memories [12, 13] at finite temperature has been attracting much attention. One reason for this is that they are more physical than the models of fault-tolerant quantum computation based on the quantum circuit model [14].6 While the latter is based solely on the naked quantum formalism with no dynamics, the topological memory relies on a suitable Hamiltonian that protects quantum information as classical information is protected in, e.g., a two-dimensional (2D) ferromagnet. The original topological memories are placed on a torus, and it is known that they offer stable qubits only starting from four spatial dimensions [13, 15-18].

Both the toric models and others [19] have some similar drawbacks. They do not support a set of universal gates, and no scheme is known for the initialization of these self-correcting memories in the Hamiltonian spirit. Namely, one would like to have something similar to an Ising model, where the state of definite magnetization is prepared by simply switching on a global magnetic field and then switching it off adiabatically. Thus, disregarding for a while the dimension of the model, an interesting question arises: does there exist a self-correcting QC, allowing universal computation as well as a natural initialization scheme?

In this paper, we propose a first such model. To this end, we use color codes, a class of topological codes with very special transversality properties [20, 21]. Color codes are obtained from colexes, a class of lattices introduced in [22], and their underlying mathematical structure is a simplicial homology that differs from the usual one because it is 'colored'. In the color code Hamiltonian models excitations take the form of branyons [22], point-like or extended objects subject to topological interactions. These models are local but require interactions between many spin-1/2 systems, a difficulty that can be overcome. For example, Weimer et al [23] introduce an experimental proposal to implement the many-body interactions present both in toric and color codes. Alternatively, a local two-body Hamiltonian model that effectively yields a 2D color code has been also proposed [24] (see also [25] in this context).

The main idea of the present paper is that in a suitable spatial dimension it is possible to find color codes that support universal quantum computing and, at the same time, provide self-correction (which we prove giving a Peierls argument in the style of [13, 16]). Namely, we construct a six-dimensional (6D) code that supports the transversal controlled not (CNot) gate and n/4 phase gate, and transversal measurement in the X and Z basis, as well as initialization in those bases. This allows for universal quantum computation [50]. One more dimension enables local CNot gates.

We also present a scheme of initialization, analogous to that of a ferromagnetic memory. We believe that this is the first proposal of such an initialization, as opposed to standard methods in fault tolerance (usually based on measuring syndrome on some initial product state). There is a remarkable difference between our initialization scheme and that of a ferromagnetic memory. Namely, we need to switch off at some point part of the protecting Hamiltonian, which is not needed in the latter case. Alternatively, we have proposed another initialization method based on code deformation that does not require switching on/off the Hamiltonian (see section 8.1.2). Let us emphasize that we are always using the most realistic scenario; namely we assume finite temperature T > 0, implying that our notion of self-correction is very strong.

This paper is organized as follows. We first recall the previous results regarding thermal stability of self-correcting quantum memories (section 2). In section 3, we discuss the subsystem picture, which is natural for our analysis of thermal stability. In section 4, we describe the

6 For critical analysis of fault-tolerant quantum computing from the physical point of view, see [14]. New Journal of Physics 15 (2013) 055023 (http://www.njp.org/)

general properties of stabilizer codes. We also introduce 'dressed' observables—the ones that define the protected qubit. In section 5, we present our modeling of the interaction with the environment. We recall an upper bound on the decay rate of the autocorrelation functions, and its relation to fidelity. We then formulate sufficient conditions for self-correction, related to the Peierls argument in section 6. In addition, we prove that the given conditions also ensure that the quantum memory is resilient to a certain amount of noise applied suddenly. Next, we turn to the construction of the models, which must satisfy the conditions and at the same time allow a universal set of transversal operations (section 7). We give a unified homological picture of toric codes and color codes, and prove in detail that some color codes possess both properties at the same time. Finally, in section 8, we propose a scheme for initialization, measurement and gate application.

2. Previous results

The idea of a thermally stable self-correcting quantum memory goes back to [13]. The authors propose a four-dimensional (4D) topological model and use a Peierls argument to provide heuristic basis in favor of its thermal stability. In [16], this was proved rigorously using the formalism of quantum dynamical semigroups. In this paper, we generalize the latter proof. We give stability conditions that apply to general stabilizer codes and then apply them to toric and color codes.

Most likely, there is no stable quantum memory in 2D. A full proof has been given in [15] in the case of the 2D Kitaev model (see also [27] in this context). The no-go results for stabilizer codes have been provided in [17, 18]. Even though these results do not lead to a full proof of instability in the weak coupling limit, they point out quite clearly that there is no hope of stability in such models.

Finally, let us note that many works have studied the existence of topological order in finite temperature (see e.g. [28-30]) and the main conclusions were compatible with the results on stability of quantum memories.

3. Subsystem approach to fault-tolerant quantum computing

The most basic approach to quantum error correction is the following. One considers a subspace, the code, chosen in such a way that if the initial state belongs to the subspace and if not too many errors hit the system, there exists a quantum operation, the recovery map, that restores the initial state.

Such a scheme assumes ideal encoding and decoding, but in reality all operations are exposed to decoherence. The prepared state is already erroneous to a certain extent. Then, in fault-tolerant computing schemes, it is subjected to repetitive error correction that keeps the amount of errors stable. At the end of computation, if the ideal recovery existed, one could map the state back to the code subspace, but this is not really available or needed. Rather, one wants to measure some observable on the state. The measurement is nonideal, but if the state did not suffer too many errors and the measurement does not produce too many either, then the statistics will be arbitrarily close to those expected in the ideal scenario, where encoding and recovery are perfect operations.

To describe the above situation it is more convenient to consider a virtual subsystem [31] (see also [32] in this context). Then the fact that we cannot apply perfect operations does not

exclude that we can prepare the subsystem in a given state with an arbitrarily high fidelity. For example, in standard hard drives, the sign of any single spin varies in time. However, the majority of signs of all spins (i.e. magnetization) are preserved with tremendous perfection.

The virtual subsystem is actually strictly related to the recovery procedure (see [33] in this context). Namely, the observables acting on the code are lifted to the full space by subjecting them to an operation dual to the recovery map [16] (we shall present this construction in section 4.3).

In the virtual subsystem picture, if we were able to start with the state within the code the initial state would be ® ^Anc, where V denotes the virtual subsystem and the second subsystem is HAnc, where ^ is the wanted state of the subsystem, then the errors (if not too many of them occur) affect only the second subsystem, whose state turns into a mixed state.

In reality the encoding is not error-free, so that the initial state is of the form |V ®

pAnc. If the state p0 meets some conditions, then it is capable of accumulating the errors, which then do not affect the state . However, in the absence of some additional mechanism, we will face some saturation, and the errors will affect the system V. In fault-tolerant schemes, there are two contradictory forces: the environment adds errors (which propagate), while the user tries to correct errors. When these forces are balanced we get a dynamical equilibrium: the system is always in a state of the form | V ® pAnc, i.e. the saturation will never occur.

The above formulation is natural not only for traditional fault-tolerant error correction schemes, but also for self-correcting models. In these models, there is a self-Hamiltonian that causes the environment to do both jobs: adding and removing errors (the latter due to the Boltzmann factor). In such a situation, the system is (after initial equilibration) for a long time in the state |V ® pp, where pp is the thermal equilibrium state of the second subsystem.

The Gibbs state of the whole system would be proportional to IV ® pp, and the whole system will eventually relax to this state. However, there may exist a critical temperature below which the state of V will be unaffected for a time that scales exponentially with the size of the total system [13].

In standard fault-tolerant schemes (where there is active error correction), entropy is produced by the environment and reduced by the procedure of error correction. In the self-correcting case, both processes are performed by the environment. The fight (as usual in phase transition phenomena) is between entropy and energy—entropy causes errors and energy forces correction via Boltzmann factors.

Let us emphasize that we do not deal here with the so-called 'noiseless subsystem' [31]. The noiseless subsystem is protected against some class of errors for the arbitrary state of the rest of the system, while here we have protection only when the rest is in some particular state, e.g. Gibbs state, in the case of self-correcting models. Also an error-correcting code usually does not form a noiseless subsystem: assuming that the code can correct up to k errors, only if we start with the initial pure state ® 0Anc the subsystem can indeed tolerate k errors. Indeed to tolerate these errors we need to start from the code, which in subsystem picture is the span of ^V ® 0Anc for all ^ from the subsystem, but for a fixed 0Anc.

The sketched subsystem picture is especially useful if we want to analyze the interaction of the quantum memory with the environment. Then there are known tools to work with autocorrelation functions of observables. To estimate the stability of the memory it suffices to show that these autocorrelations do not decay in time. The suitable observables are those from the algebra of the virtual subsystem, and their autocorrelation functions can be related to the fidelity of the state of the virtual subsystem.

In section 4, we shall describe, first in the standard picture, the error correction based on stabilizer formalism. Then we shall construct suitable 'dressed' observables that define the virtual subsystem.

4. Stabilizer codes and transversal gates

4.1. Stabilizer codes

An error-correcting code [34, 35] is a subspace C of the Hilbert space H that represents a quantum system. The code subspace C is such that any quantum information stored on it can be recovered after it has suffered errors from a set E of correctable errors. Usually, error-correcting codes are subspaces of systems of n qubits, that is, H = hfn with H2 a 2D Hilbert space with orthonormal basis (|0>, |1>|. If C encodes k qubits, that is, has dimension 2k, and corrects any error with support on less than d/2 qubits, we say that the code is a [n, k, d] code. The support of an operator is composed of those qubits in which it acts nontrivially. In this context, the size of the support of an operator O is usually called its weight and denoted as | O |.

An important class of error-correcting codes is that of stabilizer codes [36, 37], which are defined in terms of an abelian subgroup S c P of the Pauli group P of n qubits. This is the group

P = <i I, X1, Z1,..., Xn, Zn >, (1)

which has as generators the usual Pauli operators Xi, Zi on the i th qubit,

X = |+><+| —|—><—|, Z = |0><0| — |1><1|, (2)

where |±> := (|0> ± |1>)/V2. The subgroup S is called the stabilizer of the code C because its elements > g C are defined by

Vs g S s> = |^>. (3)

Note that S cannot contain the element — I. The number of encoded qubits in a stabilizer code is

k = n — g, (4)

with g being the number of independent generators of S. To give an expression for the distance of the code, we have to introduce the normalizer group N. This is the normalizer of S in P, which coincides with the centralizer of S in P: its elements n e N C P commute with all the stabilizers s e S. Then the distance of the code C is given by the minimum weight of the elements of N — S, which indeed implement nontrivial unitary operations on encoded states. In fact, it is possible to choose among them the X and Z Pauli operators for the k-encoded qubits: X1, Z1, ..., Xk, Zk e N — S. These operators must satisfy the usual commutation relations, so that we have X2 = Z2 = 1, {Xt, Zt} = 0 and [Xt, Zj ] = [Xt, X j ] = [ Zt, Zj ] = 0 for i = j.

4.2. Error correction

If we put some quantum information into a given code subspace, we know that as long as the system does not suffer too many errors it is in principle possible to recover the information without any losses. But of course we are interested in recovering it in practice, which is not necessarily just as easy.

Stabilizer codes have a particularly simple structure that makes recovery from errors relatively easy. The first step in error correction is the measurement of a set of generators si of the stabilizer

s = (si, ..., sg). (5)

Let us denote the eigenvalue of the i th generator after the measurement as (— 1)bi, bi = 0, 1 e Z2. The list of eigenvalues b = (bi) e Zg is called the error syndrome. The second step is then to choose, using the syndrome s, a Pauli operator K e p such that

Ksi = (-1)bisiK.

We set synd(K) := b when (6) holds, so that synd defines a group homomorphism synd : P —► Zg,

K b, (8)

with kernel N.

If the correction operator K is applied to the system it will return to the code subspace C. Whether it returns to the original state that we had encoded will depend on the errors that occurred and the choice of K. To clarify this point, suppose for simplicity that the action of errors amounts just to the application of a Pauli operator E e p to the system. Then we have by assumption KE e n, and the error-correction procedure will succeed if in addition KE e s. In summary, the whole error-correction procedure is encoded in a function

corr : Zg P, (9)

bi—► K

that takes syndromes b to correction operators K. This corr is such that synd(corr(b)) = b.

One should choose corr in such a way that the probability of success for a given source of errors is maximized. However, in practice it is also important that corr can be computed efficiently (say, in polynomial time in the number n of physical qubits), a requirement that may reduce the success probability with respect to the ideal case.

4.3. Dressed observables and critical syndromes

Take any nontrivial self-adjoint encoded operator N e n — s. Suppose that we initialize the system in an encoded state and we want to keep track of the value of these encoded operators as errors occur, from a theoretical perspective. In particular, we would like to keep track of the value of N were we to correct the system using the above procedure. We may for this purpose introduce the operator

Ndr := ^ corr(b)t N corr(b) Ph, (11)

where Pb is the projector onto the subspace with syndrome b, that is,

Pb := 2—^ (1 + (—1)bisi). (12)

Note that for encoded states Ndr = N. The operator Ndr is a more stable version of N, because as long as the system only suffers correctable errors its expectation value does not change. This is not the case for N, which may change even with an error on a single qubit.

Given an encoded operator N it is useful to introduce the notion of critical syndromes as those which are just a single-qubit error apart from changing the value of Ndr. Let |^b) denote a normalized state with Pb ) = ).

For any Pauli operator E g P, we have

When there exists a single-qubit Pauli operator a such that S(N,a, b) = — 1, we say that b is N-critical. For each N, we denote by critN c Zg the set of N-critical syndromes b. Similarly, we denote by crit;N c P x Zg the set of pairs (E, b) with S(N, E, b) = — 1. Note that for any (E, b) e critN there exists a decomposition E = E1E2 such that E1 and E2 have disjoint supports and b + synd(E2) e critN.

Let us make a connection with the general discussion from section 3. The dressed observables Ndr define the virtual subsystem. They are built by means of observables that act solely on the code. Indeed, even though in expression (11) we use an observable N that acts on the whole Hilbert space, we use only its restriction to the code. Thus, we obtained Ndr by lifting observables acting on the code to those acting on the full system by using the correction procedure.

The notion of critical syndrome refers to the 'capacity' of error storage on the ancilla system: when we are able to stay away from states with a critical syndrome, our virtual system is protected. If the ancilla state a has critical syndrome, then one more added error affects the virtual subsystem. The system is self-correcting, if, for a long time, the ancilla system is far from a critical syndrome.

4.4. Transversal gates

An important feature of several classes of stabilizers codes is that they allow the implementation of logical gates transversally, that is, performing unitary gates on individual qubits or in small disjoint sets of them. Usually, we are interested in stabilizer codes C that encode a single qubit. Then a one-qubit logical gate G that can be implemented in C through a unitary operation of the form

is transversal. Here the index i runs over physical qubits. Frequently, one has Ui = Uj, which means that no specific addressing of the physical qubits is necessary; they are all treated on an equal footing.

U = ® U

A particularly simple case is that of U belonging to the normalizer of P, usually called the Clifford group. Then U is a transversal gate if for any s e S

UfsU e s, (18)

because for any | ^) e C we must have sU| ^) = U| ^). An advantage of such transversal gates is that when applied with perfect accuracy, they affect the error syndrome of the code in a definite way. More generally, it is enough for U to satisfy

Uf P0U = Po. (19)

In section 7.6.3, we will consider such gates, which are essential for universal quantum computation. It is clear that from condition (19) we get no information about how U affects the syndrome. However, (17) is a big constraint in this regard. In particular, errors cannot spread. That is, if ) is an encoded state and E an error, then UE ) = E' U ) for some E' with the same support as E .A less trivial observation is that, in a certain sense, negative error syndromes (i.e. syndromes with bi = — 1) also do not spread. Suppose that we choose a possibly overcomplete set of stabilizer generators which are local in a given lattice of a certain dimension where the qubits live. Take a region R of this lattice such that no encoded operator has a support completely contained on it. Then if O is a Pauli operator that commutes with all the local generators that have part of their support in R, it follows as a slight generalization of the cleaning lemma of [18] that O) = O) for some O' with support only outside R. This means that if E ) is free of negative error syndromes in a region, then the same will be true for UE) because E) = E) for some E" with support outside R.

Similarly, we can consider transversal two-qubit logical gates, which are typically implemented on a pair of equal stabilizer codes through unitaries of the form (17), where now i runs over pairs of equivalent physical qubits on the two codes, so that the U are two-qubit gates. Finally, it is also possible to consider transversal measurements, where each physical qubit is measured on a given basis and from the net result a measurement for the encoded qubit is obtained.

4.5. CSS-like codes

Calderbank-Shor-Steane (CSS)-like codes are those stabilizer codes for which the generators of the stabilizer can be chosen so that S = (sf,..., sf, sf,..., sf2), g1 + g2 = g,

sf e pf, sf e Pz ,

with pf := (f 1,..., fn), pz := (Z1,..., Zn). In such codes, f -type (Z-type) logical operators may be chosen from pf (pz), that is, so that

X i e pf, Z i e Pz .

Then f -type (Z-type) errors can only change the value of Z-type (f -type) encoded operators, and their correction only involves Z-type (f -type) stabilizers. That is, the error-correction procedure can be divided into two subsystems, and the relevant functions are

syndZ : pz —► Zg1, corrZ : Zg1 —► pz,

syndf : pf —^ Zg2, corrf : Zg2 —^ pf. (20)

Then for any Z-type encoded operator N c N 0 PZ the corresponding dressed operator takes the form

Ndr := ^ corrx(b)f N corrx(b) P*, (21)

where PbZ is the projector onto the subspace with Z-syndrome b, that is,

PbZ := 2—g2Yl (1 + (—1)bisZ). (22)

The dressed X-type Pauli observables are analogous.

An important consequence of the form of the dressed observables (11) is that transversal measurements are possible. Namely, if we measure all physical qubits in the X basis (Z basis), we can recover the value of all encoded X-type (Z-type) operators because error correction commutes with measurements. Indeed, after the measurement, correction is entirely classical.

Finally, an analogous transversal initialization is possible. If we initialize a product state of the form |O>0n (|+>0n) and measure all X-type (Z-type) stabilizer operators, the resulting state has well-defined Z-type (X-type) encoded operators. Namely, Zi = 1 (respectively, Xi = 1). The state may have many X-type (Z-type) stabilizers with the wrong sign, but indeed the correction of Z-type (X-type) errors is immaterial because such errors cannot change the encoded state. Of course this is the case when the environment is absent. We shall discuss initialization in the presence of noise in section 8.1.

5. Modeling interaction with the environment

In this section, we shall describe the evolution of an open system in the weak coupling approximation. Next, we shall recall the relationship between the fidelity criterion and the decay rate of observables, and a useful upper bound for the latter [16] (in this context see also [38]).

5.1. Evolution in the weak coupling limit

We consider a quantum system with a discrete energy spectrum that is coupled to a collection of heat baths leading to the global Hamiltonian

H = Hsys + Hbath + Hint with Hint = ^ 5a ® /a, (23)

where Sa are system operators and fa are bath operators.

We assume that the baths are independent, which excludes such phenomena as decoherence free subspaces (see e.g. [31, 39, 40]). The evolution of the system in the Heisenberg picture in the weak coupling limit is the following:

— = i[Hsys, X] + Ldis(X) =: L(X), (24)

Ldis(X) = 1 ^^ haM(^(() [X, SaM]

'dis (X ) = ^ / . / /1 a(^)(Sa(^) [X , Sa(^)] (25)

+ [sa ((), X] Sa(()). (26)

Here Sa (w) are Fourier transforms of Sa

e' Hs*st Sa e-i Hsys' — ^ S„ (w) e—. (27)

The coefficients ha are Fourier transforms of the autocorrelation functions of fa. They describe the rate at which the coupling is able to transfer an energy w from the bath to the system. In the case of thermal baths, they satisfy

hi a(-w) = ha(w), (28)

which is a consequence of the Kubo-Martin-Schwinger condition [41]. The dissipative part commutes with the Hamiltonian part, i.e. [H, L] = 0 (where Hi(X) = i[Hsys, X]). Therefore, in the analysis of thermal stability, it is enough to consider solely the dissipative part. An important property of the dissipative generator is that —L is positive definite in the scalar product

<X, 7^ := Tr(p^ Xt 7). (29)

Moreover, we have L(1) = 0, and if the commutant of the system operators Sa and Hsys is trivial, then the eigenvalue 0 is nondegenerate. This means that there are no constants of motion—all other observables eventually decay to identity.

5.2. Fidelity and autocorrelation functions

Since the generator is Hermitian in scalar product (29), a strong tool is spectral analysis of L. Namely, for any observable satisfying <A, A)p — 1 and <A, I= 0, one easily finds that

<A, A(t)>£ ^ e—61 (30)

provided that

— <A, L(A)>^ ^ 6. (31)

Thus, to show that an observable A is stable, it is enough to estimate —<A, L(A)), which can be therefore called the decay rate for the observable A. If this quantity decreases exponentially with the size of the system, we obtain stability.

However, the criterion of stability of quantum information is measured in the most direct way by fidelity. However, in some natural situations, the fidelity criterion is equivalent to the stability of two complementary observables in terms of the autocorrelation function. The needed relation was obtained in [16]. Let us recall it here, in a slightly more general setting.

As discussed in section 3, we divide the total system into two: HV ® HAnc, where the first system is the qubit to be protected. We then consider an initial state of the form | f V ><f V | ® panc. The state is subjected to some completely positive trace preserving map Ayanc, and we are interested in the fidelity between the initial and final states of the system V:

F (fv; AVanc, Panc) = <^V |pV* I^V >, (32)

where p^ = Tranc(AV,anc(|fV><fVI®Panc)). In appendix A, we prove the following proposition:

Proposition 1. Consider an arbitrary dichotomic observable A V,anc — Av ® Ianc acting on a Hilbert space HV ® Hanc (where HV — C2) with being eigenvectors of AV with

eigenvalues ±1. Then, for an arbitrary state panc and a completely positive trace preserving map Ay anc, we have

F ; AV,anc, Pane) + F A*y,anc, Pane) = 1 + < A, A(A)>^, (33)

where n = ^ Iy ® Panc,

<A, B>n = Tr(nAtB), (34)

and the map A is dual to A*.

We shall also need the following lemma [42]:

Lemma 1. For an arbitrary trace preserving map T on a qubit, define F= (^|T(|^|)|^), as well as the entanglement fidelity (that quantifies the quality of preservation of a quantum memory)

Fe(T) = (0+ |(T ® I)(|0+ )(0+|)|0+), (35)

where |0+) = 2 (|00) + |11)). Then Fe is bounded as follows:

Fe(T) ^ Fax + Faz - 1, (36)

where Fa% = 2 (F (|+)) + F (|-))), Fz = 2 (F (|0)) + F (|1))), with |±) being eigenvectors of ox, |0), |1) being eigenvectors of oz.

We shall now apply these facts to the present case. Let X and Z be two Pauli observables acting on the memory, i.e. they are of the form XV ® 1Anc and ZV ® 1Anc. As the state n in the proposition we take the Gibbs state (which is indeed proportional to the identity on the system V due to the form of the Hamiltonian). Finally, the map A is given by eLt. Applying the proposition and the lemma, we obtain

Fe ^ 1 ((X, eLtX), + (Z, eLtZ),) ^ e-et, (37)

where e is an upper bound for the rates —(X, L(X)), and —(Z, L(Z)),. Therefore, to prove the stability of a quantum memory it is enough to bound the above decay rates. We have actually proved a more general result, namely that the above inequality holds for whatever physical operation (identity preserving completely positive map A) unrelated to the Hamiltonian of the system, i.e. we have

Fe ^ 2((X, A(X)), + (Z,A(Z)),). (38)

5.3. Upper bound for the decay rate

In [16], the following useful bound for the decay rate was obtained:

-(A, L(A)), ^ 2hmax X)([S«, A], [S«, A]),, (39)

h max = sup h aM. (40)

The advantage of this estimate is that it refers directly to the system operators Sa rather than to their Fourier transforms.

6. Conditions for self-correcting quantum memories

6.1. Stabilizer code models

Given a stabilizer code, we may consider a Hamiltonian model of the form

H = - £ ts, (41)

where ti > 0 are coupling constants and (s-} is a possibly overcomplete set of r generators of the stabilizer S. The encoded Pauli operators X1, Z1, ..., Xk, Zk commute with H, showing that each energy level is at least 2k-fold degenerate. For a particular choice of the encoded operators, one may split the Hilbert space

H = Henc ® Hexc = C2k ® C2g (42)

in such a way that Henc represents the encoded degrees of freedom and Hexc characterizes excitations. Let us emphasize that the above division is not yet the one we considered in section 3. Indeed, the subsystem Henc is defined by the bare observables, and it is not protected. In particular, we may choose a basis |b) in Hexc with the elements labeled by b e Zg so that setting b) := ) ® |b) for any ) e Henc we have

si b) = (-1)bi b). (43)

Recall that si are generators from the complete set (5). Then the states of the form b) are eigenvectors of the Hamiltonian (41), namely

H b) = - £ tc(b)b) =: Ebb), (44)

where ci (b) = 0, 1 are obtained from

s;^ sc;j, Cij = 0, 1, (45)

as ci (b) = ^2j cijbj, with addition modulo 2. Thus, the Gibbs state for the Hamiltonian (41) can be written as

p(£) a £ e-^Eb Pb. (46)

6.2. A bound in terms of critical syndromes

In this section, we shall show that the decay rate for a dressed observable Ndr is bounded by the probability of a critical syndrome multiplied by some polynomial in the size of the system. Thus, if the probability of the critical syndrome is exponentially small in the size of the system, the observable is stable.

Suppose that we have a Hamiltonian model (41) that interacts with a bath through a coupling of the form

Hint = £ Xi ® fi + £ Yi ® gi + £ Zi ® hi. (47)

For simplicity, we will write

Hint = £ O ® fo (48)

with o running over the three types of Pauli operators and over all sites. We will suppose that our model enjoys the following two properties. Firstly, let the ti couplings satisfy

0 < tmin ^ ti ^ tmax. (49)

Secondly, the number of stabilizers s- (from (41)) that contain in their support a given qubit is bounded. When these conditions hold, it follows that the Bohr frequencies ^ are bounded; hence, assuming that the spectral density h (&>) is finite for all we obtain that hmax is finite and (39) applies.

Let us go back to the dressed operators introduced in section 4.3. It is our aim to check how stable they are under thermal fluctuations. From (39) and (16) we have that for any encoded operator N the decay rate of Ndr is bounded as follows:

- Eh e^EbTO(1 - S(N,o, b)) -(Ndr, L(Ndr)), ^ 8hmax^-1;°( , E ^ 16hmaxnPcritN . (50)

p EbEb

Here n is the total number of sites, which we will suppose to grow polynomially with the size of the system L, and PcritN is the total probability at a given temperature of finding a syndrome that is critical for N, that is,

V e-, Eb

p _ ¿-^becritN (5D

p critn = ^ , Eb . (51)

When, for a given temperature, pcritN is exponentially small on the size of the system L, we say that Ndr is stable: it is self-protected by a free energy barrier produced by the Hamiltonian (41). In the following section, we will derive for a wide class of systems a set of sufficient conditions for this stability to happen at some finite temperature.

6.3. Sketch of the proof of stability of the Kitaev model

Before we present conditions ensuring stability, let us first recall the essential features of the proof of stability of the Kitaev model [16]. We shall restrict ourselves to a classical submodel of the Kitaev model, where errors are only bit flips, and there is therefore only one type of excitation. We consider configurations of spins, i.e. patterns of spins-up or spins-down (or in bit notation, this is a pattern of zeros and ones). These spins reside on the plaquettes of some cubic lattice, while excitations reside on the edges. Any such configuration leads to some pattern of excitations, which are closed loops of edges. The energy associated with a given loop (excitation) is proportional to its length.

The proof contains two main steps.

Step 1. Show that, with high probability, only configurations leading to small loops appear in the Gibbs state.

This is obtained as follows. Consider a fixed loop, and assume that it is homologically trivial. Then by flipping some spins, we can erase it from the configuration (without affecting any other loop). This means that we have a new spin configuration, which differs from the old one only by the loop that has been removed. The energy of the new configuration differs from the old configuration only by the length of the erased loop. This feature, i.e. possibility

of individually erasing loops, and the resulting energy difference between the respective spin configurations, allows us to prove that the probability that a given loop will appear is bounded by e-^1, where l is the size of the loop. This is described in [16], following [44]. Then the probability that arbitrary loops of length l appear is bounded by

where #(loops) is the number of all loops of length l. So, we have to count all possible loops of length l. We first bound the number of loops containing a given spin. Since loops are connected objects, it turns out that this number is at most exponential in l, i.e. is ^ exl where ¡ is a constant dependent only on the type of lattice involved. So the entropic factor #(loops) is obtained by multiplying this number by the volume V—i.e. the number of spins in the lattice, which is polynomial in L —the linear size of the model.

Now this implies that the probability of appearance of loops of size greater than cL (for some constant c) decays exponentially with the system size L for sufficiently low temperatures, as can be readily seen by summing up the probabilities p(l) from l = cL upwards. Thus with high probability spin configurations will contain only loops shorter than cL.

Apart from trivial loops, typical spin configurations may also contain nontrivial loops. These cannot be individually removed by flipping spins, so the above argument and conclusion is not directly applicable to these excitations (the discussion of this case was actually missing in [16]). However, the following device allows us to generalize the result for trivial loops to the case of nontrivial loops. For the purpose of applying the erasability feature, note that groups of nontrivial loops can be erased by flipping spins. In the case of the 3D Kitaev model, loops may be grouped (nonuniquely) into subsets of at most four loops (the number 4 = 3 + 1 comes from the Z2 first homology group of the 3D torus, which can be regarded as a vector space over Z2 of dimension 3), such that each such subset can be erased as a whole by flipping spins.

Now, we can rerun the previous argument. Fixing some arbitrary erasable set of not more than four loops, the probability of it appearing is then again bounded by e-^l, where l now is the size of the whole set. The difference now is that the subset is not connected, which influences the counting of possible configurations giving rise to a set of size l. However, a loose upper bound that is sufficient for our purposes can be obtained by observing that the set can have at most four components, each of which is a loop, i.e. a connected object. Indeed, the number of such sets is trivially bounded from above by the number of ways four loops of lengths l1, l2, l3, l4 can be chosen to form a subset of length l = l1 +12 +13 +14, i.e. exl V4 poly (l) with poly (l) the number of ways in which the individual lengths can be chosen to sum up to l. Again summing probabilities, one obtains that configurations that can be decomposed into erasable subsets of length l ^ cL, for some constant c, appear with negligible probability for sufficiently low temperatures.

Step 2. Show that configurations with short loops only are not critical, i.e. a single spin flip will not change the sign of the dressed observable.

This proof requires choosing a good error-correcting algorithm (as the latter defines the dressed observable). Note that, due to the previous discussion, only the correction of 'short' loops is relevant, e.g. of size smaller than, say, L/2. But, all of these are homologically trivial and can be individually erased by flipping qubits living in the smallest parallelogram containing the relevant loop, which is unequivocally defined. The function corr should be chosen accordingly.

Consider a configuration with short loops, such that each individual loop has a size not greater than, say, L/4. A single flip affects only a few edges (four in the 3D Kitaev model) and

p(l) ^ #(loops) x e-^l,

thus can only affect a very small number of loops (at most two in the 3D Kitaev model) in a given configuration. In the 3D Kitaev model the flip can lead to the following changes:

(i) 'single loop ^ single loop' transition: alter the shape of a single loop along the flipped plaquette;

(ii) 'two loops ^ one loop' transition: divide the loop into two smaller loops or join two loops into a single one;

(iii) 'no loop ^ single loop' transitions: creation of a new single plaquette loop or annihilating such an existing small loop. Thus, if we take the product of the single qubit bit-flip and the correcting operators before and after the change, the resulting product operator will have support on a cube of length L/2+1. Hence, it is a stabilizer and the configuration is not critical.

6.4. A criterion based on connectedness

Here, we present a set of conditions that ensure that the probability of a critical syndrome is exponentially small in the size of the system. These conditions require the excitations to be connected in a suitable way forming clusters, and also that critical configurations always contain clusters of size comparable with the system size. This is essentially an application of Peierls' argument [43-45] as first done in [13] in the context of quantum computation. These conditions are obtained by extracting the essential properties of the Kitaev 4D model (or the 3D model for one kind of errors) used in the proof of its stability as recalled in the previous section.

For a given Hamiltonian H, we shall consider an error graph T whose nodes represent the set (s-j of generators of the stabilizer S appearing in H (41). The nodes represent excitations. Then any syndrome b e Zg corresponds to a subset nds(b). Namely, the ith node belongs to the set nds(b) if ci (b) = 1 (see equation (45)). To be more explicit, an error causes a pattern of excitations (it changes the sign of some generators from the Hamiltonian) that depends on the error only through the syndrome b, so that we can unambiguously write nds(b). While b tells us which independent generators si were affected by an error, nds(b) tells us which Hamiltonian terms s- were affected, which usually are not independent anymore. The structure of links or edges in the graph will depend on the particular model. It provides a notion of connectedness: a set of nodes is connected if between any two of its nodes there exists a path such that all its nodes belong to the set. We say that b and b7 contact if nds(b) and nds(b7) are not disjoint or if any of the elements of nds(b) is linked to an element of nds(b7). Also, given a Pauli operator E we define nds(E) := nds(synd(E)).

For example, in the 3D Kitaev model the qubits live in plaquettes and X-type excitations are associated with links. Such excitations are linked in the graph if the corresponding edges share a site of the original lattice. Connected sets take the form of closed paths.

Rather than a single Hamiltonian model (41), consider a family of models HL with increasing system size L, each with a corresponding graph TL. The number of nodes |TL | is assumed polynomial in L. We show that the following conditions, if satisfied by the graphs TL, imply the stability of the encoded information. Here A, v are integers and § a positive number.

(i) For any single-qubit Pauli o, we have |nds(o)| ^ A.

(ii) The number of links meeting at a node is at most ¡ .

(iii) For every b e Zg, there exists a decomposition

b = £ b, (53)

such that the bi-s do not contact and have at most v connected components each.

(iv) If the total length of a syndrome satisfies |nds(b)| < § L, for some number §, then the syndrome b is not critical for any encoded operator N, i.e. b e critN. Furthermore, for such b, given any b7 not contacting b

corr (b + b7) = corr(b) corr(b7). (54)

Under these conditions one can characterize the type of syndromes that are critical w.r.t. encoded information. Consider a general syndrome that can be decomposed into components (53) of various lengths. We show that such a syndrome can be critical only if it contains a large component b0 with |nds(b0)| ^ (§L — A)/A^. Suppose, to the contrary, that b — ¿=i b consists of small components, i.e. |nds(b)| < (§L — A)/A^. If a is a single-qubit Pauli operator, then (i) and (ii) imply that at most A^ of the bi-s make contact with nds(a), say b1, ..., bk. Let us denote lb = Y^i=1 b. Clearly, we have |b| ^ §L — A and |b + synd(a)| ^ §L; hence using (iv) we obtain

corr(b) = corr(b) H corr(b/),

'=i+1 r (55)

corr(b + synd(a)) = corr(b + synd(a)) J""[ corr(b)

It follows that

corr(b)a corr(b + synd(a)) = corr(ii )a corr(b + synd(a)) (56)

and hence due to (15) that S(N, a, b) = S(N, a, b), i.e. b is critical with respect to a if and only if b is critical with respect to a. However, the latter satisfies |b| < §L; hence by (iv) it is not critical, so that b e critN. In particular, this result means that an error is not critical even if it contains a large number of small error components. This result corresponds to step 2 in the example of the 3D Kitaev model above.

We now aim to bound the probability of a critical syndrome PcritN (much like in step 1 in the 3D Kitaev model). For this purpose, we first bound the probability Pbo to find an excitation configuration nds(b) such that b0 is one of the components in the decomposition (53). Denote the set of all configurations containing b0 by {b7k}. We now apply Peierls' argument to show that the probability Pbo is suppressed by the Boltzman factor at temperature 1 . Indeed, erasing the component b0 leads to configurations {bk + b0} whose energies are related to the energies of the original configurations as Eb>k+bo + Ebo = Eb>k. Thus, we obtain

yk e-0Ebk e-0Eb0 yk e—^Ebk+bo _E _ . d (b )l

P — ¿-^k _ — ¿-^k _ e—0 Eb0 ^ e—0 tmin |nds(bo)| (57)

Pb0 " Ebezg e—0Eb - Ebezg e—0Eb ^ e ^ e . (57)

The fact that the energy corresponding to a syndrome depends only on the length of the syndrome follows from the form of the Hamiltonian (41). In order to obtain PcritN, in accordance with the previous paragraph, one needs the probability of appearance of any error component of

Figure 1. The shaded area describes schematically the protected region. TC is the critical temperature in the absence of noise, while pC is noise threshold for zero temperature.

a large enough length. The number N (l) of connected collections of nodes of size l that contain a given node is bounded as follows for some t (see appendix B):

N(l) ^ eTl. (58)

Thus, the total number of collections of l nodes with at most v connected components is bounded by |TL|vlv-1eTl ^ |rL|2veTl. Putting together these results we obtain

PcritN < |rL|2v F e—8l = poly(L)e-^L(59)

1 — e 8

l L/am

with 8 = ^tmin — t positive below a critical temperature. This shows the stability of Ndr under the given assumptions, as the critical probability decreases exponentially fast with the system size.

6.5. Resilience to noise

It is natural to expect that a self-protecting quantum memory will also be resilient, to some extent, to suddenly applied noise. This is interesting since it allows us to expose the memory to errors, which will be an unavoidable byproduct of performing encoded gates. As we shall show, as long as the amount of noise is below a threshold, we are safe. This threshold will reduce as we increase the temperature until it vanishes at the critical temperature, as schematically depicted in figure 1. For zero temperature, this is just the standard error threshold of the error-correcting code.

To fix ideas, let us consider a process Ap in which each qubit undergoes a depolarizing channel characterized by an 'error' probability p. That is, any given operator N is mapped in the Heisenberg picture to

A p (N) = ^(1 — p )n—| E 1 p1 E 1 Ef NE, (60)

where the sum runs over a set of representatives of P/ il. We are under the error threshold when in the L ^ to limit for any given encoded operator N we have

<Ndr, Ap(Ndr—^ 1. (61)

However, setting n :— log((1 — p)/p),

E e—0Eb—''IE|S(Ndr, E, b) <Ndr, ApN», = e—0Eb—nE-. (62)

That is, <Ndr, Ap(Ndr)>0 — 1 — 2P^ with

V e—0 Eb—'| E | P _ E,b)ecritN e_

PcritN = V e—0 Eb—n| E | . (63)

This expression is similar to (51), and we can use a similar reasoning to show that Pcrit'N ^ 0 for low enough temperature and noise. Firstly, we attach to each Pauli operator E — 0i ai the set

nds7(E) — y nds(ai) c rl,

where the ai are single-qubit Pauli operators. Note that |nds(E)| ^ |nds7(E)| ^ A| E|. Thus, when A| E| + |nds(b)| < §L, we have (E, b) e crit7N.

Secondly, we need a substitute of the decomposition (53) to deal with pairs (E, b). To this end, note that there exist Ej such that E — Y\j Ej and the sets nds7 (Ej) form the connected components of nds7(E). Then we arrange the bi-s and Ej-s in maximal connected collections. That is, if one of these collections is {ba1,..., bar; Ea1,..., Eas}, then the set nds(ba1) U ... U nds(bar) U nds7 (Ea1) U ... U nds7 (Ear) is connected and disconnected from any set nds(bi) or nds7(Ej) that is not part of the collection. We denote each collection by (Ea, ba), with ba — bai, Ea — ^ Ea., so that b — Y.a ba and E — na Ea. This gives the desired decomposition of (E, b).

Finally, we observe that when A|Ea | + |nds(ba)| < §L for all pairs (Ea, ba), we have

corr(b) — Y\ corr(ba),

0 (64)

corr(b + synd(E)) — I I corr(ba + synd(Ea)),

so that S(N, E, b) — \\a S(N, Ea, ba). We omit the rest of the details.

7. Topological stabilizer codes

In this section, we shall construct codes that allow a universal set of transversal gates and, at the same time, give rise to self-correcting local Hamiltonian models. The codes will belong to the important class of local stabilizer codes, in particular, topological codes. These are constructed from manifolds where the physical qubits are placed, and have two main characteristics:

• There exists a set of generators of the stabilizer s with a spatially local support.

• The encoded operators in N — S are global, i.e. they have a support which is topologically nontrivial.

We will give below a more precise characterization. The quantum Hamiltonian models (41) obtained from topological codes are topologically ordered: their ground spaces have a degeneracy of topological origin and their excitations are gapped and subject only to topological

interactions. As we will see, excitations can be either particles or higher-dimensional objects. Self-correction will appear in codes with excitations of the latter kind.

The original example of topological stabilizer codes is the toric codes, as introduced by Kitaev et al [12, 13]. These codes and their generalizations are based on homology theory [46]. Indeed, the number of encoded qubits in a given manifold is dictated by its Betti numbers, i.e. the dimensions of homology groups, which are topological invariants.

An important drawback of toric codes is that they do not allow the transversal implementation of a sufficiently rich set of gates. There exists, however, a class of topological stabilizer codes that surmount this difficulty: color codes. In 2D [20], they allow the transversal implementation of the so-called Clifford group, the normalizer of the Pauli group in the group of unitary operations on n qubits. In 3D [21], they allow the transversal implementation of a set of operations that, when measurements are included, gives rise to transversal universal quantum computation. Below we will analyze in detail the transversality properties of general D-dimensional color codes. In particular, we will exhibit a 6D code that supports transversal CNot gate as well as n/4 phase gate. The code will also allow transversal initialization and measurement in X and Z basis. Altogether, this enables universal quantum computation [50]. By adding one more dimension we obtain local CNot gates.

7.1. Local stabilizer codes

A family of codes {CL} is local if there exist integers a and ^ such that

(i) each stabilizer sl has a set of generators {si, ..., sgL} such that |sj | ^ a, j = 1, ..., gL,

(ii) each physical qubit is in the support of at most ^ such generators sj and

(iii) for any integer d, there exists a code CL with distance bigger than d.

Given a code CL in the family, it is always possible to construct a local quantum Hamiltonian model such that its ground state is CL. Namely, we may set

Hl = —£ si. (65)

Topological stabilizer codes are local codes in which locality has a geometrical meaning. Physical qubits are placed in a lattice in a given manifold, in such a way that the generators of the stabilizer have a support contained in a small neighborhood of the lattice. The support of nontrivial encoded operators, in turn, must be global, in such a way that the distance of the codes grows with the size of the lattice [47].

Below we will study in full generality two important examples of topological stabilizer codes, toric codes and color codes. We will unify the treatment of both types of codes through homology theory.

7.2. Homology groups

Recall that a homology group is defined from an exact sequence such as

A2 -^ A1 —^ Ao, (66)

where Ai are Abelian groups and di, the boundary operators, are homomorphisms with

91 o a2 = 0. (67)

The elements of the subgroup Z1 :— ker d1 c A1 are called cycles. The elements of the subgroup B1 :— im d2 c A1 are called boundaries. Then the condition (67) states that all boundaries are cycles, B1 c Z1. Because of this, we can divide cycles in homology classes. Two cycles z, z' are homologous, z ~ z', if z — z' is a boundary. The homology group H has as its elements the corresponding homology classes. It is the quotient

H :— Z1 /B1. (68)

In our case, the elements of the groups Ai will be chains of suitable geometrical objects from a lattice in a given manifold, and the homology group will be a topological invariant of the manifold, independent of the particular lattice considered. We are only interested in Z2 homology, in which the chains in Ai are binary formal sums of geometrical objects in a set Si. That is, if a e Ai, then

a — £ bss, bs — 0, 1. (69)

s e Si

When needed, we will regard Z2 chains as sets in the usual way. That is, we identify the chain a above with the set { s e Si | bs — 1 }.

When working with such Z2 homology groups we may consider the dual exact sequence

A0 —^ A1 —^ A2. (70)

The dual boundary operators 3* are defined so that for a e Si—1, b e Si, we have a e dib if and only if b e 3*a. The dual exact sequence (70) gives rise to a dual homology group H* :— Z*/B* which is isomorphic to H. Note that for a e A1, s2 e S2 and s0 e S0 we have

s0 e 91 a ^^ |9*s0 0 a | = 1mod2,

s2 e 3*a ^^ |92s2 0 a | = 1 mod 2.

Let us illustrate the introduced notions using 2D toric code. Here, A2 is a set of plaquettes, A1—a set of links and A0 a set of vertices. A boundary is a set of closed loops of links which is contractible, and cycles are arbitrary sets of closed loops. The dual boundary is a set of closed loops in a dual lattice which is contractible (e.g. a dual boundary of a single vertex is the set of links that contain this vertex). Dual cycles are arbitrary sets of closed loops in a dual lattice.

7.3. Codes from homology groups

Given a Z2 homology group H obtained from a lattice in a manifold, as those discussed in the previous section, we can introduce in a natural way a CSS-like stabilizer code C with a basis labeled by the elements of H. The procedure can be summarized as follows. Recall that the abelian groups Ai in the exact sequence (66) are constructed from sets of geometrical objects Si. To define the code, we attach physical qubits to the elements of S1, X-type stabilizers to the elements of S2 and Z-type stabilizers to the elements of S0. In what follows, we detail the procedure.

First, we attach a physical qubit to each of the elements of S1 — {rj}, so that the number of

qubits n is given by n — | S11. For each a e A1 with

a — £ cjrj, cj — 0 1 (72)

we define an X-type and a Z-type Pauli operator setting

x. :=Q9 xjj, z. :=Q9 z/. (73)

Note that the definitions (73) describe two group isomorphisms. Moreover,

XaZ^ = (-l)1^1 Zfl, . (74)

Then using (71),

a G Zi ^^ Vb g B*, [, Zb] = 0, (75)

a G Z* ^^ Vb G Bi, [Za, Xb] = 0. (76)

As a consequence of (67), [Xb, Zb/] = 0 for b g B1, b' g B* and we can define the stabilizer group S as the subgroup of P with elements of the form

XhZh,, b G Bi, b'G B*. (77)

It follows then that the operators of the form

XzZz,, Z G Z1, z' g Z*, (78)

form, up to phases ±1, ±i, the normalizer group N. If X1,..., Xk g Px and Z1,..., Zk g PZ form a Pauli basis for encoded operators, then Xi = XZi and Z* = Zz; for suitable cycles Zi g Z1, z- g Z*. The cycles Zi (z-) are representatives of classes Zi g H (z[ G H*) that form an independent set of generators of H (H*), and thus we have the desired result.

It is instructive to work out explicitly a basis for the resulting code C. To this end, for any a G A1 we set

|a>o := Xa |O)0W, |a>+:= Z. |+)0W. (79)

Then {|a )0} and {|a >+} are bases of the Hilbert space, with elements labeled by the chains a G A1. For any cycles z g Z1, z' g Z*, we define the states

|z">0 := Y, |c>0, |z"')+ := E |c>+. (80)

Then, as can be easily checked, {|Z>0} and {|Z7>+} are alternative bases for the topological stabilizer code C with elements labeled by homology classes of H and H*, respectively.

7.3.1. Error correction. We analyze now error correction in the code C just described. First, we need a generating set for the stabilizer group, which can be obtained by attaching an operator to each of the elements of S2 and S0. Set for any a2 G A2, a0 G A0,

Xa2 := Xd2a2 , Za0 := Zd*a0 . (81)

Then, if S2 = {p1, ..., pi}, S0 = {q1, ..., qm}, we may write

S := < Xp1, . . . , Xpi, Zq1, . . . , Zqm >. (82)

Indeed, the above set may be overcomplete. We can choose in that case suitable subsets S'2 = {p1, ..., pgl} c S2, S0 = (q1, ..., qg2} C S0. We may naturally regard any s2 C S2 as some b G Zg1, setting bi = 1 when pi g s2, and similarly for SO and Zg2. Then, for a G A1,

synd X (Za) = S2 H dj a,

, (83)

syndZ (Xa) = S0H 9i a.

That is, for a given Pauli error XaZa/ the error syndrome determines the boundaries of a and a'. Error correction amounts to choosing an operator XcZd = corr(synd(XaZa/)) with d1 c = 31 a and C = 9;ja'. It will succeed if and only if a + c G B1 and a7 + C G Bj, that is, if and only if the correction operator and the error are equivalent up to homology.

7.3.2. Hamiltonian and excitations.. Given the generators of the stabilizer in (82), we can consider the quantum Hamiltonian model

H = - E XP> - E Zqi ■ (84)

i = 1 i = 1

The excitations of this model are gapped, with two units of energy per stabilizer violation. We say that the excitations related to XPi (Zqi) generators are X-type (Z-type) excitations. Then, as it follows from the previous analysis of error correction, X-type excitations are arranged in the form of B j boundaries and Z-type excitations are arranged in the form of B1 boundaries.

7.4. Generalized toric codes

Consider a lattice in a D-manifold. We call the n-dimensional elements of the lattice n-cells: 0-cells are vertices, 1-cells are links, 2-cells are faces and so on. For n = 0,..., D, let Sn be the set of all n-cells, and Cn the corresponding abelian group of chains. We in addition set CD+1 = C-1 = 0, with 0 the trivial group. For n = 1, ..., D we introduce the boundary operators

Cn —Cn-1 (85)

in the usual way. That is, they are homomorphisms such that if the (n — 1)-cells si G Sn-1 form the geometrical boundary of the n-cell s, then 3s = (si}. We also define the homomorphisms dD+1 and d0 in the only possible way.

We can obtain a generalized toric code for each d with d = 0, ..., D. This is the code that corresponds to the exact sequence

Cd+1 —" Cd Cd—1, (86)

as described in the previous section. The corresponding homology group is the standard dth homology group of the manifold,

Hd :=1d. (87)

Thus the number of encoded qubits k is hd, the dth Betti number of the manifold. For example, for d = 1 we have the homology group of curves, so that the number of encoded qubits is equal to the number of independent nonboundary loops in the manifold. Note that the 0th and the Dth

code are just classical repetition codes, with one encoded qubit per connected component of the manifold.

The dual sequence can be visualized more easily in the dual lattice, in which r-cells become (D — r)-cells. Indeed, in the dual lattice the dual exact sequence corresponds to the exact sequence of the dth homology group, where

d := D — d. (88)

Thus, in a dth toric code the relevant homology groups are Hd and Hd. Cycles take the form thus of closed d- and d-branes, which are mapped to operators using (73). The commutation rules of closed brane operators are purely topological. Namely, given a closed d-brane z g Zd and a closed d-brane z' g Zd, the operators Xz and Zz/ anticommute if z and z' intersect an odd number of times. Otherwise they commute.

7.4.1. Branyons. For d = 1, ..., D — 1, the Hamiltonian model (84) of a dth toric code contains two kinds of brane-like excitations, which are created by open d and d-brane operators. Z-type excitations are closed (d — 1)-branes and X-type excitations are closed (d — 1)-branes in the dual lattice. Indeed, both kinds of excitations are not only closed but also boundaries. For example, for D = 2 and d = 1 the excitations are 0-branes, that is, particles. They can only be created or destroyed in pairs since they have to be boundaries of strings. These two kinds of particles interact topologically and are thus called anyons. More generally, Z-type (d — 1)-branes and X-type (d — 1)-branes interact topologically and thus deserve the name of branyons [22].

Since (n — 1)-branyons appear at the boundaries of n-brane operators, n = d, D — d, it follows that such operators represent branyon processes. In particular, processes that do not create or destroy excitations are related to closed branes. Then one can derive from the commutation rules for closed brane operators the topological ±1 phases appearing in branyon processes.

7.4.2. Self-correcting models. To fix ideas, let us consider a family of hypercubic lattices in a D-dimensional torus. Each lattice has the same length L in the D directions. We will show that, for d > 1, the models with Hamiltonian (84) for the dth code protect Z-type encoded operators in the sense of section 6. Then it follows by duality that for d < D — 1 X-type operators are protected, and thus that for 1 < d < D — 1, we have self-correcting quantum memories, which thus exist for D ^ 4.

Recall that we have to define a connection scheme for excitations and a correction procedure such that conditions (i)-(iv) of section 6.4 are satisfied. The notion of connectedness of excitations, that is, of (d — 1)-cells, is naturally given by the lattice. To translate this into the language of section 6.4, we just construct a graph with (d — 1)-cells as its nodes in which nodes are connected by a link when the corresponding cells meet at a (d — 2)-cell (note that d ^ 2). Conditions (i) and (ii) are clearly satisfied. As for condition (iii), we first note that any connected set of excitations is closed. Some connected sets are boundaries, so that they can be switched off independently and give no further problems (i.e. they constitute nds(E) for some Pauli operator E). But those which have nontrivial homology cannot be switched off independently. Instead, we have to gather several of them together to get a boundary, but only in a finite amount. Indeed, setting v = hd—1 + 1, condition (iii) is satisfied because hd—1 is the dimension of Hd—1 as a Z2 vector space.

Finally, we need a correction procedure, that is, the function corrX in (20). We define it in two steps. In the first step, we divide the syndrome b in the components bi of (53). In the second step, for each bi we find a suitable collection c' of d-cells such that dc' = c = nds(bi). The choice of the collection of d-cells d must be such that it ensures stability. In fact, we only consider those connected sets of (d — 1)-cells that can be put inside a hypercube of length l with l ^ L, and choose any c' that is contained in the hypercube. This task is always possible because c has trivial homology, and it can be easily checked that it can be accomplished in polynomial time in l. We leave the correction of other sets of (d — 1)-cells undefined, because it is not important.

Now that we have a correction procedure, we can check condition (iv). It suffices to show that no Z-syndrome b g Zg2 that only contains connected sets in nds(b) of size at most L/2 — 1 can be critical. To this end, take any d-cell t and let us check whether b is Xt-critical. Let si be the connected components of the set of (d — 1)-cells in nds(b) H d11. Both t and these sets si are contained in a hypercube of length L — 1, because each si is contained in a hypercube of length L/2 — 1. Now recall that a syndrome b is critical with respect to a given error E and encoded operator N, iff the operator (15) anticommutes with N. Using the notation of (83) we have that the operator of (15) corrX (b)XtcorrX (b + S0H d11) has support in the hypercube of length L — 1 and thus has trivial homology; hence, due to (75) it commutes with any encoded Z-type operators N c PZ. This implies condition (iv) and thus the stability of Ndr for any given N C P z .

7.5. Generalized color codes

Color codes are local codes that are constructed in a special kind of lattices called D-colexes that live in D-manifolds. We will first describe color codes without referring to homology and then give a homological picture to fit them in the general framework given above. As in the case of toric codes, several color codes labeled with d = 0,..., D can be obtained from a given lattice, which again will display d — 1 dimensional and D — d — 1 dimensional excitations. However, unlike in toric codes these excitations can branch and form nets.

7.5.1. D-colexes. A D-colex A is a D-dimensional lattice with certain colorability properties. Such lattices A can be described [22] in terms of their 1-skeleton or graph, which is (D + 1)-valent and has D + 1 colorable edges. Here, instead, we choose to define a D-colex A in terms of its dual lattice A. From now on, D is an integer, D > 0.

Definition 1. A lattice A is a D-colex if its dual lattice A is a simplicial lattice with (D + 1)-colored vertices that form a closed D-manifold.

Recall that an n-simplex is the convex hull of a set of (n + 1) affinely independent points. In a simplicial D-dimensional lattice all the n-dimensional cells are homeomorphic to n-simplices. A closed manifold is a compact manifold without boundaries. For example, for D = 1 it must be a circle, and for D = 2 [20] it could be a sphere, a projective plain, a torus, etc. That the vertices of A are (D + 1)-colored means that we have attached labels to vertices from a set Q with D + 1 elements or colors, in such a way that two vertices connected by a link never share the same color. At first sight it may seem unclear whether a D-colex can be constructed in arbitrary manifolds, due to the colorability constraints. However, in [22] a construction is given to obtain D-colexes from arbitrary lattices. In the case of hypercubic lattices, the construction

is particularly simple. The resulting dual lattice A has vertices also forming a D-dimensional hypercubic lattice, which we can label by their coordinates (xj) G ZD. The D-simplices are as follows. Let ek =: (Skj) be the standard basis. For each permutation of D elements ay, z = (zy) G ZD and (dy) G {1, — 1}D, there is a simplex with vertex coordinates

{2z, 2z + d1 e1, 2z + d1 e1 + d2e2,..., 2z + ^ diei}.

This lattice is (D + 1)-colorable: the coloring c g {0,..., D} of a vertex (xi) is given by c = Ez (xi mod 2).

We will denote the set of all n-simplices in A as An, n = 0,..., D. The coloring of vertices induces a coloring of n-simplices. Namely, given a subset of colors q C Q with n + 1 elements, we define the subset Aq C An of those n-simplices such that their n + 1 vertices are labeled with the elements of q .A coloring for the cells of the D-colex A is also induced. Let us write A* for the dual (D — n)-simplex of an n-cell A and 8* for the dual (D — n)-cell of an n-simplex 8. Then if 8 is a q-cell we say that 8* is a q cell, with q the complement of q in Q. As with simplices, the set of all n-cells of A is An and the set of q-cells is Aq C An, q C Q, |q | = n. Note, in particular, that vertices are colorless. Indeed, the colorability of vertices in A has its own content: vertices are bicolorable—that is, the graph of A is bipartite—if and only if the manifold is orientable. In general, A may be composed of m connected components Aa, a = 1, ..., m. We will regard each of these components as a '(D + 1)-cell', setting Aq := AD+1 := {Aa}.

The previous notation for A and A can be extended to individual simplices and cells. Namely, 8n C An will denote the set of n-simplices that are part of an m-simplex 8 G Am, D ^ m ^ n ^ 0. For example, if 8 G A1 is a link, then 80 = {e, n} with e, n the vertices in the ends of 8. Similarly, An C An denotes the set of n-cells that are part of an m-cell A g Am, m ^ n, and Aq C Aq denotes the set of q-cells that are part of a q'-cell A g Aq', q C q' C Q.

An important feature of D-colexes is that all their d-cells, 0 < d ^ D, are (d — 1)-colexes themselves. This can be easily checked in the dual simplicial lattice A. To this end, we first choose a vertex 8 g A0. If we keep only those simplices that meet at 8, and reduce their dimension in one by erasing the vertex 8, it is easy to check that the resulting simplicial lattice A7 is dual to a (D — 1)-colex A' with the topology of a (D — 1)-sphere. This is the colex that correspond to the D-cell 8*. The process can then be continued recursively to get the colexes attached to cells of smaller dimension. Thus, there is a one-to-one correspondence between subcolexes and cells. Each d-cell A g Ad has as its boundary a (d — 1)-subcolex. If A is q-colored, q = {qi} C Q, then its (d — 1)-colex is composed of qi-links, i = 1, ..., d.

Given a coloring r and a cell A g Aq, q C r C Q, there exists a unique r-cell, denoted as Ar g Ar, such that A g (Ar)q. It is natural to define the intersection of two cells x G Aq, v G Ar, q, r C Q, as the collection of disjoint (q Pi r)-cells x Pi v := xqnr H vqnr. When x Pi v is empty or has a single element for any cells x and v, we will say that A is nice. In a nice D-colex, if X G Aq and A G xs with s C q C Q, there exists for any r C Q with s = q H r a unique v G Ar with x H v = {A}, namely v = Ar.

7.5.2. Color codes. From a D-colex A we can obtain several color codes, labeled with an integer d such that 0 ^ d ^ D. As we will see, the dth code is dual to the dth code. The codes with d = d are self-dual, something that turns out to have interesting computational consequences.

To construct the dth color code from a D-colex A, we first attach a qubit to each vertex v g A0. As generators of the stabilizer S we choose certain (d + 1)-cell and (d + 1)-cell operators, as we explain next. For any n-cell A g An,0 ^ n ^ D + 1,we introduce the X and Z cell operators

Xx := n Xv, Zr := ^ Zv. (89)

VGA0 VGA0

An important property of cell operators is that for any integers 1 ^ n, m ^ D + 1 with n + m > D + 1, and for any cells x g An, v g Am we have [22]

[Xx, Zv] = 0. (90)

Also, for any q-cell A, q c Q, and for any coloring q' c q, we have the relations [22]

Xa = n Xx, ZA = n Zx. (91)

¡GV ¡GAq'

Definition 2. The dth color code of A, 0 ^ d ^ D, is the stabilizer code c with stabilizer s generated by the operators of the form XA, A G Ad+1, and ZA, A' G Ad+1.

From this definition it is clear that dual codes are related through the exchange of X and Z operators, and thus are equal up to a change of basis.

From the relations (91) it follows [22] that the number of encoded qubits is

k = (D) hd, (92)

where hd = hd is the dth Betti number of the manifold. The origin of this particular value will be clarified in the following sections.

Note that color codes with d = 0 or d = D are not interesting quantum codes, as they are repetition 'classical' codes, which only correct either X or Z errors and encode a qubit per connected component of A. Because of this, below we will mainly focus on color codes with 0 < d < D.

7.5.3. A simplicial homology. In this section, we will work only in the dual lattice A, since it is more suited to explain the underlying homological structure of color codes. We attach to each set of n-simplices An, 0 ^ n ^ D, the abelian group Cn of Z2 chains, together with a trivial group C—1 = {0}, and to each n = 0,..., D a boundary operator

Cd —" Cn—1 (93)

defined for n > 0 by

dn S := E 6, (94)

€ GSn —1

where S G AD. The exact sequence from which the dth color code is obtained is

Cj—1 CD Cd—1, (95)

where 0 ^ d ^ D .It gives rise to the homology group

Hd := Zd/Bd. (96)

It follows from (92) that the homology groups Hd, Hd are isomorphic to the sum of (D) hd copies of Z2. In other words, we have

Hd - D Hd. (97)

The origin of the binomial coefficient is related to color and will be explained in the next section.

7.5.4. Brane-nets. We will now give a geometric interpretation to the D-simplex cycles discussed in the previous section in terms of branes. For any n-cell A g An we define cA g Cd as

Ca := Y v*• (98)

For 0 < n < D, we will now introduce boundary operators that take n-cells to (n — 1)-chains in a 'natural' way. For A g An, we set

dA := 3„ca. (99)

We say that these definitions are natural because 9A, as a set of simplices glued together, is homeomorphic to the boundary of A in the usual sense. Moreover, if A is a q-cell, q C Q, then dA only contains q-simplices. Thus, we can regard n-cells as pieces of n-branes. Indeed, coloring is important here, and we should regard a q-cell, q C Q, as a piece of a q-brane. As we will see next, such pieces can be put together to form closed q-branes, that is, branes without boundaries in the sense of the d just defined, which is just a reinterpretation of dn.

Let us fix a particular color subset q with |q | = n and introduce the q-colored chain subgroup CqD, the subgroup of CD generated by all cA chains with A g Aq. That is, the chains in CqD represent the q-branes just discussed. We may then set Zq := Zn n CqD, Bq := Bn n CqD and Hq := Zq /Bq with the net result

Hq - Hn. (100)

Thus, the homology of q-branes for a fixed q is just the usual brane homology. This result is shown in [22] by constructing from the colex A a q-reduced lattice in which all n-cells correspond to q-cells of A.

In summary, the cycles in Zq can be regarded as closed q-branes, which are also cycles in Zn. In general, cycles in Zn will combine several pieces of such q-branes of different colors, forming n-brane nets [22]. In this sense, Hn is an n-brane net homology group, as opposed to the usual Hn homology group of n-branes. This discussion already suggests that Hn contains several copies of Hn, but how many of them? To answer this, let us consider color subsets qi c Q, i = 1, ..., D + 2 — n, with |qi | = n and |qi H qy | = n — 1 for i = j. It turns out [22] that if Zi, i = 1, ..., D + 1 — n, are qt -branes, all of them homologous in the usual sense of Hn homology, then

Y Zi - 0 (101)

up to Hn homology, which shows that only (D) color combinations are independent, which finally explains (96).

In a dth color code the relevant homology groups are Hd and Hd, with the corresponding d- and d-brane nets, which are mapped to operators using (73). The commutation rules of closed

brane-net operators are purely topological. Namely, given a closed q-brane net z g Zq, |q | = d, and a closed q'-brane net z' G Zq', |q7| = d, the operators Xz and Zz' anticommute if z and z' intersect an odd number of times and q 0 q' = 0. Otherwise they commute.

7.5.5. Branyon nets. For d = 1, ..., D, the Hamiltonian model (84) of a dth color code contains as in toric codes two kinds of brane-like excitations, (d — 1)-branyons and (d — 1)-branyons. These are created with the brane-net operators discussed in the previous sections, in particular with open brane nets since the excitations appear at their boundary. Then, unlike in toric codes, branyons can form nets and we must talk about branyon nets. As branes in the previous sections, branyons can be labeled with colors. Namely, a q-branyon is the boundary of a q -brane.

We will only discuss (d — 1)-branyons, which are related to violations of the stabilizer conditions at (d + 1)-cells. The case of (d — 1)-branyons is analogous. If A g Ad^+1 is a q-cell, we say that the corresponding excitation is a (Q — q)-branyon excitation. We know that branyon excitation must be arranged in closed structures. This fact is reflected [22] in a 'conservation law' at (d + 2) cells. Namely, for A a q-cell, |q | = d + 2, and for any r, s C q, |r | = |s | = d +1 we have

H ZM = n Zx, (102)

¡GAr ¡GAs

which is just a special case of (91). This implies, for example, that at a given (d + 2) cell there cannot exist a single excited (d + 1)-cell.

In the previous section we have seen that only dD color combinations are enough to label an independent set of d-brane operators. We will now show that we can locally transform a set of branyon excitations into a new set that only contains branyons from (D) independent colors. By 'locally' we mean that it is enough to act in the neighborhood of the undesired excitations. We start by choosing a color q0 g Q. We want to show that we can eliminate all q-branyon excitations with q0 g q or, to put it in a different way, all excitations located at cells A g Ad+1 of color q with q0 G q. The total set of excitations corresponds to the boundary of some c G CD; that is, they can be switched off with Xc. Note that all the q-cells with q0 G q that touch a (Q — q0)-subcolex are part of it. Then the restriction of Xc to those (Q — q0)-subcolexes that contain the undesired excitations will do the job.

Once we have reduce the branyonic excitations to the dD color combinations, each color may be treated independently as in the previous section. That is, the branyons of each color form boundary (d — 1)-branes.

Finally, we note that, as in the case of generalized toric codes, one can derive [22] from the commutation rules for closed brane operators the topological ±1 phases appearing in branyon processes.

7.5.6. Self-correcting models.. Regarding self-correction, color code models behave very much like toric code models. That is, for d > 1, the models with Hamiltonian (84) for the dth code protect Z-type encoded operators, and for d < D — 1 they protect X-type operators. Instead of repeating the analysis already done for toric codes, we will just mention the new features that appear in color codes. In particular, we consider the correction of X-type errors.

The first difference is the lattice, but any periodic D-colex will do, and the existence of periodic lattices follows from the procedure given in [22] to construct D-colexes from arbitrary

lattices. The second difference is that now we deal with branyon nets instead of branyons, but this does not make such a big difference due to the discussion in the previous sections. In this regard, we first need a notion of connectedness of (d + 1)-cells. This is already implicit, for example, in (102): we construct a graph with (d + 1)-cells as its nodes in which nodes are connected by a link when the corresponding cells are part of the same (d + 2)-cell (note that d ^ 2). As for the corr function, we transform each connected set of excitations using the procedure of the previous section into a collection of (d — 1) boundaries of dD colors, so that each color can be independently treated exactly as in a toric code.

7.6. Transversality properties of color codes

Color codes can have very special transversality properties when the lattice and its topology are suitably tuned. In this section, we will treat this issue in detail. To this end, we start explaining a simple way to consider D-colexes in manifolds with boundary. We then describe a particular topology for the manifold: in the shape of a D-simplex in which each face has different properties. Finally, we analyze the transversality properties of the resulting simplicial codes.

7.6.1. Boundaries. Up to now we have only considered colexes A in closed D-manifolds. However, richer color codes can be obtained by introducing suitable boundaries in the manifold [20, 21]. The easiest way to describe such boundaries is as collections of missing cells in the lattice. For a missing cell in A, we really mean a missing generator of the stabilizer. When the removed generator is independent from the remaining ones, the number of encoded qubits k gets increased (4). This can be understood also in homological terms. Consider a q-brane c G CD with a boundary, |q | = d. Given an encoded state | ^ >, the state Xc | ^) will have stabilizer violations at those (d + 1)-cells that form the boundary of c, where as above d = D — d. But, if we eliminate the generators that correspond to these (d + 1)-cells, then Xc will belong to the stabilizer and thus we should consider c a closed q-brane. This way, as cells are eliminated we are introducing in the manifold areas in which suitable branes can have a boundary and still be closed. It is as if we had removed a piece of manifold in these areas, thus creating a boundary. Such an introduction of a boundary does not change homology only in the way just discussed. In addition, when we remove a q-cell the corresponding generator, which can be regarded as a d-brane, transforms into an encoded operator in N — S. Thus, this d-brane should no longer be considered a boundary, but rather a nontrivial cycle.

Although for our purposes it will be much more convenient to describe boundaries as big missing cells in the lattice, this would not be convenient at all in an implementation of the model. Fortunately it is possible to adopt a different approach, as discussed in [48] in the context of 2D toric code models and also in [49] in a more general framework. In this alternative approach boundaries appear at interfaces between the topologically ordered phase and other phases in which some of the branyons are condensated.

7.6.2. Simplicial color codes. There exists a very special class of color codes which live in simplex-shaped lattices. For D = 2 we have triangular codes [20], which bear this name because their lattice is a triangle: each side of the triangle corresponds to a different kind of boundary. For D = 3 we have tetrahedral codes [21], and more generally for arbitrary D we may consider simplicial codes. Instead of giving a detailed description of the properties of each

of the boundaries in a simplicial code, it is just easier to give a constructive procedure to obtain such codes, as we do next.

Suppose that we have at our disposal a D-colex A with the topology of a D-sphere, D ^ 2. Since spheres are homologically trivial for D ^ 2, A yields trivial color codes with k = 0, no encoded qubits. Let us now choose a vertex of A and proceed to remove the corresponding physical qubit and all the (d + 1)- and (d + 1)-cells that meet at this vertex. The resulting lattice looks like a D-simplex, because it is a D-ball with its boundary (D — 1)-sphere divided in the D + 1 regions that were in contact with each of the D + 1 removed D-cells. It can be checked using (91) that only two independent generators of S are eliminated in the process, one of X type and the other of Z type. Thus (4), all color codes derived from the new lattice A7 encode exactly one qubit. Since the original lattice has an even number of qubits [21], it follows that the operators

X := X®n, Z := Z®n, (103)

with n the total number of remaining qubits, are the encoded X and Z operators: they belong to the normalizer and

{X, Z} = 0. (104)

It is easy to construct the smallest example of a simplicial color code for each dimension D ^ 2. We start with a (D + 1)-hypercube, in which we color parallel links with the same color to get [22] a D-colex with the topology of a D-sphere. Then as explained above we eliminate one of its vertices and all neighboring cells. As a result we get a color code with 2D+1 — 1 physical qubits in which all n-cells have 2n vertices.

7.6.3. Transversal gates. We will now consider the transversality properties of color codes. As it turns out, simplicial colexes give the most suitable color codes for the transversal implementation of quantum gates. Thus, we restrict our discussion to them.

First, it is clear that the transversal implementation of the logical X and Z operators is always possible, since they take the form (103). For the same reason, transversal measurements of X and Z are always possible. Similarly, the two-qubit CNot gate

Cx :=|0)(0|®I + |1)(1|®X (105)

can always be implemented transversally on pairs of equal simplicial codes by applying it to each pair of equivalent qubits. The one-qubit Hadamard gate

is more restrictive. As it exchanges X and Z operators, it can only be applied to dual codes, those with d = d. Again, it can be obtained by applying a Hadamard to each of the physical qubits independently.

We want to consider in general the family of one-qubit phase gates

Rk := |0)(0| +exp(|1)(1|, (107)

where k is a non-negative integer. The case k = 0 is just the X gate. The case k = 1 is important since the gates {CX, H, R1} generate the Clifford group. Still more interesting is the case k = 2, because CX and R2, together with X and Z initializations and measurements, are enough for

universal quantum computation [50]. To study in detail when these gates can be implemented transversally on simplicial color codes, we will introduce next the notion of (j, k)-good colexes. From now on, j, k are integers with 0 ^ j ^ D, k ^ 0.

Definition 3. A D-colex A is (j, k)-good if

Vc G Bj, |c|= 0 mod 2k+1. (108)

Note that all colexes are (j, 0)-good. From the first expression for encoded states in (80) and the fact that simplicial colexes have an odd number of physical qubits, it follows that simplicial color codes obtained from (d, k)-good colexes allow the transversal implementation of Rk gates. More exactly, if we apply Rk to each physical qubit independently we will get a logical Rsk gate, with an odd power s. But since s and 2k+2 are coprime, there exists an integer r such that Rskr = Rf+H1 = Rk.

The problem with definition 3 is that it is not really operative. But we can give a simpler characterization of (j, k)-goodness. For its proof, see appendix C

Theorem 1. A nice D-colex A is (j, k)-goodfor some k > 0 if and only if j' := 2 j — D ^ 0, all j-subcolexes are (j', k — 1)-good and

V A g A j+1, |A01 = 0 mod 2k+1. (109)

Moreover, the ^ implication holds even if A is not nice.

Since (0, k)-good colexes only exist for k = 0, by repeatedly applying theorem 1 it follows that a (j, k)-good and nice D-colex may exist only if

j > F+TD. (110)

Several conclusions may be derived from this result. For example, dual codes only allow the transversal implementation of the R1 gate. Indeed, if this were not the case, i.e. a dual code allowed transversal implementation of R2, then this would imply existence of a stabilizer code supporting the application of a universal set of operations, in contrast to the result present in [51]. For fixed d, there is a minimal dimension D for which (d, k)-good nice D-colexes exist, namely

d ^ (k+1)d. (111)

In particular, setting d = 1 it follows that the minimal dimension D for which Rk may be transversally implementable in a color code is D = k +1.

Once the bound (111) is established, it only remains to be shown that it is saturated by some lattice. But, the simplest examples of simplicial lattices given in the previous section indeed saturate the bound. The next question is whether periodic lattices that saturate it exist. This is indeed the case for D = 2, 3.

As for higher dimensions, we are particularly interested in the case D = 6, k = 2, d = 2. Indeed, we need d > 1 if the system is to be self-correcting and k > 1 to obtain universal computation with transversal operations. Thus, D = 6 is the lowest dimensionality that puts the two features together. As can be readily checked, the construction of section 7.5.1 provides a suitable periodic 6-colex. Finally, by adding one more dimension we can obtain local CNot gates.

8. Self-correcting quantum computers

8.1. Initialization from thermal states

8.1.1. Initialization with an external field. In the previous sections, we have studied how quantum memories resilient to thermal noise can be obtained from local quantum models in 4D and above, from both toric codes and color codes. However, a quantum memory is not of not much use if we cannot initialize it. We will now sketch a possible procedure to initialize the self-correcting topological quantum memories as long as we can control the couplings of the local quantum Hamiltonian—without any sort of physical qubit addressing. In particular, we will consider toric and color code models with d > 1, so that the dressed version of Z-type encoded operators N are protected, and give a procedure to initialize all such operators to N = 1 with a probability of failure exponentially small in the system size. For D = d = 2, this is just the usual initialization of a 2D ferromagnet with an external magnetic

Our starting point is a modification of the Hamiltonian (84). We introduce single-qubit Zeeman terms and some couplings to reflect the fact that now the strength of the different terms can be controlled:

where s runs over all qubits and gX, gZ, g0 ^ 0. Before considering the details, let us sketch the initialization procedure. We start from a thermalized state with gZ = g0 = 1 and gX = 0. Then we switch off the Zeeman terms. Finally, we 'carefully' switch on the X-type stabilizers until g1 = 1, as discussed below. Note that the Hamiltonian is exactly solvable at all times, since all the terms with nonzero coupling at a given time commute. Moreover, all the terms commute with Z-type encoded operators, precisely the ones that we want to initialize with eigenvalue 1.

We first want to show that, for temperatures 1/^ below a critical value, the initial thermalized state satisfies, for any encoded operator N e n 0 pz and some t > 0,

Recall that gX = 0 and gZ = g0 = 1. Both for toric and color codes we already have a graph of the excitations that correspond to gZ terms, where nodes are labeled by the qt elements of the lattice. We enlarge this graph by adding a node per physical qubit, to represent the excitations that correspond to the Zeeman g0 terms. We also add a link from the node of the physical qubit s to the node of qt if {Xs, Zqi} = 0, and a link between the nodes of two physical qubits s and s' if they are both linked to some qt. For example, in a toric self-correcting code with d = 4 the qt nodes correspond to edges and the s nodes to plaquettes, so that the links of the graph just represent the usual notion of connectedness for plaquettes and edges in a lattice. The Zeeman term is responsible for the tension of membranes built of plaquettes, while the Kitaev term for the tension of the loops, i.e. boundaries of the membranes.

It is then clear that any connected set of excitations can be independently switched off with a suitable operator in PX. We can then repeat the reasoning of section 6.4 to show that those excitation configurations which contain connected sets of size bigger than, say, L/2 are exponentially suppressed with the size of L. Therefore, it suffices to observe that the rest of the configurations belong to the sector with Ndr = 1 for any N g N H PZ, as we detail next using

field.

1 -<Ndr< e—L.

the language of section 7.3. First, the eigenstates of the Hamiltonian may be written as |a)0 for some a G A1. The corresponding set of excitations corresponds both to the chain a and its boundary d1 a G A0. But, corr(S2 H da) = Xa/ for some a' G A1 such that both a and a' lie in the same hypercube of length L/2, and thus XaXa, g S. The result follows.

Once we have shown that the initial thermal state is in the desired sector, it is enough to check that this continues to be true as we switch off and on the interactions as indicated. This follows from the fact that gZ = 1 at all times, as long as we keep the temperature of the system stable. In this regard, the process of switching on gX could be a problem since at the start we have arbitrarily many violations of the X pi stabilizers and if gX increases too fast we will put a lot of energy in the system. To avoid this, we require that the switching on is done slowly enough for the system to stay close to the thermal state. In this regard, we assume that the thermalization time is independent of the system size, so that the time required to perform a gate does not scale either. This is a natural assumption for the systems considered here given the nature of their excitations, at least as long as the coupling with the environment is uniform.

8.1.2. Initialization by code deformation. An alternative way to initialize a topological quantum code is to use the code deformation approach as discussed in [48, 53]. Without going into details, the idea is to start from a code with no encoded qubits, and to change its geometry progressively to introduce an encoded qubit and at the same time initialize it in a well-defined manner. Note that the geometry is dictated by the stabilizer generators, and these in turn are the terms in the Hamiltonian, so that we are required to control the couplings of the protecting Hamiltonian at least with a certain degree of spatial resolution, even if no detailed control is required.

If the final encoded quit should be initialized to Z = 1, the logical operator Z should correspond (up to the deforming process) to a stabilizer in the original trivial code. Also, along the whole process the geometry must be such that the X logical operator, when it exists, has a global support, ensuring that the encoded quit is topologically protected from bit-flip errors. On the other hand, it will not be protected at all times from phase-flip errors, but just as in the initialization with Zeeman terms such errors are immaterial. As an example, figure 2 shows how this could be done in a 3D toric code by changing boundary conditions (stabilizers) over time.

There is thus a parallelism in these two ways to initialize the quantum memory, in the sense that they rely on 'unprotecting' at some point the logical operator that provides the initialization basis. It is unclear whether this is a general feature of the initialization of a self-correcting (or maybe just self-protecting) quantum memory or a particularity of our approach.

8.2. Measurements

The fact that we are dealing with CSS-like codes implies that we may make transversal X and Z measurements. Typically, measuring a physical qubit in the Z basis requires an interaction Z ® Happ with a measuring apparatus. In this regard, during the measurement we can switch off the X-type stabilizers, which do not commute with the measuring Hamiltonian. Switching off this part of the protecting Hamiltonian is not a source of problems since the corresponding errors do not affect the measurement.

Alternatively, code deformation could also be used to make the measurements.

Figure 2. Initialization of a 3D toric code by changing the boundary conditions over time. (a) At the start, open string operators with their endpoints on any boundary surface (as the one displayed) are stabilizers. There are no encoded qubits. (b) Boundary conditions change over a region (shaded) that extends as time passes. On this region string operators cannot end. Instead, membrane operators with their boundary in the region (as the one displayed) are stabilizers. (c) When the region with the alternate boundary conditions becomes nonsimply connected, an encoded quit appears. The X logical operator is the membrane shown, whereas the Z logical operator corresponds to the string. The latter is initialized to 1 by continuity, as such a string operator was before a stabilizer.

8.3. Transversal gates

In section 7.6.3, we showed that 6D color codes are enough to have a set of universal transversal operations. Local CNots require an additional dimension to remain local, so that we need a total of seven spatial dimensions.

In order to perform transversal gates we have to temporarily modify the Hamiltonian of the system. This means adding new terms that will not commute with the protecting ones and thus make the analysis difficult. In any event, when a gate is halfway completed the system will, in general, be in a state with a high energy with respect to the protecting Hamiltonian. This could easily be a source of problems. To circumvent them, we propose to apply gates that are fast in comparison with the protective Hamiltonian. Thus, during the application of gates, the protective Hamiltonian can be neglected.

Note that we can represent the faulty gate as an ideal gate preceded by some noise operation, so that it is enough to consider a situation with a trivial gate (identity), i.e. qubits are subject solely to interaction with the environment. Thus, the process can be seen as a noisy channel, so that we can use the results of section 6.5, which tell us that the quantum memory can resist a small amount of noise. Indeed, the results in that section were obtained for a depolarizing

channel acting independently on each qubit, but they can be generalized to more complicated noises as long as correlations are local.

Because fast gates may result in a large amount of noise [14] (see footnote 6), we must create separation between the time scales of the gate and the protective Hamiltonian by decreasing the coupling of the protective Hamiltonian rather than making the gate faster. Then, however, the ratio T/A (where A is the minimal separation between the energy levels of the protective Hamiltonian) will become larger, and the threshold for resilience against white noise will decrease. Therefore, in order to keep the noise produced by the gate below that threshold, we shall tune down temperature. In this way, if we are given good enough gates, we are able to choose the coupling constant of the protective Hamiltonian and the temperature in such a way that the gate is applied to the logical qubit with arbitrary good fidelity.

However, this is not really the end of the story. Even if we could perform transversal gates perfectly and in an instant, the gates themselves will increase the number of excitations. In the case of single-qubit gates we know that excitations cannot spread much, so this is not a big problem. The case of CNot gates is worse, because they copy errors (and thus excitations) from one code to another. It is intuitively clear, however, that as long as excitations are scarce enough this will not affect the encoded qubits. A rigorous approach to this problem requires using similar arguments to those in sections 6.4 and 6.5, but considering two copies of the TL lattices together.

In summary, the application of a transversal gate will put some amount of energy per volume unit in the system. As long as the temperature is low enough and the energy is not too much, this will not produce an error. Of course, we have to wait for some time between gates, so that the injected energy can be dissipated.

9. Conclusions

We have provided a quantum-topology-based solution to the problem of constructing a self-correcting QC. One of the main problems we have to face is the existence of tensionless string excitations (errors) that propagate throughout the quantum device causing the QC to collapse. Thus, a mechanism for reabsorption of errors is necessary and a natural way to achieve this in a topological scenario is by increasing the spatial dimension, but this has to be done with an appropriate class of topological codes such as TCCs that provide a complete set of tools for a self-correcting QC. This situation is reminiscent of another fundamental problem in gauge theories, i.e. color confinement in QCD. In fact, there exists the string picture of confinement based on string tension on quarks [54]. We may conjecture that a possible solution to the critical dimension of the self-correcting QC is to find appropriate confinement mechanisms, i.e. we arrive at the following relationship:

Self-correcting QC ^ Confinement problem.

The solution of this confinement problem is an open question in topological quantum computation.

Related to this central problem, we have constructed a model for a self-correcting QC based on topological stabilizer codes. The model, to be local, requires seven spatial dimensions—the codes require six dimensions and an extra dimension is needed to keep CNot gates local. Our model consists of (1) a lattice of qubits exhibiting proper topological and geometrical properties so that (2) a code on this lattice allows a universal set of transversal gates (including

measurements) and (3) a protecting Hamiltonian, with controllable coupling constants. We have described the procedures for initialization and measurement of the QC and how gates should be performed. For the latter, we have also proposed an initialization method based on code deformations that avoids switching on/off Hamiltonians7.

We have then obtained two rigorous results concerning the self-protection of such a QC. Firstly, we have shown within the weak-coupling limit regime that the memory is stable, generalizing thereby the results of [16]. Secondly, we have shown that if the memory is exposed to a local noise for a short time the quantum information is preserved. Our further results are physically well motivated and established. These comprise the initialization scheme and a reasoning showing that we can perform gates on protected qubits with high fidelity.

We would like to emphasize that as the formulation of a self-correcting QC is a challenge, we decided to relax the number of spatial dimensions D in which our proposals are formulated. The point is to address this problem as a fundamental issue regardless of the dimensionality. Once we have seen that this is possible under the circumstances considered in this paper, we may reflect on possible ways to lower the dimensionality D where the lattices are embedded. To this end, we should consider our models as simplified models as far as the types of degrees of freedom are concerned. We have only used spin-1/2 or qubits. It is an open question whether by including additional degrees of freedom like fermions or bosons, we could induce interactions that may lower the dimension in which self-correcting QCs are possible [13]. A similar possibility is to consider models with generalized spins and discrete non-abelian gauge symmetry groups [52] which are found to possess string tension and confining properties. Generally speaking, there are instances of quantum theories whose critical dimensions for being stable can be lowered by introducing additional types of degrees of freedom or a combination thereof. This could also be the case here and this possibility we leave open, but with the new insight gained here, we see that at least with simpler models it is possible to achieve the property of self-correctedness.

Finally, let us note that our results are in contradiction with [26], where it is argued that a QC could be used to draw work from a heat bath. It would be worthwhile to get more insight into this problem, especially regarding the points which are more physically established in our approach, particularly the limitations in the access to the quantum memory.

10. Later results

We have already commented on previous results on self-correcting quantum devices in section 2. After the completion of this work, a series of very interesting articles have also appeared addressing the possibility of QCs with self-correcting capabilities. In particular, some of them introduce new topological codes in more physically accessible dimensions like 3D codes possessing some self-correcting properties [55-57]. We would like to emphasize a basic difference between those proposals and ours for the sake of clarity in the quest for a self-correcting QC. Namely, all those novel schemes do not work at a fixed temperature, i.e. in order to increase fidelity, the temperature must be decreased. In contrast, in this paper we consider a strong notion of self-correction involving a phase transition at a certain critical temperature. This

7 Let us note in passing that we have also proposed to temporarily switch off the protecting Hamiltonian, so that we can avoid problems due to the combined effect of the protecting Hamiltonian and the one needed to perform the gates.

means that we are using the most demanding or realistic scenario: we assume finite temperature T > 0, implying that our notion of self-correction is very strong. We prefer this strong notion rather than introducing a weaker notion of self-correction in which memories are initialized at T = 0 and demanding a size-dependent thermalization time.

Acknowledgments

We are grateful to Robert Alicki for asking questions that led to this paper and for numerous discussions. MH thanks Jonathan Oppenheim for discussions. HB and MAM-D acknowledge financial support from a PFI grant of EJ-GV, DGS grants under contract, FIS2006-04885 and the ESF INSTANS 2005-10. RWC and MH are supported by EC IP SCALA and by the Polish Ministry of Science and Higher Education through grant no. NN20223193. RWC also acknowledges support from the Foundation of Polish Science (FNP). The support from the Polish research network LFPPI is also acknowledged. Part of this work was done in the National Quantum Information Centre of Gdansk. Part of this work was initiated during the Madrid 2008 conference on the Mathematical Foundations of Quantum Control and Quantum Information Theory (Fundacion Areces).

Appendix A. Relationship between fidelity and the autocorrelation function: the proof of proposition 1

Let us denote X = P+ — P—, with P+ + P— = I. From the definition of F(^; A*y anc, panc), we obtain

and similarly for F; Ay anc, panc). On the other hand, using that A preserves the identity, we obtain

This, together with equation (A.1), implies the required formula. Appendix B. A bound for connected collections

We want to show that, in a graph with at most x links meeting at each node, the number of connected collections of nodes of size k that contain a given node n is bounded by eTk for a suitable t that only depends on The idea of the proof is to express a collection as a word W in a suitable alphabet with x + 1 letters. For a given node, each neighboring node is identified by one of the first x letters, and there is an extra 'back' letter. A valid word can have at most l/2 'back' letters among its first l letters, and we construct a collection from a valid word W as follows. At each step we keep an ordered list of nodes (n 1,..., nI). At the start the list is (n), so that it has a single element. At the jth step if the jth letter of W is not a 'back' letter, we add the corresponding neighboring node of nI, the last element of the list. If instead it is a 'back' letter, we remove the last node in the list. The collection is formed by those nodes that were in the list at some point in the process, so that clearly at most 2k — 3 letters are necessary to encode a collection of size k and thus we can take t = 2log(x +1).

F; Ay anc, Panc) = Tr(Iy ® PancP+ A(P+))

X A( X) = 2( P+ A( P+) + P— A( P—)) — I.

Appendix C. Proof of theorem 1

First we need some extra notions for those cases in which j' ^ 0. Recall that each A g Aj+1 is a j-colex A7. We introduce a group homomorphism hA : CD ^ C'j that restricts c G CD to Cj, the j-simplex chain group of A. In particular for c = vGv v* with V c A0 we set

hA(c) := vGV> v* with V' = V H A0. This homomorphism maps Bj to Bj,. To check this, it suffices to show that for any x g A j+1 we have h A(cx) = E v G N cv for some N c A j/+1. But, if X H A = {vz } we just set N = |Ji (vz) j/+1.

When A is nice, we can in addition define a group homomorphism hA : Bj, —> Bj such

that for every c' G Bj, we have h A(h x(c')) = c'. For each v g A j / we set h A(cfv) := cv q, where q = Q — (r — s) with s, r c Q such that v G As, A g Ar. Here, c^ is meant to denote hA(cv). We can now prove each of the implication directions:

^ / First, for any A g A j+1 we have cA G B j, so that |A01 = |cA | = 0mod 2k+1. Suppose that j j ^ 0. Then, for any two colorings q, r c Q with |q | = |r | = j + 1, |q H r | = 0 and for any v G A0 we get, using the niceness of A, that |cvq + cvr | = |cvq | + |cvr | — 2 = — 2 mod 2k+2, a contradiction. Finally, suppose that A g A j+1 is not (j', k — 1)-good as a j-subcolex. Then, with the same notation as above, there exists a chain c' g Bj, with |c7| ^ 0 mod 2k. For c = hx(cr), we have by assumption |c| = 0mod 2k+1, but then |c + cA| = |c| + |cA| — 2|c7| ^ 0 mod 2k+1. Since c, cA G BB j, this is a contradiction.

^ / It suffices to show that for any c G B j with |c| = 2 mod 2k+1 and for any A g A j+1 we have |c + cA| = 0mod 2k. But, for d = hA(c) we get |c + cA| = |c| + |cA| — 2|c7| and since |c7| = 0mod 2k the result follows.

References

[1] Nielsen M A and Chuang IL 2000 Quantum Computation and Quantum Information (Cambridge: Cambridge

University Press)

[2] Cirac JI and Zoller P 1995 Quantum computations with cold trapped ions Phys. Rev. Lett. 74 4091-4

[3] Shor P 1996 Fault-tolerant quantum computation Proc. Symp. on the Foundations of Computer Science (Los

Alamitos: CA) (arXiv:quant-ph/9605011)

[4] Kitaev Yu A 1997 Quantum error correction with imperfect gates Quantum Communication, Computing and

Measurement ed O Hirota, A S Holevo and C M Caves pp 181-8

[5] Knill E and Laflamme R 1996 Concatenated quantum codes arXiv:quant-ph/9608012

[6] Knill E, Laflamme R and Zurek W 1996 Accuracy threshold for quantum computation arXiv:quant-

ph/9610011

[7] Knill E, Laflamme R and Zurek W 1998 Resilient quantum computation: error models and thresholds Science

279 342

[8] Aharonov D and Ben-Or M 1999 Fault-tolerant quantum computation with constant error rate arXiv:quant-

ph/9906129

[9] Kitaev Yu A 1997 Quantum computing: algorithms and error correction Russ. Math. Surveys 52 1191-249

[10] Preskill J 1998 reliable quantum computers Proc. R. Soc. Lond. A 454 385-410

[11] Wen X-G 2004 Quantum Field Theory of Many-Body Systems: From the Origin of Sound to an Origin of

Light and Electrons (Oxford: Oxford University Press)

[12] Kitaev Yu A 2003 Fault-tolerant quantum computation by anyons Ann. Phys. 303 2

[13] Dennis E, Kitaev A, Landahl A and Preskill J 2002 Topological quantum memory J. Math. Phys. 43 4452-505

[14] Alicki R, Lidar D A and Zanardi P 2006 Internal consistency of fault-tolerant quantum error correction in

light of rigorous derivations of the quantum Markovian limit Phys. Rev. A 73 052311

[15] Alicki R, Fannes M and Horodecki M 2008 On thermalization in Kitaev's 2D model arXiv:0810.4584

[16] Alicki R, Horodecki M, Horodecki P and Horodecki R 2008 On thermal stability of topological qubit in

Kitaev's 4D model arXiv:0811.0033

[17] Kay A and Colbeck R 2008 Quantum self-correcting stabilizer codes arXiv:0810.3557

[18] Bravyi S and Terhal B 2008 A no-go theorem for a two-dimensional self-correcting quantum memory based

on stabilizer codes arXiv:0810.1983

[19] Bacon D 2006 Operator Quantum error correcting subsystems for self-correcting quantum memories Phys.

Rev. A 73 012340

[20] Bombin H and Martin-Delgado M A 2006 Topological quantum distillation Phys. Rev. Lett. 97 180501

[21] Bombin H and Martin-Delgado M A 2007 Topological computation without Braiding Phys. Rev. Lett.

98 160502

[22] Bombin H and Martin-Delgado M A 2007 Exact topological quantum order in D = 3 and beyond: branyons

and Brane-Net condensates Phys. Rev. B 75 075103

[23] Weimer H, Muller M, Lesanovsky I, Zoller P and Buchler H P 2009 Digital coherent and dissipative quantum

simulations with Rydberg atoms arXiv:0907.1657

[24] Bombin H, Kargarian M and Martin-Delgado M A 2008 arXiv:0811.0911

[25] Herdman C M, Kevin C Young, Scarola V W, Sarovar M and Whaley K B 2010 Stroboscopic generation of

topological protection Phys. Rev. Lett. 104 230501 Kempe J, Kitaev A and Regev O 2004 The complexity of the local Hamiltonian problem SIAM J. Comput. 35 1070-97

Jordan S P and Farhi E 2008 Perturbative gadgets at arbitrary orders Phys. Rev. A 77 062329

[26] Alicki R 2009 Quantum memory as a perpetuum mobile of the second kind arXiv:0901.0811

[27] Kay A 2008 The non-equilibrium reliability of quantum memories arXiv:0807.0287

[28] Castelnovo C and Chamon C 2008 Topological order in a 3D toric code at finite temperature Phys. Rev. B

78 155120

[29] Iblisdir S, Perez-Garcia D, Aguado M and Pachos J 2008 Scaling law for topologically ordered systems at

finite temperature arXiv:0806.1853

[30] Kargarian M 2009 Finite temperature topological order in 2D topological color codes Phys. Rev. A 80 012321

[31] Knill E, Laflamme R and Viola L 2000 Theory of quantum error correction for general noise Phys. Rev. Lett.

84 2525

[32] Alicki R 2006 False qubits? Polarization of light and Josephson junction arXiv:quant-ph/0606242v2

[33] Knill E 2006 On protected realizations of quantum information arXiv:quant-ph/0603252

[34] Shor P W 1996 Scheme for reducing decoherence in quantum computer memory Phys. Rev. A 52 R2493

[35] Steane A M 1996 Error correcting codes in quantum theory Phys. Rev. Lett. 77 793

[36] Gottesman D 1996 Class of quantum error-correcting codes saturating the quantum Hamming bound Phys.

Rev. A 54 1862

[37] Calderbank A R, Rains E M, Shor P W and Sloane N J A 1997 Quantum error correction and orthogonal

geometry Phys. Rev. Lett. 78 405

[38] Alicki R and Fannes M 2008 Decay of fidelity in terms of correlation functions arXiv:0809.4180

[39] Alicki R 1988 Physica A 150 455

[40] Zanardi P and Rasetti M 1997 Phys. Rev. Lett. 79 3306

[41] Alicki R and Lendi L 2008 Quantum Dynamical Semigroups and Applications 2nd edn (Berlin: Springer)

[42] Hofmann H 2005 Phys. Rev. Lett. 94 160504 (arXiv:quant-ph/0411011)

[43] Peierls R 1936 Proc. Camb. Phil. Soc. 32 477

[44] Griffiths R 1964 Peierls proof of spontaneous magnetization in a two-dimensional Ising ferromagnet Phys.

Rev. A 136 437

[45] Dobrushin R L 1965 Teoriya Veroyatnostei i ee Primeneniya 10 209 Dobrushin R L 1965 Theory Probab. Appl. 10 193 (Engl. transl.)

[46] Bombin H and Martin-Delgado M A 2007 Homological error correction: classical and quantum codes J. Math.

Phys. 48 052105

[47] Bombin H and Martin-Delgado M A 2007 Optimal resources for topological 2D stabilizer codes: comparative

study Phys. Rev. A 76 012305

[48] Bombin H and Martin-Delgado M A 2008 An interferometry-free protocol for demonstrating topological

order Phys. Rev. B 78 165128

[49] Bombin H and Martin-Delgado M A 2011 Nested topological order New J. Phys. 13 125001

[50] Knill E, Laamme R and Zurek W 1996 Accuracy threshold for quantum computation arXiv:quant-ph/9610011

[51] Zeng B, Cross A and Chuang I L 2007 Transversality versus universality for additive quantum codes

arXiv:0706.1382v3 [quant-ph]

[52] Bombin H and Martin-Delgado M A A 2008 A family of non-Abelian Kitaev models on a lattice: topological

confinement and condensation Phys. Rev. B 78 115421

[53] Bombin H and Martin-Delgado M A 2009 Quantum measurements and gates by code deformation J. Phys.

A: Math. Theor. 42 095302

[54] 't Hooft G 1976 High Energy Physics ed M Zichichi (Bolognia: Editrice Compositori)

[55] Haah J 2011 Local stabilizer codes in three dimensions without string logical operators Phys. Rev. A

83 042330

[56] Bravyi S and Haah J 2011 Analytic and numerical demonstration of quantum self-correction in the 3D cubic

code arXiv:1112.3252

[57] Michnicki K 2012 3-d quantum stabilizer codes with a power law energy barrier arXiv:1208.3496