<<

Topological and quantum simulations

David Wang

Submitted in total fulfilment of the requirements of the degree of Doctor of Philosophy

August 2011

School of Physics The University of Melbourne

Abstract

Quantum are machines that manipulate stored in the form of , the quantum analogue to the classical . Unlike the bit, allows a to be in a linear superposition of both its states. Given the same number of and qubits, the latter stores exponentially more information. Quantum exploit these superpo- sition states, allowing quantum computers to solve problems such as prime number factorisation and searches faster than classical computers. Realising a large-scale quantum is difficult because quantum in- formation is highly susceptible to noise. Error correction may be employed to suppress the noise, so that the results of large quantum algorithms are valid. The overhead incurred from introducing error correction is neutralised if all elementary quantum operations are constructed with an error rate below some threshold error rate. Below threshold, arbitrary length quantum computation is possible. We investigate two topological quantum error correcting codes, the planar code and the 2D colour code. We find the threshold for the 2D colour code to be 0.1%, and improve the planar code threshold from 0.75% to 1.1%. Existing protocols for the transmission of quantum states are hindered by maximum communication distances and low communication rates. We adapt the planar code for use in quantum communication, and show that this allows the fault-tolerant transmission of quantum information over arbitrary distances at a rate limited only by local quantum gate speed. Error correction is an expensive investment and thus one seeks to employ as little as possible without compromising the integrity of the results. It is therefore important to study the robustness of algorithms to noise. We show that using the matrix product state representation allows one to simulate far larger instances of the quantum factoring algorithm than under the traditional amplitude formalism representation. We simulate systems with as many as 42 qubits on a single with 32GB RAM, comparable to amplitude formalism simulations performed on far larger computers.

Declaration

This is to certify that

i. the thesis comprises only my original work towards the PhD except where indicated in the Preface,

ii. due acknowledgement has been made in the text to all other material used,

iii. the thesis is less than 100,000 words in length, exclusive of tables, maps, bibliographies and appendices.

Preface

Chapter 1 is an original review, and Chapters 2–5 are based on published material[1–5]. Technical details and software used in simulations, unless oth- erwise stated, were developed by myself. This work benefited greatly from insightful advice from the following contributors: Charles Hill (Chapters 5 and 6), Ashley Stephens (Chapter 2), and Zachary Evans (Chapter 2).

Acknowledgements

To my supervisors, Lloyd Hollenberg and Austin Fowler, for their diligent reading and their continual support. My colleagues Ashley Stephens, Zachary Evans, and Charles Hill, who have been a wealth of knowledge and provided endless discussions. To my friends Daniel, James, Michael and Nadine. And of course, to my Family. All of you made this possible.

Contents

1 Introduction 1 1.1 Quantum and Quantum Algorithms ...... 1 1.2 QuantumMechanicsofQubits...... 4 1.3 TheStabiliserFormalism...... 5 1.4 QuantumErrorCorrection ...... 6 1.5 CircuitNotation ...... 8 1.6 Topological Quantum Computation ...... 10 1.6.1 Non-Abelian Anyons ...... 11 5 1.6.2 The ν = 2 QuantumHallState ...... 12 1.6.3 Computation with Anyons ...... 13 1.7 QubitArchitectures...... 13 1.7.1 IonTraps ...... 14 1.7.2 SuperconductingQubits ...... 14 1.7.3 QuantumDots ...... 15

2 The Planar Code 17 2.1 TheToricandPlanarCodes ...... 18 2.2 SyndromeExtraction ...... 21 2.3 ErrorCorrection ...... 23 2.4 GraphMatchingExample ...... 27 2.5 Time to Failure Simulations and Results ...... 28 2.6 Conclusion...... 32

3 Enhanced Planar Code Error Recovery 33 3.1 AccurateErrorPropagation ...... 33 3.2 Non-integralLinkWeights ...... 36 3.3 Results...... 40 3.4 Conclusion...... 44

i Contents

4 Surface Code Quantum Communication 47 4.1 Motivation...... 47 4.2 Quantum Communication Protocol ...... 49 4.3 CommunicationLinkErrors ...... 52 4.3.1 Bell Pair Error Rate ...... 53 4.3.2 LossofBellPairs ...... 54 4.3.3 Combined Bell Pair Errors ...... 55 4.4 Conclusion...... 58

5 The 2D Colour Code 59 5.1 Motivation...... 59 5.2 Error Correction on the 2D Colour Code ...... 62 5.3 Logical Qubits and Logical Gates ...... 66 5.4 Hypergraph Mimicry and Pair Assignment ...... 68 5.5 IdealThresholdErrorRate...... 76 5.5.1 Direct simulation ...... 76 5.5.2 Dangerous syndrome coverage ...... 77 5.6 SimulationResults ...... 80 5.7 Conclusion...... 85

6 Order-Finding and Matrix Product States 87 6.1 Review of Shor’s Algorithm ...... 87 6.2 Matrix Product States and Space Complexity ...... 90 6.3 Implementation and Benchmarks ...... 94 6.4 Multi-ProcessMPS ...... 99 6.5 Conclusion...... 100

7 Summary and Conclusions 103

ii List of Figures

1.1 Circuit representations for applying (a) a single-qubit unitary Uˆ; (b) a cnot gate; and (c) a swap gate...... 9 1.2 Circuit representations for (a) and (b) in the Z basis; (c) in the X basis...... 9 1.3 A non-fault-tolerant circuit preparing the 4-qubit cat-state. . . . 10

2.1 Arrangement of qubits on a torus with nearest-neighbour inter- actions. The stabiliser generators are the tensor products of Z and X on the qubits around faces and intersections respectively. 18 2.2 Examples of error syndromes on the toric and planar codes. . . 19 2.3 The two logical-X and logical-Z operators in the . . . 19 2.4 Eliminating the toric code’s periodic boundaries to produce the 2Dplanarcode...... 20 2.5 Circuits used to measure (a) X stabilisers, and (b) Z stabilis- ers. Ancilla qubits have at most four neighbouring data qubits, which are denoted by their respective compass directions. . . . . 21 2.6 Sequence of cnot gates permitting simultaneous measurement ofallstabilisers...... 21 2.7 3D syndrome formed when using non-ideal syndrome extraction circuits...... 22 2.8 The syndrome observed depends only the terminals of error chains,thusisnotunique...... 24 2.9 The toric code error correction methodology adapted for the planarcodeanditsboundaryconditions...... 25 2.10 Optimisations arise from the inclusion of boundary nodes. . . . 26 2.11 Example syndrome on the toric code, and the associated graph forerrorcorrection...... 27 2.12 Exampleofamatching...... 27 2.13 Exampleofanalternatingpath...... 28

iii List of Figures

2.14 Example of a perfect matching...... 28 2.15 Average time before a state sustains a logical failure, assuming error-free syndrome extraction. p = 0.155 0.005...... 30 th ± 2.16 Average time before a state sustains a logical failure, using the 3 syndrome extraction circuits of Fig. 2.5. p = 7.8 10− . ... 31 th × 3.1 Two errors artfully arranged to cause premature failure under the standard Manhattan distance metric...... 34 3.2 Example of propagation of data errors when one syndrome is measuredmorefrequentlythananother...... 35 3.3 Average time before the logical qubit is corrupted when (a) the standard measure of separation of syndrome changes is used, and (b) accounting for error propagation by two-qubit gates. . . 37 3.4 Circuits determining the sign of (a) XXXX stabiliser, and (b) ZZZZ stabiliser without explicit initialisation gates...... 38 3.5 Observed syndrome changes as a result of a single error. . . . . 39 3.6 Numbered error processes from Fig. 3.5 contributing to specific links...... 41

3.7 Average time before logical failure when using dmax(s1,s2) and

the standard error model. pth = 1.1%...... 42

3.8 Average time before logical-X failure when using d0(s1,s2) and

the standard error model. pth = 1.1%...... 43

4.1 (a) Entanglement swapping. (b) Entanglement purification.... 48 4.2 Surface code quantum communication protocol...... 50 4.3 The surface code lattice is divided into columns and distributed amongst a linear chain of quantum repeaters that are connected byBellpairs...... 52 4.4 Measurement of stabilisers spanning two repeater stations. . . . 52 4.5 Average number of error correction rounds before logical failure

versus Bell pair error rate pB and code distance d...... 54 4.6 Average number of error correction rounds before logical failure

versus loss ploss and code distance d...... 55 4.7 Probability of logical error per link for a variety of loss and Bell errorrates...... 57

iv List of Figures

5.1 State distillation circuits for the Y and A magic states, used | i | i in performing S¯ and T¯ respectively...... 61 5.2 2D lattice of qubits for the colour code. The stabiliser generators are the tensor products of X and Z on the qubits around each plaquette...... 62 5.3 Examples of syndromes observed on the 2D colour code. . . . . 63 5.4 Examples of syndromes observed on finite lattices...... 65 5.5 The hypergraph constructed from the observed syndrome. The hypergraph matching identifies a corresponding of error chains whichproducestheobservedsyndrome...... 67 5.6 Triangular lattices permitting all Clifford gates to be per- formedtransversely...... 67 5.7 Examples of red and blue defects on the colour code...... 69 5.8 If all of the hyperedges present in the minimum-weight hyper- graph matching are known, one can solve the matching problem efficiently...... 71 5.9 If two of the nodes from each of the hyperedges present in the minimum-weight hypergraph matching are known, one can solve thematchingproblemefficiently...... 71 5.10 Construction of the mimic graph, a graph which incorporates some of the properties of the original hypergraph. The nodesg ¯,

p, p′, and ¯b are introduced for the future inclusion of hyperedges. 72 5.11 Incorporating red nodes and hyperedges from the original hy- pergraphintothemimicgraph...... 72 5.12 Partial patterns observed in the matching of mimic graphs and their interpretations as corrections...... 74 5.13 Malformed patterns in a mimic graph matching can often be removed by adding a weight-0 alternating cycle...... 74 5.14 Average number of error correction rounds before logical failure

under error-free syndrome extraction. pth = 13.3%...... 77

5.15 The leading contribution to the logical error rate, Ad(F ), when using minimum-weight hypergraph matching grows exponen- tially with the distance d ofthecode...... 81 5.16 The number of dangerous syndromes as a result of exactly F +k errors when using the approximate matching method grows as (d 1)/2 d Q F O 6 − 2 −k ...... 81 ¡ ¡ ¢¢

v List of Figures

5.17 Rules for shifting terminals amongst same colour plaquettes. . . 82 5.18 Analytic time to logical failure under error-free syndrome ex- traction when (a) first order terms only, and (b) higher order

terms are used to calculate the logical error rate. pth = 6.25%. . 83 5.19 Circuit to fault-tolerantly prepare a four qubit cat-state, which is used to measure the parity from octagonal plaquettes. . . . . 84 5.20 The average time to failure and the logical error rate of a quan- tum memory. p = 0.10 0.01%...... 86 th ± 6.1 Schematic of the order-finding circuit which efficiently deter- mines the order parameter r...... 89 6.2 The for the states in the upper regis- ter after completing the order-finding circuit. High probability densities are observed around integer multiples of 22l/r...... 91 6.3 One possible MPS representation of ψ = 1 ( 000 + 111 ). . . 93 | i √2 | i | i 6.4 QuantumFouriertransformunderMPS...... 96

vi List of Tables

6.1 Internal qubit order is important in MPS as only neighbouring qudits may interact with one another. Qubits are reordered as shown to apply the indicated gate. Qubit and gate lettering correspond to those in Fig. 6.1...... 95 6.2 The ranks in the MPS state after applying all gates up to and including the indicated controlled-unitary for N = 65, x = 2, l = 7. The second last number in each row governs the size of the lower register, and the execution time of the unitary. The underlined value is the order parameter r. The final order of qubits is q ,q , ,q ...... 97 0 1 ··· 13 6.3 Applying the controlled-unitaries in decreasing powers of two lead to equal or lower ranks across the MPS than before, thus improves performance. The case in Table 6.2 can be completed using only a fraction of the memory and time. The final order of qubits is q ,q , ,q ...... 97 13 12 ··· 0 6.4 CPU time in seconds to execute the order-finding circuit (Fig.

6.1) from the start to: t1 complete all controlled-Us; t2 measure

out the lower register; and t3 complete the entire circuit. x is chosen to maximise the order r for the given N. r determines thesizeofthematricesbeforetheQFT...... 99

vii List of Tables

viii 1 Introduction

1.1 and Quantum Algorithms

Quantum mechanical systems are inherently difficult to simulate on a classical computer because the grows exponentially for every additional particle. The classical computer, whose bits can take values 0 or 1, requires exponentially increasing space to represent the state. Feynman proposed that a quantum computer—a computer that manipulates qubits[6], quantum bits, two level quantum systems that also reside in Hilbert space and can be in linear superpositions of the states 0 and 1 —may be able to simulate such | i | i systems more effectively[7, 8]. The discovery of quantum algorithms[9–12] capable of outperforming ex- isting classical algorithms has accelerated interest in quantum computation. Shor’s algorithm for integer factorisation[9, 10], in particular, has drawn much attention. It shows that a quantum computer can factorise numbers efficiently, that is, using only polynomially growing resources, and is exponentially faster than all known classical algorithms. The Rivest-Shamir-Adleman[13] protocol for public-key cryptography is founded on the assumed difficulty of factorising large numbers classically. A large-scale quantum computer therefore compro- mises security systems based on these techniques. Algorithms stemming from the complexity of the problem are similarly compromised. There are also quantum algorithms to perform general searches[11, 12], to simulate quantum systems and determine chemically interesting quantities[14– 16]. Unfortunately, large-scale quantum computers will inevitably suffer from some form of decoherence, adding to the challenge of realising a quantum com- puter capable of outperforming a classical computer. One can counteract this by investing in error correction applicable to quantum computing. The ex- istence of quantum error correcting codes[17–21] is curious in light of three

1 1 Introduction formidable difficulties: the no-cloning theorem[22, 23] dictates that is impos- sible to copy quantum states; the need to correct for continuous errors, not just discrete errors as in classical error correction, as qubits are fundamentally analogue devices; and finally, a measurement will in general collapse the wave- function thereby altering the state. Nevertheless quantum error correcting codes exist, which improves the prospects for a large-scale quantum computer. Other forms of noise such as dynamic decoupling exist, however only quantum error correction is able to handle general noise. The quantum accuracy threshold theorem[24–29] states that when quantum error correction is used in conjunction with circuits that spread errors in a limited manner (i.e. fault-tolerant circuits[30–32]), one can efficiently perform arbitrarily large quantum computations provided that all gates fail with prob- ability below some threshold error rate pth. (The use of fault-tolerant circuits incurs only polylogarithmic overhead.) To see this, imagine that encoding physical qubits into logical qubits suppresses the logical error rate (i.e. below threshold). One can repeat this process, encoding lower-level logical qubits into successively higher-level logical qubits. This is known as concatenation, and the similarity of the process ensures that each iteration reduces the logical error rate. Early calculations estimated a threshold value of approximately 6 pth = 10− [25–28]. While physically realising quantum operations with such a stringent error rate is highly impractical, all these ingredients combined show that large-scale quantum computation is feasible in principle, even when the system suffers from decoherence. The [[7, 1, 3]] [20] and the [[9, 1, 3]] Bacon-Shor code[33] are well known examples of concatenated codes. More detailed calculations find 5 that these schemes possess threshold error rates p = 3.61 10− [34] and th × 4 p = 1.26 10− [35] respectively. In many physical implementations, it is un- th × reasonable to interact arbitrary pairs of qubits without regard of the physical separation, and yet maintain a fixed error rate. The threshold values for these 5 5 schemes are diminished to p = 1.85 10− [34] and p = 2.02 10− [36] th × th × when the qubits are arranged on a regular 2D lattice supporting only nearest- neighbour interactions. In this Thesis, we shall investigate a different family of error correcting codes, namely topological codes[37]. By far the most prominent of the topological codes is the planar code, often called the (2D) surface code[37–46]. This code can be implemented on a regular 2D lattice of qubits with nearest-neighbour

2 1.1 Quantum Computing and Quantum Algorithms interactions, and has a relatively high threshold error rate of p 0.75%. We th ∼ shall introduce this code formally in Chapter 2, describing in detail its error correction methodology which is used to provide an independent verification of the threshold. Chapter 3 further refines this work, giving rise to quadratic improvement in performance for low error rates, and a threshold error rate pth = 1.1%. Other schemes with threshold values in excess of 1% have been devised in recent times[47–49], however this is the highest threshold calculated in a geometrically constrained setting. In Chapter 4, the 2D planar code is adapted for use in transmitting quan- tum states over large distances. We describe a protocol that allows the fault- tolerant transmission of arbitrary quantum states over a linear chain of repeater stations connected by Bell pairs. The protocol requires only one-way classi- cal communication, allowing quantum information to be transmitted at a rate limited by the local gate speed. In Chapter 5 we look at a different topological code, the (4.8.8) colour code[50, 51]. The code is interesting as it can perform one of the operations required for universal quantum computation more simply than in the 2D sur- face code; in general, the logical operation U¯ for the logical qubit is not simply obtained by applying the physical operation Uˆ to every physical qubit. The colour code features a more complex underlying lattice and circuits, and as a result, we find its threshold is lower, p 0.1%. th ∼ Demanding excessively large distance codes to perform reliable computa- tion is impractical. Instead, one strives to use as little error correction as possible to achieve the same goal. It is therefore important to study the toler- ance of algorithms to errors. However, as already mentioned, simulating large quantum algorithms on classical computers is difficult because the memory requirements grow too rapidly, making such assessments difficult. In Chapter 6, we show that the symmetries in the factoring problem reduce the space complexity when the state of the system is represented as a matrix product state (MPS)[52]. This reduction allows systems with as many as 36 qubits to be simulated on a laptop with 2GB of memory. Simulations involving up to 42 qubits are possible using a single processor of a server with 32GB of memory. The remainder of this Chapter will be dedicated to review material. Section 1.2 gives an overview of quantum mechanics. Section 1.3 reviews the stabiliser formalism. We introduce a simple bit-flip code using this formalism in Section 1.4. We review the circuit notation and some common gates in Section 1.5.

3 1 Introduction

Section 1.6 introduces the topological model for quantum computing, from which topological quantum error correction is inspired. Finally we examine some common architectures in Section 1.7. The final two sections provide background knowledge for the interested reader only, and are not necessary for the work in the Thesis.

1.2 Quantum Mechanics of Qubits

The qubit is the fundamental unit of information with which quantum com- puters perform computation. Quantum mechanics allows a single particle with wavefunction ψ to be in a linear superposition its basis states. Thus a general | i single qubit state can be written

α ψ = α 0 + β 1 . (1.1) | i | i | i ≡ "β#

Here α and β are complex coefficients satisfying α 2 + β 2 = 1. α 2 and β 2 | | | | | | | | are equal to the probabilities of measuring the particle in the 0 and 1 states | i | i respectively. n A system of n qubits has basis spanned by 0 , 1 ⊗ , where is the {| i | i} ⊗ Kronecker . Thus an n qubit register has 2n basis states and n n 2 1 stores 2 complex coefficients: ψ = − α i . Here the is are the integer | i i=0 i | i representations of the product states.P Evolving the system according to some Hamiltonian for time t generates a unitary operation Uˆ. For the special H case of a time-independent Hamiltonian , the Schr¨odinger equation gives H i t Uˆ = e− H . (1.2)

The unitary operation Uˆ acts on all 2n basis states simultaneously to give 2n 1 2n 1 ψ′ = Uˆ ψ = − α Uˆ i = − α′ i . Because a function (Uˆ) can be si- | i | i i=0 i | i i=0 i | i multaneously calculatedP for manyP input parameters (the initial superposition’s basis states), this is usually known as quantum parallelism. Unfortunately, this looks more promising than it actually is. The reason is this: in order to extract information from the system, one performs a measurement which collapses the wavefunction. For example, let us measure the least significant qubit in the register ψ , which we rewrite as | i 2n 1 − ψ = α i/2 0 + α i/2 1 . (1.3) | i i | i ⊗ | i i+1 | i ⊗ | i i even X µ ¶

4 1.3 The Stabiliser Formalism

That qubit will probabilistically result in 0 or 1 , leaving | i | i 2n 1 measure 0 − ψ ψ′ = A α i/2 0 , ψ′ ψ′ = 1 (1.4) | i −−−−−→| 0i 0 i | i ⊗ | i h 0| 0i i even 2Xn 1 measure 1 − ψ ψ′ = A α i/2 1 , ψ′ ψ′ = 1. (1.5) | i −−−−−→| 1i 1 i+1 | i ⊗ | i h 1| 1i i even X A0 and A1 are normalisation constants to retain the probability interpretation of the coefficients. Thus measuring the entire register will yield just one of the 2n possible states. Note that measurement does not give the complex coefficient of the measured state. It is tricky to devise algorithms to properly exploit this parallelism. Nevertheless, quantum algorithms capable of outperforming existing classical algorithms have been discovered[9–12].

1.3 The Stabiliser Formalism

Explicitly writing out the entire of a system in Dirac notation soon becomes tedious for keeping track of states important in error correction. It is far more convenient and descriptive to work using stabiliser notation[53]. A stabiliser S of a state ψ is defined to be an operator S ψ ψ . Since | i | i ≡ | i the product of many stabilisers is also a stabiliser, it is redundant to state all stabilisers. Instead, a general n qubit state can be described by a set of n independent commuting stabiliser generators. Calderbank-Shor-Steane (CSS) error correction codes[17–20] have logical states 0¯ and 1¯ defined by stabilisers consisting of tensor products of identity | i | i I and the Pauli operators σX , σY , and σZ only. Thus they are defined much more succinctly in terms of their stabiliser generators. The abundance of the Pauli operators in error correction makes it convenient to define X, Y , and Z:

0 1 0 i 1 0 X σX = , Y σY = − , Z σZ = . (1.6) ≡ "1 0# ≡ "i 0 # ≡ "0 1# − X is the bit-flip operation ( 0 1 ), Z is the phase-flip ( 1 1 ), and | i ↔ | i | i → − | i Y = iXZ. The have well known algebraic properties.

σ = σ†, i (1.7) i i ∀ σ2 = I, i (1.8) i ∀ σ σ = σ σ , i = j (1.9) i j − j i 6

5 1 Introduction

Consider a state ψ described by its generators S . Then, the state ψ′ | i { i} | i after applying the unitary operation Uˆ on ψ is stabilised by S′ = USˆ Uˆ †, i: | i i i ∀

S′ ψ′ = USˆ Uˆ † Uˆ ψ = Uˆ S ψ = Uˆ ψ = ψ′ . (1.10) i | i i | i i | i | i | i ³ ´ ³ ´ ³ ´ As an example, let us apply Uˆ = Z to the state stabilised by +X , { } 1 + = ( 0 + 1 ) . (1.11) | i √2 | i | i

The original stabiliser is transformed as described above, and simpli-

fied using the Pauli algebra: Z(+X)Z† = ZZ†X = X. Thus the resultant − − state is stabilised by X . This is the state , {− } |−i 1 = ( 0 1 ) . (1.12) |−i √2 | i − | i

1.4 Quantum Error Correction

Consider the three qubit bit-flip code[6] which has logical states 0¯ = 000 | i | i and 1¯ = 111 . Let the qubits in the state be denoted by q , q , and q . The | i | i 1 2 3 stabiliser generators for the code are

S1 =+Zq1 Zq2 Iq3 , (1.13)

S2 =+Iq1 Zq2 Zq3 . (1.14)

We will suppress the subscripts and simply use the juxtaposition to denote the qubit each term acts upon hereafter. Here we have specified one fewer generator than qubits, thus the state is not fully defined. This is typical in error correction as it introduces a degree of freedom to store the logical state. For example, S = ZZZ would encode 0¯ and 1¯ . 3 ± | i | i Since generators are simply operators, their expectation values can be mea- sured. The generator encoding the logical state (i.e. S3) must not be measured during error correction; that would collapse the encoded state. The remaining generators, however, simply provide the redundancy to perform error correc- tion. For example, measuring S1 = ZZI gives

ψ S ψ = ψ (+ZZI) ψ = +1. (1.15) h | 1 | i h | | i

6 1.4 Quantum Error Correction

Consider now a bit-flip error on the first qubit, producing ψ′ =(XII) ψ . | i | i Measuring S1 again now gives

ψ′ S ψ′ = ψ (XII)(+ZZI)(XII) ψ (1.16) h | 1 | i h | | i = ψ ( ZZI) ψ (1.17) h | − | i = 1. (1.18) − That is, we can measure the eigenvalues of these generators. These values change sign depending on the errors incurred, thus form the error syndrome. By enforcing the state to be in the +1 eigenstate of these generators, we return the state to a linear superposition of the code words. Notice that the logical operation X¯ = XXX commutes with all of the generators in Equation 1.14, but not S3; S3 will instead change sign to reflect the change in logical state as desired. Likewise, a bit-flip error on each of the three qubits in the code will perform a logical operation. The minimum number of elementary operations required to undetectably alter the logical state is the (Hamming) distance d of the code. An error correcting code can reliably correct (d 1)/2 or fewer errors. The three qubit bit-flip code ⌊ − ⌋ can correct single X errors. However, this code provides no mechanism for detecting Z errors; Z errors commute with every operator measured. Thus it cannot protect general quantum states. In order to simulate quantum codes suffering logical failure, we shall assume the system suffers depolarising noise. That is, all fundamental operations are assumed to take unit time and have some probability p of failing. Initialisation will prepare the desired state, 0 or + , with probability (1 p), and the | i | i − erroneous state, 1 or , with probability p. Similarly, a measurement have | i |−i a probability p of reporting the wrong result. A single-qubit gate Uˆ is applied perfectly, followed by an equal probability p/3 of that qubit incurring each of the X, Y , and Z errors. Idle qubits are also subject to this type of noise model. We will abbreviate this statement to the equation p (1 p)I + (X + Y + Z) . (1.19) − 3 A two-qubit gate is also applied perfectly, now followed by one of the 15 non-trivial tensor products of I, X, Y , and Z to account for correlated errors. p (1 p)II + (IX + IY + IZ + XI + XX + XY + XZ − 15 (1.20) + YI + Y X + YY + Y Z + ZI + ZX + ZY + ZZ).

7 1 Introduction

Note that the above equations are not quantum operations; they are merely statements describing the probabilities of each error combination arising. For a state with ρ, the single-qubit case is expressed as p (ρ)=(1 p)ρ + (XρX + Y ρY + ZρZ) . (1.21) E − 3

1.5 Circuit Notation

We shall work in the circuit model for quantum computation[54, 55]. Other models for computation exist such as quantum Turing machines[56], topologi- cal quantum computation[37], adiabatic quantum computation[57], and cluster states[58, 59]. A diagram is read like a piece of music, with time flowing from left to right. At the left, one may specify the initial state of the system, and at the right, the final state using ket notation. The horizontal reference lines represent the path of qubits. Many qubits may be grouped together to form a single register. These are represented by the slash through the reference line. They can also represent a qudit, the d-dimensional counterpart to the 2- dimensional qubit; there is no mathematical difference between the two cases. Symbols appearing on reference lines denote operations acting on those qubits. A single qubit gate Uˆ is shown as Uˆ inside a rectangle (Fig. 1.1a). Similarly, multi-qubit gates are shown as a rectangle encompassing all involved qubits. There are a few special cases. A controlled-unitary takes a control qubit and applies the unitary Uˆ to the target register only when the control qubit is in the 1 state. This is represented by a filled circle on the control qubit, | i connected to the unitary gate by a vertical line. Furthermore, when the unitary is X, this is known as the controlled-not (cnot) gate, and the target unitary is instead drawn with the especial xor symbol ( ). A cnot gate is shown in ⊕ Fig. 1.1b. Another common gate is the two-qubit swap gate, which exchanges the values of two qubits: a b b a . It is shown as two crosses connected | i | i → | i | i by a vertical line (Fig. 1.1c). Finally, a measurement is performed in the computational basis (i.e. Z basis) unless otherwise specified. It is represented by a meter, the gate MX or MZ (Fig. 1.2). Additionally, qubits which have no further operations to perform can be implicitly assumed to be measured. Popular gates encountered are those in the standard set of gates for uni- versal quantum computation: X, Y , Z, Hadamard (H), phase (S), π/8 (T ),

8 1.5 Circuit Notation

a Uˆ Uˆ a a,b • a,a b a,b b,a | i | i  | ⊕ i × | i | i × | i (a) (b) (c)

Figure 1.1: Circuit representations for applying (a) a single-qubit unitary Uˆ; (b) a cnot gate; and (c) a swap gate.

a 0/1 a M 0/1 a M +/ | i Z *-+, X *-+, FE | i | i − (a) (b) (c)

Figure 1.2: Circuit representations for measurement (a) and (b) in the Z basis; (c) in the X basis. Possible outcomes are shown to the right. and controlled-not (cnot). One also commonly finds the controlled-sign gate (csign or CZ) in place of the controlled-not gate. This is a finite set of gates which together give the ability to perform arbitrary rotations, analogous to the universality of the nand gate in classical logic. Other universal sets of gates exist[60–62]. Assuming the computational basis states arranged in increasing order— 0 , 1 for single-qubit gates, and 00 , 01 , 10 , 11 for two-qubit | i | i | i | i | i | i gates—with the control qubit as the most significant bit, the standard set of gates are described by the following matrices:

1 1 1 1 0 1 0 H = , S = , T = , (1.22) √2 "1 1# "0 i# "0 eiπ/4# − I 0 1000 I 0 100 0 cnot 0100 csign 010 0 = = 0001 , = = 001 0 . (1.23) 0010 0 0 0 1 "0 X# " # "0 Z# " − #

The T gate is also known as the π/8 gate because it is equivalent to having iπ/8 e± along the diagonal, up to an unimportant global phase. The inclusion of the π/8 gate in the set is most important; the other gates form the Clifford group, and any circuit consisting of only these operations can be simulated efficiently using the stabiliser formalism. The π/8 gate is an element outside of the group, thus gives rise to the ability to perform arbitrary rotations. Equally, the single-qubit rotations X, Y , Z, and S are often more easily implemented in practice as elementary operations than as products of H and T , thus are retained in the standard universal set of gates. As an example of a quantum circuit, see Fig. 1.3 which prepares a 4-qubit cat-state, an even superposition of the all 0 and all 1 states. The name | i | i invariably prompts explanation, and this certainly is no exception. It is an

9 1 Introduction

0 H | i • 0  1 | i • √2 ( 0000 + 1111 ) 0  | i | i | i • 0  | i

Figure 1.3: A non-fault-tolerant circuit preparing the 4-qubit cat-state. allusion to Schr¨odinger’s cat either being dead after inhaling hydrocyanic acid, or still alive and kicking. 1 ψcat = ( 0 . . . 0 + 1 . . . 1 ) (1.24) | i √2 | i | i Note that this is very different from applying H on every qubit on the all 0 state, which instead produces an equal superposition of all states. | i 2n 1 1 − ψH⊗n = i (1.25) | i √ n | i 2 i=0 X To see that the circuit in Fig. 1.3 is not fault-tolerant, we insert an X error on the third qubit at the start of the circuit. It is easy to prove that a cnot gate will propagate X errors from the control to target, and Z errors from target to control. Thus the X error propagates to the fourth qubit, resulting in two errors in the cat-state. The assumption here is that the cat-state will then interact with a single encoded logical qubit, thus resulting in these two errors being propagated to the same encoded block.

1.6 Topological Quantum Computation

We give a short review the topological model for quantum computation[37]. Studying different models of computation is can be insightful, leading to new algorithms or, as in our case, new methods of error correction. It has been shown that the topological model can have equivalent power to the circuit model[63, 64]. That is, one can efficiently translate between the two for- malisms. A review of topological quantum computation can be found in[65]. Let us clarify that a topological quantum computer is a piece of hardware with its own primitive operations. The way these operations are performed provides a topological quantum computer with its own form of protection from errors (i.e. protection at the hardware level). This is very different from topologically based quantum error correction, which is a general error

10 1.6 Topological Quantum Computation correction scheme that draws inspiration from topological quantum computers, but may be applied to other quantum computer architectures. Our work in quantum error correction focuses on the latter, thus the language and content introduced here is exclusive to this Section, and the reader need not be familiar with the content for the work in the Thesis.

1.6.1 Non-Abelian Anyons

Topological quantum computers are built from particles known as anyons. We first motivate the existence of particles in 2 + 1D systems with obeying different statistics to and fermions, following[66]. We shall discuss physical realisations of anyons later. Consider adiabatically interchanging two indistinguishable particles twice. This is equivalent to looping one particle around the other. In a 3+1D system (three spatial and one time dimension), the process returns the system to the initial state, thus a single interchange of particles can change the wavefunction ψ ψ . This corresponds to the particles being bosons or fermions, which | i → ± | i obey bosonic or fermionic statistics respectively. A 2 + 1D system is inherently different from a 3 + 1D system as the loop formed cannot be contracted to a point without crossing through the other particle; performing a loop is topologically different from having not performed a loop. One can distinguish between winding the particle clockwise or counter- clockwise around the other, so the entire process need not return the system to the initial state. Instead, a single particle interchange can pick up an arbitrary phase to the wavefunction ψ eiθ ψ , for θ . Particles obeying this type | i → | i ∈R of statistics, known as anyonic statistics, are known as anyons. The process of interchanging two anyons is known as braiding. Computation is performed in the degenerate of a system of anyons. Anyons are arranged in the line, and braiding neighbouring pairs of anyons is the only way to perform unitary operations on a topological quantum computer. Anyons are called non-Abelian if two braiding operations do not commute. The use of abelian anyons allow implementations of quantum mem- ories, from which topological error correction is derived, whereas non-Abelian anyons are capable of universal quantum computation. Topological quantum computers protect against errors due to primitive op- erations corresponding to braids; an operation is performed when a braid is

11 1 Introduction formed, which is a Boolean quantity. Therefore topological quantum comput- ers do not suffer from imprecision due to the intrinsically analogue nature of qubits. Quantum information is said to be encoded non-locally in topologi- cal quantum computing—braids are not quantities associated with individual particles—making it robust against systematic and random rotation errors (e.g. rotating a single-qubit about the X-axis by π), and local interactions with the environment. Instead, an operation is only unwittingly performed if thermal excitations spontaneously create pairs of quasiparticles which drift apart, perform a braid, before finally annihilating. Provided that the topologi- cal quantum computer is run at a sufficiently low temperature, the energy gap between the ground state and the excited states will exponentially minimise the chance of this occurring.

5 1.6.2 The ν = 2 Quantum Hall State

At low temperatures, when a current runs perpendicular to a large external magnetic field, the diagonal resistivity ρxx = 0 and the Hall resistance ρxy = 1 h 2 is quantised with ν . Here h is Planck’s constant and e is the ν e ∈Z charge. This phenomenon is known as the integer quantum Hall effect. Later experiments performed by Tsui et al. discovered the existence of these same 1 characteristics at a filling factor of ν = 3 [67]. This is known as the fractional quantum Hall effect. In particular, early experiments observing the fractional p nature of ν = q found odd-denominators q. These are explained by Laughlin’s many-particle wavefunction[68] which follows from the antisymmetry of the wavefunction under particle exchange. 5 However, Willett et al. observed the existence of even-denominator (ν = 2 ) fractional quantum Hall states[69] which Laughlin’s theory does not account for. Moore and Read were the first to explain this effect[70]. In their theory, the 5 ν = 2 quantum Hall states can be described by quasiparticles (anyons) with fractional charge e∗ = e/4 which obey non-Abelian statistics. Experiments have observed quasiparticles with charge e∗ = e/4[71–73]. Experiments have also been proposed to determine whether these quasiparticles obey Abelian or non-Abelian statistics[74–76]. However, these experiments have yet to be conducted. If these quasiparticles do indeed obey non-Abelian statistics, then they would be a suitable candidate for constructing a topological quantum computer.

12 1.7 Qubit Architectures

1.6.3 Computation with Anyons

5 The excitations of the ν = 2 state are known as Ising anyons. There are three species of anyons: 1, σ, and ψ. Two particles brought into proximity will fuse to produce a new particle. The fusion process obeys an arithmetic similar to 1 1 the addition of - 2 particles. In particular, two σ anyons (“charge- 2 ”) can fuse to give a 1 anyon (“charge-0”), or a ψ particle (“charge-1”). The model is non-Abelian as two particles can fuse in more than one way. The species of the resultant particle differ in their topological charge which can be measured. A simple qubit can be created from a pair σ anyons: the qubit is in 0 if | i the two σ anyons fuse to give 1, and 1 if they fuse to give ψ. However this | i representation has some drawbacks which we shall not discuss. A qubit can be created from four σ anyons as discussed in[66]. However, one finds that by braiding Ising anyons, one can only perform one-qubit π/2 rota- tions about the X and Z axes. Since circuits using these operations only can be simulated efficiently classically using the stabiliser formalism, universality is not achieved though braiding alone; one must supplement these operations with, for example, a single-qubit π/4 rotation (e.g. T ) and a two-qubit en- tangling gate (e.g. cnot or csign). These can be realised through the use of non-topologically protected operations and [66, 77, 78]. Another possible method to achieve universality is through dynamical topology changing[79]. Computation using other types of anyons follows similarly. In particular, Fibonacci anyons[64, 65] are capable of universal quantum computation ex- clusively through braiding[80]. While there are no known natural systems that realise such excitations, one can artificially construct string-net models with such anyons. However, simple operations correspond to complex braids.

1.7 Qubit Architectures

There are many approaches to realising qubits. We have already mentioned the possibility of creating qubits from pairs of Ising anyons. Just as anyons and hence topological quantum computers are realised in 2D systems, we shall see that the simplest topological quantum error correcting code, the planar code, is naturally implemented on 2D architectures. Some common architectures for realising more conventional qubits include ion traps[81], superconducting

13 1 Introduction qubits[82–90], quantum dots[91], optical lattices[92, 93], photonic modules[94], N-V centres[95, 96], and donors in silicon[97, 98]. We describe some physical realisations below for concreteness only. In the subsequent Chapters, the exact architecture is irrelevant; it is relatively easy to specialise the error model to suit a particular case. Thus, in this work, qubits will naturally emerge as purely mathematical objects obeying the laws of quantum physics.

1.7.1 Ion Traps

For ion traps[81], a qubit can be encoded in the of an ion; for example, the ground state corresponds to 0 and excited states correspond to | i 1 . A laser directed at an ion allows that qubit to transition between its basis | i states. The Coulomb repulsion between ions allow interaction within qubits via the exchange of a phonon.

5 Experiments have achieved single-qubit gates with error rate 2.0(2) 10− [99], × two-qubit unitaries with fidelity 99.3(1)%[100], and readout with error rate 4 0.9(3) 10− [101]. Furthermore, states with up to 14 entangled qubits have × been created[102].

1.7.2 Superconducting Qubits

There are three main types of superconducting qubits: charge[82–86], flux[87, 88] and phase[89, 90] qubits. All three cases make use of Josephson junctions, thin insulating barriers between two superconducting metals. Josephson junc- tions give rise to systems with nonlinear separation between energy levels, necessary so that one does not, for example, drive transitions between the first and second levels when only transitions between the ground and the first levels are intended. The different types are distinguished in the variable used to control quantum state. Reviews of superconducting qubits can be found in[103–105]. Single-qubit operations and readout have been demonstrated in charge qubits[106, 107], flux qubits[108, 109], and phase qubits[110, 111]. Two-qubit operations have been demonstrated in charge qubits[112, 113], flux qubits[114, 115], and phase qubits[116, 117].

14 1.7 Qubit Architectures

1.7.3 Quantum Dots

A particle’s spin is one of nature’s two level states. As an example, a qubit can be encoded in the spin of the excess electron of a single-electron quan- tum dot[91]. Single-qubit rotations can be realised through electron spin resonance[118] or optical pulses[119]. Tunable potential barriers between neigh- bouring quantum dots allow one to control the tunnelling between quantum dots and hence control two-qubit interactions[120]. One can also create qubits from the electron charge state in double systems[121, 122].

15 1 Introduction

16 2 The Planar Code

In this Chapter we shall introduce the toric and planar codes[37], which differ only by boundary conditions, following the ideas of[38]. The planar code is often referred to as the (2D) surface code, and is a representative of topological quantum error correcting codes, the main subject of this Thesis. The concepts introduced in this Chapter thus form the foundation for the work to come.

For any error correcting code, the recovery phase requires one identify a likely set of errors with a syndrome consistent with observation. In other words, one must reproduce the observed syndrome. We achieve this via the minimum- weight perfect matching algorithm from graph theory[123–126]. Renormalisa- tion techniques exist capable of processing perfect syndrome information[127]; however, at present only the minimum-weight perfect matching algorithm can be used to process the output of realistic quantum circuits. Whilst we shall adapt and modify the input graph for different codes and to improve the code’s performance, the underlying methodology will remain the same as introduced here.

Section 2.1 is an original review of the toric and planar codes. Section 2.2 presents the syndrome extraction circuits used throughout the simulations. An efficient method to correct errors is described in Section 2.3, and an extended example is provided in Section 2.4. Section 2.5 describes the simulation details, which yields an independent verification of the accuracy threshold to be pth = 0.75%[43]. The verification is important as the original threshold was found to be considerably higher than that of concatenated codes on similar 2D nearest- 5 neighbour architectures; the 7-qubit Steane code has p = 1.85 10− [34], th × 5 while the 9-qubit Bacon-Shor code has p = 2.02 10− [36]. th × The material presented in this Chapter has been published in[1].

17 2 The Planar Code

data qubit

z z z z z z z x z x x x ancilla qubits

(a) Toric code qubit arrangement (b) Equivalent lattice in 2D shown in 3D. with periodic boundaries.

Figure 2.1: Arrangement of qubits on a torus with nearest-neighbour interac- tions. The stabiliser generators are the tensor products of Z and X on the qubits around faces and intersections respectively.

2.1 The Toric and Planar Codes

Consider a collection of qubits arranged on the surface of a torus as shown in Fig. 2.1a, or more easily represented as a regular 2D array of qubits with periodic boundary conditions (Fig. 2.1b). The qubits are divided into two categories: data qubits located on the lines of the grid, and ancilla qubits on the faces and the intersections. The stabiliser generators for the toric code are the tensor products of Z on the four data qubits around each face, and the tensor products of X on the four data qubits around each intersection. Neighbouring stabilisers share two data qubits ensuring that adjacent X and Z stabilisers commute. Using the ancilla qubits, the eigenvalues of these stabilisers may be measured whilst still preserving a quantum state. We will always assume that the computer is initialised to the simultaneous +1 eigenstate of every stabiliser. An X error on a data qubit anti-commutes with the two adjacent Z sta- bilisers. Assuming no other errors occur, we observe a change in the measured eigenvalue of the adjacent Z stabilisers, from +1 to 1. Similarly, Z errors − result in changes in the measured eigenvalues of two adjacent X stabilisers. In general, if many closely separated errors occur, one observes the terminals of chains of errors (Fig. 2.2). The interspersed ancilla allow for these eigenvalues to be measured using only local interactions. The configuration of eigenval- ues measured by the ancilla on the faces forms the X syndrome from which X errors may be corrected. Similarly, Z errors are corrected using syndrome

18 2.1 The Toric and Planar Codes

-1 -1 (a) (b) -1

-1

(c) -1 -1

Figure 2.2: Examples of error syndromes on the toric and planar codes. The state is initialised to the +1 eigenstate of all stabilisers. Shaded qubits indicate locations of X errors. (a) A single X error toggles the eigenvalues measured in the adjacent faces in the next syndrome extraction cycle. A Z error would be detected by the neighbouring intersections. (b) When errors are closely spaced, one observes only the terminals of a continuous chain. (c) Error chains can wrap around the boundaries in the toric code, but not in the planar code. information from ancilla located on the intersections. Logical operations can be associated with the four non-homotopic closed paths around the torus which cannot be contracted to a single stabiliser gener- ator, shown in Fig. 2.3. (Two paths are homotopic if one can be continuously deformed into the other, in this case by multiplying by stabilisers). This par- ticular topology defines two logical qubits: one from X¯ (1) and Z¯(1), the other from X¯ (2) and Z¯(2). These closed rings always overlap at an odd number of sites, yielding the correct commutation relations between logical operations. The distance d of a code is the length of the shortest logical operation.

Z X Z X X Z Z Z Z Z Z Z X X X X Z X X X

(a) X¯ (1) and Z¯(1). (b) X¯ (2) and Z¯(2).

Figure 2.3: The two logical-X and logical-Z operators in the toric code. Other rings of single-qubit X or Z operators on the lattice can either be deformed to products of the above rings, or contracted down to a single stabiliser generator.

19 2 The Planar Code

X X X

X X defect X

Z ZX/Z Z Z Z Z X/Z Z Z Z Z X/Z Z Z XX XX X

defect X X X

(a) (b) (c)

Figure 2.4: Eliminating the toric code’s periodic boundaries to produce the 2D planar code. (a) A smooth and (b) a rough defect are introduced to re- move the vertical and horizontal periodicities respectively. The loss of vertical periodicity means X¯ (1) can be any chain of X operations connecting the top and bottom boundaries. Similarly, Z¯(1) can be any chain of Z connecting left and right boundaries. (c) The 2D planar code and its logical operations.

In the absence of long-range physical gates, this topological code is difficult to realise as one would need to create a quasi-3D quantum computer. The pla- nar code is a variation on the toric code, whereby the periodicity is removed[38]. The construction is most easily seen as the introduction of two defects: regions in the torus where ancilla qubits are no longer measured. Data qubits within the defect are no longer required and the stabilisers must be changed to reflect this. This process is illustrated in Fig. 2.4.

The first smooth defect cuts the torus into a cylinder. A smooth defect is a contiguous region of Z stabiliser generators which we choose to ignore. In doing so, one eliminates a row of qubits and the vertical periodicity. In addition, the Z¯(2) operation is lost, and X¯ (1) becomes any chain of X operations connecting the top and bottom boundaries together. Similarly, the horizontal periodicity can be removed by introducing a rough defect—a defect associated with a contiguous region of X stabiliser generators. This defect removes X¯ (2), so that there still remains one degree of freedom, defining a logical qubit. The end result is a code implementable on a regular 2D array of qubits with only local interactions.

This simple construction will suffice for us. A more advanced extension storing many logical qubits on the single 2D can be found in[38, 39].

20 2.2 Syndrome Extraction

+ MX *-+, 0     MZ *-+, | i n • • • • | i  n  w  w   e •  Ψ e Ψ′ Ψ Ψ′    s •  | i s  | i | i • | i  •     (a) (b)

Figure 2.5: Circuits used to measure (a) X stabilisers, and (b) Z stabilisers. Ancilla qubits have at most four neighbouring data qubits, which are denoted by their respective compass directions.

1 2 3 4 1 2 3 4

Figure 2.6: Sequence of cnot gates permitting simultaneous measurement of all stabilisers. Numbers indicate relative timing of gates.

2.2 Syndrome Extraction

Syndrome extraction on the toric and planar codes can be done simultaneously for both X and Z-syndromes using the circuits in Fig. 2.5. First, the ancilla qubits are prepared in their designated states. Each ancilla interacts with the data qubits to its north, west, east and south (in that order). Finally, the ancilla are measured in the designated bases. Fig. 2.6 illustrates these circuits executing in parallel on the physical lattice. One can verify that for this interaction order, every syndrome circuit occurs strictly before or after its neighbouring circuits so that all ancilla qubits end in a product state. Since syndrome extraction is itself a physical process, it is prone to error. Under faulty syndrome extraction, error correction works in these schemes by collating the eigenvalue over the duration of the computation, forming a 3D syndrome structure (Fig. 2.7). The figure originally appeared in[44]. The syndrome is now the change in eigenvalues measured between sequential timeslices, just as the syndrome for error-free syndrome extraction was the change from +1 to 1. Error correction remains the task of finding a − likely set of errors that is consistent with the observed syndrome, now in three dimensions: two spatial and one temporal.

21 2 The Planar Code

(a)

time

(b)

time

Figure 2.7: 3D syndrome formed when using non-ideal syndrome extraction circuits. (a) A shaded circle marks a location in space and time where a syndrome measurement differs from its previous timestep. (b) Changes mark the terminals of chains of errors. Matching identifies a set of corrections to apply to correct the state, indicated by the thick lines.

22 2.3 Error Correction

2.3 Error Correction

For a given state Ψ and syndrome, since error correction is dynamic with | i respect to the computation, we must have an efficient method of restoring Ψ | i back to the code words. That is, the simultaneous +1 eigenstate of all stabilis- ers. For the toric and planar codes, this can be achieved through graph match- ing which we now describe. A real-space renormalisation group algorithm[127] to decode the syndrome was developed after this work. It is less computa- tionally intensive than graph matching, and has a similar threshold error rate. However, threshold calculations in the fault-tolerant setting have yet to be calculated using this method. A matching M on a graph G is a subgraph of G in which every node in M has exactly one edge. M is a perfect matching if all nodes in G are in M. The matching algorithm[123–126] finds the perfect matching whilst minimis- ing the sum of edge weights in the matching (i.e. the weight-sum) in time growing polynomially with the number of nodes in the graph. While intimate knowledge of the matching algorithm is not necessary, Section 2.4 gives a brief overview and provides some examples to further reinforce these terms. We will first focus on the toric code, assuming ideal (error-free) syndrome extraction. The task is formulated as a graph problem as follows. The observed eigenvalue changes form the nodes on a graph. Each pair of nodes is connected by a weighted edge, which is associated with a chain of errors producing those two observed terminals. A perfect matching of the graph is then a set of error chains reproducing the syndrome. As there are infinitely many possible error chains linking any two nodes, in our simulations, we choose only one path of shortest length. The edge linking two nodes at locations (i1, j1) and (i2, j2) is assigned a weight w equal to the Manhattan distance (taxicab distance) separation, i.e.

w = i i + j j . (2.1) | 1 − 2| | 1 − 2| As we are considering only independent single-qubit decoherence, by doing so, a minimum-weight perfect matching reproduces the observed syndrome using the fewest errors. Since each edge in the matching represents one error chain, in order to error correct one applies corrections on the qubits along the error chains given by the matching. Consider Fig. 2.8a, showing three different physical error chains producing identical syndromes. When such ambiguities arise, there is no way to distin-

23 2 The Planar Code

correction

-1 -1 -1 -1 x x x x x x x x -1 -1 -1 -1

physical errors path 1 path 2 path 3 (a) Three equally weighted error chains producing identical (b) The path of syndromes. correction.

Figure 2.8: (a) The syndrome observed depends only the terminals of error chains, thus is not unique. (b) In general, one will correct along a path different from the path of physical errors. If no greater than (d 1)/2 errors occur, a ⌊ − ⌋ minimum length correction will form rings of errors. These rings are stabilisers of the code, and therefore the original logical state is restored. guish which correction to apply. Suppose that we choose to always correct the qubits along path 1, but the physical errors occurred along path 3. Under ideal syndrome extraction, it can be shown that for fewer than (d + 1)/2 errors, ⌊ ⌋ any chain connecting the syndrome changes is homotopic to the physical error chain. Such corrections form rings of errors which are products of the stabiliser generators (Fig. 2.8b), thus the logical state is restored. Generalising this method to incorporate errors during syndrome extraction is straightforward. Recall that it is the changes in eigenvalue measurements at the same location between sequential timeslices which contribute to the syndrome. These observed changes still mark the terminals of error chains, thus we can use the same formalism. They form the nodes in a graph, and weighted edges connect pairs of nodes, possibly at different times t1 and t2. A segment of an error chain spanning through time denotes an incorrect syndrome measurement, for example due to a preparation or a measurement error in the ancilla qubit. In the following simulations, we opt to weigh space- separated and time-separated segments equally for a pessimistic threshold:

w = i i + j j + t t . (2.2) | 1 − 2| | 1 − 2| | 1 − 2| This is only by choice, and can be changed to improve the code performance; for example, the ideal syndrome extraction limit is the specialised case where time-separated segments bear infinite weight, thereby severing nodes in one timeslice from nodes in other timeslices.

24 2.3 Error Correction

2 2 3 2 0 0 3 2 3 2 1 0 1 1 1 2 1 2 boundary nodes (a) (b) (c)

Figure 2.9: The toric code error correction methodology adapted for the planar code and its boundary conditions. (a) The graph used for error correction on the toric code. (b) Boundaries nodes included, however matching this graph does not lead to a good set of corrections. (c) Final graph which, once matched, returns the desired correction for the planar code.

During the final step of an algorithm, syndrome information is extracted by error-free circuits so that the final syndrome measurement can always be assumed to be correct. Coupled to perfect initialisation, there will always be an even number of nodes ensuring a perfect matching is always possible. The current method must be adapted to the planar code due to its non- periodic boundaries; an error on the boundary or a chain of errors leading to the boundary will generate only one terminal whence no perfect matching is possible. The extension is illustrated in Fig. 2.9. First, we determine the closest boundary to each terminal. For each node in the original graph, we create a unique boundary node. An edge between a node and its boundary represents an error chain stemming from the closest boundary, and is weighted accordingly (Fig. 2.9b). If our extension were stopped here, one would quickly observe that the only perfect matching possible is each node connected to its own boundary, which has dire consequences. To remedy this, all bound- ary nodes are interconnected by weight-0 edges, so that when two nodes are matched, their respective boundaries can also be matched without penalty (Fig. 2.9c). Though we have only discussed space-like boundaries, in practice we cannot extract the final syndrome exactly. One can take this into account by intro- ducing time-like boundaries. Note that there is still only one boundary node per terminal; the edge connecting a node to its boundary now takes the lower weighted choice between space and time boundaries. The modification of the graph due to the boundaries in this manner gives rise to interesting optimisations. Since we regard all matchings with the same

25 2 The Planar Code

w w ≥ a+b a b a b

0 (a) Optimisation condition.

2 2

3 2 0 0 2 0 1 0 1 0 1 2 1 2 (b) Optimisation applied to the graph of Fig. 2.9c.

Figure 2.10: Optimisations arise from the inclusion of boundary nodes. Two nodes are connected to their boundaries by weight-a and weight-b edges re- spectively. If the edge joining the two nodes together has weight w a + b, it ≥ can be safely discarded without affecting the minimum-weight matching. weight-sum as being equal, any modifications to the initial graph that results in minimum-weight matchings of the same weight-sum is acceptable. Such changes are not approximations to the matching problem. Note, however, that the initial recasting of the error correction problem to a graph matching problem is itself an approximation. First, the boundary nodes permit the exclusion of highly weighted edges without fear of loss of the minimum-weight perfect matching (Fig. 2.10); only when it is less costly to join two nodes together (weight w) than each to their respective boundaries (weight a + b) must the former be considered. The case where w = a + b is ambiguous and applying the optimisation means we always prefer to match the nodes individually to their boundaries than to other nodes when the probabilities are equal. This optimisation is of particular interest in the low physical error rate limit, where the terminals are so sparse that the graph breaks down into independent components. Each graph component can be matched independently. This in effect simplifies the global optimisation problem to several local problems. The independence of graph components ensures the task can be easily parallelised, though we have not taken this direction. Furthermore, the time separation between the latest node in a graph and the current time ensures that there exists a minimum edge weight connecting any node in that component to any future node. Once this minimum edge weight exceeds twice the distance to the boundary, the optimisation condition

26 2.4 Graph Matching Example will always be satisfied. The component becomes disconnected from all others; no more nodes or edges will ever be added to it, so its matching is finalised.

2.4 Graph Matching Example

An example syndrome on a toric code lattice, and the associated weighted graph G for error correction is given below. The syndrome changes have corre- sponding nodes on the graph. The example below uses the Manhattan distance to calculate the separation between syndrome changes.

3 2 3 1 3 3 2 1 3

Figure 2.11: Example syndrome on the toric code, and the associated graph for error correction. The syndrome changes are denoted by circles on the left, each with a corresponding node on the graph. Edge weights w are given by the Manhattan distance separation, and edges with w 4 have been discarded. ≥

We now illustrate how the matching algorithm finds the perfect matching by a process of iteration. Suppose that, after some iterations, we have found the matching below. The weight-sum of a matching is the sum of all edge weights in the matching; this example has a weight-sum of W = 2.

1

1

Figure 2.12: Example of a matching. Nodes in the original graph that are not in the matching have been explicitly crossed out.

Alternating paths are simple paths (i.e. it does not visit the same node twice) that alternate between matched edges and unmatched edges. The weight of the alternating path is the sum of the weights of the unmatched edges minus the weight of the matched edges. The following path has a weight of w = 3.

27 2 The Planar Code

2 -1

2

Figure 2.13: Example of an alternating path. Nodes in the original graph that are not in the path have been explicitly crossed out. Matched edges are shown as double links. Each edge’s contribution to the alternating path’s weight is shown: w = 2 1 + 2 = 3. −

If a weight-w alternating path ends on unmatched edges, as depicted in Fig. 2.13, “adding” or augmenting the path to the matching with weight-sum W — that is, inverting the matched and unmatched states of the edges along the alternating path—produces a new matching M ′ with one additional edge and weight-sum W ′ = W + w. The alternating path (Fig. 2.13) augmented to the matching (Fig. 2.12) produces the following perfect matching with weight-sum

W ′ =2+3=5.

2

2 1

Figure 2.14: Example of a perfect matching. This matching is obtained by augmenting the alternating path of Fig. 2.13 to the matching of Fig. 2.12.

Edmonds’ blossom algorithm[123, 124] describes how to construct alternat- ing trees, from which one extracts alternating paths. It places restrictions on which edges to consider when constructing the tree, and shows that the tree can be constructed efficiently. This allows one to grow progressively larger matchings and arrive at a minimum-weight perfect matching in polynomial time. Implementations of the algorithm are freely available[125, 126].

2.5 Time to Failure Simulations and Results

We have discussed how syndrome information is extracted from the toric and planar codes, and described an efficient implementation of the error correction

28 2.5 Time to Failure Simulations and Results procedure under both of these schemes. This forms the basis for our threshold error rate simulations. Assume that we are given some quantum state encoded as a distance-d code (toric or planar). The state begins in the simultaneous +1 eigenstate of all the stabilisers. Our simulations determine the average time before the state sustains a logical error, using the described error correction procedure. Each step consists of an identity gate on all data qubits, followed by the syndrome extraction. All gates have some probability p of failure, as described by the depolarising noise model (Equation 1.20). The cycle repeats until logical failure ensues. The simulations are performed by tracing the propagation of errors through the computer, not the entire quantum state. For ideal syndrome extraction, one can also count the number of configura- tions of k errors leading to logical failure Ad(k) to determine the logical error rate per timestepp ¯d(p) (the reciprocal of time to failure), using Q k (Q k) 2 p¯ (p)= A (k)p′ (1 p′) − , p′ = p. (2.3) d d − 3 Xk=0 Here Q(d) = d2 +(d 1)2 is the number of data qubits in the lattice in the − 2 distance-d code. The factor of 3 is due to our error model (Equation 1.19): out of the three possible errors X, Y , Z, only two contain bit-flips which can lead to logical-X failures. Calculating Ad exactly is computationally intractible, however we can approximate it by randomly testing for failure only a fixed Q large number of the total number of configurations k , giving a failure ratio r and allowing the approximation A Q r . k d ≈ k k ¡ ¢ The results for both the toric code and¡ planar¢ code under ideal syndrome extraction are shown in Fig. 2.15. The results are plotted on a log-log scale, so that the gradient at low p gives the minimum number of errors causing logical failure. This is observed by taking the leading order term from the summation in Equation 2.3. The data points are obtained directly from the time to failure simulations, whereas the curves are from counting the number of failures. Both codes show threshold values of p = 0.155 0.005. th ± The non-ideal syndrome extraction case is a little trickier as we assume that the final syndrome measurement is error free. This is resolved by assuming the current time t is the final step and extracting one more syndrome ideally. Should correction fail using this data, we record a failure time of t. Otherwise we continue to timestep t + 1, recollecting the syndrome using a non-ideal syndrome extraction cycle.

29 2 The Planar Code

102 distance 3 distance 5 distance 7 distance 9 distance 11

101

10 9 average time to failure 8

7

6 100 5 0.14 0.15 0.16 0.17

0.1 0.12 0.15 0.18 0.2 physical error rate p (a) Ideal toric code threshold.

102 distance 3 distance 5 distance 7 distance 9 distance 11

101

10 9 average time to failure 8

7

6 100 5 0.14 0.15 0.16 0.17

0.1 0.12 0.15 0.18 0.2 physical error rate p (b) Ideal planar code threshold.

Figure 2.15: Average time before a state sustains a logical failure, assuming error-free syndrome extraction, when encoded as (a) a toric code, and (b) a planar code. Time is measured in number of syndrome extraction cycles. The error bars represent the standard deviation in the value of the average. The threshold is taken to be the error rate at the intersection between successive distance codes, p = 0.155 0.005. th ± 30 2.5 Time to Failure Simulations and Results

103

102

100 90 80 average time to failure 70 60 50 distance 3 40 distance 5 101 distance 7 distance 9 30 distance 11 0.007 0.008 0.009 0.01 no error correction 0.002 0.005 0.008 0.01 physical error rate p (a) Realistic toric code threshold.

103 distance 3 distance 5 distance 7 distance 9 distance 11 no error correction

102

70 60 50 average time to failure 40 30

20

101 10 0.007 0.008 0.009 0.01

0.002 0.005 0.008 0.01 physical error rate p (b) Realistic planar code threshold.

Figure 2.16: Average time before a state sustains a logical failure, using the syndrome extraction circuits of Fig. 2.5, when encoded as (a) a toric code, and (b) a planar code. The vertical axis is proportional to real time. The 3 toric code threshold is p = 7.8 10− , and the planar code threshold follows th × similarly. Notice, however, that the planar code corrects fewer errors than the toric code for the same distance code.

31 2 The Planar Code

The results for the two codes now under non-ideal syndrome extraction are shown in Fig. 2.16. This figure clearly shows that the lifetime increases with distance at an error rate of 0.7% and decreases with distance at 0.9%. The indicated threshold of pth = 0.78% represents the average intersection point of straight line fits of our data between these two error rates, conservatively rounded down. This coincides with the previously known result of 0.75%[43]. The slight difference in value may be attributed to the different methods used in obtaining the threshold. Also, note that logical failure depends on the classical matching result which in turn is sensitive to the exact input graph and matching implementation. The planar code pseudo-thresholds fluctuate around the same region, which can be put down to the result of boundary effects; syndrome qubits on the boundary measure only weight-3 stabilisers, thus their probability of error differs from those in the bulk, making the effective error rate per timestep non-uniform across different sized lattices. Nevertheless, our results indicate that the asymptotic threshold for the planar code threshold is in the vicinity of the toric code. Another difference between the two codes is the maximum number of errors that each can correct. For example, the distance-3 planar code runs parallel to the no error correction line at low p. That is it offers no genuine protection. Compare this to the same distance toric code, which as a result of being more redundant, does not show this behaviour. This effect is not observed under error-free syndrome extraction, leading us to conclude it is the result of pairs of correlated errors from those circuits.

2.6 Conclusion

We have described an efficient error correction scheme implementable in prac- tice for the toric and planar codes based on graph matching. We stress again the importance of classical computation in the error recovery process: the method used in simulating logical failure is what must be implemented in prac- tice for one to make use of topological quantum error correction. Using this 3 method, we have verified the existing value for the threshold, p = 7.8 10− . th × We have also observed that a distance-d planar code can fail with fewer than (d + 1)/2 errors. This is the result of faulty syndrome extraction circuits, ⌊ ⌋ and this shall be the focus of the next Chapter.

32 3 Enhanced Planar Code Error Recovery

In Chapter 2 we introduced the toric and planar codes. Both codes have the same asymptotic threshold, however as the latter is defined on a simpler, 2D architecture, it stands a better chance of realisation. In this Chapter, we show that the existing error correction methodology leads to distance-d planar codes only reliably correcting (d 1)/4 or fewer ⌊ − ⌋ errors. We remedy this by adapting the metric for calculating separation between two syndrome changes in Section 3.1. The metric is further refined in Section 3.2 by detailed analysis of the syndrome extraction circuit, increasing the threshold to 1.1–1.4%. The work presented in this Chapter has been published in[2, 3].

3.1 Accurate Error Propagation

The results in Chapter 2 show that when using error-prone syndrome extrac- tion circuits and the standard planar code error correction methodology, a distance-3 planar code can fail from a single error. The cause is due to these very circuits creating pairs of correlated errors, whether it be a two-qubit gate failure, or a single error that is then copied to two qubits by a two-qubit gate. Note that the syndrome extraction circuits are nevertheless fault-tolerant as errors never propagate beyond a syndrome qubit’s immediate neighbours. Fig. 3.1a illustrates a case where a single error leads to errors on two data qubits. If no other errors occur, this leads to two syndrome changes separated by two units of space and one unit of time: the first to the north-east of the current location, the second to the south-west in the next syndrome extraction cycle. However, the standard error correction method does not account for the underlying syndrome extraction circuits. By using the simple Manhattan

33 3 Enhanced Planar Code Error Recovery

t+0

t+1

X

t+1

time t+2

(a) A single error leads to errors on two data qubits. (b) A potential syndrome Squares denote state preparation. arising from two errors.

Figure 3.1: Two errors of the form shown in (a) artfully arranged to cause the syndrome pattern of (b). The path of correction (dashed lines) combines with the error chain (solid lines) to perform the logical operation X¯, resulting in premature failure under the standard Manhattan distance metric. distance metric (Equation 2.2), this order p event appears as an order p3 event.

w = i i + j j + t t (3.1) | 1 − 2| | 1 − 2| | 1 − 2| The example syndrome depicted in Fig. 3.1b is constructed by carefully placing 2 errors of the same form as Fig. 3.1a on a distance-7 code. Error recovery under the Manhattan distance metric chooses to connect along the dashed lines (weight 5), and in doing so performs X¯. One can repeat this pattern for arbitrarily large lattices, meaning our code only reliably corrects for (d 1)/4 errors. This negatively impacts the performance of the code ⌊ − ⌋ in the low p regime (Fig. 3.3a). The solution is to modify how separation is calculated between syndrome changes. Let us consider a slightly more general syndrome measurement procedure than that shown in Fig. 3.1a. Let us assume that some of the two-qubit interactions are significantly slower than others. Some syndrome measure- ments may be performed more frequently than others. We permit the order of interaction to vary dynamically to enable syndrome measurements to be performed as frequently as possible. We imposed the necessary condition that it must be possible to say whether the gates associated with a given syndrome

34 3.1 Accurate Error Propagation

X

X

X time time time

(a) (b) (c)

Figure 3.2: Example of propagation of data errors when one syndrome is measured more frequently than another. Syndrome changes are shaded. measurement occurred strictly before or after those associated with any other syndrome measurement. Consider a pair of neighbouring Z stabilisers sharing a single data qubit. Let us imagine that one stabiliser is measured more frequently than the other. X errors occurring on the data qubit at different times will be detected by the adjacent stabiliser measurements in a number of different ways as shown in Fig. 3.2. These are all single-error processes. As such, the pairs of changed syndromes (indicated as shaded) should all be linked. These links, along with vertical links between same site syndrome measurements and links of the form shown in Fig. 3.1a will be used to determine the correct separation of a given pair of syndrome changes. The separation of a given pair of syndrome changes is defined to be the minimum number of links in a path connecting them. It may seem that there must be additional connections to cover the case of two-qubit interactions suffering a two-qubit error, however this is not the case. Two-qubit XX and ZZ errors are equivalent to single X or Z errors occurring before the two-qubit gate. Two-qubit errors consisting of both X and Z operators give rise to propagated errors that are handled independently by the two types of error correction. The separation of any given pair of syndrome changes is now calculated by determining the number of edges in the shortest path connecting them. When all gates take the same time, the ideal execution order remains as shown in Fig. 3.1a. Adhering to the previously described simulation cycle and noise model (Equation 1.20), we nevertheless can see in Fig. 3.3b that the new method of calculating the separation—a modification of the classical processing only—

35 3 Enhanced Planar Code Error Recovery dramatically changes the performance of the planar code. The threshold error rate remains unchanged at approximately 0.75%. A lattice of distance-d can now reliably correct (d 1)/2 errors. For large d, the new approach provides ⌊ − ⌋ a quadratic improvement of the logical error rate.

3.2 Non-integral Link Weights

We now take the opportunity to add real-valued weights to the links introduced above (previously they were all weight-1). Whereas Section 3.1 improves the asymptotic behaviour for low p, we now add gate failure probabilities into the metric in order to improve the high p performance. We shall assume quantum non-demolition measurements, which have been experimentally demonstrated using ion traps[101], optical lattices[128], super- conducting qubits[129], and N-V centres in diamond[96], and theoretically pro- posed for optically addressed quantum dots[130, 131]. This enables one to eliminate the dedicated preparation step from the syndrome extraction cycle (Fig. 3.4). Under this shortened scheme, +1 is measured when the previ- ous and current stabiliser measurements are the same, and 1 is measured − when they differ. The syndrome is again collected as a 3D data structure for processing. Data qubits execute identity gates while the syndrome qubits are being measured. Let us also assume the gates are well characterised ahead of time. For later convenience, we shall differentiate between the two-qubit gate p2, memory (identity) pI , and measurement pM error rates. Note that there are no non-trivial single-qubit gates in our simulations. One recovers the depolarising noise model by setting p2 = pI = pM = p.

We approximate the probability P (s1,s2) of a given pair of syndrome changes, s1 and s2, being connected by an error chain, and set

d(s ,s )= ln [P (s ,s )] . (3.2) 1 2 − 1 2

This choice of d(s1,s2) works well as high probability pairs have low separation and are preferentially matched.

To calculate P (s1,s2), we study the effect of gate errors. Fig. 3.5 shows all possible pairs of syndrome changes resulting from all errors on all meaningfully distinct gates. The cnot gates shown measure an X stabiliser. The effect of errors on the cnot gates used to measure a Z stabiliser can be obtained by

36 3.2 Non-integral Link Weights

108 distance 9 distance 7 107 distance 5 distance 3 (1.5 × 101 p2)-1 × 2 2 -1 106 (2.0 10 p ) (1.7 × 100 p1)-1

105

104 average time to failure

103

102

101 1 × 10-4 3 × 10-4 1 × 10-3 3 × 10-3 1 × 10-2 physical error rate p (a) Planar code threshold, standard separation metric.

108 distance 9 distance 7 107 distance 5 distance 3 (8.0 × 106 p4)-1 × 4 3 -1 106 (8.2 10 p ) (6.6 × 102 p2)-1

105

104 average time to failure 3 10 pth = 0.75%

102

101 1 × 10-4 3 × 10-4 1 × 10-3 3 × 10-3 1 × 10-2 physical error rate p (b) Accurate error propagation threshold.

Figure 3.3: Average time before the logical qubit is corrupted as a function of the physical gate error rate p and code distance d when (a) the standard measure of separation of syndrome changes is used, and (b) accounting for error propagation by two-qubit gates. Time is measured in number of syndrome extraction cycles.

37 3 Enhanced Planar Code Error Recovery

MX MX • • • • MZ     MZ   •  •  • • (a) (b)

Figure 3.4: Circuits determining the sign of (a) XXXX stabiliser, and (b) ZZZZ stabiliser without explicit initialisation gates. interchanging X and Z. Note that X and Z are corrected independently, so only tensor products of one type of error need be considered. Working through a specific case, consider error process 9 in Fig. 3.5b, an IX error after a cnot gate between an ancilla (control) and a data qubit (target) to its left. The X error is applied on the ancilla qubit (for these figures, the errors applied are with respect to the figure). This qubit detects Z errors, so the stabiliser measurement will not change. The X error will be copied to the data qubit to its right, and then detected on the north-eastern ancilla at the completion of the current syndrome extraction cycle. The matching syndrome change is on the south-eastern ancilla, at the end of the following syndrome cycle (Fig. 3.1a). This double detection is represented by the joining line. Since X and Z errors are corrected independently, IX is really shorthand for IX, IY , ZX, or ZY . Using Fig. 3.5, Fig. 3.6 was constructed, grouping gate errors leading to specific geometrically separated pairs of syndrome changes. Again working through a specific case, a vertical pair of changes (Fig. 3.6a) can arise from error processes 1, 7, 11, 18, and 21 from Fig. 3.5. Error process 21 is a measurement error, and therefore has probability pM . As discussed above, the others each correspond to four of the 15 possible tensor product errors. Explicitly, error process 1 (ZI) corresponds to ZI, ZX, YI, Y X and therefore 4 has probability 15 p2. Error processes 7, 11, 18 similarly each have probability 4 15 p2. The probability of an odd number of error processes occurring in each group gives the probability of the presence of the associated link. Therefore, the probability of the vertical link shown in Fig. 3.6a is

4 4 3 4 4 p = 4 p 1 p (1 p )+ p 1 p + O(p3). (3.3) a 15 2 − 15 2 − M M − 15 2 µ ¶ µ ¶

Polynomial probability expressions pb, pc, pd, pe, and pf corresponding to Fig. 3.6b–f may be constructed in a similar manner. Some straightforward

38 3.2 Non-integral Link Weights

(a) (b)

2. IZ 4. 5. IX ZI 9. XI IX 1. ZI IZ 7. 8. XI ZZ 3. XX 10. ZZ 6.

(c) (d)

12. 20. IZ 14. XX XI IX 16. 17. ZI XI 11. ZI ZZ XX IZ 18. 13. 15. 19. ZZ

(e) (f)

21. Z 22. Z X 23.

Figure 3.5: Observed syndrome changes as a result of a single error. Vertical axis is time, horizontal axes represent space. A cnot gate suffering an error is drawn in full, otherwise it is represented by a tick mark protruding in the direction of application. Syndrome changes occur in pairs. Lines join pairs of changes resulting from (a–d) specific two-qubit errors on specific cnot gates; (e) a syndrome qubit measurement error; and (f) a data qubit memory error.

39 3 Enhanced Planar Code Error Recovery modifications of the links and expressions are required at the temporal and spatial boundaries to account for missing gates.

4 4 2 2 4 2 p = 2 p 1 p 1 p + p 1 p (3.4) b 15 2 − 15 2 − 3 I 3 I − 15 2 µ ¶µ ¶ µ ¶ 4 4 3 p = 4 p 1 p (3.5) c 15 2 − 15 2 µ ¶ 4 4 3 8 2 2 p = 4 p 1 p 1 p 1 p d 15 2 − 15 2 − 15 2 − 3 I µ ¶ µ ¶ µ ¶ 8 4 4 8 2 + 2 p 1 p 1 p 1 p 15 2 − 15 2 − 15 2 − 3 I µ ¶ µ ¶µ ¶ 2 4 4 8 2 + p 1 p 1 p (3.6) 3 I − 15 2 − 15 2 µ ¶ µ ¶ 4 4 p = 2 p 1 p (3.7) e 15 2 − 15 2 µ ¶ 4 4 p = 2 p 1 p (3.8) f 15 2 − 15 2 µ ¶

3.3 Results

The probability P (s1,s2) that two syndrome changes are connected by an error chain is equal to the sum of the probabilities of all paths of errors connecting them. The probability of a given path is the product of the link probabili- ties along the path, assuming independent errors. Several approximations of

P (s1,s2) are worthy of study. The simplest approximation is to take a single path of maximum probability Pmax(s1,s2) and define

d (s ,s )= ln [P (s ,s )] . (3.9) max 1 2 − max 1 2 We shall see that this approximation is sufficient to substantially increase pth and that more accurate approximations do not lead to further increase.

The performance of planar code quantum error correction using dmax(s1,s2) subjected to the standard error model is shown in Fig. 3.7. We obtained almost identical results for Z errors, with small differences due to the lack of geometric symmetry of the link probabilities.

Fig. 3.7 gives strong evidence of a threshold error rate of pth = 1.1%. We have verified this by simulating high distance codes at this error rate and observing neither increase nor decrease of the failure time. This is enormously encouraging, and motivates one to better approximate P (s1,s2) in an effort

40 3.3 Results

(a) (b)

1.+7.+11.+18.+21.3 3.+17.+23.2

(c) (d)

2.+8.+16.+19.

4.+6.+10.+12.+14.+20.+22.1 21

(e) (f)

5.+13. 9.+15.

Figure 3.6: Numbered error processes from Fig. 3.5 contributing to specific 8 links. Superscripts 1–3 indicate error processes occurring with probability 15 p2, 2 4 3 pI , and pM respectively. All other processes occur with probability 15 p2.

41 3 Enhanced Planar Code Error Recovery

105 distance 9 distance 7 distance 5 distance 3

104

103

100 102 70 pth average time to failure 50

30 101

10 0.8 1.0 1.2 1.4% 100 0.001 0.005 0.01 0.015 0.02 physical error rate p (a) Average time to logical-X failure.

105 distance 9 distance 7 distance 5 distance 3

104

103

100 102 70 pth average time to failure 50

30 101

10 0.8 1.0 1.2 1.4% 100 0.001 0.005 0.01 0.015 0.02 physical error rate p (b) Average time to logical-Z failure.

Figure 3.7: Average time before logical failure as a function of the gate error rate p when using dmax(s1,s2) and the standard error model. Time is measured in number of syndrome extraction cycles. The arrow indicates the threshold error rate pth = 1.1%.

42 3.3 Results

100

70 pth

50

30 average time to failure distance 9 distance 7 distance 5 distance 3 10 0.8 1.0 1.2 1.4% physical error rate p

Figure 3.8: Average time before logical-X failure as a function of the gate error rate p when using d0(s1,s2) and the standard error model. Time is measured in number of syndrome extraction cycles. The threshold error rate is indicated by the arrow, and remains at pth = 1.1%.

to further increase pth. Additional accuracy can be achieved by taking all shortest length paths (measured in links) between s1 and s2 and calculating the sum of products of link probabilities along each path. We shall define the resulting distance measure as d0(s1,s2). We can define similar distance measures dn(s1,s2) taking into account all minimum length l paths and paths of length no greater than l + n. The performance of the planar code quantum error correction using d0(s1,s2) is shown in Fig. 3.8. It can be seen that pth remains 1.1%.

The fact that d0 results in the same pth as using a single maximum proba- bility path distance measure dmax can be explained by noting that d0(s1,s2) only differs from dmax(s1,s2) if s1 and s2 are separated by at least two links.

Single-link paths are unique minimum length paths implying that d0 = dmax.

The vast majority of error chains, even at p = pth, are only single-link chains, as the threshold error rate is well below the percolation threshold. We find the distance modification resulting from taking into account the multiple paths connecting syndrome changes separated by multiple links is of order 10–20%.

Given multiple-link paths are not leading order contributors to pth in the first place, this relatively small weight change does not result in an im-

43 3 Enhanced Planar Code Error Recovery

provement of pth.

Higher-order approximations dn(s1,s2) will also result in the same pth as the distance measure is hardly altered by increasing n. A typical example of p = 0.01, s = (0, 0, 0), s = (1, 1, 0) gives d = 6.91 (6 paths), d = 6.86 (30 1 2 − 0 1 paths) and d2 = 6.85 (390 paths). The exponential increase of the number of paths is well balanced by the exponential decrease of their probability. It is unreasonable for qubits involved in two-qubit gates to be more reliable than idle qubits. Nonetheless, that is the reality of the depolarising noise model. The balanced error model of [47] is a better model of all quantum gates failing with equal probability, ensuring idle qubits have the same probability of error as a single qubit involved in a two-qubit gate and taking into account the fact that measurement is only sensitive to errors in one basis. Appropriate 4 8 modification of the polynomials using p2 = p, pI = 5 p, and pM = 15 p leads to pth = 1.2%. Arbitrary stochastic error models are straightforward to analyse 1 using our formalism. As an example, we also simulate p2 = p, pI = 1000 p, and 1 pM = 100 p modelling typical error ratios in an ion trap, and observe pth = 1.4%. The practical significance of the threshold increase can be appreciated by noting that our scheme requires five times fewer qubits than the previous best scheme[2] to achieve a given logical error rate at p = 0.5%, with only a distance 23 code required to extend the lifetime of a qubit by a factor of 105. 4 Alternatively, [2] requires p = 8 10− for the logical error rate to decrease by × an order of magnitude when the distance of the code is increased by 2, whereas 3 from Fig. 3.7 it can be seen that our scheme can do the same at p = 2 10− . × These substantial relaxations of the experimental requirements arise purely from better classical processing.

3.4 Conclusion

In Section 3.1, we showed that, when errors are allowed to occur during syn- drome extraction, a single error may propagate to two qubits. Consequently, the method described in Chapter 2—which was formulated primarily for the case of error-free syndrome extraction—leads to the planar code only reliably protecting against (d 1)/4 errors. This is far from ideal. We studied how ⌊ − ⌋ the syndrome extraction circuit can spread errors, and devised a new measure of separation between syndrome changes. This is a change to classical pro- cessing only, and allows the planar code to reliably correct for the maximum

44 3.4 Conclusion

(d 1)/2 errors. ⌊ − ⌋ The metric introduced in Section 3.1 is simply the number of links between two syndrome changes. In Section 3.2, we show how one can further boost the high p performance for a given architecture by incorporating physical pa- rameters into the the error corrector. This is accomplished by estimating the probability of a link arising, and using it as a weight in the metric. Assum- ing non-demolition measurements, we calculate pth values between 1.1–1.4%, depending on the error model.

45 3 Enhanced Planar Code Error Recovery

46 4 Surface Code Quantum Communication

The BB84[132] and Ekert[133] protocols for use quantum mechanics to provide a means for secure communication. However, long-range communication of quantum states is difficult as the no-cloning theorem[22, 23] precludes classical signal amplification techniques. Instead, one typically overcomes the lack of range by introducing a linear chain of re- peater stations[134], each capable of reliable local quantum computation and connected to its nearest-neighbours by unreliable communication links. Exist- ing protocols based on entanglement purification suffer from a finite maximum communication distance or low communication rates[135]. We present a novel protocol based on surface code error correction which avoids both issues; pro- vided repeaters have local quantum gates with error rate p 1%, two-way g ≪ communication is avoided entirely and quantum information can be sent over arbitrary distances with arbitrarily low error pc at a rate limited only by the local gate speed. Section 4.2 describes the communication protocol. In Section 4.3, we show that the number of qubits per repeater increases only logarithmically and the quantum communication rate decreases only logarithmically with communica- tion distance. Provided we can create Bell pairs between neighbouring stations with heralded success probability SB & 0.70 and fidelity F & 0.96 every TB seconds, the logarithmic resource scaling remains and the communication rate 2 1 through N links is proportional to Tb log (N/pc) − . The work presented in this Chapter£ has been published¤ in[4].

4.1 Motivation

Entanglement swapping[136, 137] is shown in figure 4.1a. Given systems A, B, C and two Bell pairs Φ+ = 1 ( 00 + 11 ) straddling systems AB and | i √2 | i | i

47 4 Surface Code Quantum Communication

(a)ABC (b) AB

HH Z M M X MX MZ Z Z

Figure 4.1: (a) Entanglement swapping. Given two Bell pairs, cnot followed by measurements and classically controlled rotations creates a Bell pair be- tween systems AC. (b) Entanglement purification. Applying cnot gates fol- lowed by Z measurements results in fewer errors on the remaining Bell pair if the measurements are equal. Hadamard transforms mix the remaining errors, ensuring subsequent purification reduces the probability of all types of errors.

BC, it is possible to teleport[138] the qubit in system B entangled to the qubit in system C to system A, thus creating a Bell pair straddling systems AC. Given a chain of n systems A , ,A and Bell pairs straddling each 1 ··· n pair of systems AiAi+1 and assuming perfect Bell pairs and quantum gates, entanglement swapping can be used to create a Bell pair straddling systems

A1An in constant time. Entanglement purification[139] is depicted in figure 4.1b. Consider two sys- tems A, B and two Bell pairs both straddling systems AB and each with probability p of suffering one of the 15 non-trivial tensor products of I, X, Y , and Z (Equation 1.20). Bell pairs are stabilised by XX and ZZ, thus this is 4 equivalent to a single qubit error X, Y , Z with probability p′ = 5 p: 12 p 1 p II + (4IX + 4IY + 4IZ) (4.1) − 15 15 µ ¶ p′ 4 = I (1 p′)I + (X + Y + Z) , p′ = p. (4.2) ⊗ − 3 5 · ¸ After performing the indicated cnot gates and measurements, the unmea- sured Bell pair is discarded if different measurement results are obtained. If kept, the unmeasured Bell pair will have, to leading order, a Z error with 2 4 2 probability 3 p′ and an X or Y error with equal probability 9 p′ . Applying Hadamard transforms H to each qubit interchanges Z with X errors, allowing subsequent purification to remove all errors to arbitrary accuracy. Entanglement purification requires two-way classical communication, result- ing in the quantum communication rate decreasing polynomially with distance.

48 4.2 Quantum Communication Protocol

Furthermore, the communication error rate pc is at best comparable to the er- ror rate pg of gates within repeaters. If qubits have a finite time, demanding a constant pc as the distance increases results in a finite maximum communication distance. Arbitrarily rapid and reliable communication over arbitrary distances is not possible using only entanglement purification and entanglement swapping. Initial work incorporating error correction into quantum communication re- sulted in non-fault-tolerant schemes capable of correcting small numbers of errors[140, 141]. Recently, the first steps towards fault-tolerant quantum com- munication were taken[135]; however, entanglement purification was still used between neighbouring quantum repeaters, fundamentally limiting the commu- nication rate to hundreds of logical qubits per second. A quantum communi- cation protocol requiring very little two-way classical communication has been developed concurrent with this work[142].

4.2 Quantum Communication Protocol

We now describe our communication protocol, initially restricting ourselves to moving a logical qubit from the left end to the right end of a single monolithic array of qubits with the ability to perform local gates. Given an arbitrary surface code logical qubit Ψ at the left end of the array, an uninitialised | Li region of qubits in the middle, and a surface code logical qubit 0 at the | Li right end, Ψ can be fault-tolerantly teleported to the location of 0 by the | Li | Li following procedure. First, the uninitialised region is initialised (Fig. 4.2a). Second, the syndrome qubits across the entire lattice are interacted with their neighbours (Fig. 4.2b). This begins the process of increasing the size of the logical qubit to cover the entire lattice. Third, the measurement pattern shown in Fig. 4.2c completes one round of stabiliser measurement. The interaction pattern of Fig. 4.2b is executed a total of d times, interleaved with the measurement pattern of Fig. 4.2c. This process is standard surface code error correction. During the rounds of error correction, the logical qubit information becomes reliably distributed across the entire lattice. Finally, after the dth round of interaction, the measurement pattern shown in Fig. 4.2d is applied, effectively cutting off a large piece of the logical qubit without revealing information about the value being transmitted, faithfully leaving the logical qubit in the unmeasured region.

49 4 Surface Code Quantum Communication

ΨL 0L (a) MX MZ MX MX MZ MX

MZ MZ MZ MZ MZ MZ

MX MZ MX MX MZ MX

MZ MZ MZ MZ MZ MZ

MX MZ MX MX MZ MX

3 (b) 2 1 4 1 3 2 4 1 4 3 2 1 4 3 2 4 1 3 2

(c) MX MX MX MX MX MX MX MX

MZ MZ MZ MZ MZ MZ MZ MZ

MX MX MX MX MX MX MX MX

MZ MZ MZ MZ MZ MZ MZ MZ

MX MX MX MX MX MX MX MX

ΨL (d) MZ MX MZ MX MZ MX MZ MX MX MZ MX

MZ MZ MZ MZ MZ MZ MZ MZ MZ MZ MZ

MZ MX MZ MX MZ MX MZ MX MX MZ MX

MZ MZ MZ MZ MZ MZ MZ MZ MZ MZ MZ

MZ MX MZ MX MZ MX MZ MX MX MZ MX

Figure 4.2: Surface code quantum communication protocol. (a) Monolithic lattice of qubits with source logical qubit Ψ , initial measurement pattern | Li for the intermediate region, and destination area initialised to 0 . (b) Circuits | Li used in parallel to prepare for stabiliser measurement. Numbers indicate the timing of gates. (c) Intermediate stabiliser measurements. (d) Final stabiliser measurement and communicated state.

50 4.2 Quantum Communication Protocol

All measurement results are simply sent to the destination end of the lat- tice, not processed during transmission. The final round of measurements prepares the lattice for the transmission of the next logical qubit. Assuming each interacting quantum gate takes time Tg and each measurement time Tm, a logical qubit can be transmitted every (4Tg + Tm)d. The scaling of d and values required for practical communication will be discussed later after the full communication scheme has been described. Assuming error correction does not fail, the final corrected Z measurements will be accurate and the product λ = 1 of the top row of these measurements Z ± can be used to determine whether X needs to be applied (λ = 1) to the L Z − destination logical qubit. Furthermore, connecting the negative results in the rightmost column of Z measurements to each other or the bottom boundary with chains of X operators on the intervening data qubits in the leftmost column of the destination logical qubit ensures that subsequent measurement of ZL is independent of the starting point chosen on the left boundary. The product of any given round of X-stabiliser measurements across the lat- tice (all rounds will be identical after correction) indicates whether ZL needs to be applied to the transmitted logical qubit. This can be seen by using stabilisers to deform any XL on the source logical qubit to one on the destina- tion qubit. (Here, “deform” means to multiply by stabiliser generators, thus smoothly changing the shape of the logical operator.) The sign of the final operator depends on the product of the signs of the stabilisers used to perform the deformation. When communicating over a large physical distance, the fundamental entan- glement resource is expected to be Bell pairs created over fibre links kilometres in length. The monolithic lattice described above can be broken into pieces, each within a repeater station, and connected by Bell pairs (Fig. 4.3). The local structure of the planar code stabilisers (i.e. the weight-3 and weight-4 stabiliser generators) means that, provided each repeater is at least two qubits wide, the stabilisers will be contained within two repeater stations. Stabilisers that cross a communication link can be measured using the approach shown in Fig. 4.4. We temporarily ignore heralded failure to entangle, which is discussed below. The left half of each Bell pair can be measured before the right half even reaches its destination. The rate of the scheme thus remains unchanged— one logical qubit every (4Tg + Tm)d. Latency is, however, introduced as the qubits in any given repeater station are not initialised until the first photons

51 4 Surface Code Quantum Communication

1 2 3 4 5

ΨL 0L

Figure 4.3: The surface code lattice is divided into columns and distributed amongst a linear chain of quantum repeaters that are connected by Bell pairs. The qubit pattern shown in each repeater (ellipses) is for d = 3. The pattern width is independent of d. Open circles represent data qubits, and zig-zags are Bell pairs. Notice that for any given Bell pair, one of the qubits interacts with exactly one data qubit.

data qubit(s) significant transmission delay ΨA Ψ entanglement P heralding

ΨB pulse/photon data qubit(s)

Figure 4.4: Measurement of stabilisers spanning two repeater stations. If the probability of heralded success is sufficiently high, qubit A can be interacted with its neighbouring data qubits and measured before the entangling pulse or photon even reaches its destination. Error correction takes care of heralded failures, including loss during transmission. arrive from the left. For many ranges of parameters, a given repeater will have finished working and sending photons before the next repeater receives its first photons.

4.3 Communication Link Errors

The scheme uses repeaters separated by large physical distances and connected by Bell pairs, thus the maximum tolerable Bell pair error rate is of critical importance. We shall assume that every repeater contains at least two columns of qubits, so that no stabiliser measurement spans more than two repeaters (Fig. 4.3).

52 4.3 Communication Link Errors

4.3.1 Bell Pair Error Rate

Let us temporarily assume that all gates within repeater nodes are perfect and Bell pairs are subject to depolarising errors. We shall continue to ignore heralded failure to entangle for the moment. A probability pB of depolarising 1 error on a Bell pair is equivalent to II with probability 5 pB, and IX, IY , IZ 4 with equal probability 15 pB (Equation 4.2). The Bell pairs have been arranged such that at any given syndrome location, one of its qubits always interacts with exactly one data qubit (Fig. 4.3). The Bell pair stabilisers allow one to “shift” single qubit errors to that side of the Bell pair, so that the error propagates to a single data qubit. Equivalently, if the single qubit error were on the opposite side of the Bell pair, the error propagates to all other data qubits, which is identical to a single data qubit error due to the surface code stabilisers. The directionality of the cnot gates in the syndrome extraction circuit ensures that X errors only propagate to data qubits situated on horizontal lines, and Z errors to those on vertical lines. This restriction on the types of errors each data qubit may incur is beneficial to error correction; a syndrome change at a face/intersection must arise from an X/Z error on one of the two adjacent qubits—not the usual four. That is, we need only consider purely vertical space and time spanning error chains. After correction, non-trivial combinations of X errors form a chain that runs from the top spatial boundary to the bottom spatial boundary. Similarly, Z errors form a chain connecting the top and bottom temporal boundaries. Given this symmetry, and the fact that the different types of errors are processed independently, we shall only focus on IX errors. These occur on any given 8 Bell pair with probability pX = 15 pB. Referring to the Bell pairs numbered 1 to 2d 1 in Fig. 4.3, IX errors on odd pairs induce an X error on the data − qubit to their left whereas on even pairs the result is an incorrect stabiliser measurement. These errors can be visualised as the bonds of a d t 2D square lattice. × The error rate pX is too high when, after correction, the probability of having a chain of errors along the d dimension increases with d. For t = 1, we have a repetition code, implying pX < 0.5 is correctable. For t = d, we have a surface code with perfect syndrome measurement, implying pX . 0.1[1]. The 15 equivalent values of pB are 16 and approximately 0.2. We simulated a pair of repeater nodes with perfect gates and an independent

53 4 Surface Code Quantum Communication

104

2.3

103 2

2 10 1.7 14/16 15/16 16/16 average time to failure

101 code distance 13 code distance 11 code distance 9 code distance 7 code distance 5 code distance 3 100 0.05 0.1 0.3 0.5 1

Bell pair error rate pB

Figure 4.5: Average number of error correction rounds before logical failure versus Bell pair error rate pB and code distance d. Inset: Magnification of high pB region. stochastic error model of depolarised Bell pairs for verification (Fig. 4.5). Note the expected crossover at p = 15 0.94. Significant growth of the time to B 16 ∼ failure with d occurs for pB . 0.2, as expected. Rapid growth occurs for p 0.1, equivalent to a fidelity F of the entangled state ρ with respect to B ∼ the desired φ+ of 0.92, since for depolarised Bell pairs, | i 4 F = φ+ ρ φ+ = 1 p . (4.3) − 5 B ­ ¯ ¯ ® ¯ ¯ 4.3.2 Loss of Bell Pairs

Loss during transmission can be modelled as measurement in an unknown basis, randomly chosen to be X or Z. This equates to a 50% chance of error for any Bell pair. Loss is easier to tolerate than depolarising noise because the failure to mea- sure the transmitted pulse or photon is itself useful information—we gain knowledge of the location of the error. This knowledge is incorporated in the form of accurate calculation of weights between pairs of syndrome changes.

54 4.3 Communication Link Errors

300 ploss=0.40 ploss=0.45 ploss=0.46 ploss=0.47 250 ploss=0.48 ploss=0.49 ploss=0.50

200

150

average time to failure 100

50

0 3 5 7 9 11 13 15 17 19 21 23 25 code distance d

Figure 4.6: Average number of error correction rounds before logical failure versus loss ploss and code distance d.

This is entirely analogous to Chapter 3, where the knowledge of the error pat- terns that arise from using realistic syndrome extraction circuits was used to create links. In brief, the weight assigned to the edge representing an error- chain connecting a given pair of syndrome changes is taken to be the minimum distance, measured in number of links, between those two syndrome changes. This metric is used to construct a weighted graph, from which we infer a good candidate for error correction by performing minimum-weight matching. Fig. 4.6 shows efficient handling of 40%–45% loss. Note that no code can handle more than 50% loss as this would violate the no-cloning theorem[22, 23].

4.3.3 Combined Bell Pair Errors

We now consider the combined effect of both loss and depolarisation of Bell pairs. This case is again analogous to Chapter 3 for weighted links. We remark that the two sources of error, depolarised Bell pairs with probability pB and loss with probability ploss, are distinguishable as one can carefully compile a history of loss events. The parameters pB and ploss are properties of the system and may be characterised ahead of time.

55 4 Surface Code Quantum Communication

The weight W assigned to a link depends on the types of noise that are sampled over the last R rounds of syndrome extraction.

ln 1 , case 1 − 2  W = ln p′, case 2 (4.4) −  R  R k R k 8 ln p′ (1 p′) − , p′ = p case 3 − k − 15 B  ·k odd ¸  P ¡ ¢ The first case is used when a loss event is encountered anywhere in the 1 last R rounds of syndrome extraction. The factor of 2 comes from the 50% probability of error from loss. This is the maximum probability and hence minimum cost of any edge. The second case is used when a link connects two consecutive syndromes at the same physical location—that is, they are separated only in time, and all intermediate syndromes at that position were lost—regardless of the time separation between the two syndromes. The reason is that Bell pairs will introduce errors of the other basis to neighbouring data qubits; they do not affect the subsequent syndrome measurements at its own location. The final case is used when the link samples only Bell pair error events. It takes the weighted sum over all odd combinations of errors in the sampling 8 range. The factor of 15 in the latter two cases is due to our error model; only 8 15 terms contain bit-flips (or phase-flips) that will affect the Bell pairs.

The probability of logical error after d stabiliser measurements plink is shown in Fig. 4.7 versus pB and loss ploss. Note that we attempt to collect d syndrome extraction measurements as described by the protocol, however we may obtain far fewer at a given site due to loss. The lack of symmetry between the X and Z bases is due to the different failure conditions: logical-X failure results from forming a continuous error chain between the spatial boundaries, whereas logical-Z failure is an error chain between the temporal boundaries. The former is naturally more restricted. One can balance out any asymmetries by collecting more or less syndromes.

For 30% loss and 5% error (F = 0.96), increasing d by 45 decreases plink by a factor of 10 (Fig. 4.7). The exponential decrease of plink with d implies the probability of communication error pc through N links decreases exponentially with d. Doubling N requires halving plink, so d increases logarithmically with 4 N for fixed pc. In brief, d = O(log(N/pc)). Sending data through 10 repeaters 6 with an overall error of 10− would require d 450, corresponding to of order ∼ 2.7 103 qubits per repeater. Each repeater takes time d(4T +T )/(1 p ) to × g m − loss

56 4.3 Communication Link Errors

0.5

0.3

0.1

0.05 logical X error rate

0.03

pB=0.08, ploss=0.33 pB=0.07, ploss=0.32 pB=0.06, ploss=0.31 pB=0.05, ploss=0.30 pB=0.04, ploss=0.29 0.01 5 10 15 20 25 30 35 40 code distance d (a) Logical-X failure rate.

0.5

0.3

0.1

0.05 logical Z error rate

0.03

pB=0.08, ploss=0.33 pB=0.07, ploss=0.32 pB=0.06, ploss=0.31 pB=0.05, ploss=0.30 pB=0.04, ploss=0.29 0.01 5 10 15 20 25 30 35 40 code distance d (b) Logical-Z failure rate.

Figure 4.7: Probability of logical error per link for a variety of loss and Bell error rates.

57 4 Surface Code Quantum Communication send a logical qubit. MHz rate communication—in other words, each repeater

takes time 1ñs—with long range and high fidelity can thus be achieved provided

450(4T + T )/0.70 1ñs, meaning syndrome extraction sequences of time g m ∼ (4T + T ) 2ns. g m ∼ Permitting repeaters to have a non-zero local gate error rate pg will only have significant impact if it is close to the threshold error rate of approximately th pg = 0.75%[43]. An error rate 1 or 2 orders of magnitude below this will not significantly change the above results.

4.4 Conclusion

If a planar code is distributed over a linear array of quantum repeaters, then due to the local structure of the stabiliser generators, syndrome information may be collected with the aid of Bell pairs connecting neighbouring repeaters only. This can be used for error corrected quantum communication. We have shown that provided the Bell pair depolarising error rate is less than approxi- mately pB . 10% (F & 0.92), this enables the practical fault-tolerant quantum communication of logical qubits over an arbitrary number of links N with ar- bitrarily low overall communication error rate pc given O(log(N/pc)) qubits per repeater. If the rate of loss is high, the communication rate is inversely proportional to the time TB required to successfully create a single Bell pair and the number of Bell pairs used to link neighbouring repeaters. The latter is proportional to the 2 1 square of the number of qubits per repeater, giving a rate of TB log (N/pc) − . If the Bell pair depolarising error rate and loss are below£ approximately¤ pB . 5% (F & 0.96) and ploss . 30%, only one-way classical communication is required and of order 2.7 103 qubits per repeater and nanosecond gates × 6 4 enables one to send logical qubits at a MHz rate with 10− error through 10 links.

58 5 The 2D Colour Code

In this Chapter, we return to quantum error correction. We shall investigate a different topological error correcting code, the (4.8.8) colour code[50, 51]. Other colour codes exist, for example the (6.6.6) colour code which is imple- mented on a honeycomb lattice. Its threshold was determined by a random bond Ising model mapping to be p = 10.9 2%[143]. The primary interest th ± in this code lies in its ability to perform transverse logical-S operations. We shall determine the threshold for the colour code by using an error correction method implementable in practice. The method itself is fundamentally a gen- eralisation of the method described for the planar code, Chapter 2. However, as we shall see, the nature of the colour code makes the error recovery problem highly non-trivial. Section 5.2 reviews the colour code and briefly discusses the error correction procedure. Section 5.3 introduces logical qubits and logical operations. In Section 5.4, we describe our implementation of the error corrector. Section 5.5 applies this method assuming error-free syndrome extraction, and compares it to results obtained by combinatorics. Section 5.6 presents the results for error-prone syndrome extraction. The work presented in this Chapter has been published in[5].

5.1 Motivation

We remarked in Chapter 1 that the logical operation U¯ for a code is in general not simply the physical operation U applied transversely, that is to every qubit in the code. One seeks to implement a small set of logical gates which give rise to universal quantum computation. This is typically taken to be the Clifford group gates (Paulis, Hadamard, S and cnot) and T . Many codes including the the toric and planar codes, and honeycomb colour code, cannot perform transverse S¯. Instead, one uses state distillation to achieve universality. The operation is performed by preparing the magic state

59 5 The 2D Colour Code

Y in a logical ancilla qubit, and then the phase is transferred back to the | i logical qubit via a cnot gate.

1 Y = ( 0 + i 1 ) (5.1) | i √2 | i | i

The problem lies in the creation of the magic state. It is possible to create a state approximating Y by state injection. Given seven approximate Y | i | i states, one may create a better approximation by executing the circuit shown in Fig. 5.1a. Thus one can arrive at an arbitrarily faithful approximation to the magic state by iteration. Bearing in mind that each qubit shown is a logical qubit, the resources dedicated to perform this single gate can easily overwhelm the rest of the computation. This is a resource intensive procedure which the (4.8.8) colour code avoids. Unfortunately, it is still necessary to use the larger state distillation circuit in the colour code to perform T¯ (Fig. 5.1b). This circuits transforms fifteen approximate A states to one better approximation. | i

1 A = 0 + eiπ/4 1 (5.2) | i √2 | i | i ¡ ¢ Indeed it is impossible to create a code with all logical gates in the univer- sal set implemented transversely[144–146]. However, clever use of projective measurement and feed-forward techniques enable one to avoid state distilla- tion circuits while still achieving universality for some concatenated codes[147]. For the colour code, the equivalent technique requires the preparation of a cat- state the size of the logical qubit. Whether such a cat-state can be prepared for large distances is debatable. Regardless, the (4.8.8) colour code (simply “colour code” hereafter) is an interesting code in itself with benefits over other topological codes. In this Chapter, we seek to determine the threshold for the (4.8.8) colour code. The method we present is a generalisation of the syndrome decoder used in the planar code (Chapter 2). We shall find that one must solve a hypergraph matching problem. As efficient hypergraph matching algorithms are not known, this prompts the use of heuristic methods. More recently, the scheme of [127] has been applied to more efficiently decode the syndrome of the colour codes[148, 149], but, once again, these make use of approximations.

60 5.1 Motivation

A MX *-+, | i • A MX *-+, | i • A   ψ | i • | i A MX *-+, | i • A    MZ *-+, | i A    MZ *-+, | i A    MZ *-+, | i A MX *-+, | i • A    MZ *-+, Y MX *-+, | i | i • A    MZ *-+, Y MX *-+, | i | i • Y   ψ A    MZ *-+, | i • | i | i Y MX *-+, A    MZ *-+, | i • | i Y    MZ *-+, A    MZ *-+, | i | i Y    MZ *-+, A    MZ *-+, | i | i Y    MZ *-+, A      MZ *-+, | i | i (a) Y 0 + i 1 . (b) A 0 + eiπ/4 1 . | i ∼ | i | i | i ∼ | i | i Figure 5.1: State distillation circuits for the Y and A magic states, used | i | i in performing S¯ and T¯ respectively, in the absence of other methods. Several states approximating the magic state leads to a single, closer approximation to the desired state. Continued iteration allows one to produce arbitrarily close approximations, thus achieving universality.

61 5 The 2D Colour Code

blue ψ Z0Z1Z2Z3 ψ = +1 green 1 0 red h | | i

2 3

9 4 ψ X0Z0Z1Z2Z3X0 ψ XZ h | | i 8 5 = ψ X0X0Z0Z1Z2Z3 ψ 7 6 −h | | i XZ = 1 −

Figure 5.2: 2D lattice of qubits for the colour code. White circles rep- resent data qubits. Ancilla qubits located within the plaquettes are not shown. The stabiliser generators are the tensor products of X and Z on the qubits around each plaquette: X0X1X2X3, Z0Z1Z2Z3, X2X3X4X5X6X7X8X9, Z Z Z Z Z Z Z Z , etc. The state ψ is initialised to the simultaneous +1 2 3 4 5 6 7 8 9 | i eigenstate of all the generators. A single X error, ψ X ψ , will be ob- | i → | i served as an eigenvalue change on the adjacent Z stabilisers.

5.2 Error Correction on the 2D Colour Code

Consider the 2D lattice of qubits arranged as shown in Fig. 5.2, assuming for now that the lattice extends indefinitely. Each plaquette is associated with two stabiliser generators; the tensor product of X on the qubits around its perimeter, and the tensor product of Z on those same qubits. Neighbouring plaquettes always share two qubits, ensuring all stabilisers commute. Assigned to each stabiliser is a colour, red, green or blue, such that each qubit belongs to exactly one X stabiliser and one Z stabiliser of each colour. The plaquette colours shown in Fig. 5.2 are not inherent to the system, merely a device to aid error correction. For our purposes, red stabilisers will always be synonymous with square stabilisers. In the absence of errors, the state of the system is the simultaneous +1 eigenstate of every stabiliser. An X error on one qubit causes the state to toggle between the 1 eigenvalue states of the adjacent Z stabilisers. As per the ± planar code, eigenvalue changes are measured locally through the intermediate ancilla qubits, forming the X error syndrome. Similarly, Z errors are detected by measuring the eigenvalues of the X stabilisers. Fig. 5.3 illustrates more complex possibilities of syndromes. Combinations of errors often conspire in such a way to conceal the interme-

62 5.2 Error Correction on the 2D Colour Code

Figure 5.3: Examples of syndromes observed on the 2D colour code. Shaded data qubits indicate the locations of errors, and circles within plaquettes show syndrome changes. (a) a single error toggles three plaquettes’ eigenvalues. (b–c) 2-chain generating 2 terminals of the same colour. (d) 3-chain gener- ating 3 different coloured terminals. (e) many-terminal error chains can be decomposed into 2-chains and 3-chains with overlapping terminals.

diate eigenvalue flips of many plaquettes. These sets of errors, or error chains, may be seen as the primitives generating the observed syndrome instead of the independent errors on individual qubits. We will also regard single errors as error chains. The eigenvalue changes an error chain induces are its termi- nals. The colour of a terminal is the colour of the plaquette whose eigenvalue it alters. Error chains may have two same colour terminals (2-chains), three terminals with one of each colour (3-chains), or more terminals. Any chain having in excess of three terminals may be decomposed into superpositions of lower order chains, with some terminals overlapped (Fig. 5.3e). Indeed any 2-chain (Fig. 5.3b) may be derived from a pair of 3-chains, however they are treated as a primitive due to their relative simplicity. Since all observable syndromes are generated by superpositions of error chains, the identification of error chains is equivalent to locating errors.

Given an arbitrary syndrome, error chain identification can be carried out using a minimum-weight hypergraph matching algorithm. A hypergraph is a generalisation of a graph where the edges, now called hyperedges, can termi- nate at arbitrarily-many vertices. Formally, a hypergraph is a pair (V,E) where V is a set containing the vertices and E is a set containing the hyper- edges. Each hyperedge is itself a set containing elements in V , and, in our

63 5 The 2D Colour Code case, carrying an integer weight. The rank of the hypergraph is the maximum cardinality of all of its hyperedges. Efficient hypergraph matching algorithms are not known. However, we will see that one requires only a rank-3 hy- pergraph matching algorithm—not one of arbitrary rank—and in Section 5.4 we describe an approximate but efficient implementation based on matching specifically constructed graphs. For the present discussion, we assume the ability to determine the hypergraph matching, efficiently or otherwise. Given a syndrome, the eigenvalue changes observed translate to nodes on a hypergraph. Any possible 2-chain required to generate a pair of terminals is represented by an edge joining the corresponding pair of nodes. Similarly, a hyperedge is added for every possible 3-chain. A matching on this hypergraph then represents a corresponding set of error chains which together will partially generate the syndrome, because each terminal belongs to exactly one error chain. Thus a perfect matching will reproduce the entire syndrome, allowing error correction to be performed. As an initial pass, edges and hyperedges are assigned a weight equal to the minimum number of errors to produce the pair or triplet without taking syndrome extraction circuits into account, similar to using the Manhattan distance metric under the planar code. This hypergraph is constructed in a way that its minimum-weight perfect matching will reproduce the syndrome under ideal syndrome extraction using the fewest number of errors. Again, for a given hypergraph, there are in general many different minimum- weight perfect matchings. Since our codes are odd in distance, different match- ings of the same weight-sum correspond to sets of errors that are topologi- cally equivalent, thus are the same to error recovery. Provided fewer than (d 1)/2 errors occur on the surface, error recovery will only form rings of ⌊ − ⌋ X or Z (i.e. stabilisers), ensuring that the initial state is restored. As described, many-terminal error chains such as in Fig. 5.3e are not han- dled, resulting in misidentification of the causes of syndromes; this particular syndrome can be produced by 4 errors, however it currently appears to the error corrector as a 10 error event (generated by a pair of 2-chains). One so- lution is to add these error chains into the hypergraph in the form of higher cardinality hyperedges. However, this increases both the number of hyperedges exponentially, and also the complexity of the matching algorithm. There is a more elegant solution which rests on the fact that the plaquette eigenvalue observed determines only the parity, not the exact number of termi-

64 5.2 Error Correction on the 2D Colour Code

Figure 5.4: Examples of syndromes observed on finite lattices. Dark plaquettes show the different colour boundaries (top: red, bottom: green, sides: blue). (a) 2-chain with masked red terminal. (b) 3-chain with masked red terminal. (c) 3-chain with two masked terminals. (d) the interface between green and blue boundary can also be considered a red boundary. nals, at that location; one can artificially insert a pair of dummy nodes into the graph for a plaquette suspected of harboring overlapping terminals, exactly as if two terminals had been observed there. Misplaced dummy pairs can in the worst case be matched to one another by a weight-0 edge, whence matching continues as if the pair had not been introduced. Our simulations need not anticipate such instances: as we have access to the number of toggles at each plaquette, we introduce a pair whenever an eigenvalue changes twice or more. However, in a real implementation such information is not available so one must devise a clever algorithm to identify where overlaps occurred. For exam- ple, one could build a small lookup-table based on the local syndrome pattern. For low error rates, long error chains become exponentially unlikely, thus the table size will be limited. Note that even the introduction of dummy pairs on every plaquette still incurs only a polynomial-time overhead. The benefit from introducing dummy pairs is eliminating the need to match arbitrary rank hypergraphs (only rank-3 is necessary). While it is possible to implement this code on a lattice with periodic bound- aries, we shall consider an implementation on a planar lattice with hard bound- aries which may be more feasible to realise. The presence of boundaries hides otherwise visible terminals (Fig. 5.4). There are three boundary colours. A red boundary is the interface shielding red terminals from being observed, so that, for example, a lone red node can be produced by a 2-chain from a red

65 5 The 2D Colour Code boundary. Green and blue boundaries are defined equivalently. Note that the interface between green and blue boundaries can also be considered a red boundary. The case of a 3-chain producing exactly two mixed-colour termi- nals and one masked terminal is easily accommodated for by adding an edge between those two terminals in the hypergraph, with the implicit prescription that this edge denotes generating these two terminals by joining them to the closest boundary by a 3-chain. Indeed, any edge or hyperedge between some arbitrary number of nodes can denote whatever means is necessary to generate exactly those terminals, independently of all other terminals observed. The single terminal case could be treated by adding in a single-element hyperedge for each node. However, this complicates the matching algorithm. Instead, we draw from our experience in matching in the presence of boundaries from Chapter 2: We create beside each node A an associated boundary node A′. Each node is joined to its own boundary node, corresponding to generating that terminal independently, for example by a 2-chain to the closest same colour boundary. For every edge (hyperedge) added between nodes A and B (and C), we add a weight-0 edge (hyperedge) between nodes A′ and B′ (and C′). In this way, when the regular nodes are matched together, their respective boundary nodes may also be matched together for no extra cost. This construction then allows us to always find a perfect matching. Fig. 5.5 illustrates the error correction methodology described here. It is easily adapted to other topological schemes by incorporating appropriate edges and weights. Indeed, the error correction methodology of the planar code may be regarded as a specialisation of the same technique, whereby one forms and matches only rank-2 hypergraphs (i.e. graphs).

5.3 Logical Qubits and Logical Gates

So far we have described the error correction procedure on the colour code, which preserves some quantum state encoded onto the surface. In order to perform computation, logical qubits must be introduced. Following[50], each logical qubit is encoded onto a triangular lattice (Fig. 5.6). The X¯ operation is defined to be any chain of X-operations on the data qubits connecting together all three colour boundaries, so that all terminals are masked by boundaries. The symmetry between X and Z stabilisers im- mediately defines Z¯, similar chains only with Z applied to the sites. These

66 5.3 Logical Qubits and Logical Gates

Figure 5.5: The hypergraph constructed from the observed syndrome. Edge weights and boundary nodes have not been included. An edge between two different coloured terminals is coloured only to serve as a reminder that it de- notes a 3-chain to that coloured boundary. The hypergraph matching identifies a corresponding set of error chains which produces the observed syndrome.

(a) Distance 3. (b) Distance 5.

blue green boundary boundary XX XX X X X X X

(c) Distance 7. (d) Distance 9.

Figure 5.6: Triangular lattices permitting all Clifford group gates to be per- formed transversely. Darkened plaquettes denote the different coloured bound- aries. An example of X¯ is also shown on the distance-9 lattice.

67 5 The 2D Colour Code chains have a minimum length equal to the height of the triangular lattice, and must necessarily be odd in length to yield the correct commutation relations. Therefore all distances d are assumed to be odd hereafter. The nature of the X and Z stabilisers allows logical Hadamard H¯ to be performed transversely; the identity Z = HXH implies that colour code sta- bilisers are unchanged after H is applied to every qubit. Furthermore, X- chains will transform to Z-chains, and vice-versa. This is an advantage over the planar code, which requires a more complex procedure. The primary interest in using the colour code is its ability to perform S¯ transversely. Since each plaquette comprises four or eight qubits, and neigh- bouring plaquettes share an even number of qubits, when S or S† is applied to every qubit, every state in the superposition of 0¯ acquires the same phase, | i and every state in 1¯ acquires another phase. Furthermore, because the codes | i are odd distanced, an odd number of qubits is enclosed within the triangle lattice, ensuring that 0¯ 0¯ and 1¯ i 1¯ . | i → | i | i → ± | i Finally, cnot gates may be implemented transversely between two differ- ent sheets of triangular lattices; this operation will propagate X-chains from control qubit to target qubit, and Z-chains from target to control. Thus the logical operations are propagated between logical qubits as desired. It is possible to adapt the colour code so that the entire quantum computer shares a single code[51], creating logical qubits by introducing defects into the surface, in a similar vein to surface codes[44]. In this manner, it is possible to recover long-range gates, one of the astonishing features of surface codes. In addition, one can isolate the triangular lattices above using a defect of each colour, examples of which are shown in Fig. 5.7, thus still permitting transversal S¯.

5.4 Hypergraph Mimicry and Pair Assignment

An essential requirement for the colour code error correction procedure as formulated in Section 5.2 is the existence of an efficient rank-3 hypergraph weighted perfect matching algorithm. Whether an efficient algorithm exists is unclear; additional information from the regular graph structure and the geometry may assist the problem. For example, it is possible to adapt the blossom algorithm to the specialised planar code’s graph to take into account the boundary nodes (which need not always be matched) for speed. We take

68 5.4 Hypergraph Mimicry and Pair Assignment

Figure 5.7: Examples of red (left) and blue (right) defects on the colour code. Green and blue defects share the same form. Logical qubits are formed from three defects—one defect of each colour—allowing long-range cnot gates in addition to transversal S¯[51]. a different approach, noting that recovering the minimum-weight hypergraph matching, which by construction produces better results than matchings of higher weight-sum, is not strictly necessary. We relax this condition to achieve an efficient error corrector. While we have formulated the error correction problem such that any syn- drome can be represented as a hypergraph matching, let us clarify that we never match the hypergraph directly; they are strictly limited to discussion. Our procedure is to reduce the initial hypergraph problem down to a simpler but approximate graph matching problem which we can solve. A solution to the graph problem may be mapped back to give a hypergraph matching and thus is a candidate for error correction, although it will not necessarily have as low a weight-sum as the minimum-weight hypergraph matching. Consider the following scenario: Alice and Bob each have the hypergraph ahead of time, to which Alice has found the minimum-weight matching with weight-sum Whyper. Alice wishes to communicate enough information to Bob, such that Bob can still reproduce her result efficiently (i.e. in polynomial time). She can opt to send Bob all of the hyperedges in her matching. Bob, knowing the remaining nodes are matched by edges, can remove all hyperedges from the initial hypergraph to form a graph, which he can match efficiently to recover the remainder of Alice’s matching (Fig. 5.8). It is possible for Alice to communicate only two of the three nodes in each matched hyperedge and still have Bob recover her minimum-weight hypergraph matching efficiently. For each of Alice’s matched hyperedges, Bob replaces the two nodes indicated with a single node, and the hyperedges connecting these

69 5 The 2D Colour Code two nodes in the original hypergraph are replaced by edges. Because he knows no other nodes are matched by hyperedges, any remaining hyperedges can be removed and thus Bob’s problem reduces again to matching a graph (Fig. 5.9). Obviously we do not have the luxury of Alice’s input, and so in both scenarios illustrated we would instead perform an exhaustive search over all of Alice’s possible inputs. Such a search exhibits exponential behaviour which may be counteracted by introducing approximations; trying only a small subset of the potential inputs at the expense of finding the true minimum-weight hypergraph matching. In order to scale up this approximation to higher distance codes, we will devise a speculative algorithm following Alice’s second technique for it has a smaller domain. Our method to assign together pairs of nodes is also achieved by matching a specialised mimic graph, which we now construct. Let us temporarily neglect all red nodes and build the hypergraph formed by just the green and blue nodes. Since we have not included red nodes, in reality this is simply a graph.

In order to account for the O(nrngnb) rank-3 hyperedges without actually introducing hyperedges, one must insert O(ngnb) extra nodes, where nx is simply the number of nodes of a particular colour. This can be done by substituting each edge connecting green and blue nodes with a series of edges, via four newly introduced intermediate nodes:g ¯, p, p′, ¯b (Fig. 5.10). This transformation in itself does not affect matchings on this graph; the choice of matching the edge g, b becomes a choice of matching an alternating { } set of edges. However, we have the new interpretation of p being the amalgam of g and b, and p′ its boundary. The special nodesg ¯ and ¯b are disables, which always have degree-2. (The degree of a node is the number of edges that connect to it.) They serve to ensure each node does not participate in two error chains, once as an individual and once as a pair. The interpretation of p as the pair formed by combining g and b allows us to add the hyperedges into the mimic graph; edges joining red nodes to pair nodes. As before, we join the respective boundaries together to fool the perfect matching condition (Fig. 5.11). We still need to incorporate the case of generating red and green terminals by connecting to a blue boundary, and similarly for the red and blue terminals connecting to the closest green boundary. We can join red nodes to green nodes (and their respective boundary nodes) with the implicit assumption that those two terminals join to the closest blue boundary to form a 3-chain.

70 5.4 Hypergraph Mimicry and Pair Assignment

Figure 5.8: If all of the hyperedges present in the minimum-weight hypergraph matching are known, one can solve the matching problem efficiently. Alice informs Bob only the hyperedges present in the minimum-weight matching. Bob factors out those nodes from his hypergraph. Since the remaining nodes are matched by edges, any remaining hyperedges are also discarded. Bob recovers Alice’s matching by solving a graph matching problem.

Figure 5.9: If two of the nodes from each of the hyperedges present in the minimum-weight hypergraph matching are known, one can solve the matching problem efficiently. Alice informs Bob only the green and blue nodes present in the hyperedges of the minimum-weight matching. Bob collapses these nodes into a single node; hyperedges involving both nodes become edges, and all other edges are discarded. Since the remaining nodes are matched by edges, any remaining hyperedges are discarded. Once again, Bob recovers Alice’s matching by solving a graph matching problem.

71 5 The 2D Colour Code

Figure 5.10: Construction of the mimic graph, a graph which incorporates some of the properties of the original hypergraph. The nodesg ¯, p, p′, and ¯b are introduced for the future inclusion of hyperedges. The pair node p is interpreted as the red node as a result of combining g and b, and has associated boundary node p′. The edge between p and p′ thus represents correcting g and b to the nearest red boundary. Theg ¯ and ¯b nodes serve to ensure that g and b are not used as part of two error chains: once via g (or b), and again via p.

Figure 5.11: Incorporating red nodes and hyperedges from the original hyper- graph into the mimic graph. The p node is treated exactly like a red node. The hyperedge between r, g, and b in the hypergraph becomes an edge between r and p in the mimic graph. The red boundary node r′ is joined to the pair boundary node p′ by a weight-0 edge.

72 5.4 Hypergraph Mimicry and Pair Assignment

However, for our approximate method it is best to minimise the degree of the nodes. We instead choose to insert additional blue nodes along the blue boundary plaquettes, used solely for forming these 3-chains. Whether or not the boundary actually masked a terminal is unimportant; an introduced node can at worst be matched to its own boundary node by a weight-0 edge and matching continues as if they had not been introduced, akin to the introduction of dummy pairs. Similarly, we introduce green nodes along the green boundary to account for joining red and blue terminals by a 3-chain. The procedure incurs a polynomial overhead and can be optimised to minimise the number of extra nodes. This mimic graph emulates some of the properties of the hypergraph and can be matched efficiently. In particular, all matchings on the hypergraph are matchings on the mimic graph. However, the converse if not true; matchings of mimic graphs may not necessarily be translated into hypergraph matchings. This is due to an implicit demand for one of three particular patterns within the triplet region when including the red nodes (Fig. 5.12). The matching algorithm knows nothing of such patterns, nor does the placement of weights assist it. Thus what we extract from the mimic graph matching itself is not a correction in general; only when it does not contain any malformed patterns is this true. However, we can use the matching as a choice for pair assignment to then produce a correction. We identify the matching of r to p and the subsequent matching of g tog ¯ (due tog ¯ having degree-2) as the assignment of r to g. There are two reasons for this choice. First, such combinations will always arise if a hypergraph matching were translated into a mimic graph matching. Second, one can often find weight-0 alternating cycles on the right hand side (Fig. 5.13). An alternating cycle on a graph G with an existing matching M and weight-sum W is a cycle that visits each node in G at most once (i.e. a simple cycle), once by a matched edge and once by an unmatched edge.

One can produce a new matching M ′ from M by “adding” the alternating cycle, that is by toggling the edges along the cycle between the matched and unmatched states. The weight w of an alternating cycle is the sum of the weights of edges not in M minus the weight of edges in the M, so that M ′ will have weight W + w. Finding weight-0 alternating cycles allow one to remove many of the malformed patterns without increasing the weight-sum. However, adding lowly weighted alternating cycles is necessary if the weight-

73 5 The 2D Colour Code

Figure 5.12: Partial patterns observed in the matching of mimic graphs and their interpretations as corrections: (a) g and b are corrected by joining to other nodes (not shown); (b) g and b are corrected to the closest red boundary; and (c) r, g, and b are corrected by a 3-chain. The existence of patterns on the right in the matching, however, leads to leaving this interpretation invalid: (d) b node is used as part of two corrections, and (e) b node not corrected.

Figure 5.13: Malformed patterns in a mimic graph matching can often be removed by adding a weight-0 alternating cycle, shown as the dashed lines. Adding an alternating cycle to a matching toggles those edges between included and excluded from the matching, yielding a new matching. sum of matching is below that of the true hypergraph matching. Searching for cycles is difficult as one must be careful about breaking existing well-formed patterns. We observe that for the cycles of the from in Fig. 5.13, the searches can be avoided by matching a graph with r and g collapsed into a single node. From this choice of pair assignments, we collapse the rank-3 hypergraph down to a trial graph, as Bob had done previously after receiving Alice’s partial input. This trial graph may be matched efficiently to give a trial solution with some weight-sum Wtrial. A single choice of assignment can go amiss, so we take the solution with the lowest weight-sum over several initial assignments. In ad- dition, there are six simple mimic graph constructions possible—one for each

74 5.4 Hypergraph Mimicry and Pair Assignment permutation of red, green and blue1—and, in general, the minimum-weight matching of each can have a different weight-sum. The variants with the highest weight-sum matching Wmimic are taken to yield matchings that closest approximate the minimum-weight hypergraph matching, and hence give better choices of pair assignment and trial solutions. Only the matchings from these variants are used as choices of pair assignment. This probabilistic method appears to yield near-optimal matchings even as the code word distance in- creases. The reason we assume that higher weight-sum mimic graph matchings give better trial solutions is due to the relative ordering of the weight-sums:

W W W . (5.3) mimic ≤ hyper ≤ trial In general, we do not know the weight-sum of the minimum-weight rank-

3 hypergraph matching Whyper. However, as we have constructed the mimic graph to encompass possible hypergraph matchings, the mimic matching weight- sum is upper bounded by the minimum-weight hypergraph matching weight- sum. Extra freedom from the mimic matching not necessarily being a correc- tion allows for its weight-sum to be lower: W W . Similarly, after mimic ≤ hyper deciding upon a choice of assignment, many potential hypergraph matchings are discarded. Thus all trial matchings must have weight-sum W W . trial ≥ hyper Notice that if Wtrial = Wmimic, the heuristic has not introduced any additional errors over the minimum-weight hypergraph matching; the trial matching itself is a minimum-weight hypergraph matching. It is the number of uncertain matchings we use to gauge the quality of the approximation. We find that using up to 6 25 initial trials, this method has × a 95% probability of recovering the minimum-weight hypergraph matching with certainty from a single time step with (d + 1)/2 errors scattered for large lattices. Taking 6 50 trials does not significantly increase the probability. × From the remaining uncertain cases, the final correction applied typically has a weight-sum only one greater than the mimic matching weight-sum, so that if it were not the hypermatching it at least falls very close. For our simulations, we have chosen 6 25 initial trials. × 1 For the mimic graph permutation we have worked with, we can crudely identify the red-to-pair edge in the mimic graph as the 3-chain. The mimic matching may not be a correction as it allows for blue terminals to be either not corrected, corrected once, or corrected twice (by a 2-chain and a 3-chain). Red and green terminals do not suffer such problems; they will always be corrected exactly once. Thus even the interchange of green and blue can produce different results.

75 5 The 2D Colour Code

5.5 Ideal Threshold Error Rate

We will first seek to determine the threshold under ideal syndrome extraction. That is, every data qubit has a probability p of error (Equation 1.19), but syndrome information is extracted error free. While unphysical, it lends itself to comparison of our approximate method against the desired behaviour. All simulations take place on the triangular lattices of Fig. 5.6.

5.5.1 Direct simulation

We already have the means to simulate the colour code logical failure rates un- der ideal syndrome extraction. As syndrome is reliable, each slice of syndrome may be corrected independently of all other timeslices; we need not consider error chains spanning through time. As the number of different syndrome out- comes is finite, in addition to the usual time to failure simulations, we may also determine the logical error rate per timestep by summing over all possible dangerous syndrome combinations:

Q (d) k (Q k) 2 p¯ (p )= A (k)p (1 p) − , p = p . (5.4) 0 d − 3 0 Xk=0

Here p0 is the physical error rate, Q(d) is the number of data qubits, and

Ad(k) is the number of dangerous syndromes resulting from k errors in the 2 distance-d code. The factor of 3 is due to our error model: only two of the three possibilities X, Y , Z may lead to logical-X failures. For later convenience, we will make the change of variable k (F + k), where F (d)=(d + 1)/2 is the → minimum number of errors required for a distance-d code to fail under true minimum-weight hypergraph matching and ideal syndrome extraction. We will always reference a prefactor Ad(F + k) by its offset k from the expected leading order term.

Q F − (d) F k (Q F ) k 2 p¯ (p )= p A (F + k)p (1 p) − − , p = p (5.5) 0 d − 3 0 k= F X−

The exact value for Ad(F + k) depends on the details of the matching al- gorithm used, and can be obtained in principle by running the error corrector for each possibility. As there are too many error configurations to test, we instead approximate A (F + k) Q r by determining only the ratio of d ≈ F +k k (F + k)-error failures rk from a large¡ random¢ sample.

76 5.5 Ideal Threshold Error Rate

104

20 pth

103 10

102 0.12 0.14 0.16 average time to failure

101 distance 3 distance 5 distance 7 distance 9 distance 11 distance 13 distance 15 100 0.05 0.06 0.08 0.1 0.12 0.14 0.16 0.18 0.2 physical error rate p

Figure 5.14: Average number of error correction rounds before a quantum state suffers a logical failure under error-free syndrome extraction, as a function of the gate error rate p. The minimum p at which successive distance codes intersect is taken to best approximate the asymptotic threshold, pth = 13.3%.

The results in the ideal syndrome extraction limit by direct simulation of the error correction procedure are shown in Fig. 5.14. The data points are obtained from simulations of the code at the given error rates, while the curves are given by Equation 5.5, using our matching algorithm to estimate the prefactors

Ad(F + k). We observe a threshold of pth = 13.3%.

5.5.2 Dangerous syndrome coverage

One can place an upper bound on Ad(F + k), the number of dangerous syn- dromes as a result of F + k errors, under true minimum-weight hypergraph matching. We will assume hypergraph matching for the duration of this sub- section, in particular with regards to dangerous syndromes, and simply refer to it as the matching. By construction of the hypergraph, the matching will correct for all E(d)=(d 1)/2 error cases: A (F +k) = 0, k < 0. Non-trivial − d ∀

77 5 The 2D Colour Code contributions to the logical failure rate start from F (d)=(d + 1)/2, thus:

Q F − (d) F k (Q F ) k 2 p¯ (p )= p A (F + k)p (1 p) − − , p = p . (5.6) 0 d − 3 0 Xk=0 For an F error syndrome to cause failure, all F errors must fall on a single length-d logical operator Oˆd; minimum-weight matching would find it prefer- able to correct the state by applying corrections on the remaining E qubits in

Oˆd, thus performing the logical operation. Thus an upper bound to Ad(F ) can be determined by enumerating all length-d logical operators, then choosing F qubits from each. It is tempting to make the statement that all dangerous syndromes as a result of F + k errors simply stem from a dangerous F -error syndrome and scattering a further k errors. Unfortunately, this simplistic argument is not valid, as dangerous syndrome formed otherwise exist due to the presence of higher length logical operators. One can find counter-examples, and the differ- ence in gradient between Ad(F ) (Fig. 5.15) and Ad(F + k) (Fig. 5.16) further reinforce their presence. We conjecture that all dangerous F +k error syndromes are formed by some combination of F errors on qubits belonging to a single continuous length- (d + 2λ) error chain, then scattering a further k errors onto the remaining qubits, where λ is a constant. A continuous error chain is one which may be derived placing a single error, generating some terminals, then shifting these terminals by the rules of Fig. 5.17. The rules are defined such that any logical operator can be formed in this way. In particular, because length-(d + 2λ) logical operators are formed in this way, the conjecture trivially holds true for the (F + λ)-error case. The conjecture is a constraint on the distribution of errors required for logical failure for a length-d code. For example, not any arbitrary placement of F errors will cause a code to fail, only very select combinations, namely those where the errors occur on qubits belonging to a single length-d logical operator. One can upper bound the number of continuous length-(d+2λ) error chains. We start by placing an initial error on any one of the Q qubits on the lattice, generating up to three terminals. Discarding backtracking, each terminal can be shifted by one of up to 6 rules (Fig. 5.17). Some care should be taken when moving red stabilisers as one has additional options that are not listed. Similarly, minor modifications are necessary when a terminal lies next to a boundary. Regardless, for a continuous length-(d + 2λ) error chain, because

78 5.5 Ideal Threshold Error Rate each shift is accomplished by placing down pairs of errors, one must make a total of (d 1)/2+ λ shifts, shared between the terminals. There are approx- − imately [(d 1)/2]2 ways to divide these shifts between the three terminals. − Thus the maximum number of continuous length-(d + 2λ) error chains is

2 d 1 (d 1)/2+λ N < Q − 6 − . (5.7) d 2 µ ¶ Our conjecture then bounds the number of dangerous syndromes as a result of F + k errors to d + 2λ Q F A (F + k)

Substituting Ad(F + k) back into Equation 5.6, then simplifying using the binomial expansion gives

Q F − (d) d+2λ F Q F k (Q F ) k 2 p¯ (p )

For the case of Ad(F ), the dangerous F -error syndromes are the various combinations of F errors along the length-d logical operators. For a given combination, the continuous error chain covering it is the logical operator from which it was derived. In this case, terminals must always step towards their boundary, narrowing the choices of shifting terminals down to approxi- (d 1)/2 mately 4 − . We can calculate Ad(F ) exactly for hypergraph matching by first enumerating all length-d logical operators, and then find all unique com- binations of F errors. The logical operators themselves can be determined, for example, by deforming some given initial logical operator by the combinations of the stabiliser generators. These results are shown in Fig. 5.15, confirming our bound on Ad(F ) displays the correct asymptotic behaviour.

The higher order prefactors Ad(F +2) and Ad(F +4) are shown alongside the more general theoretical bound in Fig. 5.16. The counts shown in these graphs are taken from the preceding simulations since enumerating quickly becomes

79 5 The 2D Colour Code difficult. The reason for choosing F + 2 is that in the colour code, logical operators have length d + 4n should only contribute to A(F + 2) and higher.

Our results show that the Ad(F + k) gradients agree with the combinatorial error rate, giving the initial conjecture further merit. Unfortunately, due to the approximate nature of our matching, higher length logical operators do in fact contribute to Ad(F + 1) and even Ad(F ), so that they too display the (d 1)/2 same 6 − growth rate. It is not necessary to determine the prefactor in the logical error rate (Equa- tion 5.11) with a great deal of precision to calculate an asymptotic threshold; the complexity itself is sufficient. An asymptotic threshold is obtained by com- paring the logical error rates of successive distance codes in the limit of large distance whereupon all polynomial factors in d disappear. p¯(d+2) 1 = lim (5.12) d (d) →∞ p¯ 3 1 p = = 6.25% (5.13) th 2 6 22 · Fig. 5.18a shows the average lifespan of a over different distances using Equation 5.11. However, we have already observed that the (d 1)/2 prefactors A (F + k) follow two different growth rates—O(4 − ) for k d ≤ (d 1)/2 1, and O(6 − ) for k 2—hence one should not so readily simplify the ≥ equation. Applying Equation 5.6 with the additional clamping of A (F + k) d ≤ Q F +k gives Fig. 5.18b. This leads to fluctuating pseudo-thresholds. ¡ These¢ results rest on the initial conjecture, from which we have deduced the growth rates of Ad(F + k). Simulation results appear to follow the predicted growth rates. However, it remains to be rigorously proved that some constant λ exists for all d, at least on this geometry, from which a lower bound to the threshold evidently follows.

5.6 Simulation Results

Our approximate matching method appears to give good results under ideal syndrome extraction, with the number of dangerous syndromes from F + k errors closely resembling our predictions. We now apply the method to deter- mine the threshold value under realistic syndrome extraction. We shall again employ the depolarising noise model (Equation 1.20). A single simulation instance proceeds as follows. First, the quantum com- puter is initialised perfectly in the simultaneous +1 eigenstate of every sta-

80 5.6 Simulation Results

d (d-1)/2 d Ad(F ) 8 O(2 4 ) 10 counts 3 21 106 5 332 7 5807 104

9 100,120 102

11 1,671,668 number of dangerous syndromes 100 13 27,227,258 1 3 5 7 9 11 13 15 distance

Figure 5.15: The leading contribution to the logical error rate, Ad(F ), when using minimum-weight hypergraph matching grows exponentially with the dis- tance d of the code. These results were obtained by counting the length-d logical operators and determining unique combinations of F errors lying along a single logical operator.

1010 1012 O(2d 6(d-1)/2) O(2d 6(d-1)/2 (Q-F choose 1)) counts 10 counts 8 10 10

108 106 106 A(F) 104 A(F+1) 104 2 10 2 10

100 100 1 3 5 7 9 11 13 15 1 3 5 7 9 11 13 15

1014 1016 O(2d 6(d-1)/2 (Q-F choose 2)) O(2d 6(d-1)/2 (Q-F choose 4)) 14 1012 counts 10 counts 1012 1010 1010 108 108 6

A(F+2) 10 A(F+4) 106 104 104 2 10 102 100 100 1 3 5 7 9 11 13 15 1 3 5 7 9 11 13 15

Figure 5.16: Horizontal axis is the distance d. The number of dangerous syndromes as a result of exactly F + k errors when using the approximate (d 1)/2 d Q F matching method outlined in Section 5.4 grows as O 6 − 2 −k . The complexity is determined analytically. ¡ ¡ ¢¢

81 5 The 2D Colour Code

Figure 5.17: Rules for shifting terminals amongst same colour plaquettes. Each move requires exactly two errors, shown as the shaded qubits. Green and blue terminals share the same rules. Red terminals have some additional two-step rules. In addition, extra choices are possible near the boundary. biliser generator. At each timestep, each qubit has a probability p of a mem- ory error, then the syndrome information is extracted simultaneously over the entire surface. The X-syndrome (Z-syndrome) is extracted from red stabilis- ers by preparing the ancilla positioned within each red stabiliser in the 0 | i state ( + state). Next, four cnot gates are applied between the ancilla and | i the surrounding data qubits, directed inwards (outwards). The qubit is finally measured in the Z basis (X basis). A coloured plaquette syndrome is extracted by first preparing a 4-qubit cat-state using the circuit shown in Fig. 5.19b. Each qubit in the cat-state interacts with two distinct data qubits in that sta- biliser, and is measured independently. These four sub-processes are executed simultaneously. The four measurements are combined to give the parity of one 8-qubit stabiliser. Further details of syndrome extraction are available in[51]. The simulation cycle is entirely equivalent to that of the planar code. At each timestep, one collects an additional slice of syndrome information using error-free syndrome extraction circuits. This is appended to the 3D struc- ture of eigenvalue changes for error correction. Graph matching yields a set of corrections, and we check for logical failure under this ideal case. If error recovery is successful, the additional error-free syndrome is reverted and rec- ollected using error-prone circuits, and the cycle repeats. Otherwise, the cycle terminates, and we output the time of failure. Using this procedure, the average life expectancy of a logical state is shown (Fig. 5.20a). The vertical axis is measured in number of syndrome extraction cycles. One cycle consists of both X and Z syndrome measurements, and each basis takes 8 units of gate time. The error bars shown are the standard deviation in the value after averaging over a large number of failure times. Also shown is the average lifespan of a single non-error-corrected qubit, t = 1 p. h i 16

82 5.6 Simulation Results

1000 distance 3 distance 5 distance 7 distance 9 distance 11 distance 13

100

10 average time to failure (arb)

1 0.03 0.04 0.06 0.08 0.1 physical error rate p (a) First order terms only.

1000 distance 3 distance 5 distance 7 distance 9 distance 11 distance 13

100

10 average time to failure (arb)

1 0.03 0.04 0.06 0.08 0.1 physical error rate p (b) Higher order terms included.

Figure 5.18: Analytic time to logical failure under error-free syndrome extrac- tion when (a) first order terms only, and (b) higher order terms are used to calculate the logical error rate. The asymptotic threshold is pth = 6.25%. The different growth rates of A (F + k) for k 1 and k 2 lead to the fluctuating d ≤ ≥ pseudo-thresholds observed in the latter case.

83 5 The 2D Colour Code

1 0 H  | i • × • × • × • × 2 FE 2 3 0  1 3 | i × • 5 4 0  4 | i × 0  5 | i × 0  | i ×

(a) Physical layout of qubits (b) Circuit to fault-tolerantly prepare a and interactions (lines). four qubit cat-state in qubits 2–5.

Figure 5.19: Circuit to fault-tolerantly prepare a four qubit cat-state, which is used to measure the parity from octagonal plaquettes. Each ancilla qubit in the cat-state interacts with two data qubits in the plaquette and measured. The four measurements combine to give the eigenvalue.

There are two significant features. Firstly, the gradients of the curves at low error rates are problematic. Despite the distance-3 colour code being identical to the 7-qubit Steane code (the two codes have the same stabilisers), the topological method of dealing with errors during syndrome extraction coupled to our rather simplistic weighting of error chain segments results in the colour code offering no benefits over unerror- corrected qubits. Furthermore, codes of distance-5 to distance-9 ultimately only protect against single errors, much lower than one would hope. This behaviour is reminiscent of the work in Chapter 3, further exaggerated due to the larger stabilisers in the colour code. Nevertheless, we gain confidence in the method from the fact that higher distance codes improve upon lower distances; there are fewer combinations of two errors causing a distance-7 code to fail than for distance-5, and fewer yet again for distance-9. In light of this, we assert that higher distance codes will eventually be able to correct more errors under the error correction method presented. One may repeat the work of Chapter 3 on the colour code to make full use of the code distance, but that has not yet been attempted. Secondly, the intersections of successive distance codes move leftwards mak- ing it difficult to quote a threshold value. This is not wholly unexpected. It is in part is due to the presence of boundaries of the lattice—simulations on the planar code show similar trends, but the toric code does not—and is again exaggerated in the colour code. Moreover, we have also seen similar behaviour in Section 5.5.2.

84 5.7 Conclusion

Due to computing limitations, we are unable simulate higher distance codes in this manner. However, we need not despair. Though we typically simulate time to failure—it shows the true error correcting potential in the low p limit— it is computationally intensive. Instead, one can determine the logical error ratep ¯ by limiting simulation to exactly d timesteps. The results are shown in Fig. 5.20b. Following the work of[41], quadratic curves are fit around the threshold error rate, obeying

ν ν 2 p¯ = A + B(p p )d− + C (p p )d− . (5.14) − th − th £ ¤ This second approach provides a threshold of p = 0.10 0.01%. The error th ± bar comes about from the final fit. Close observation again shows fluctuating pseudo-thresholds.

5.7 Conclusion

We have generalised the error correction methodology of planar codes to the colour code. The method requires a rank-3 minimum-weight hypergraph match- ing algorithm, efficient algorithms of which are not known. Nevertheless, we devised an approximate but efficient approach based on matching carefully constructed graphs. Using this approach, we find that the threshold error rate for the 2D colour code to be p = 0.10 0.01%. th ± We have not yet incorporated error propagation during syndrome extraction, nor more advanced assignment of edge weights. These can potentially raise the threshold, as we have already seen for the planar code in Chapter 3. The method is applicable to other 3-colour codes. It would be interesting to see if the approximation produces a threshold value for the honeycomb colour code in agreement with[143].

85 5 The 2D Colour Code

106 distance 3 distance 5 distance 7 distance 9 105 no error correction

104

103

average time to failure 102

101

100 1 × 10-4 3 × 10-4 5 × 10-4 1 × 10-3 3 × 10-3 5 × 10-3 physical error rate p (a) The average time to logical failure of a quantum memory.

0.1 distance 5 distance 7 distance 9 distance 11

0.08

0.06

pth = 0.10%

0.04 logical error rate

0.02

0 5 × 10-4 7 × 10-4 1.0 × 10-3 1.3 × 10-3 1.5 × 10-3 physical error rate p (b) The logical error rate of a quantum memory.

Figure 5.20: The average time to failure and the logical error rate of a quantum memory as a function of the gate error rate p. Time is measured in number of syndrome extraction cycles. The threshold error rate is p = 0.10 0.01%. th ±

86 6 Order-Finding and Matrix Product States

In the previous Chapters, we considered issues of quantum error correction for scale up of a quantum computer. We now look at the next level of quan- tum algorithms. In this Chapter, we focus our attention on Shor’s factoring algorithm[9, 10]. We show that the matrix product state formalism (MPS)[52] is particularly well suited to simulating this problem, requiring considerably less memory than under the amplitude formalism. One can simulate systems with as many as 36 qubits and factorise numbers as large as N = 4087 on a single process with 2GB RAM using MPS. In comparison, the same simulation under the amplitude formalism requires 1TB RAM, only possible with massive parallel computers[150]. 42 qubit simulations (N = 16351) are possible on a single process with 32GB RAM under MPS. This equals the record[151] run on an amplitude formalism simulator with 64TB RAM. We expect MPS based simulations of Shor’s algorithm to be easily parallelised, and ultimately be able to simulate far larger systems than amplitude formalism simulators. We review Shor’s factoring algorithm in Section 6.1. We review MPS and analyse the states produced by the algorithm in Section 6.2. Our implemen- tation is described in Section 6.3. We discuss a possible multi-process MPS implementation in Section 6.4.

6.1 Review of Shor’s Algorithm

Let us review Shor’s algorithm[9, 10]. Given an l bit number N = p q, where × the integers p and q are co-prime, the task is to determine the factors p and q. For large N, this is difficult to accomplish classically. A common method is to reduce the factoring problem to an order-finding problem: for a given integer x, where 1

87 6 Order-Finding and Matrix Product States the smallest positive integer satisfying

xr 1 (mod N). (6.1) ≡ It can be shown that for even valued r and xr/2 = 1 (mod N), at least one 6 − of gcd(xr/2 1,N) and gcd(xr/2 +1,N) is a factor of N. The greatest common − divisor gcd(a, b) of two integers a and b may be calculated efficiently classi- cally by Euclid’s algorithm. However, there is no known classical algorithm to efficiently determine the order parameter. An efficient quantum circuit exists (Fig. 6.1), enabling a quantum computer to factorise N in polynomial-time. The algorithm is summarised below, following[6]:

1. If N is even, return the factor 2.

2. If N = ab for integers a 1 and b 2, return the factor a. ≥ ≥ 3. Randomly choose x in the range 1 1, − return the factor gcd(x, N).

4. Use the order-finding subroutine to find the order r of x modulo N.

5. If r is even and xr/2 = 1 (mod N), compute gcd(xr/2 1,N) and 6 − − gcd(xr/2 + 1,N), and check for a non-trivial factor.

6. Otherwise the algorithm fails. This occurs with low probability, and repeating the algorithm with a different x has a high chance of success.

Let us review the order-finding circuit in detail (Fig. 6.1). The circuit con- sists of 3l qubits divided into two registers: the upper 2l qubits are initialised in 0 , and the remaining l qubits initialised in 1 , | i | i ψ = 0 1 . (6.2) | 0i | i | i Hadamard gates are applied to every qubit in the top register, creating an even superposition of all states. Neglecting normalisation constants,

22l 1 − ψ = i 1 . (6.3) | 1i  | i | i i=0 X   1This is different from the range given for x in the definition of the order parameter because x = N 1 will only find the trivial factors of N: (N 1)2 = 1 (mod N). In other words, − − r = 2. It follows that step 5 computes gcd(N 2, N) = 1 and gcd(N, N) = N. −

88 6.1 Review of Shor’s Algorithm

q2 0 H | i • q1 0 H QFT† | i • q0 0 H | i • R 1 / U 1 U 2 U 4 | i (a) (b) (c)

Figure 6.1: Schematic of the order-finding circuit which efficiently determines the order parameter r. To factorise an l bit number N, one uses an upper reg- ister with 2l qubits, a lower register R with l qubits, and U a = ax mod N | i | i for some integer 1

The controlled-unitaries act on the lower register only when the control qubit is 1 (i.e. 0 a + 1 b 0 a + 1 U b ). The unitary U performs | i | i | i | i | i → | i | i | i | i U a = ax mod N . (6.4) | i | i The unitaries are applied in increasing powers of two, so that the qubit i representing 2i applies U 2 . Thus this sequence creates the state

22l 1 − ψ = i U i 1 (6.5) | 2i | i | i i=0 X 22l 1 − = i xi mod N . (6.6) | i i=0 X ¯ ® As an example, take the case N = 15,¯ x = 7. The result of xi mod N is 1, 7, 4, 13, 1, 7, 4, 13, . Hence ··· ψ = 0 1 + 1 7 + 2 4 + 3 13 | 2i | i | i | i | i | i | i | i | i + 4 1 + 5 7 + 6 4 + 7 13 + . (6.7) | i | i | i | i | i | i | i | i ··· This example illustrates how the order parameter manifests itself. It is the number of unique values generated by xi mod N, which are stored as the non- trivial states in the lower register. It is also the period of the sequence, which is observed as the frequency of states in the upper register for a given state in the lower register. The final inverse quantum Fourier transform (QFT†) extracts the order parameter from this frequency. To see this, it is convenient to first measure the lower register, although this is not strictly necessary for the algorithm to work. Say we measured 7 in the lower register, giving | i ψ =( 1 + 5 + 9 + 13 + ) 7 . (6.8) | 3i | i | i | i | i ··· | i

89 6 Order-Finding and Matrix Product States

The upper register contains 22l/r non-trivial states, spaced regularly. The inverse QFT is then applied to the upper register. This is represented mathe- matically by the substitution

22l 1 − 2l 1 2πijk/2 j e− k . (6.9) | i → √22l | i Xk=0 For the case where r divides 22l exactly, one finds non-trivial probability of measuring states that are integer multiples of 22l/r. There are r such states (Fig. 6.2a). In general, r does not divide 22l exactly, and one will instead observe high probability densities near states that are integer multiples of 22l/r (Fig. 6.2b). Note that the peaks do not necessarily all have the same probability. In both cases, measuring the upper register has high probability of collapsing the superposition to a state with value i/r for i , exactly or approximately. ∈Z This can be processed into r via the continued fractions algorithm. For exam- ple, if we measure the state 64/256 = 1/4, we recover r = 4, and the factors gcd(74/2 1, 15) = 3 and gcd(74/2 + 1, 15) = 5. − It is possible to construct circuits to efficiently perform all powers of U[152, 153] and the final inverse quantum Fourier transform[154]. Therefore a quan- tum computer can efficiently determine the order parameter r, and hence fac- torise large numbers. We reiterate that there is no known classical algorithm to determine the order r, and therefore any classical simulation of Shor’s al- gorithm is expected to be inefficient.

6.2 Matrix Product States and Space Complexity

One can write a general quantum state ψ as | i

ψ = αabc a b c . (6.10) | i ··· | i | i | i · · · X Here a , b , c are the bases of the subsystems of the state. A state vector | i | i | i simulator (using the amplitude formalism) simply allocates space for all coef- ficients. It requires space governed only by the size of the system, regardless of the state stored; an n qubit state will always consume 2n complex values. Matrix product states (MPS)[52] are a different way to store general states, where the space required grows as the state becomes entangled. The state of

90 6.2 Matrix Product States and Space Complexity

0.30

0.25

0.20

0.15 probability 0.10

0.05

0.00 0 64 128 192 measurement outcome (a) N = 15, l = 4, x = 7, and r = 4.

0.20 679 683 687

0.15

0.10 probability

0.05

0.00 0 171 341 512 683 853 measurement outcome (b) N = 21, l = 5, x = 5, and r = 6.

Figure 6.2: The probability distribution for the states in the upper register after completing the order-finding circuit (Fig. 6.1) for (a) N = 15, x = 7; and (b) N = 21, X = 5. High probability densities are observed around states which are integer multiples of 22l/r. Inset: magnification of the probability distribution around 683.

91 6 Order-Finding and Matrix Product States a composite system may be written as AB

ψ = λ i i . (6.11) | i i | Ai | Bi i X i and i are the generalised basis states for systems and respectively. | Ai | Bi A B i is related to the computational basis by some transformation matrix A; | Ai the basis vectors Ai are columns of A. Similarly, there is a transformation matrix B for i . λ is a complex valued scalar which may be absorbed into | Bi i the basis vectors. When i and i are the orthonormal eigenvectors of their | Ai | Bi respective systems with eigenvalues λi, this is known as Schmidt decomposition. One can imagine further decomposing the systems and down to individ- A B ual qubits and qudits (recall that qudits are d-level generalisations of qubits; it is convenient to regard an entire register of qubits as a single qudit). This is the basis for MPS. The bases will in general be matrices, so that one can write the amplitude α of the state abc as a product of matrices A B C . abc | i a b c A general state is

ψ = A B C abc . (6.12) | i a b c · · · | ···i X Single-qudit gates U1 are applied by mapping U1 between corresponding el- ements of the bases of that qudit only. This is unlike a state vector simulator where one maps U1 over the states of the entire system. Consider applying U to a qudit in the state ψ under both state vector and MPS simulators. 1 | i Consider the same operation now applied to the state with an additional un- entangled qubit, ψ 0 . The state vector simulator takes twice the time to | i | i perform the operation due to the increased size of the Hilbert space. In con- trast, the MPS simulator takes equal time. A two-qudit gate U between neighbouring qudits and can be performed 2 A B by applying the equivalent single-qudit gate to the combined system = C AB with bases C = A B . After the gate has been applied, one can separate ab a b C back into its composite qudits using a matrix factorisation algorithm on an appropriately arranged matrix (Equation 6.13). Swap gates allow arbitrary pairs of qudits to interact, thus arbitrary multi-qudit gates can be performed.

C C A 00 01 ··· 0 C10 C11  = A1 B0 B1 (6.13) . . ···. . ···  . . ..  .  h i        

92 6.2 Matrix Product States and Space Complexity

qubit q0 q1 q2 rank1 2 2 1 1 0 1 0 1 0 √2 0 0 0 | i  0 1   0 0   0  1 √2 0 1 1 | i      

Figure 6.3: One possible MPS representation of ψ = 1 ( 000 + 111 ). | i √2 | i | i

The rank k of a matrix is the number of linearly independent rows (or equivalently columns). Rank-revealing decompositions such as the singular value decomposition (SVD) and the pivoted QR decomposition are beneficial as it minimises the storage space: the m n matrix is decomposed to a pair × of matrices with dimensions m k and k n. However, they are not strictly × × necessary and when the matrix is suspected of having rank k min(m, n), ≈ one could use the trivial decomposition

Am n In n, m n × × Am n = ≥ . (6.14) ×  Im m Am n, m

ψ = i xi mod N (6.15) | 2i | i i Xr 1 ¯ ® − ¯ = jr + i xi mod N . (6.16) | i i=0 Ã j ! X X ¯ ® ¯ This expression is a sum over the r unique values in the lower register, and corresponds to decomposing the state into its two registers. Continuing the

93 6 Order-Finding and Matrix Product States

N = 15, x = 7 example above,

0A 0B 1A 1B | i | i | i | i ψ = ( 0 + 4 + ) 1 + ( 1 + 5 + ) 7 | 2i | i | i ··· | i | i | i ··· | i +(z2 + }|6 + ){ z}|{4 +( + }|7 + ){ z}|{13 . (6.17) | i | i ··· | i | i | i ··· | i 2A 2B 3A 3B | i | i | i | i | {z } |{z} | {z } |{z} A rank-revealing decomposition separating the state into a 22l-dimensional qudit (upper register) and an N-dimensional qudit (lower register) will find the rank is exactly the order parameter r. This single decomposition reduces the storage space from 23l to 22l r + N r complex numbers. The upper register × × can be further decomposed into the 2l qubits, each with two bases represented by matrices with dimensions no greater than r r. The lower register contains × only r non-trivial values thus requires r basis vectors. Therefore only O(2l 2r2) · space is required to represent the state before the Fourier transform. At this point, the lower register can be measured and discarded, so that only 2l qubits remain. In the worst case, taking the Fourier transform will result in a state represented by O(22l) complex numbers. This could be achieved, for example, by merging together all of the qubits, whereupon MPS reverts to a standard 2l qubit state vector. Therefore, factorising an l-bit number N with order r under MPS requires O(max(2l 2r2, 22l)) space. The order r is strictly less than N, and typically · much smaller, considerably reducing the memory requirements. Note that it is exceedingly rare to have r< ln N[155]. However, it is interesting to observe that in such cases, one can efficiently simulate Shor’s algorithm by using the semi-classical quantum Fourier transform[156, 157].

6.3 Implementation and Benchmarks

The lower register R is stored as an N-dimensional qudit rather than l qubits to reduce time spent on matrix decompositions. It will always be placed at the rightmost end of the MPS, thus its bases are column vectors. The r non-trivial basis vectors require O(r2) storage space.

The upper register is decomposed into qubits. A qubit qi, 0 i < 2l, is i ≤ shifted to the left of R to control the gate U 2 . The qubit which most recently interacted with R will be furthest to the right. Upon completion, the control qubits will be arranged in the order of application (Table 6.1).

94 6.3 Implementation and Benchmarks

MPS Ordering 1 (a) U q1 q2 q0 R 2 (b) U q2 q0 q1 R 4 (c) U q0 q1 q2 R

Table 6.1: Internal qubit order is important in MPS as only neighbouring qudits may interact with one another. Qubits are reordered as shown to apply the indicated gate. Qubit and gate lettering correspond to those in Fig. 6.1.

Consider the combined m n matrix C after applying a controlled-U and × awaiting the decomposition C = AB (Equation 6.13). The upper and lower halves of A give the bases for the control qubit, and the columns of B are the basis vectors of R. Recall that the rank k of C is exactly the number of non-trivial basis vectors in R. This is equal to the number n of non-trivial columns in B. Hence the trivial decomposition—although not rank-revealing— will nonetheless give optimal space performance. A typical cross-section of the matrix ranks after each controlled-U is applied is shown in Table 6.2 (N = 65, x = 2, l = 7). The second value from the right in each row of Table 6.2 is the rank between the upper and lower registers. The order parameter r appears after all controlled-Us have been applied, as expected. Note also the final order of the qubits in the upper register, which is imposed by the order in which the controlled-Us are applied. In this example, the 3l = 21 qubit state is stored using O(3000) complex numbers—a vast reduction from the 23l 2 106 for a general state vector. ∼ × The time required to apply a controlled-U is dependent on the size of the combined control qubit and lower register system only, not the entire system. This is possible for two reasons. First, the control qubit starts in a prod- uct state so may be moved and combined with the lower register with ease. Second, after the interacting systems are combined, the multi-qudit gate trans- forms only the bases of the combined system. Therefore the time to apply a controlled-U depends only on the rank between the upper and lower registers. In light of this, it is advantageous to keep the ranks low for both memory and speed. The ranks depend on the order in which the qudits are arranged. Since the controlled-Us commute, they may be reordered, which in turn gives a different final ordering amongst the control qubits and hence different ranks.

95 6 Order-Finding and Matrix Product States

q2 q1 q2 q2 H 1 H 1 H × × × q1 q2 q0 q1 q1 2 q0 • × × q2 • × q0 • × ×

Figure 6.4: Quantum Fourier transform under MPS. Controlled-phase gates performing 11 exp(iπ/2n) 11 is denoted as the number n in a square. | i → | i The final swaps are performed classically. Boxed: two-qubit gates performed back-to-back can be separated at the end with a single matrix decomposition.

While all orderings of the Us are permissible, for the sake of applying the forthcoming Fourier transform, we compare only two cases: applying Us in increasing and decreasing powers of two, leading to ordered qubits q0, ,q2l 1 ··· − and reverse ordered qubits q2l 1, ,q0 respectively. − ··· It is never worse and often better to apply Us in decreasing powers of two. i i The reason is that the sequence generated by U 2 = x2 mod N,i 0 will ≥ eventually lead to a cyclic subsequence. For example, N = 65, x = 2 this sequence is 2, 4, 16, 61, 16, 61, . Applying in increasing powers saturates the ··· rank to r in the fewest number of steps, which occurs just before cycle repeats. In contrast, applying U in decreasing powers leads to performing the same operations on R until the very end. Since the same operation will tend to populate the same states in R as previous applications, this leads to a slower increase in ranks. The rank between the registers reaches r once all unique unitaries have been applied. Table 6.3 shows the rank cross-section. The same state as Table 6.2 is stored using O(500) complex numbers, simply as a result of the different final ordering amongst control qubits. One can further improve on the required space by employing sparse matrices. It is easy to observe the sparseness from our use of the trivial decomposition. For the N = 65, x = 2 example, the decomposed matrices contain O(100) non- trivial entries in total, storing a state with 22l 16000 non-trivial amplitudes. ∼ One can show that only O(2lr) space is required when using sparse matrices and the trivial decomposition to represent the state. The lower register is now measured out, reducing the system to 2l qubits. Measurement collapses the state, resulting in potential reductions to the ranks. We apply the pivoted QR decomposition algorithm across the MPS to minimise space (QR decomposition is faster than SVD). The inverse QFT can be performed on a MPS simulator in a similar man-

96 6.3 Implementation and Benchmarks

Increasing Unitary Order U 1 1 1111 1 21 ··· U 2 1 1111 2 41 ··· U 4 1 1112 4 81 ··· U 8 1 112 4 8 121 ··· U 16 1 1 2 4 8 12 12 1 ··· U 8192 1 2 4 8 12 12 12 1 ··· Table 6.2: The ranks in the MPS state after applying all gates up to and including the indicated controlled-unitary for N = 65, x = 2, l = 7. The second last number in each row governs the size of the lower register, and the execution time of the unitary. The underlined value is the order parameter r. The final order of qubits is q ,q , ,q . 0 1 ··· 13

Decreasing Unitary Order U 8192 1 11 1 1121 ··· U 4096 1 11 1 1231 ··· U 2048 1 11 1 2331 ··· U 4 1 2 33 33 3 1 ··· U 2 1 2 33 33 6 1 ··· U 1 1 2 33 3 6 12 1 ··· Table 6.3: Applying the controlled-unitaries in decreasing powers of two lead to equal or lower ranks across the MPS than before, thus improves performance. The case in Table 6.2 can be completed using only a fraction of the memory and time. The final order of qubits is q ,q , ,q . 13 12 ··· 0

97 6 Order-Finding and Matrix Product States ner to a one-dimensional quantum computer (Fig. 6.4). The final swaps only change the order in which qubits are interpreted and can be performed clas- sically. The controlled-phase gates and subsequent swaps are combined into a single decomposition. We expect the ranks between qubits to be near maxi- mum after the QFT, thus we shall simply use the trivial decomposition. Table 6.4 shows the CPU times in seconds to simulate Shor’s algorithm for various N and r from the beginning up to the three distinct stages in the algorithm: t1 to apply all controlled-Us, t2 to measure the lower register and minimise the ranks, and t3 to complete the algorithm. As the memory and time depends heavily on r, x is chosen to maximise r for the given N. All simulations use a single core and double precision complex numbers; the l = 12 case would require 1TB RAM on a standard state vector simulator. The l 12 ≤ cases were run on a laptop (Intel Core 2 Duo P8400 @ 2.26GHz, 2GB RAM), and the l 13 cases on a cluster (AMD Opteron @ 2.5GHz, 32GB RAM). For ≥ comparison, l = 12 cases take 970s (IBM Regatta p690+, 512 processes) and 170s (IBM BlueGene/L, 4096 processes) on very highly parallelised amplitude formalism simulators[150], corresponding to days in CPU time. MPS is well suited to simulating the order-finding circuit up to the measure- ment. Measurement of the lower register requires the probability associated with each state i, which can be calculated from first principles as shown below2. for dense n n matrices is between O(n2) and O(n3), × making this take considerable time. However, sparse matrices can improve the speed significantly.

2 pr(i)= αab i = Ri† Bb† Aa† Aa Bb Ri (6.18) | ··· | ··· ··· ( " Ã a ! # ) Xb X After measurement, it is faster in most cases to convert the state to the amplitude formalism, again due to the complexity of matrix multiplication. For example, converting the 2l qubit state in the l = 12 case takes 15s, and performing the QFT takes a further 10s, far less than the 220s used for MPS. A hybrid approach is also possible. One can arrange the QFT into 2l subcircuits, where each subcircuit involves one more qubit than its predecessor. Each sub- circuit is applied as a single gate, and the qubits involved are not decomposed after the operation. Thus each subsequent subcircuit can be performed by

2 One can enforce a Aa† Aa = 1 for all qubits, thus allowing the probabilities to be calcu- lated locally. However,P this requires one use more complex decompositions (e.g. SVD).

98 6.4 Multi-Process MPS

l 11 12 13 14 N 2047 4087 8189 16351 (23 89) (61 67) (19 431) (83 197) × × × × x 3 2 10 2 r 88 660 3870 8036

t1 0 0 4 4

t2 0 6 7669 16, 093

t3 9 228 27, 524 48, 909

Table 6.4: CPU time in seconds to execute the order-finding circuit (Fig. 6.1) from the start to: t1 complete all controlled-Us; t2 measure out the lower register; and t3 complete the entire circuit. x is chosen to maximise the order r for the given N. r determines the size of the matrices before the QFT. combining a single qubit. Upon completion, a single 22l-dimensional qudit re- mains (i.e. a 2l qubit state vector). This approach has not been implemented. It is also possible to use the semi-classical quantum Fourier transform[158] to improve the final step[156, 157]. However, this has not been done as one cannot extract the probability distribution of the upper register.

6.4 Multi-Process MPS

We have seen that simulations of Shor’s algorithm on a single process benefits immensely from storing the state as a MPS, arising from the reduction in mem- ory requirements from the symmetry of the problem. However, large systems will ultimately be memory limited, which is typically resolved by distributed computing. We argue that MPS is well suited to this regime. Sets of data that are considered large are spread across many processors which communicate with one another through a network. The Message Pass- ing Interface (MPI)[159] is a standard to manage interprocess communications and commonly used in large scale scientific computing. Interprocessor com- munication is slow and is a major factor in limiting scalability. The matrices associated with the qudits are divided and distributed to the processes. For low dimensional qudits with bases represented by matrices Aa, one can arrange for the (i, j) element of Aa to be located on the same process for all a. In this way, single-qudit gates on these qudits can be performed

99 6 Order-Finding and Matrix Product States without any interprocess communication and thus are trivially parallel. For high dimensional qudits, not only are the matrices themselves divided, the different states of the qudit is also divided amongst the processes, similar to multiple process state vectors[150]. For example, an n dimensional qu- dit with matrices A , 0 a < n, might store the first n/2 matrices in half a ≤ of the processes, and the remaining matrices in the other processes. Inter- process communication is required when interacting data stored across many processes. If the qudit were composed of many qubits, then a single qubit operation on the most significant bit would require communication. This is analogous to performing operations on “non-local” qubits in[150], thus should scale similarly. Parallel matrix multiplication routines exist[160], allowing one to combine neighbouring qudits, and to compute the amplitudes and probabilities for mea- surement. The trivial decomposition is used for the majority of the algorithm is also trivially parallel. Matrix factorisation routines working on distributed matrices exist[161] which may be used after measurement to reduce space. The above accounts for all the necessary functionality for a MPS simulator. As our simulations make extensive use of trivially parallel code, it should exhibit good scalability.

6.5 Conclusion

We have shown that matrix product states benefits greatly from the group symmetry of the order-finding problem. In order to factorise a l bit number N with order r, a MPS approach reduces the space complexity from O(23l) to O(max(2l 2r2, 22l)). This is a significant improvement as r is typically much · smaller than N, allowing one to simulate circuits with as many as 36 qubits on standard laptops. Our largest simulation of 42 qubits required less than 32GB RAM, and is still within reach of single processors. We have described how MPS can be parallelised using MPI. The core func- tions of a MPS simulator are local matrix manipulation (single qudit gates), non-local matrix multiplication (combining neighbouring qudits, computing amplitudes), and matrix decompositions. All of these operations may be par- allelised. Further memory reduction is possible by employing sparse matrices; the state prior to the Fourier transform can be stored using O(2lr) space, reduc-

100 6.5 Conclusion

2l 2 ing the overall space complexity to O(2 ), only 3 the space compared to a traditional state vector simulator. We have also discussed improvements for performing the quantum Fourier transform under MPS. One can incorporate errors into the simulations, which are not accounted for in our space analysis. However, for low error rates, one expects small deviations from the ideal case.

101 6 Order-Finding and Matrix Product States

102 7 Summary and Conclusions

It is widely accepted that large-scale quantum computation will necessarily employ some form of quantum error correction to mitigate the effects of deco- herence. In this Thesis, we have investigated the topological family of quantum error correcting codes. We also considered how to more efficiently simulate quantum algorithms on classical computers to by applying the MPS formal- ism. This enables one to more feasibly study the effect of errors on algorithms and determine how much error correction to employ on a real-life quantum computer. Chapter 2 provided a review of the toric and planar codes, two of the sim- plest topological quantum error correcting codes. We described the error cor- recting methodology based on graph matching. This was used to verify the threshold pth = 0.75%, an important result as this value was far greater than concatenated error correcting codes. In Chapter 3, we improved on the error correcting methodology described above. We showed that the standard metric used for calculating separation between syndrome changes lead to a distance-d code only reliably correcting for (d 1)/4 or fewer errors, whereas one expects to correct up to (d 1)/2 ⌊ − ⌋ ⌊ − ⌋ errors. The use of a new metric remedies this primarily low error rate concern.

We further refine the metric, and find that a threshold of pth = 1.1%. This metric is easily adapted to different physical systems with different parameters for memory, measurement, and two-qubit gate error rates. While the calculation of a threshold is important to verify the practicality of a particular scheme, for topological codes, the method for error correction is itself critically important. The method, whether by graph matching or otherwise, is performed on a classical computer running in conjunction to the quantum computer and thus must be efficient. The problem must be solved in time proportional to the syndrome extraction time, so that the result is known when the quantum computer seeks to apply a non-Clifford group gate. Furthermore, the time must depend only on the density of syndrome changes

103 7 Summary and Conclusions

(or, equivalently, the error rate) and not the total number of syndrome changes. In this way, a classical processor can be allocated its own region of the lattice to correct, with some communications between neighbours as required, and the error correcting problem can be solved in constant time as the size of the lattice is increased[162]. Chapter 4 takes the planar code and applies it in the context of quantum communication. We show that one can overlay the planar code lattice over a linear chain of repeater stations spread over a long distance, with a number of Bell pairs connecting neighbouring stations growing logarithmically with this distance. This simultaneously allows the transmission of quantum information and provides error correction. One of the characteristics of topological codes is local stabiliser generators, thus syndrome measurements can be measured using local interactions only. This in turn means that quantum information is sent at a rate limited by the local gate speed only. Simulations show that our scheme is practical if Bell pairs are created between neighbouring stations with heralded success probability SB & 0.70 and fidelity F & 0.96. In Chapter 5, we adapted the error correction method introduced for the planar code to the 2D colour code. The primary interest in the colour code is its ability to implement all Clifford group gates transversely, and its topological nature spurs hopes for a possible high threshold. The fundamental difference between planar code and colour code is that a single error in the bulk generates three syndrome changes instead of two. At first glance, this appears to only be a minor difference. However, this means that two-terminal error chains in the planar code become many-terminal error chains in the 2D colour code. In general, a minimum rank-3 hypergraph matching algorithm is required for error correction. Efficient hypergraph matching algorithms do not exist, hence we devise an approximate method for error correction, which leads to a threshold of pth = 0.1%. In Chapter 6, we analysed the space requirements of Shor’s algorithm for integer factorisation when the states are stored as a matrix product state. The problem of factorising an l-bit integer N is reduced to finding the order parameter r. We found that the structure of the states produced by the order- finding circuit before the quantum Fourier transform is well behaved, and requires only O(2l r2) when represented as a MPS. Afterwards, l qubits can · be measured and discarded, leading to applying the Fourier transform on 2l qubits only, and thus an overall space complexity of O(max(2l r2, 22l)). This ·

104 enabled us to simulate a 42 qubit circuit using only 32GB RAM, meeting the current record performed with far greater resources[151]. There is still much future work planned for these simulations. First, the use of sparse matrices would reduce the quadratic dependence on r down to a linear dependence. Next, to simulate larger systems, one would adapt the simulations to work in a distributed computing environment. We have suggested how this form of parallelisation could be achieved. In a physical quantum computer, one would construct efficient circuits to implement the controlled unitaries[152, 153], however these have yet to be implemented in our simulations making them unrealistic. Finally, once these are constructed, one can add errors to the simulations.

105 7 Summary and Conclusions

106 Bibliography

[1] D. S. Wang, A. G. Fowler, A. M. Stephens, and L. C. L. Hollenberg. Threshold error rates for the toric and planar codes. Quantum Informa- tion and Computation, 10(5&6):456–469, May 2010. arXiv:0905.0531.

[2] A. G. Fowler, D. S. Wang, and L. C. L. Hollenberg. Surface code quantum error correction incorporating accurate error propagation. Quantum In- formation and Computation, 11(1&2):8–18, Jan 2011. arXiv:1004.0255.

[3] D. S. Wang, A. G. Fowler, and L. C. L. Hollenberg. Surface code quantum computing with error rates over 1%. Phys. Rev. A, 83(2):020302(R), Feb 2011. arXiv:1009.3686.

[4] A. G. Fowler, D. S. Wang, C. D. Hill, T. D. Ladd, R. Van Meter, and L. C. L. Hollenberg. Surface code quantum communication. Phys. Rev. Lett., 104(18):180503, May 2010. arXiv:0910.4074.

[5] D. S. Wang, A. G. Fowler, C. D. Hill, and L. C. L. Hollenberg. Graphical algorithms and threshold error rates for the 2d color code. Quantum Information and Computation, 10(9&10):780–802, Sep 2010. arXiv:0907.1708.

[6] M. A. Nielson and I. L. Chuang. Quantum computation and quantum information. Cambridge University Press, Cambridge, 2000.

[7] R. P. Feynman. Simulating physics with computers. Int. J. Theoretical Phys., 21(6–7):467–488, Jun 1982.

[8] R. P. Feynman. Quantum mechanical computers. Optics News, 11(2):11– 20, Feb 1985.

[9] P. W. Shor. Algorithms for quantum computation: discrete logarithms and factoring. In Proc. 35th Annual Symposium on Foundations of Com- puter Science, pages 124–134, Nov 1994.

107 Bibliography

[10] P. W. Shor. Polynomial-time algorithms for prime factorization and dis- crete logarithms on a quantum computer. SIAM Journal on Computing, 26(5):1484–1509, 1997. quant-ph/9508027.

[11] L. K. Grover. A fast quantum mechanical algorithm for database search. In Proc. 28th Annual ACM Symposium on the Theory of Computing, pages 212–219, May 1996. quant-ph/9605043.

[12] L. K. Grover. Quantum mechanics helps in searching for a needle in a haystack. Phys. Rev. Lett., 79(2):325–328, Jul 1997. quant-ph/9706033.

[13] R. L. Rivest, A. Shamir, and L. Adleman. A method for obtaining digital signatures and public-key cryptosystems. Communications of the ACM, 21(2):120–126, 1978.

[14] A. Aspuru-Guzik, A. D. Dutoi, P. J. Love, and M. Head-Gordon. Simulated quantum computation of molecular energies. Science, 309(5741):1704–1707, Sep 2005. quant-ph/0604193.

[15] I. Kassal, S. P. Jordan, P. J. Love, M. Mohseni, and A. Aspuru-Guzik. Polynomial-time for the simulation of chemical dy- namics. Proc. National Academy of Sciences, 105(48):18681–18686, Oct 2008. arXiv:0801.2986.

[16] B. P. Lanyon, J. D. Whitfield, G. G. Gillett, M. E. Goggin, M. P. Almeida, I. Kassal, J. D. Biamonte, M. Mohseni, B. J. Powell, M. Bar- bieri, A. Aspuru-Guzik, and A. G. White. Towards quantum chem- istry on a quantum computer. Nat. Chem., 2(2):106–111, Jan 2010. arXiv:0905.0887.

[17] A. R. Calderbank and P. W. Shor. Good quantum error-correcting codes exist. Phys. Rev. A, 54(2):1098–1105, Aug 1996. quant-ph/9512032.

[18] P. W. Shor. Scheme for reducing decoherence in quantum computer memory. Phys. Rev. A, 52(4):R2493–R2496, Oct 1995.

[19] A. M. Steane. Error correcting codes in quantum theory. Phys. Rev. Lett., 77(5):793–797, Jul 1996.

[20] A. M. Steane. Multiple particle interference and quantum error correc- tion. Proc. Roy. Soc. Lond. A, 452(1954):2551–2577, Nov 1996. quant- ph/9601029.

108 Bibliography

[21] A. M. Steane. Simple quantum error-correcting codes. Phys. Rev. A, 54(6):4741–4751, Dec 1996. quant-ph/9605021.

[22] D. Dieks. Communication by EPR devices. Phys. Lett. A, 92(6):271–272, Nov 1982.

[23] W. K. Wootters and W. H. Zurek. A single qubit cannot be cloned. Nature, 299(5886):802–803, Oct 1982.

[24] E. Knill, R. Laflamme, and W. H. Zurek. Accuracy threshold for quan- tum computation. Technical Report LAUR-96-2199, Los Alamos Na- tional Laboratory, 1996. quant-ph/9610011.

[25] D. Aharonov and M. Ben-Or. Fault-tolerant quantum computation with constant error. In Proc. 29th Annual ACM Symposium on the Theory of Computing, pages 176–188, May 1997. quant-ph/9611025.

[26] E. Knill, R. Laflamme, and W. H. Zurek. Resilient quantum computa- tion. Science, 279(5349):342–345, Jan 1998. quant-ph/9702058.

[27] E. Knill, R. Laflamme, and W. H. Zurek. Resilient quantum com- putation: error models and thresholds. Proc. Roy. Soc. Lond. A, 454(1969):365–384, Jan 1998. quant-ph/9702058.

[28] D. Aharonov and M. Ben-Or. Fault-tolerant quantum computation with constant error rate. SIAM Journal on Computing, 38(4):1207–1282, 2008. quant-ph/9906129.

[29] P. Aliferis, D. Gottesman, and J. Preskill. Quantum accuracy threshold for concatenated distance-3 codes. Quantum Information and Computa- tion, 6(2):97–165, Mar 2006. quant-ph/0504218.

[30] P. W. Shor. Fault-tolerant quantum computation. In Proc. 37th Annual Symposium on Foundations of Computer Science, pages 56–67, Oct 1996. quant-ph/9605011.

[31] D. Gottesman. Theory of fault-tolerant quantum computation. Phys. Rev. A, 57(1):127–137, Jan 1998. quant-ph/9702029.

[32] A. M. Steane. Efficient fault-tolerant quantum computing. Nature, 399(6732):124–126, May 1999. quant-ph/9809054.

109 Bibliography

[33] D. Bacon. Operator quantum error-correcting subsystems for self- correcting quantum memories. Phys. Rev. A, 73(1):012340, Jan 2006. quant-ph/0506023.

[34] K. M. Svore, D. P. DiVincenzo, and B. M. Terhal. Noise threshold for a fault-tolerant two-dimensional lattice architecture. Quantum Informa- tion and Computation, 7(4):297–318, May 2007. quant-ph/0604090.

[35] P. Aliferis and A. W. Cross. Subsystem fault tolerance with the Bacon-Shor code. Phys. Rev. Lett., 98(22):220502, May 2007. quant- ph/0610063.

[36] F. M. Spedalieri and V. P. Roychowdhury. Latency in local, two- dimensional, fault-tolerant quantum computing. arXiv:0805.4213, May 2008.

[37] A. Yu. Kitaev. Fault-tolerant quantum computation by anyons. Ann. Phys., 303(1):2–30, Jan 2003. quant-ph/9707021.

[38] S. B. Bravyi and A. Yu. Kitaev. Quantum codes on a lattice with bound- ary. Quantum Computers and Computing, 2(1):43–48, 2001. quant- ph/9811052.

[39] M. H. Freedman and D. A. Meyer. Projective plane and planar quantum codes. Foundations of Computational Mathematics, 1(3):325–332, Dec 2001. quant-ph/9810055.

[40] E. Dennis, A. Kitaev, A. Landahl, and J. Preskill. Topological quantum memory. J. Math. Phys., 43(9):4452–4505, Sep 2002. quant-ph/0110143.

[41] C. Wang, J. Harrington, and J. Preskill. Confinement-Higgs transition in a disordered gauge theory and the accuracy threshold for quantum memory. Ann. Phys., 303(1):31–58, Jan 2003. quant-ph/0207088.

[42] R. Raussendorf, J. Harrington, and K. Goyal. A fault-tolerant one- way quantum computer. Ann. Phys., 321:2242–2270, 2006. quant- ph/0510135.

[43] R. Raussendorf and J. Harrington. Fault-tolerant quantum computation with high threshold in two dimensions. Phys. Rev. Lett., 98(19):190504, May 2007. quant-ph/0610082.

110 Bibliography

[44] A. G. Fowler, A. M. Stephens, and P. Groszkowski. High-threshold universal quantum computation on the surface code. Phys. Rev. A, 80(5):052312, Nov 2009. arXiv:0803.0272.

[45] R. Raussendorf, J. Harrington, and K. Goyal. Topological fault-tolerance in quantum computation. New J. Phys., 9:199, Jun 2007. quant-ph/0703143.

[46] A. G. Fowler and K. Goyal. Topological cluster state quantum com- puting. Quantum Information and Computation, 9(9&10):721–738, Sep 2009. arXiv:0805.3202.

[47] E. Knill. Quantum computing with realistically noisy devices. Nature, 434(7029):39–44, Mar 2005. quant-ph/0410199.

[48] K. Fujii and K. Yamamoto. Cluster-based architecture for fault- tolerant quantum computation. Phys. Rev. A, 81(4):042324, Apr 2010. arXiv:0912.5150.

[49] K. Fujii and K. Yamamoto. Topological one-way quantum computation on verified logical cluster states. Phys. Rev. A, 82(6):060301(R), Dec 2010. arXiv:1008.2048.

[50] H. Bombin and M. A. Martin-Delgado. Topological quantum distillation. Phys. Rev. Lett., 97(18):180501, Oct 2006. quant-ph/0605138.

[51] A. G. Fowler. Universal quantum computation without state distillation on a 2-d color code. arXiv:0806.4827v1, Jun 2008.

[52] G. Vidal. Efficient classical simulation of slightly entangled quantum computations. Phys. Rev. Lett., 91(14):147902, Oct 2003. quant- ph/0301063.

[53] D. Gottesman. Stabilizer codes and quantum error correction. PhD thesis, Caltech, 1997. quant-ph/9705052.

[54] D. Deutsch. Quantum computational networks. Proc. Roy. Soc. Lond. A, 425(1868):73–90, Sep 1989.

[55] A. Chi-Chih Yao. Quantum circuit complexity. In Proc. 34th Annual Symposium on Foundations of Computer Science, pages 352–361, Nov 1993.

111 Bibliography

[56] D. Deutsch. Quantum theory, the Church-Turing principle and the uni- versal quantum computer. Proc. Roy. Soc. Lond. A., 400(1818):97–117, Jul 1985.

[57] E. Farhi, J. Goldstone, S. Gutmann, and M. Sipser. Quantum compu- tation by adiabatic evolution. quant-ph/0001106, Jan 2000.

[58] H.-J. Briegel and R. Raussendorf. Persistent entanglement in arrays of interacting particles. Phys. Rev. Lett., 86(5):910–913, Jan 2001. quant- ph/0004051.

[59] R. Raussendorf and H.-J. Briegel. A one-way quantum computer. Phys. Rev. Lett., 86(22):5188–5191, May 2001.

[60] A. Barenco, C. H. Bennett, R. Cleve, D. P. DiVincenzo, N. Margolus, P. Shor, T. Sleator, J. A. Smolin, and H. Weinfurter. Elementary gates for quantum computation. Phys. Rev. A, 52(5):3457–3467, Nov 1995. quant-ph/9503016.

[61] D. P. DiVincenzo. Two-bit gates are universal for quantum computation. Phys. Rev. A, 51(2):1015–1022, Feb 1995. cond-mat/9407022.

[62] S. Lloyd. Almost any quantum is universal. Phys. Rev. Lett., 75(2):346–349, Jul 1995.

[63] M. H. Freedman, A. Kitaev, and Z. Wang. Simulation of topological field theories by quantum computers. Comm. Math. Phys., 227(3):587–603, Jun 2002. quant-ph/0001071.

[64] M. Freedman, M. Larsen, and Z. Wang. A modular functor which is universal for quantum computation. Comm. Math. Phys., 227(3):605– 622, Jun 2002. quant-ph/0001108.

[65] J. Preskill. Lecture notes for physics 219: quantum computation. http://www.theory.caltech.edu/~preskill/ph219/topological.pdf, Jun 2004.

[66] S. Bravyi. Universal quantum computation with the ν = 5/2 fractional quantum Hall state. Phys. Rev. A, 73(4):042313, Apr 2006. quant- ph/0511178.

112 Bibliography

[67] D. C. Tsui, H. L. Stormer, and A. C. Gossard. Two-dimensional magne- totransport in the extreme quantum limit. Phys. Rev. Lett., 48(22):1559– 1562, May 1982.

[68] R. B. Laughlin. Anomalous quantum Hall effect: an incompressible quantum fluid with fractionally charged excitations. Phys. Rev. Lett., 50(18):1395–1398, May 1983.

[69] R. Willett, J. P. Eisenstein, H. L. St¨ormer, D. C. Tsui, A. C. Gossard, and J. H. English. Observation of an even-denominator in the fractional quantum Hall effect. Phys. Rev. Lett., 59(15):1776–1779, Oct 1987.

[70] G. Moore and N. Read. Nonabelions in the fractional quantum Hall effect. Nucl. Phys. B, 360(2–3):362–396, Aug 1991.

[71] M. Dolev, M. Heiblum, V. Umansky, Ady Stern, and D. Mahalu. Obser- vation of a quarter of an electron charge at the ν = 5/2 quantum Hall state. Nature, 452(7189):829–834, Apr 2008. arXiv:0802.0930.

[72] I. P. Radu, J. B. Miller, C. M. Marcus, M. A. Kastner, L. N. Pfeiffer, and K. W. West. Quasi-particle properties from tunneling in the ν = 5/2 fractional quantum Hall state. Science, 320(5878):899–902, May 2008. arXiv:0803.3530.

[73] R. L. Willett, L. N. Pfeiffer, and K. W. West. Measurement of filling factor 5/2 quasiparticle interference: observation of charge e/4 and e/2 period oscillations. arXiv:0807.0221, Jul 2008.

[74] A. Stern and B. I. Halperin. Proposed experiments to probe the non- Abelian ν = 5/2 quantum Hall state. Phys. Rev. Lett., 96(1):016802, Jan 2006. cond-mat/0508447.

[75] P. Bonderson, A. Kitaev, and K. Shtengel. Detecting non-Abelian statis- tics in the ν = 5/2 fractional quantum Hall state. Phys. Rev. Lett., 96(1):016803, Jan 2006. cond-mat/0508616.

[76] D. E. Feldman, Y. Gefen, A. Kitaev, K. T. Law, and A. Stern. Shot noise in an anyonic Mach-Zehnder interferometer. Phys. Rev. B, 76(8):085333, Aug 2007. cond-mat/0612608.

113 Bibliography

[77] S. Bravyi and A. Kitaev. Universal quantum computation with ideal Clifford gates and noisy ancillas. Phys. Rev. A, 71(2):022316, Feb 2005. quant-ph/0403025.

[78] P. Bonderson, D. J. Clarke, C. Nayak, and K. Shtengel. Implementing ar- bitrary phase gates with Ising anyons. Phys. Rev. Lett., 104(18):180505, May 2010. arXiv:0911.2691.

[79] P. Bonderson, S. Das Sarma, M. Freedman, and C. Nayak. A blueprint for a topologically fault-tolerant quantum computer. arXiv:1003.2856, Mar 2010.

[80] N. E. Bonesteel, L. Hormozi, G. Zikos, and S. H. Simon. Braid topologies for quantum computation. Phys. Rev. Lett., 95(14):140503, Sep 2005. quant-ph/0505065.

[81] J. I. Cirac and P. Zoller. Quantum computations with cold trapped ions. Phys. Rev. Lett., 74(20):4091–4094, May 1995.

[82] A. Shnirman, G. Sch¨on, and Z. Hermon. Quantum manipulations of small Josephson junctions. Phys. Rev. Lett., 79(12):2371–2374, Sep 1997. cond-mat/9706016.

[83] V. Bouchiat, D. Vion, P. Joyez, D. Esteve, and M. H. Devoret. Quantum coherence with a single Cooper pair. Physica Scripta, 1998(T76):165, 1998.

[84] Y. Makhlin, G. Sch¨on, and A. Shnirman. Josephson-junction qubits with controlled couplings. Nature, 398(6725):305–307, Mar 1999. cond- mat/9808067.

[85] D. Vion, A. Aassime, A. Cottet, P. Joyez, H. Pothier, C. Urbina, D. Es- teve, and M. H. Devoret. Manipulating the quantum state of an electrical circuit. Science, 296(5569):886–889, May 2002. cond-mat/0205343.

[86] J. Koch, T. M. Yu, J. Gambetta, A. A. Houck, D. I. Schuster, J. Majer, A. Blais, M. H. Devoret, S. M. Girvin, and R. J. Schoelkopf. Charge- insensitive qubit design derived from the Cooper pair box. Phys. Rev. A, 76(4):042319, Oct 2007. cond-mat/0703002.

114 Bibliography

[87] J. E. Mooij, T. P. Orlando, L. Levitov, Lin Tian, C. H. van der Wal, and S. Lloyd. Josephson persistent-current qubit. Science, 285(5430):1036– 1039, Aug 1999.

[88] T. P. Orlando, J. E. Mooij, L. Tian, C. H. van der Wal, L. S. Levitov, S. Lloyd, and J. J. Mazo. Superconducting persistent-current qubit. Phys. Rev. B, 60(22):15398–15413, Dec 1999. cond-mat/9908283.

[89] L. B. Ioffe, V. B. Geshkenbein, M. V. Feigel’man, A. L. Fauchere, and G. Blatter. Environmentally decoupled sds-wave Josephson junctions for quantum computing. Nature, 398(6729):679–681, Apr 1999. cond- mat/9809116.

[90] G. Blatter, V. B. Geshkenbein, and L. B. Ioffe. Design aspects of superconducting-phase quantum bits. Phys. Rev. B, 63(17):174511, Apr 2001. cond-mat/9912163.

[91] D. Loss and D. P. DiVincenzo. Quantum computation with quantum dots. Phys. Rev. A, 57(1):120–126, Jan 1998. cond-mat/9701055.

[92] D. Jaksch, H.-J. Briegel, J. I. Cirac, C. W. Gardiner, and P. Zoller. Entanglement of atoms via cold controlled collisions. Phys. Rev. Lett., 82(9):1975–1978, Mar 1999. quant-ph/9810087.

[93] G. K. Brennen, C. M. Caves, P. S. Jessen, and I. H. Deutsch. gates in optical lattices. Phys. Rev. Lett., 82(5):1060–1063, Feb 1999. quant-ph/9806021.

[94] S. J. Devitt, A. D. Greentree, R. Ionicioiu, J. L. O’Brien, W. J. Munro, and L. C. L. Hollenberg. Photonic module: an on-demand resource for photonic entanglement. Phys. Rev. A, 76(5):052312, Nov 2007. arXiv:0706.2226.

[95] F. Jelezko, T. Gaebel, I. Popa, A. Gruber, and J. Wrachtrup. Observa- tion of coherent oscillations in a single electron spin. Phys. Rev. Lett., 92(7):076401, Feb 2004. quant-ph/0309079.

[96] F. Jelezko, T. Gaebel, I. Popa, M. Domhan, A. Gruber, and J. Wrachtrup. Observation of coherent oscillation of a single nuclear spin and realization of a two-qubit conditional quantum gate. Phys. Rev. Lett., 93(13):130501, Sep 2004. quant-ph/0402087.

115 Bibliography

[97] B. E. Kane. A silicon-based nuclear spin quantum computer. Nature, 393(6681):133–137, May 1998.

[98] L. C. L. Hollenberg, A. D. Greentree, A. G. Fowler, and C. J. Wellard. Two-dimensional architectures for donor-based quantum computing. Phys. Rev. B, 74(4):045311, Jul 2006. quant-ph/0506198.

[99] K. R. Brown, A. C. Wilson, Y. Colombe, C. Ospelkaus, A. M. Meier, E. Knill, D. Leibfried, and D. J. Wineland. Single-qubit gate error below 4 10− in a trapped ion. arXiv:1104.2552, Apr 2011.

[100] J. Benhelm, G. Kirchmair, C. F. Roos, and R. Blatt. Towards fault- tolerant quantum computing with trapped ions. Nat. Phys., 4(6):463– 466, Jun 2008. arXiv:0803.2798.

[101] A. H. Burrell, D. J. Szwer, S. C. Webster, and D. M. Lucas. Scalable simultaneous multiqubit readout with 99.99% single-shot fidelity. Phys. Rev. A, 81(4):040302(R), Apr 2010. arXiv:0906.3304.

[102] T. Monz, P. Schindler, J. T. Barreiro, M. Chwalla, D. Nigg, W. A. Coish., M. Harlander, W. H¨ansel, M. Hennrich, and R. Blatt. 14-qubit entanglement: creation and coherence. Phys. Rev. Lett., 106(13):130506, Mar 2011. arXiv:1009.6126.

[103] Y. Makhlin, G. Sch¨on, and A. Shnirman. Quantum-state engineering with Josephson-junction devices. Rev. Mod. Phys., 73(2):357–400, May 2001. cond-mat/0011269.

[104] M. H. Devoret, A. Wallraff, and J. M. Martinis. Superconducting qubits: a short review. cond-mat/0411174, Nov 2004.

[105] A. Zagoskin and A. Blais. Superconducting qubits. Physics in Canada, 63:215–227, 2007. arXiv:0805.0164.

[106] Y. Nakamura, Yu. A. Pashkin, and J. S. Tsai. Coherent control of macroscopic quantum states in a single-Cooper-pair box. Nature, 398(6730):786–788, Apr 1999. cond-mat/9904003.

[107] J. M. Chow, J. M. Gambetta, L. Tornberg, J. Koch, L. S. Bishop, A. A. Houck, B. R. Johnson, L. Frunzio, S. M. Girvin, and R. J. Schoelkopf. Randomized benchmarking and process tomography for gate

116 Bibliography

errors in a solid-state qubit. Phys. Rev. Lett., 102(9):090502, Mar 2009. arXiv:0811.4387.

[108] C. H. van der Wal, A. C. J. ter Haar, F. K. Wilhelm, R. N. Schouten, C. J. P. M. Harmans, T. P. Orlando, S. Lloyd, and J. E. Mooij. Quan- tum superposition of macroscopic persistent-current states. Science, 290(5492):773–777, Oct 2000.

[109] J. R. Friedman, V. Patel, W. Chen, S. K. Tolpygo, and J. E. Lukens. of distinct macroscopic states. Nature, 406(6791):43–46, Jul 2000. cond-mat/0004293.

[110] J. M. Martinis, S. Nam, J. Aumentado, and C. Urbina. Rabi oscillations in a large Josephson-junction qubit. Phys. Rev. Lett., 89(11):117901, Aug 2002.

[111] E. Lucero, M. Hofheinz, M. Ansmann, R. C. Bialczak, N. Katz, M. Nee- ley, A. D. O’Connell, H. Wang, A. N. Cleland, and J. M. Marti- nis. High-fidelity gates in a single Josephson qubit. Phys. Rev. Lett., 100(24):247001, Jun 2008. arXiv:0802.0903.

[112] J. Majer, J. M. Chow, J. M. Gambetta, J. Koch, B. R. Johnson, J. A. Schreier, L. Frunzio, D. I. Schuster, A. A. Houck, A. Wallraff, A. Blais, M. H. Devoret, S. M. Girvin, and R. J. Schoelkopf. Coupling supercon- ducting qubits via a cavity bus. Nature, 449(7161):443–447, Sep 2007. arXiv:0709.2135.

[113] L. DiCarlo, J. M. Chow, J. M. Gambetta, L. S. Bishop, B. R. John- son, D. I. Schuster, J. Majer, A. Blais, L. Frunzio, S. M. Girvin, and R. J. Schoelkopf. Demonstration of two-qubit algorithms with a super- conducting quantum processor. Nature, 460(7252):240–244, Jul 2009. arXiv:0903.2030.

[114] T. Hime, P. A. Reichardt, B. L. T. Plourde, T. L. Robertson, C.-E. Wu, A. V. Ustinov, and J. Clarke. Solid-state qubits with current-controlled coupling. Science, 314(5804):1427–1429, Dec 2006.

[115] S. H. W. van der Ploeg, A. Izmalkov, A. M. van den Brink, U. H¨ubner, M. Grajcar, E. Il’ichev, H.-G. Meyer, and A. M. Zagoskin. Controllable

117 Bibliography

coupling of superconducting flux qubits. Phys. Rev. Lett., 98(5):057004, Feb 2007. cond-mat/0605588.

[116] M. Steffen, M. Ansmann, R. C. Bialczak, N. Katz, E. Lucero, R. Mc- Dermott, M. Neeley, E. M. Weig, A. N. Cleland, and J. M. Martinis. Measurement of the entanglement of two superconducting qubits via state tomography. Science, 313(5792):1423–1425, Sep 2006.

[117] R. C. Bialczak, M. Ansmann, M. Hofheinz, E. Lucero, M. Neeley, A. D. O’Connell, D. Sank, H. Wang, J. Wenner, M. Steffen, A. N. Cleland, and J. M. Martinis. Towards fault-tolerant quantum computing with trapped ions. Nat. Phys., 6(6):409–413, Jun 2010. arXiv:0910.1118.

[118] F. H. L. Koppens, C. Buizert, K. J. Tielrooij, I. T. Vink, K. C. Nowack, T. Meunier, L. P. Kouwenhoven, and L. M. K. Vandersypen. Driven coherent oscillations of a single electron spin in a quantum dot. Nature, 442(7104):766–771, Aug 2006. cond-mat/0608459.

[119] D. Press, T. D. Ladd, B. Zhang, and Y. Yamamoto. Complete quan- tum control of a single quantum dot spin using ultrafast optical pulses. Nature, 456(7219):218–221, Nov 2008.

[120] J. R. Petta, A. C. Johnson, J. M. Taylor, E. A. Laird, A. Yacoby, M. D. Lukin, C. M. Marcus, M. P. Hanson, and A. C. Gossard. Coherent manipulation of coupled electron spins in semiconductor quantum dots. Science, 309(5744):2180–2184, Sep 2005.

[121] T. Hayashi, T. Fujisawa, H. D. Cheong, Y. H. Jeong, and Y. Hirayama. Coherent manipulation of electronic states in a double quantum dot. Phys. Rev. Lett., 91(22):226804, Nov 2003. cond-mat/0308362.

[122] J. R. Petta, A. C. Johnson, C. M. Marcus, M. P. Hanson, and A. C. Gossard. Manipulation of a single charge in a double quantum dot. Phys. Rev. Lett., 93(18):186802, Oct 2004. cond-mat/0408139.

[123] J. Edmonds. Paths, trees, and flowers. Canadian Journal of Mathemat- ics, 17(3):449–467, 1965.

[124] J. Edmonds. Maximum matching and a polyhedron with 0, 1-vertices. Journal of Research of the National Bureau of Standards, 69(1–2):125– 130, 1965.

118 Bibliography

[125] W. Cook and A. Rohe. Computing minimum-weight perfect matchings. INFORMS Journal on Computing, 11(2):138–148, 1999.

[126] V. Kolmogorov. Blossom V: a new implementation of a minimum cost perfect matching algorithm. Mathematical Programming Computation, 1(1):43–67, 2009.

[127] G. Duclos-Cianci and D. Poulin. Fast decoders for topological quantum codes. Phys. Rev. Lett., 104(5):050504, Feb 2010. arXiv:0911.0581.

[128] J. Kruse, C. Gierl, M. Schlosser, and G. Birkl. Reconfigurable site- selective manipulation of atomic quantum systems in two-dimensional arrays of dipole traps. Phys. Rev. A, 81(6):060308(R), Jun 2010. arXiv:1001.3430.

[129] A. Lupa¸scu, E. F. C. Driessen, L. Roschier, C. J. P. M. Harmans, and J. E. Mooij. High-contrast dispersive readout of a superconducting flux qubit using a nonlinear resonator. Phys. Rev. Lett., 96(12):127003, Mar 2006. cond-mat/0601634.

[130] J. Berezovsky, M. H. Mikkelsen, O. Gywat, N. G. Stoltz, L. A. Coldren, and D. D. Awschalom. Nondestructive optical measurements of a single electron spin in a quantum dot. Science, 314(5807):1916–1920, Dec 2006.

[131] M. Atat¨ure, J. Dreiser, A. Badolato, and A. Imamoglu. Observation of Faraday rotation from a single confined spin. Nat. Phys., 3(2):101–106, Feb 2007. quant-ph/0610110.

[132] C. H. Bennett and G. Brassard. : public key distribution and coin tossing. In Proc. IEEE International Conference on Computers, Systems and Signal Processing, pages 175–179, Dec 1984.

[133] A. K. Ekert. Quantum cryptography based on Bell’s theorem. Phys. Rev. Lett., 67(6):661–663, Aug 1991.

[134] H.-J. Briegel, W. D¨ur, J. I. Cirac, and P. Zoller. Quantum repeaters: the role of imperfect local operations in quantum communication. Phys. Rev. Lett., 81(26):5932–5935, Dec 1998. quant-ph/9803056.

[135] L. Jiang, J. M. Taylor, K. Nemoto, W. J. Munro, R. Van Meter, and M. D. Lukin. Quantum repeater with encoding. Phys. Rev. A, 79(3):032325, Mar 2009. arXiv:0809.3629.

119 Bibliography

[136] M. Zukowski,˙ A. Zeilinger, M. A. Horne, and A. K. Ekert. “Event-ready- detectors” Bell experiment via entanglement swapping. Phys. Rev. Lett., 71(26):4287–4290, Dec 1993.

[137] N. Sangouard, C. Simon, H. de Riedmatten, and N. Gisin. Quantum repeaters based on atomic ensembles and linear optics. Rev. Mod. Phys., 83(1):33–80, Mar 2011. arXiv:0906.2699.

[138] C. H. Bennett, G. Brassard, C. Cr´epeau, R. Jozsa, A. Peres, and W. K. Wootters. Teleporting an unknown quantum state via dual classical and Einstein-Podolsky-Rosen channels. Phys. Rev. Lett., 70(13):1895–1899, Mar 1993.

[139] C. H. Bennett, G. Brassard, S. Popescu, B. Schumacher, J. A. Smolin, and W. K. Wootters. Purification of noisy entanglement and faithful teleportation via noisy channels. Phys. Rev. Lett., 76(5):722–725, Jan 1996. quant-ph/9511027.

[140] S. Perseguers, L. Jiang, N. Schuch, F. Verstraete, M. D. Lukin, J. I. Cirac, and K. G. H. Vollbrecht. One-shot entanglement generation over long distances in noisy quantum networks. Phys. Rev. A, 78(6):062324, Dec 2008. arXiv:0807.0208.

[141] S. Perseguers. Fidelity threshold for long-range entanglement in quantum networks. Phys. Rev. A, 81(1):012310, Jan 2010. arXiv:0910.1459.

[142] W. J. Munro, K. A. Harrison, A. M. Stephens, S. J. Devitt, and K. Nemoto. From quantum multiplexing to high-performance quantum networking. Nat. Photon., 4(11):792–796, Aug 2010. arXiv:0910.4038.

[143] H. G. Katzgraber, H. Bombin, and M. A. Martin-Delgado. Error thresh- old for color codes and random three-body Ising models. Phys. Rev. Lett., 103(9):090501, Aug 2009. arXiv:0902.4845.

[144] B. Zeng, A. Cross, and I. L. Chuang. Transversality versus universality for additive quantum codes. arXiv:0706.1382, Jun 2007.

[145] X. Chen, H. Chung, A. W. Cross, B. Zeng, and I. L. Chuang. Sub- system stabilizer codes cannot have a universal set of transversal gates for even one encoded qudit. Phys. Rev. A, 78(1):012353, Jul 2008. arXiv:0801.2360.

120 Bibliography

[146] B. Eastin and E. Knill. Restrictions on transversal encoded quantum gate sets. Phys. Rev. Lett., 102(11):110502, Mar 2009. arXiv:0811.4262.

[147] D. P. DiVincenzo and P. Aliferis. Effective fault-tolerant quantum com- putation with slow measurements. Phys. Rev. Lett., 98(2):020501, Jan 2007. quant-ph/0607047.

[148] H. Bombin, G. Duclos-Cianci, and D. Poulin. Universal topological phase of 2d stabilizer codes. arXiv:1103.4606, Mar 2011.

[149] P. Sarvepalli and R. Raussendorf. Efficient decoding of topological color codes. arXiv:1111.0831, Nov 2011.

[150] K. De Raedt, K. Michielsen, H. De Raedt, B. Trieu, G. Arnold, M. Richter, Th. Lippert, H. Watanabe, and N. Ito. Massive parallel quan- tum computer simulator. Computer Phys. Communications, 176(2):121– 136, Jan 2007. quant-ph/0608239.

[151] Helmholtz Association of German Research Centres. World record: J¨ulich supercomputer simulates quantum computer. Press release, Mar 2010. Retrieved from http://www2.fz-juelich.de/portal/index.php ?cmd=show&index=163&mid=761.

[152] C. Zalka. Fast versions of Shor’s quantum factoring algorithm. quant- ph/9806084, Jun 1998.

[153] S. Beauregard. Circuit for Shor’s algorithm using 2n+3 qubits. Quan- tum Information and Computation, 3(2):175–185, Mar 2003. quant- ph/0205095.

[154] D. Coppersmith. An approximate Fourier transform useful in quantum factoring. Technical Report RC 19642, T. J. Watson Research Center, IBM Corporation, Jun 1994. quant-ph/0201067.

[155] R. Jozsa and N. Linden. On the role of entanglement in quantum- computational speed-up. Proc. Roy. Soc. Lond. A, 459(2036):2011–2032, Aug 2003. quant-ph/0201143.

[156] D. E. Browne. Efficient classical simulation of the quantum Fourier transform. New J. Phys., 9(5):146, May 2007. quant-ph/0612021.

121 Bibliography

[157] N. Yoran and A. J. Short. Classical simulability and the signifi- cance of in Shor’s algorithm. Phys. Rev. A, 76(6):060302(R), Dec 2007. arXiv:0706.0872.

[158] R. B. Griffiths and C.-S. Niu. Semiclassical Fourier transform for quan- tum computation. Phys. Rev. Lett., 76(17):3228–3231, Apr 1996. quant- ph/9511007.

[159] Message passing interface forum. http://www.mpi-forum.org/.

[160] Parallel BLAS. http://www.netlib.org/scalapack/pblas_qref.html.

[161] L. S. Blackford, J. Choi, A. Cleary, E. D’Azevedo, J. Demmel, I. Dhillon, J. Dongarra, S. Hammarling, G. Henry, A. Petitet, K. Stanley, D. Walker, and R. C. Whaley. ScaLAPACK Users’ Guide. Society for Industrial and Applied Mathematics, Philadelphia, PA, 1997.

[162] A. G. Fowler et al. In preparation.

122

Minerva Access is the Institutional Repository of The University of Melbourne

Author/s: Wang, David

Title: Topological quantum error correction and quantum algorithm simulations

Date: 2011

Citation: Wang, D. (2011). Topological quantum error correction and quantum algorithm simulations. PhD thesis, School of Physics, The University of Melbourne.

Persistent Link: http://hdl.handle.net/11343/36984

File Description: Topological quantum error correction and quantum algorithm simulations

Terms and Conditions: Terms and Conditions: Copyright in works deposited in Minerva Access is retained by the copyright owner. The work may not be altered without permission from the copyright owner. Readers may only download, print and save electronic copies of whole works for their own personal non-commercial use. Any use that exceeds these limits requires permission from the copyright owner. Attribution is essential when quoting or paraphrasing from these works.