<<

Topics in Architecture

Thien Nguyen

Research School of Engineering The Australian National University

A thesis submitted for the degree of Doctor of Philosophy

College of Engineering and Science May 2019

© Copyright by Thien Nguyen 2018 All Rights Reserved This page intentionally left blank. To my family: Dad Thang, Mom Phuong, and especially my wife Quyen. This page intentionally left blank. Declaration

I hereby declare that except where specific reference is made to the work of others, to the best of my knowledge and belief, the contents of this dissertation are original and have not been submitted in whole or in part for consideration for any other degree or qualification in this, or any other university. This dissertation is my ownworkor partially in collaboration with others. This dissertation contains fewer than 100,000 words exclusive of appendices, bibliography, footnotes, tables and equations.

Thien Nguyen May 2019 This page intentionally left blank. Acknowledgements

In no way would this thesis have been possible without the support of many people who guided and encouraged me along the way. First and foremost, I am much indebted to my supervisors, Prof. Matthew James, who has been incredibly supportive from even before my arrival at the ANU and remained so throughout my study. Matt gave me total freedom to pursue my interests and helped me connect with experts in the field. At the same time, he was constructively critical of various aspects of my study and professional development. I am grateful to Prof. Lloyd Hollenberg for taking an interest in me and giving me an opportunity to work with him on the interesting problems of quantum . My special thanks also go to Dr Charles Hill. Charles’ eye for detail and technical expertise has helped me in refining my ideas into research projects. In the course of my study at the ANU, I have had the opportunity to work with and learn from incredibly smart people to whom I would like to express my gratitude. They are Dr Yu Pan, Dr Guodong Shi, Dr Shibei Xue, Dr Zibo Miao, Dr Shuangshuang Fu, Dr Michael Hush, and Dr Andre Calvalho. I appreciated every conversation which I had with every one of you, through which I have expanded my knowledge and understanding of the quantum field. To my fellow PhD students, Alfred, Oliver, Jessica, Alex, James, and Ruvi, it was great listening to your talks in our group meeting. Special thanks to those who always accepted my invitation to give a speech when I was the coordinator. During my PhD, I have had the opportunity to work as a research intern at the Atos Quantum Lab in Paris, France. To this, I’d like to thank Dr Cyril Allouche, head of the Atos Quantum research program, and Sophie Houssiaux, head of R&D, Big Data and Security, at Atos for the invaluable experience which had a profound impact on my viii research. I also want to express my thanks to the whole Atos quantum lab members who taught me a lot about , , and especially about French culture. I am grateful to my wife who, despite struggling with her PhD study, has always provided me emotional support whenever I need. Special thanks to my family members in Vietnam, who have supported me along the way. Last but not least, to every participant of the Friday lunch Quantum Cybernetics group meeting, it was pleasant sharing lunch and discussing a wide variety of topics with all of you during last four years. I also gratefully acknowledge the generous financial support I have received from the ANU and the ARC CQC2T for my PhD study and research. Abstract

Quantum computing, which is considered the next revolution of computing technology, brings together theories of mathematics, , and . Building a quantum computer thus requires a synthesis of knowledge and skills from multiple disciplines. In this thesis, we take a step toward bridging and connecting the full “stack” of quantum computing technology which spans across theoretical foundations, hardware architecture, software and simulation. At the foundation level, we study one of the central problems of quantum computing, namely , from a control-engineering perspective. This approach not only complements the conventional coding-based interpretation but also provides a potential pathway to designing self-correcting quantum . First, we analyse the surface-code quantum error correction under a continuous feedback-based protocol. Second, we study the fundamental question of self-correcting quantum systems using the control method of reservoir engineering. Next, we study the scalability of a generic surface code quantum computer based on such as quantum dots and donor atoms. Solid-state qubits (quantum dots and donor atoms), especially those that are Si-based, share similarities in device structures and manufacturing processes with advanced semiconductor CMOS industry. However, scaling up those quantum devices present immense challenges related to connectivity. By applying tools and methods from the semiconductor industry, we can concretely estimate the routing limitation of a planar connectivity scheme. Finally, as part of my PhD education at the Australian National University, I took part in an industry-based research internship to develop a high-performance . We provide the full description of the software architecture, implementation details, and benchmarking results of the simulator. This page intentionally left blank. List of Publications

This thesis is based on the following collection of papers which have either been published in or submitted to peer-reviewed journals or conferences. Some of this work was completed jointly with other researchers and selections from these joint papers to be included in this thesis are only those that this author contributed significantly towards.

Journal Publications

1. Thien Nguyen, Charles D. Hill, Lloyd C. L. Hollenberg, and Matthew R. James. Fan-out Estimation in Spin-based Quantum Computer Scale-up. Scientific Reports 7, Article number: 13386 (2017) 2. Yu Pan and Thien Nguyen. Stabilizing Quantum States and Automatic Error Correction by Dissipation Control. IEEE Transactions on Automatic Control (Volume: 62, Issue: 9, Sept. 2017) Page(s): 4625 - 4630 3. Thien Nguyen, Zibo Miao, Yu Pan, Nina Amini, Valeri Ugrinovski, and Matthew James. Pole placement approach to coherent passive reservoir engineering for storing quantum . Technology (2017) 15: 193. 4. Shibei Xue, Thien Nguyen, Matthew R. James, Alireza Shabani, Valery Ugri- novskii, Ian R. Petersen. Modelling and Filtering for Non-Markovian Quantum Systems. Pre-print: arXiv:1704.00986 5. Yi Li, Thien Nguyen, and Yu Pan. Deterministic Multi-Party for Wireless Sensor Networks. In preparation. xii

Peer-reviewed Conference Publications

1. Thien Nguyen, Charles D. Hill, Lloyd C. L. Hollenberg, and Matthew R. James. Surface Code Continuous Quantum Error Correction Using Feedback. In Proceed- ings of IEEE 54th Annual Conference on Decision and Control (CDC): Osaka, Japan, December 2015 2. Yu Pan, Thien Nguyen, Zibo Miao, Nina Amini, Valeri Ugrinovski, and Matthew James. Coherent observer engineering for protecting . In Proceedings of the 35th Chinese Control Conference (CCC): Chengdu, China, August 2016 3. Thien Nguyen, Zibo Miao, Yu Pan, Nina Amini, Valeri Ugrinovski, and Matthew James. Pole placement approach to coherent passive reservoir engineering for storing quantum information. In Proceedings of American Control Conference (ACC): Seattle, WA, USA, July 2017 4. Shibei Xue, Thien Nguyen, and Ian R. Petersen. Feedback Control of a Non- Markovian Single System. In Proceedings of the 11th Asian Control Conference (ASCC) 2017: Gold Coast, QLD, Australia, December 2017 Table of contents

List of figures ...... xvii

List of tables ...... xix

1 Introduction ...... 1

1.1 Quantum Technologies1 1.2 Quantum Computing3 1.2.1 Qubits...... 4 1.2.2 Quantum Gates...... 6 1.2.3 Physical Implementations...... 9 1.2.4 Quantum Error Correction...... 11 1.3 Software and Programming 16 1.3.1 Languages...... 16 1.3.2 Quantum Simulation...... 17 1.4 Quantum Control Engineering 17 1.4.1 ...... 18 1.4.2 Quantum Input-Output Model...... 19 1.4.3 Quantum Control...... 24 1.5 Outline 25 1.6 Contributions 28 xiv TABLE OF CONTENTS

2 Solid-state Spin Qubit Control Routing ...... 29

2.1 Introduction 30 2.2 Routing Dimension Parameters 32 2.3 Solid-State Spin Qubit Unit Cell Model 33 2.4 Methods 39 2.4.1 Ring-by-ring Routing...... 39 2.4.2 Layer Optimisation Routing...... 40 2.5 Results 41 2.6 Summary 46

3 Continuous Quantum Error Correction ...... 49

3.1 Quantum Errors 49 3.1.1 Quantum Error Correction Code...... 51 3.1.2 Surface Code...... 52 3.1.3 Previous Work...... 53 3.1.4 Contributions...... 55 3.1.5 Outline and Notations...... 55 3.2 Model 56 3.2.1 Distance-2 Surface Code...... 56 3.2.2 Continuous QEC in the SLH Framework...... 57 3.3 Methods 60 3.4 Results 61 3.4.1 Distance-2 Surface Code...... 61 3.4.2 Distance-3 Surface Code...... 63 3.5 Conclusions 65

4 Quantum Reservoir Engineering ...... 69

4.1 Introduction 70 TABLE OF CONTENTS xv

4.2 Background 72 4.2.1 Notations...... 72 4.2.2 Linear Quantum Systems...... 73 4.2.3 Lyapunov Methods...... 77 4.3 Quantum Error Correction by Dissipation Control 81 4.3.1 Scalability of Lyapunov Method...... 82 4.3.2 Error Correction Condition...... 86 4.3.3 Definition of AQEC...... 88 4.3.4 Scalability of Dissipation Control...... 90 4.3.5 Automatic Quantum Error Correction by Dissipation Control...... 92 4.3.6 Dissipation Control of 3-qubit Repetition Code States...... 95 4.4 Decoherence Free Subsystem Synthesis 98 4.4.1 Open-loop Reservoir Engineering for DFS Generation...... 99 4.4.2 Coherent Feedback Reservoir Engineering...... 103 4.4.3 Special Case 1...... 109 4.4.4 Special Case 2...... 111 4.4.5 Examples...... 112 4.5 Concluding Remarks 117

5 Quantum Programming and Simulation ...... 119

5.1 Quantum 120 5.1.1 Quantum Assembly Language...... 121 5.1.2 High-level Programming and Data Processing...... 122 5.2 Simulation Engine 124 5.2.1 Overall Architecture...... 125 5.2.2 Technical Implementation...... 126 5.2.3 Benchmark Results...... 128 xvi TABLE OF CONTENTS

6 Simulating Input-Output Quantum Systems with LIQUi ...... 133 |⟩ 6.1 Background 134 6.1.1 Single- State...... 135 6.1.2 Compound Gradient Echo Memory...... 137 6.1.3 Engineering Dissipation Control...... 139 6.1.4 Trotter Decomposition...... 140 6.2 Models and Results 142 6.2.1 Amplitude Damping Set-up...... 142 6.2.2 Toy Example: Single-Atom Memory...... 142 6.2.3 Discretized Gradient Echo Memory...... 144 6.3 Conclusions and Future Work 146 6.3.1 Summary...... 146 6.3.2 The Path Forward...... 147

7 Concluding Remarks ...... 149

7.1 Where We Stand 149 7.2 The Way Forward 150

References ...... 153

A Appendix Mathematical Proofs ...... 169

A.1 General form of the QSDE for continuous error correction in Chapter 3 169 A.2 Proof of the scalability condition (4.44)-(4.45) 172 A.3 Proof of the condition (4.52)-(4.53) 173

B Appendix Feynman Path Integral Simulation With FPGA ...... 175

B.1 Method Overview 175 B.2 FPGA Implementation 177 B.3 Software Components 179 B.3.1 Host Program...... 179 TABLE OF CONTENTS xvii

B.3.2 FPGA Kernel...... 179

Index ...... 183 This page intentionally left blank. List of figures

1.1 Qubit ...... 5 1.2 Solid-state qubit diagram...... 6 1.3 Quantum gate timing...... 9 1.4 Quantum gate decomposition...... 10 1.5 Surface code layout diagram...... 13 1.6 to measure surface code syndromes...... 13 1.7 Logical CNOT gate braiding diagram...... 14 1.8 Logical CNOT gate by braiding holes in surface code...... 15 1.9 Active and passive QEC diagram...... 19 1.10 Diagram of a typical quantum filtering set-up...... 20 1.11 SLH network connections...... 21 1.12 Diagram of beamsplitter in series with cavity QED...... 22 1.13 Sample QHDL code...... 23 1.14 Sample QHDL schematic...... 24 1.15 Measurement feedback block diagram...... 25 1.16 Coherent feedback block diagram...... 26 1.17 Overall architecture of a universal quantum computer...... 27

2.1 Routing parameters...... 32 2.2 Diagram of surface code lattice with embedded readout devices...... 34 2.3 Diagram of a generic surface code array unit cell...... 35 2.4 Metal 1 pitch scaling roadmap from ITRS...... 36 2.5 Ring-by-ring routing...... 39 2.6 Layer optimal routing...... 40 2.7 Illustration of 2-D qubit lattice surface gate fanout...... 42 2.8 Fanout scalability at fixed interconnect length...... 43 2.9 Qubit fanout scalability in terms of number of routing layers...... 45 2.10 Fan-out scalability vs. interconnect length for SSI and ECI schemes...... 46

3.1 Surface code layout diagram...... 52 3.2 Distance-2 surface code...... 56 3.3 Surface code continuous error correction diagram...... 58 xx LIST OF FIGURES

3.4 Syndrome estimation trajectories...... 62 3.5 Continuous feedback error correction fidelity comparison...... 63 3.6 Distance-3 surface code diagram...... 64 3.7 Time-domain simulation of distance-3 surface code under continuous QEC. 66 3.8 Fidelity vs. feedback strength plot...... 67

4.1 Potential function plot...... 80 4.2 Lyapunov function scalability...... 85 4.3 State evolution simulation of repetition error correction code...... 97 4.4 Repetition error correction code under dissipative couplings...... 98 4.5 Coherent feedback network for DFS generation...... 100 4.6 Open loop setup for DFS generation...... 101 4.7 Coherent plant-observer network...... 109 4.8 Coherent feedback network for DFS generation...... 111 4.9 Two-cavity system diagram...... 115

5.1 AQASM example...... 122 5.2 AQASM QFT example...... 123 5.3 PyAQASM QFT example...... 124 5.4 Quantum simulator diagram...... 125 5.5 Path integral diagram...... 127 5.6 Quantum circuit simulation objects...... 128 5.7 Benchmark of Hadamard gates...... 129 5.8 Comparison with Liquid...... 130 5.9 Comparison with other simulators...... 130

6.1 QHDL design flow...... 135 6.2 Single-photon generating filter cascading realization...... 136 6.3 Gradient settings for GEM operations...... 137 6.4 Engineered dissipation by direct coupling...... 139 6.5 Quantum circuit of cascading Hamiltonian unitary...... 141 6.6 Discretized single-photon GEM model...... 142 6.7 Amplitude damping LIQUi code snippet...... 143 |⟩ 6.8 Histogram of photon detection events...... 144 6.9 Photon absorption vs. photon bandwidth...... 145

B.1 OpenCL implementation of complex arithmetic...... 177 B.2 OpenCL implementation of multiplication and summation kernels...... 180 List of tables

1.1 Types of experimental quantum (qubits)...... 7 1.2 Hadamard gate implementation steps...... 10

2.1 Gate count configurations for spin shuttling interconnect (SSI) and end control interconnect (ECI) protocols...... 37 2.2 Minimum interconnect length for spin shuttling interconnect (SSI) and end control interconnect (ECI) protocols...... 39

3.1 Fidelity and trace distance comparison...... 62

5.1 Technical details of the quantum simulator...... 126 5.2 Memory capacity and bandwidth...... 126 This page intentionally left blank. Chapter 1

Introduction

Technology is anything that wasn’t around when you were born.

Alan Kay

1.1 Quantum Technologies

The discovery of quantum physics in the early 20th century has fundamentally changed our understanding of the physical world at the microscopic scales. Quantum , which said that objects could be in different states (superposition) at the same time and correlate over long distance without any direct contact (entanglement), has since become universally accepted as the most accurate description of physical systems. The so-called second quantum revolution [37] has started a few decades ago pi- oneered by both physicists and computer scientists. The novel ideas which brought about this second wave of quantum revolution are, instead of avoiding quantum effects, we could transform it from a theory for understanding nature into utilising them as computing and engineering resources. 2 Chapter 1. Introduction

Quantum Mechanics Primers • Quantum States (Superposition) A quantum particle can be in two or more states at the same time. The can be described mathematically by a Hilbert space, which is described by vectors with complex coefficients. • Composite Systems (Entanglement) The joint state of multiple quantum systems thus can be described by a product of their Hilbert spaces. This tensor product results in an exponential growth in the dimensionality of the composite system. Unlike classical counterparts, quantum composite systems can be inseparable in the sense that we can not describe them individually as separate compo- nents. This is the principle of which is one of the fascinating quantum phenomena.

Quantum technologies will lead to significant advances in precision timing, sensors and , have a substantial impact on the finance, defence, aerospace, energy, infrastructure and telecommunications sectors. For example, • Ultra-high-precision spectroscopy and microscopy, positioning systems, clocks, gravitational, electrical and magnetic field sensors. • Quantum-safe secure networks and quantum key distribution. • Universal quantum computers: quantum , modelling materials, , biological systems. One of the emerging quantum 2.0 fields, quantum computing [122], is a significant breakthrough and paradigm shift in our intuition and understanding of computation. Sci- entists and industries are developing quantum algorithms and applications which could potentially speed advancements in materials science [8, 67], financial modelling132 [ ], and artificial intelligence24 [ , 39]. However, realising a quantum computer is as challenging as the very problems it can solve. There are multitudes of challenges from the device fabrication up to the software to run quantum algorithms. Another essential field of is quantum control [197, 198, 128, 36] 1.2 Quantum Computing 3

whose goal is to control physical systems whose behaviour is governed by the laws of . We will explore fundamentals of quantum computing, quantum programming lan- guage and simulation, and quantum control in greater details in the next sections.

1.2 Quantum Computing

Quantum computers make use of a quantum-mechanical phenomenon (e.g. superposition and entanglement) that allows data to be represented as quantum bits (qubits) - these are not constrained to conventional 0 or 1 binary values, but instead can be a superposition of zero and one simultaneously. Hence, a set of qubits can represent exponentially more values than their classical- counterparts1. This makes quantum computing a promising platform which could potentially solve computational problems unmanageable for even the most advanced conventional . To be qualified as a quantum , there are several necessary condi- tions which are often summarised as the DiVincenzo’s criteria [34] for scalable quantum computers. They are, 1. well-defined qubits: addressable and coherently manipulable, 2. initializable to a well-defined quantum state, 3. long times relative to gate times of a universal set of gates, and 4. high quantum efficiency measurements. Building a quantum computer, despite how challenging it is, is not in itself the end goal of quantum computing research. Realizing quantum computing capability demands that hardware fabrication and control efforts be augmented by the design and development of quantum algorithms/software. The latter part has seen tremendous progress being made in the last few decades following the seminar paper of [157] which sparks the public interest in quantum computing. Despite not having a real quantum computer, researchers have come up with a host of quantum algorithms to solve , searching, and simulation problems.

1In this comparison, classical bits refer to the unit of information (bit) in . In fact, classical probabilistic state spaces also scale exponentially in dimension, hence require specialized computational algorithms such as the Monte Carlo method. 4 Chapter 1. Introduction

Quantum Algorithms • Shor’s [157, 158] This is one of the first applications of quantum computers which states that there exists an efficient way to factor a product of two prime numbers. This has a huge implication since the difficulty of prime factorization problem is the foundation of our public-key cryptosystem. • Grover’s algorithm [62] Grover’s quantum for unstructured data is quadratically faster than its classical counterpart. • HHL algorithm [65] Named after its authors, Harrow, Hassidim and Lloyd, HHL algorithm gives us the capability to solve systems of linear equations. This paves the way to transform optimization and machine learning applications to the quantum domain. • Quantum Simulation This includes the fields of quantum chemistry, material science, and . Quantum simulation utilizes the most accurate description of properties and dynamics of systems at nano-scale. Potential applications are catalyst design (e.g. carbon/nitrogen capture), drug development, and .

1.2.1 Qubits A probabilistic classical bit can then be represented by a sum of these state vectors: p 0 + q 1 , where p and q are real numbers in the unit interval that represent the | ⟩C | ⟩C of finding that bit in either state, e.g. the bit has a probability p of being in the 0 state. We always have p + q = 1, and the state 1 0 + 1 1 represents a | ⟩C 2 | ⟩C 2 | ⟩C uniformly random bit. Of course, when we measure the state, it can only be in the state of 0 or 1 after measurement. 1.2 Quantum Computing 5

A quantum bit or qubit has a similar structure. It has two output states, 0 and 1 , | ⟩ | ⟩ and a general qubit state is represented as a sum of vectors α 0 + β 1 , except now the | ⟩ | ⟩ weights α and β are complex numbers so that α 2 + β 2 = 1. | | | | The probability of the qubit being in state 0 is given by α 2, and similarly, β 2 | ⟩ | | | | gives the probability of observing outcome 1 . Mathematically we represent qubit states | ⟩ as vectors whose elements are the coefficients are α and β.

α ψ = α 0 + β 1 , α, β C (1.1) | ⟩ | ⟩ | ⟩ ≡ β  ∈   Indeed, a qubit has many more states than a random (probabilistic) classical bit. This can be demonstrated geometrically by the Bloch sphere: the states of a probabilistic bit lie on the line between the north and south poles, while the states of a qubit occupy the whole surface of the sphere. The basis states of 0 and 1 then reside on the north and | ⟩ | ⟩ south poles.

Fig. 1.1 Qubit Bloch sphere: (left) A qubit state can be in any place on the surface of the sphere; (right) A random classical bit can only exist on the north-south poles line.

Mathematically, multi-qubit states are composed via the tensor product. Hence, the state space of qubits scales exponentially with the number of qubits. Despite its huge state-space, we can only ever extract n classical bits of information from an n-qubit system. Therefore, quantum computers are suitable for applications studying global properties of functions and data. 6 Chapter 1. Introduction

Experimentally, there are a wide-range of physical systems which can be used to implement qubits. Some of the more prominent platforms are listed in Table 1.1. The number of qubits quoted in Table 1.1 is based on the current fabrication technology. In this thesis, one particular platform which will be studied in great details is the donor-based qubit system (donor atoms). In fact, doping Si crystal with impurity has been used in the semiconductor industry to fabricate MOS transistors for decades. However, doping control down to single-atom level [155, 140, 178] is what enables quantum computation. Donor atoms, like Phosphorous, have one extra valence which is naturally confined by the atomic potential of the donor atom itself. Therefore, the electron’s degrees of freedom, such as spin, can be utilised as quantum information carrier (qubit). The pictorial illustration of a donor-based qubit is shown in Fig. 1.2, which is similar to the original configuration proposed by Kane [87].

A J A

P P

D

1 Fig. 1.2 Diagram of the Phosphorous in donor spin qubit. The donor atom has one extra electron whose spin is used as qubit. The surface A gate on top of the atom controls the hyperfine interaction which can be used together with a magnetic fieldto perform addressable single-qubit operations. The J gate in between two adjacent atoms controls the inter-qubit coupling which is used to implement two-qubit gates.

1.2.2 Quantum Gates Quantum algorithms are often described by sequences of quantum operations which are quantum gates. Mathematically, quantum gates are complex matrices by which the quantum state vector gets multiplied. This transformation by a single-qubit quantum gate can be visualised by rotation on the Bloch sphere. If classical algorithms are represented by boolean circuits, quantum algorithms are described by a sequence of quantum gates which are referred to as quantum circuits. 1.2 Quantum Computing 7

Table 1.1 Types of experimental quantum bits (qubits)

Physical System Characteristics Trapped ions [92, 114] -controlled charged ions are used as qubits. Coherence time: hours Long coherence time but gate operations are also slow. Gate fidelity: >99.9% Scalability issues w.r.t. laser control. Max number of qubits: 10-50

Superconducting resonators [33] Electrical LC oscillators with zero resistance. Coherence time: 10-100 µs Electrically-controlled by microwave signals. Gate fidelity: >99.5% Operates at cryogenic temperature. Max number of qubits: 50+

Quantum dots [101, 10] Gate-defined nano structures in semiconductor materials. Coherence time: µs - ms Small (nano-scale) qubits, electrically controlled. Gate fidelity: >99% Using the same fabrication technology as classical Max number of qubits: 2-5 chips. Relatively few interacting qubits can be demonstrated.

Donor atoms [48, 47] Coherence time: up to secs Single dopant atom site in semiconductor. (nuclear spins) Both nuclear and electron spins can be used as qubits. Gate fidelity: >99% Single-atom doping is challenging. Max number of qubits: 2-5

Diamond vacancies (NV centers) [192, 203] Nitrogen atom in diamond and a vacant lattice site. Coherence time: secs Laser-controlled and can operate at room temperature. Gate fidelity: >99% Difficult to couple multiple NV qubits for quantum Max number of qubits: 5-10 computing.

Topological qubits [117, 2] Quasi non-local particles (majorana fermions). Can have extreme long coherence time due to Coherence time: unknown non-locality. Gate fidelity: unknown Less developed theoretical and experimental capabili- Max number of qubits: 1 ties.

There are complementary frameworks which can be used to describe quantum algorithms (e.g. tensor networks and graphical flow diagrams [25]). However, the quantum circuit 8 Chapter 1. Introduction framework is by far the most widely-adopted thanks to its analogy to the classical logical boolean circuit framework. A quantum gate or quantum is a fundamental quantum circuit operating on a small number of qubits. They are the analogues for quantum computers to classical logic gates for conventional digital computers. gates are reversible, unlike many classical logic gates. Mathematically, we represent quantum logic gates using unitary matrices. For example, the Hadamard gate, which operates on a single qubit, is represented by the : 1 1 1 H = . (1.2) √2 1 1 −   Another widely-used set of single-qubit gates are called Pauli gates whose matrices are: 0 1 0 i 1 0 X = , Y = − , Z = . (1.3) 1 0 i 0  0 1 −       Given a single-qubit gate which is represented by a unitary matrix U, a controlled-U gate is a two-qubit gate as follows:

1 0 0 0 0 1 0 0  C(U) = . (1.4) 0 0 u u   00 01   0 0 u10 u11     where u00 u01 U = . (1.5) u10 u11   is the original gate matrix. 1.2 Quantum Computing 9

Universal Quantum Gates A set of quantum gates is universal if any operation possible on a quantum computer can be reduced to it. For example, the set of the Hadamard gate (H), a phase rotation gate (by an arbitrary angle), and the controlled-NOT (CNOT) gate is universal.

1.2.3 Physical Implementations Logical qubit operations (quantum gates) have to be experimentally implemented via complex instrumental control schemes. For instance, to perform quantum operations on donor electron spin qubits, we utilise the two available surface gates/contacts (A and J) as shown in Fig. 1.2 together with the applied magnetic field. Then, the scheme of Hill et al. [70] can be used to implement single qubit gates as well as the CNOT gate. As an example, the Pauli X-rotation on solid-state spin qubits can be performed in two steps. Firstly, the target qubit is rotated by 2π while all other qubits are rotated 2π +θ by applying voltage on their A-gates thus increasing their rotation speed. We have created a relative rotation of θ as desired between the target qubit and all other “observer” qubits. However, to correct the overall rotation, we need to perform a correction by rotating all qubits by θ around X-axis. This time we apply voltage on all A-gates since we want all qubits to rotate evenly. The procedure is depicted in Fig. 1.3.

A1

Jk

Ai=1 6 Target: R (2π) I Target: R (θ) x ≡ x Observer: R (2π + θ) R ( θ) Observer: R (θ) x ≡ x − x

Fig. 1.3 Timing diagram to implement X-rotation on donor spin electron. A1 is the A-gate contact of the target qubit.

Similar techniques can be used to rotate the qubit around an arbitrary axis. Indeed, ˆ ˆ the Hadamard is nothing but a π rotation around the axis mˆ = i+k (iˆ, jˆ, and kˆ are basis √2 vectors), which can be implemented similarly as the X rotation. The steps to perform a Hadamard gate is summarised in Table 1.2. For more information, see Hill et al. [70]. 10 Chapter 1. Introduction

Table 1.2 Hadamard gate implementation steps

Step Target qubit Observer qubits

1 Rm(π) HRx(α) ≡ 2 Rx(2π) IRx( α) ≡ −

We can pretty much apply arbitrary single-qubit rotation using this technique. Two- qubit gates, such as the CNOT gate, can be achieved by using the following decomposi- tion,

I X I X CNOT = (H I)exp iπ − − (H I) ⊗ 2 ⊗ 2 ⊗ π π  = (H I) Rx Rx (1.6) ⊗ 2 ⊗ 2 π h    i exp i X X (H I). × 4 ⊗ ⊗   The only two-qubit operation in Eq. (1.6) is exp i π X X , which can be implemented 4 ⊗ straightforwardly using the coupling H = J(σ σ) term, where σ are the Pauli spin ⊗ matrices (with eigenvalues 1), as ± π π exp i X X = (X I)exp i σ σ 4 ⊗ ⊗ 8 ⊗ (1.7)    π  (X I)exp i σ σ . × ⊗ 8 ⊗   Using quantum circuit notation, we can express the sequence of gates to implement a CNOT gate between two qubits as in Fig. 1.4, which is physically executed by pulsing the A’s and J surface metal gates.

π a H X X Rx H a | i 2 | i π π  U 8 U 8   b R π a b | i x 2 | ⊕ i  π π Fig. 1.4 Quantum circuit decomposition of a CNOT gate. U 8 = exp i 8 σ σ . Each of the decomposed elements can be realized by properly-timed pulsing of⊗ the surface gates (A and J).   1.2 Quantum Computing 11

This type of quantum gate decomposition is a crucial aspect of the quantum software stack which we will explore in Chapter 5. Since each qubit hardware architecture can handle a specific set of elementary gates (satisfying the universality condition), itisthe task of the software stack to translate from an hardware-agnostic quantum computing instructions into the actual physical gate operations which the underlying hardware platform can support [109, QSh]. This is pretty much similar to what a is doing when you wrote classical computer codes, i.e. converting from text-based high-level programming languages into assembly bytecodes for the particular target platform. Developing an effective tool- chain for quantum programming can potentially improve the productivity of algorithm development and also lower the entry barrier of quantum computing since most of the complication of underlying physical hardware can be abstracted away and hence developers can rely on a uniform computing model at the top of the stack.

1.2.4 Quantum Error Correction The most prominent drawback of the technology is that qubits are inherently fragile. Hence, they can only retain quantum information for a tiny amount of time. Interactions within the system and with a noisy environment are typically the limiting factors of coherence time: the duration during which the underlying qubit system retains its quantum properties. Therefore, the best devices require extremely clean control signals and cryogenic operation to reduce thermal noise. Those random fluctuations will occasionally flip or randomise the state of aqubit, potentially corrupting the computation. Hence, to create a “functional” quantum com- puter, we need a quantum computer that is fault-tolerant in the sense that the quantum computer must be able to detect failures so that they do not spread in space and time during computation and hence can be corrected. One of the most prominent contributions of fault-tolerant quantum computing re- search is the invention and the continuous improvement of various quantum error correction (QEC) codes [52, 53, 30, 148, 32, 161, 189, 43, 42, 162, 167, 164, 118], which provide a potential pathway to achieving universal quantum computing. 12 Chapter 1. Introduction

The goal of quantum error correction is to use redundancy and correction to realise logical qubits with improved error rates as compared with that of the elementary qubits. The fault-tolerance threshold [99], which is the qubit failure probability below which reliable quantum computation becomes feasible, is the standard measure of fault-tolerant quantum computing, where error propagation is constrained such that error correction protocols remain effective [54]. Among a wide variety of quantum error correction codes, the surface code [30, 94, 45, 189, 43] has stood out in terms of computational error threshold which is about two orders of magnitude higher than that of conventional concatenated coding schemes. The critical feature is that implementing the surface code requires a regular 2-D arrangement of qubits, where neighbouring qubits interact with each other in a pairwise manner and in parallel (see Fig. 1.5). Qubits are classified either as data qubits or syndrome (ancilla) qubits according to their roles in the quantum error correction procedure. Each syndrome qubit measurement fixes an eigensubspace ofa stabilizer operator, which involves all four neighbouring data qubits. Logical qubits are defined as topological defects on the qubit lattice where syndromes are not measured. Thus, there are two types of logical qubits, so-called smooth (Z-cut) and rough (X-cut) logical qubits. The code distance is defined either by the perimeter of the defects or the distance between them, whicheveris smaller. Interested readers should consult Fowler et al.[43] for an in-depth review. For surface code, there are only two types of syndromes: Z or X syndromes, which stand for ZZZZ or XXXX operators acting on the four data qubits. The Z and X syndromes are measured by performing a sequence of CNOT gates between the ancilla and its four neighbouring data qubits as shown in the quantum circuit diagrams in Fig. 1.6a and 1.6b, respectively. Logical qubits are defined as topological holes (defects) on the qubit lattice where syndromes are not being measured. Thus, there are two types of logical qubits, so-called smooth (Z-cut) and rough (X-cut) logical qubits. The code distance is then defined either by the perimeter of the holes or the distance between them, whichever is smaller. The reason is that an uncorrectable error occurs in surface code whenever physical qubit errors form a continuous chain surrounding a hole or connecting two holes. It is worthwhile mentioning that the boundary of the code lattice could also be considered 1.2 Quantum Computing 13

1 X 2 X 3 X 4

Z 5 Z 6 Z 7 Z

8 X 9 X 10 X 11

Z 12 Z 13 Z 14 Z

15 X 16 X 17 X 18

Fig. 1.5 Surface code layout: white circles represent data qubits; filled circles are syndrome qubits (X stabilizers in green and Z stabilizers in yellow). Each internal stabilizer acts on four adjacent data qubits, while boundary stabilizers act on either two or three data qubits.

0 M 0 H H M | i Z | i Z a a | i | i b b | i | i c c | i | i d d | i | i (a) Z-syndrome measurement (b) X-syndrome measurement

Fig. 1.6 Quantum circuit to measure surface code syndromes. The first line represents the ancilla, while the following lines represent the surrounding data qubits. as a superficial hole. Therefore, crossing the boundary from one end to the opposite or connecting one hole to the boundary are also irreversible logical errors. Interested readers should consult [43] for an in-depth explanation. The bigger and farther apart the surface code holes are, the higher code distance we can get. Therefore, the ability to fabricate a gigantic lattice of qubits is pivotal in making the surface code to work. Besides, because the logical CNOT operation in the 14 Chapter 1. Introduction surface code involves braiding a pair of holes as shown in Fig. 1.7, the actual distance between two distance-d holes needs to be at least 3d. An example of the CNOT braiding evolution [43] between an X-cut qubit and a Z-cut counterpart is illustrated in Fig. 1.8. In the surface code layout, a pair of holes that are 3d apart will serve as a unit cell. Braiding operations can be optimised at the architectural level with regard to the computation time or lattice area as shown in [135]. At the micro-architectural level, on the other hand, we need to be able to keep track of the holes’ locations as well as grow and shrink them by turning off and on the respective syndrome qubits.

1st pair of holes

2nd pair of holes

Time Fig. 1.7 Braiding diagram of a logical CNOT gate in surface code with time axis running horizontally.

The code distance is calculated by the intrinsic error rate of the underlying qubit hardware as well as the threshold of the selected error correction code, as following [86]

d+1 εphysical ⌊ 2 ⌋ εlogical C1 C2 , (1.8) ≥ ε  threshold  where C1 and C2 are constants that are code-dependent. For surface code, according to

[46], the values for C1 and C2 are 0.13 and 0.61, respectively. We denote the error rate per logical gate operation as εlogical, which depends on the target success probability of the algorithm and the number of logical gate operations to complete it. An entire algorithm success rate of εalgo will require εlogical εalgo/Nlogical, where Nlogical is the ≈ number of logical gate operations required for the entire computation. The physical error rate εphysical is the experimental fidelity of the qubits, which is compared against the threshold of the surface code at εthreshold 1% to determine the minimum code distance ≈ 1.2 Quantum Computing 15

3d

(a) Original holes (b) Growth hole A

(c) Shrink hole A (d) Growth hole A

Fig. 1.8 Logical CNOT gate by braiding holes in surface code. The braiding is done by expanding and shrinking a hole. In order to maintain the code distance d throughout this process, the orginal holes need to be separated by at least 3d. d. This is the minimum code size that can guarantee the algorithm to be completed with high probability. From this code distance estimation, we can asymptotically approximate the number of physical qubits needed and therefore the expected classical resources. Remember that a distance d logical qubit needs a hole covering approximately d2 physical qubits. In addition, all the holes need to be 3d apart to make sure logical CNOT gates can be readily performed between any pair of logical qubits. A simple calculation can be made 16 Chapter 1. Introduction

to estimate the number of physical qubits as follows.

2 2 Nphysical ∝ d (4 Nlogical) , (1.9) × × p in which, the number of logical qubits Nlogical is algorithm dependent, and the code distance d is from the previous estimation step.

1.3 Software and Programming

1.3.1 Quantum Programming Languages A quantum programming language is the means by which quantum algorithms, sub- routines, or applications can be expressed in a human-comprehensible form yet can be faithfully and consistently translated into sequences which imple- ments the high-level instructions across various hardware platforms. The abstraction away from the specific hardware implementation is particularly important at this stage be- cause we still have a handful of competing platforms which are very different in terms of -level operations. For application developers, a consistent and platform-independent view of quantum computation is the key to innovation and productivity. Most importantly, the programming language must obey the principles of quantum computing, namely the no-cloning theorem and the reversibility (unitary) of quantum operations. On top of that, the language itself needs to be able to cope with emerging computing models, e.g. the mix of classical and quantum data in a quantum/classical hybrid programming model. Early quantum programming language proposals from academic researchers, for example, QCL (Quantum Computation Language) [208], QGL (Quantum Gate Lan- guage) [165], Scaffold [3], Chisel-Q [100], or Quipper [60], provide the foundation for the quantum programming research community. Recently, thanks to the tremendous interest from industry in quantum computing, we have seen the released of industry- backed quantum programming languages and development kits/environment. Some of the most popular are: • LIQUi from Microsoft, embedded in F# |⟩ • Q#, also from Microsoft 1.4 Quantum Control Engineering 17

• OpenQASM and Quantum Information Software Kit () from IBM • Quil/Forrest from Rigetti • AQASM from Atos

1.3.2 Quantum Simulation Since functional quantum computers will not be available anytime soon, we need to be able to simulate quantum algorithms on conventional computers to validate and debug those algorithms. The simulation of quantum computers using first principle approach, i.e. matrix-vector multiplication, is strictly memory-bound. The memory capacity required grows exponentially with the number of qubits involved in the algorithms. For reference, one of the largest quantum circuits that have been simulated using this first principle approach is a 45-qubit simulation, which used 500 terabytes2 of memory on a state-of-the-art supercomputer [81]. There are other various approaches which could help reduce the memory requirement at the cost of computing time (space- time trade-offs) or the accuracy of the simulation (e.g. tensor product approximation methods). The lack of access to real quantum computing hardware necessitates the use of quantum simulators to test algorithms and programs. In addition, by deploying multiple computation models (not just the universal first principle linear algebra approach) on the simulator back-end, we could provide the best performance outcome for each particular quantum circuit of interest.

1.4 Quantum Control Engineering

Quantum control engineering, which has been evolving in tandem with quantum com- puting, plays a vital role in the design and realisation of quantum devices. The ideas of using feedback control to stabilise naturally-unstable systems are the cornerstone of classical control theory. Various control techniques can be deployed to autonomously correct quantum error in the same manner as the conventional QEC schemes.

21 terabyte (TB) = 1,024 gigabytes (GB) 18 Chapter 1. Introduction

Observables, Measurement and Decoherence • and Measurement The wavefunction is what defines the probability of finding (measuring) the particle’s property (e.g. velocity or position) at a certain value. When a measurement is made, the quantum state is settled (collapsed) into one of the possibilities. The outcome of the measurement is randomised according to the wavefunction (quantum state). However, after measure- ment, the quantum state is completely determined, i.e. we will always get the same measurement outcome if repeating that measurement. • Decoherence Since states collapse if measured, unintended in- teractions with the surrounding environment can lead to the “leaking” of quantum information.

In this section, I want to summarise the fundamental concepts of quantum control and the role it may play in the entire fault-tolerant quantum computing system, or “stack”. This can be visualised in the diagram in Fig. 1.9 where the quantum control layer sits just above the hardware qubit implementation. This control layer is supposed to provide fully-autonomous stability enhancement and error rejection to the underlying qubit network before any active error correction actions are applied, e.g. measuring syndrome qubits, decoding for potential errors, etc.

1.4.1 Quantum Noise The dynamics of quantum states (ψ(t)) are often described in terms of the Schrödinger’s equation. For open quantum systems, the dynamics are described by the Lindblad master equation [19] (Markovian case) which has the following form:

ρ˙(t) = i[H,ρ(t)] + L ∗(ρ(t)) (1.10) − ∑ L 1.4 Quantum Control Engineering 19

Active Error Correction

Correction

Passive Error Correction/Noise Cancellation

Dynamical decoupling (open-loop) Coherent/classical feedback control

Syndrome Measurement

Quantum Error Correction Qubit Network

Fig. 1.9 Combination of passive and active techniques for quantum error correction in which the passive (autonomous) layer improves the stability and/or error rejection to the underlying qubit network before any active error correction actions are applied, e.g. measuring syndrome qubits, decoding for potential errors.

where ρ(t) is , H is the self-energy Hamiltonian operator, and the super- operator L is defined as

† 1 † 1 † L ∗(ρ) = LρL L Lρ ρL L. (1.11) L − 2 − 2

The coupling operator L in equations (1.10) and (1.11) describes the coupling (inter- action) between the quantum system of interest and the external fields (environment/bath). It is worth noting that we could in principle describe the system + bath as a whole using the interaction Hamiltonian. This so-called quantum noise model [49, 141], which describes the overall system in terms of plant and interacting fields (hence coupling operators), is the foundation of the quantum feedback control field [198, 84, 205].

1.4.2 Quantum Input-Output Model Emerging engineering problem of extracting information about the dynamical state of quantum systems through measurement created the field of quantum filtering [18] which 20 Chapter 1. Introduction is another form of the generalised continuous measurement formalism [198]. Front and centre in this theory is the interaction between the quantum field and system-of-interest as shown in Fig. 1.10 which in essence has two main effects. Firstly, information about the system is gained by observing the field output which we will harvest using filtering. This is the most common mechanism used in any metrology schemes. However, what distinguishes quantum measurement is the inevitable back-action effect which dictates a conditional or posterior state of the system consistent which an observed outcome.

System Measure before after measurement interaction interaction signal estimate filter B(t) Bout(t) Y (t) Xˆ(t)

Fig. 1.10 Diagram of a typical quantum filtering set-up.

QHDL (Quantum hardware Description Language) is one of the very first Computer- Aided-Design (CAD) tools for quantum systems built upon the concept of (S, L, H) encapsulation. This formulation provides a common thread in the design and verification flow from schematic capture to an HDL-like description and basic dynamical simulation with both symbolic and numeric capabilities. Thanks to QHDL, a wide variety of optical devices can be described in a systematic way that is ready for integration, such as quantum optical logic gates [107], Set-Reset latch [105], or fully-coherent error- corrected [90]. In the quantum input-output formalism [50], the stochastic evolution of an open

Markov quantum system driven by vacuum noise inputs (dA(t)′s) is given by the Hudson- Parthasarathy Quantum Stochastic Differential Equation [79]:

dU(t) = iHdt + (S I)dΛ(t) (1.12) {− − † † 1 † + dA (t)Li L SdAi(t) L Lidt U(t), ∑ i − i − 2 i i  ) in which, the unitary evolution U(t) is defined on the combined space of the system plant and coupling fields. Any system operator dynamics can be derived from that using the relation X(t) = U(t)†XU(t). The resulting operator-based differential equations 1.4 Quantum Control Engineering 21 are referred to as Heisenberg-Langevin equations and completely equivalent to the Schrödinger picture master equation. This Heisenberg-picture dynamical model can be parametrised conveniently by a triple G = (S, L, H), where H is the internal Hamiltonian, L = Li is a set of coupling { } operators (e.g. annihilation operators for amplitude damping), and S is a unitary input- to-output scattering matrix (e.g. beam-splitters in or quantum point contacts in solid-state). This parametrisation scheme is often referred to as the SLH theory [55, 56]. The network part of this model is what important since from the three parameters and the given network topology we can compute the equivalent SLH model of the entire network thanks to the two basic rules as shown in Fig. 1.11.

G1  G2

G1 G2 C G1

2 G G1 G2

Fig. 1.11 SLH network connections: (left) Concatenation and (right) Cascading.

Mathematically, these two connection rules can be expressed as:

S1 0 L1 G2 ⊞ G1 = , ,H1 + H2 , (1.13)  0 S2   L2        † G2 G1 = (S2S1,L2 + S2L1,H1 + H2 + Im L S2L1 ). (1.14) ◁ { 2 } This is the backbone of the QHDL toolbox, whereby network topology (can be in the form of schematics or Verilog-style inputs as shown in the below example) is processed symbolically to derive the overall network model. The system dynamics can then be simulated by differential equation solvers. 22 Chapter 1. Introduction

Besides the bottom-up approach, we can also perform a top-down decomposition in the SLH framework by the network synthesis theory [127]. Given an arbitrary SLH model which may contain a large number of internal dynamical variables (optical modes or qubits) and inputs/outputs, one can always faithfully identify a suitable collection of one degree of freedom oscillator components and to connect them serially with proper Hamiltonian interaction to build up the prescribed system model. One recent development of the SLH modelling approach is the effort to extend its application to a wide variety of input states besides the conventional vacuum inputs, such as thermal field, single-photon and two-photon states [58, 125, 159, 57]. For demonstration purposes, considering a fundamental system of a beam-splitter (M) and a cavity QED (C) [187] in series as diagrammatically shown in Fig. 1.12.

γ

A˜2 κ A1 B1

B˜1 A2

Fig. 1.12 Diagram of beamsplitter in series with cavity QED.

Individually, each component can be described by its corresponding SLH parame- ters [56]3:

β α M = − ,0,0 ,  α β      √κa C = I, ,Hc ,   √γσ   −     † † Hc = ∆ f a a + ∆aσ+σ + ig(σ+a σ a ), − − −

where κ and γ are the cavity and atomic decay rates, respectively; ∆ f and ∆a are the detunings; g is the coupling constant between the field and atomic transition.

3assuming instantaneous coupling 1.4 Quantum Control Engineering 23

-- Structural QHDL generated by gnetlist -- Entity declaration

ENTITY BeamSplitterNetwork IS PORT ( A1 : in fieldmode; A2 : in fieldmode; Vacin : in fieldmode; B1 : out fieldmode; B2 : out fieldmode; Vacout : out fieldmode); END MachZehnder;

-- Secondary unit ARCHITECTURE netlist OF BeamSplitterNetwork IS

COMPONENT Beamsplitter GENERIC ( theta : real := theta_value); PORT ( In1 : in fieldmode; In2 : in fieldmode; Out1 : out fieldmode; Out2 : out fieldmode); END COMPONENT ;

COMPONENT SingleSidedJaynesCummings GENERIC ( kappa : real := kappa_value); gamma : real := gamma_value); g : real := g_value); Delta_a : real := Delta_a_value); Delta_f : real := Delta_f_value); PORT ( In1 : in fieldmode; VacIn: in fieldmode; Out1 : out fieldmode; UOut : out fieldmode); END COMPONENT ;

SIGNAL A_1_in : fieldmode; SIGNAL A_2_in : fieldmode; SIGNAL A_1_out : fieldmode; SIGNAL A_2_out : fieldmode; SIGNAL B_1_out : fieldmode; SIGNAL Vac_in : fieldmode; SIGNAL Vac_out : fieldmode;

BEGIN -- Architecture statement part B1 : Beamsplitter PORT MAP ( In1 => A_1_in, In2 => A_2_in, Out1 => A_1_out, Out2 => A_2_out);

C1: SingleSidedJaynesCummings PORT MAP ( In1 => A_1_out, VacIn => Vac_in, Out1 => B_1_out, UOut => Vac_out);

-- Signal assignment part A_1_in <= A1; A_2_in <= A2; Vac_in <= Vacin; B1 <= B_1_out; B2 <= A_2_out; Vacout <= Vac_out; END netlist;

Fig. 1.13 Sample QHDL code of the cavity-beamsplitter system. 24 Chapter 1. Introduction

We can easily translate the diagram in Fig. 1.12 into a functional schematic using appropriate pre-defined components as shown in Fig. 1.14. This can then be rendered into a QHDL description as listed in Fig. 1.13 which will specify the ports, components, connections, as well as any user-defined parameters of the system. One can use thisto generate Heisenberg or Schrödinger type dynamical equations to perform simulation or verification as desired.

B2 = B˜2 = A˜2

Cavity BeamSplitter

A1 Out2 Out1 B1 In1 ( ) In1 −

In2 Out1 B˜1

VacIn UOut 2 A In Out Vac Vac

Fig. 1.14 Sample schematic using QHDL schematic capture tool: A QED cavity is connected in series with a beamsplitter.

1.4.3 Quantum Control The quantum input-output model, as captured by the (S, L, H) parameter set, bears similarities to the classical control theory. In particular, the output field channels carry information about the state of the quantum system due to the couplings as described by the L operators. This information can be probed by a controller to gain knowledge about the plant, hence can control it to the desired state. This closed plant-controller loop is the basis of quantum feedback control. Depending on the nature of the controller used in the feedback loop, quantum control can be classified into two main categories: 1. Measurement feedback The output field is measured continuously and the classical measurement signal (e.g. analog electrical signal or digitised bits) is processed by a classical controller which could be a Digital Signal Processing (DSP) chip, a Field Programmable Chip Array (FPGA), or an electronic circuit. The controller will then emit control 1.5 Outline 25

Target: ρ Quantum Device

I/V Est.:ρ ˆ + Meas. Filter

F

Fig. 1.15 Measurement feedback block diagram.

signals based on pre-defined control algorithms. A typical block diagram ofa measurement feedback setup is shown in Fig. 1.15. 2. Coherent feedback In coherent feedback control, the output field is fed to another quantum systems directly as input signals. One quantum system acts as the controller whilst the other is the plant. No quantum information is “leaked” to the outside world4 and thus quantum coherence is preserved in the loop. It is worth noting that besides field coupling, we could also have direct Hamiltonian coupling between the plant and controller. This can be described as an interaction Hamiltonian involves the dynamical variables of both systems. Coherent quantum feedback control is illustrated in Fig. 1.16.

1.5 Outline

This thesis will study quantum computing at various layers of the quantum “stack” as depicted in Fig. 1.17, from hardware devices to the error-correction layer as well as quantum algorithms and applications. More specifically, • Chapter 2: we investigate the routing scalability of solid-state quantum computers under 2-dimensional error-correction code, namely the surface code. By applying the classical electronics know-how regarding interconnect routing to a ubiquitous 2- D qubit array with independent gate control and readout fan-out, we will develop a concrete procedure for scalability estimation, which is adaptable to a wide range of

4when forming the feedback loop 26 Chapter 1. Introduction

Quantum System (plant) unu Field Quantum

Direct Coupling Quantum Field Quantum Controller

Fig. 1.16 Coherent feedback block diagram.

surface code implementations by adjusting the gate configuration and dimensional parameters. • Chapter 3: we look at quantum error correction from a control-engineering centric standpoint whereby we apply continuous control method to error correction qubit network. A measurement feedback scheme is used to correct quantum error continuously in real-time for a surface code 2-dimensional qubit array. The controller design in this chapter is considered classical since it acquires and processes classical measurement signals to output control signals. • Chapter 4: we extend the controller design for quantum memory and quantum error correction into the quantum realm by using techniques of dissipation control (reservoir engineering) and coherent feedback control. In this chapter, coherent feedback control technique is used to synthesise perfectly-isolated quantum infor- mation storage system, namely the decoherence-free subsystem (DFS). Given the hardware overhead of quantum error correction regarding the number of qubits depends on the quality of the underlying physical qubits, utilising control tech- niques to improve qubit stability even before any active error correction operations are applied as shown in Fig. 1.9 will potentially reduce the amount of overhead needed for fault-tolerant quantum computing. 1.5 Outline 27

Quantum Software (Algorithms)

Quantum Error Correction Logical Qubits

Quantum Gate Operations

Superconductors Ion Traps Quantum Dots Donors NV Centers Topological

Physical Qubits Quantum Hardware

Fig. 1.17 Overall architecture of a universal quantum computer.

• Chapter 5: we discuss the features and the development of a quantum programming language, namely the Atos Quantum Assembly Language (AQASM) which I was involved during my research internship at their quantum research lab in Paris. The new quantum software suite also includes a classical quantum simulator based on Feynman path integral approach. The simulator was successfully tested on high-performance computing (HPC) platforms and is complementary to the linear algebra simulator. A combination of the two is shown to provide the best performance while not sacrificing the universality of the simulator. • Chapter 6: we develop a method to simulate quantum open systems based on the quantum control input-output formalism on a commercial simulator, namely Microsoft LIQUi . A combination of theoretical and practical solutions can |⟩ provide accurate and consistent simulation results when using a digital gate-based quantum simulator instead of conventional solver-based simulators. Lastly, Chapter 7 summarises the content of this thesis with a brief outlook on future work on quantum control, quantum computing architecture, and quantum programming language. The follow-up Appendices provides detail proofs and additional information as referred to in the main text. 28 Chapter 1. Introduction

1.6 Contributions

The aims of this thesis are (i) to study a scalability aspect (fanout routing) of fault-tolerant quantum computation from an engineering perspective (Chapter 2), (ii) to apply quantum control technology to improve the stability of qubit systems which are the foundation of the quantum computing hierarchy (Chapter 3 and 4), and (iii) to develop practical solutions to enhance quantum (Chap- ter 5) and to bridge the gap between the digital gate-based simulation model and the dynamical open quantum system model which is the cornerstone of quantum control theory (Chapter 6). It represents the author’s attempt to contribute to knowledge through academic research and industry engagement activities. Specifically, Chapter 2, 3 and 4 are derived from published works in peer-reviewed journals or conference proceedings. Chapter 5 summarises the author’s research results accomplished during an industry internship with Atos Quantum Lab in Paris, France. Not only was the quantum simulator successfully commercialised, but a patent has also been granted5 for the simulation method, demonstrating the originality of the work. Chapter 6 is based on the report that the author produced as an entry to the worldwide Microsoft Quantum Challenge in which he won the Grand Prize. In this work, the author has “extended LIQUi ’s capabilities by supplementing the existing Hamiltonian |⟩ simulator with an innovative gadget for simulating dissipation. This clever use of amplitude-damping noise enables a quantum computer to be used to simulate open quantum systems as well as closed systems, and has important applications in real-world situations.”6, according to the judges from Microsoft.

5France patent No FR3064380, Cyril Allouche and Thien Nguyen,“Procede de Simulation, Sur un Ordinateur Classique, D’un Circuit Quantique”, September 28, 2018 6https://www.microsoft.com/en-us/research/blog/microsoft-quantum-challenge-results-are-in/ Chapter 2

Solid-state Spin Qubit Control Routing

Every person should have their escape route planned.

Simon Pegg

The need for quantum error correction has a profound implication on the scalability of future quantum computers. For example, some of the significant problems which need to be addressed are overhead and complexity in terms of the number of qubits, the qubit layout design to maintain fault-tolerant properties, and the coordination between quantum and classical software algorithmically to decode and correct errors as well as perform the intended on the quantum computer. This chapter aims to study the fan-out routing scalability, i.e. the ability to route planar electrical wires, of surface-code quantum error correction code. To deal with this question, in this chapter we apply the well-developed routing techniques of modern semiconductor chip design to solid-state qubit platforms. This chapter proposes a parametrization scheme which models the qubit layout in terms of the surface gate count and spacing dimension. The results strongly indicate a bottle-neck which requires novel architecture designs or technological breakthroughs to provide long-term scalability of surface code solid-state quantum computers. 30 Chapter 2. Solid-state Spin Qubit Control Routing

2.1 Introduction

Building a large-scale quantum computer which can solve classically intractable prob- lems is a technologically daunting task. With their close connection to highly scalable classical electronics [72] solid-state spin qubit platforms, such as donor-based qubits [87, 155, 178, 38, 47, 144, 150, 206, 116] and quantum dots [177, 64, 206, 182, 89, 183], are emerging as promising candidates [10, 40] for scalable quantum computation. On semiconducting materials, e.g. Si, SiGe, or GaAs, it is possible in principle to fabricate a large number of interconnecting qubits for quantum information processing. However, in designing such a large-scale solid-state quantum chip, there is still a gap between the quantum computer architecture [133, 28, 73, 147, 32, 35, 108, 86, 71] and the physical qubit device implementation [177, 64, 206]. Architectures necessarily must incorporate fault-tolerant quantum error correction in order to perform quantum algorithms [122] at the logical quantum gate level. The physical implementation generally deals with individual qubits on the basis of physical quantum gate operations, initialisation, and readout which are the foundation for higher level quantum logical operations. In the middle ground, quantum computer micro-architectures [86, 180, 71] attempt to bridge that gap by providing engineering solutions to issues such as classical control, fan-out interconnects, and chip layout. One key advantage of the surface code is its nearest-neighbor interaction scheme which scales favorably over the concatenation approach. However, this scheme also re- quires a two-dimensional qubit layout and parallel control. In terms of micro-architecture considerations, one must account for (a) the spatial/geometrical requirements of a 2D nearest-neighbor interacting qubit array, and (b) the temporal/control requirements of parallel/synchronous QEC operations. Broadly, one can identify two approaches. In the ubiquitous independent control model, each quantum element (qubit, gate, interconnect, readout) are controlled independently. In principle, this approach has the highest density of quantum control gates each of which must be carefully characterised and timed to allow for parallel operation across the qubit array (in a number of steps which does not depend on the array size). At the other extreme, in the distributed control model introduced in Hill et al. [71], a high degree of multiplexing allows sufficiently large groups of qubits to be controlled and readout with the required parallelism. 2.1 Introduction 31

Some authors have attempted to address the problem in the independent control approach by assuming the qubit lattice can be broken into smaller sparsely linked 2D arrays [181], however, such tiling schemes in general present significant difficulties in implementing the full range of logical operations required by the surface code. We instead focus on the spatial/geometrical challenge of fabricating and scaling up of the full monolithic surface code under the assumption of the independent (non-distributed) control model in order to compare with the distributed control scheme. Quantum interconnect protocols to reduce the qubit density are encapsulated in our study by adding extra coupling surface gates which drive the transport protocols, and assuming operational errors can be accommodated in the QEC protocol. In terms of gate density, the generalised quantum interconnect model effectively captures most interconnect mechanisms by adjusting the number of control gates per interconnect channel. Under our generalised independent control model, we apply known techniques in interconnect routing to analyse the geometrical scaling problem of surface code control fan-out. We consider two types of solid-state spin qubits: atomically confined qubits (such as donors in silicon) [87, 155, 178, 47, 144, 116] and electrostatically confined qubits177 [ , 64, 206, 182, 89, 183]. In the non-distributed indepen- dent control approach, every qubit on the surface code lattice has its own separate control and readout structures that need to be fanned out. The qubit geometry is parametrised by a universal unit cell which can be used to represent both donor-based and quantum dot implementations including the quantum interconnects to neighboring cells by adjusting the number of gates in the unit cell. Other dimensional parameters are selected based on experimental and technological considerations. We must also stress that the scalability of 2D spin qubit arrays depends on multiple factors, not just the control fan-out which we study in this chapter. In particular, one must also address the various control issues such as parallelizability, synchronisation, control characterisation, and cross-talk as well as the overall thermal budget given the system will be required to operate at cryogenic temperatures. 32 Chapter 2. Solid-state Spin Qubit Control Routing

2.2 Routing Dimension Parameters

In order to perform the routing analysis, we need to define the geometry of the wiring and via pads. In particular, planar routing on each metal layer depends on the dimension of the metal wires and the spacing between vias. These geometric parameters, which are shown in Fig. 2.1, can be defined as followings: • Pitch (p): the spacing between two neighboring pads after redistribution • Pad diameter (d): the diameter of the pads • Line width (w): the width of wires • Line spacing (s): the spacing between wires or wires and pads • Grid channel: the routing space available between two horizontal or vertical pads. Its routing capacity is calculated by:

p d s C = − − (2.1) ⌊ w + s ⌋

• Diagonal channel: the routing space available between diagonal pads. In a square array, its routing capacity is calculated by:

√2p d s D = − − (2.2) ⌊ w + s ⌋

p

grid channel d s

diagonal channel

w

Fig. 2.1 Routing parameters: pad pitch (p), wire width and spacing (w and s), pad diameter (d). The grid and diagonal channels are also indicated.

The smaller the wires, the better fanout scaling can be achieved. However, nar- row and closely-spaced interconnects also tend to compromise the signal integrity, 2.3 Solid-State Spin Qubit Unit Cell Model 33

especially at high frequency. In this work, to provide upper-bound for the scalability, we assume minimal wiring dimension of width(w) = 5 nm and spacing(s) = 25 nm. Similar nanoscale wires have been fabricated in the lab for nanowire structures [191]. This wiring dimension assumption is also consistent with the International Technology Roadmap for Semiconductors (ITRS) projection that by 2020 mainstream semiconductor manufacturing will reach nanowire diameter of 5 nm. We assume that the via contact diameter will double the wire width, i.e. d = 10 nm. Regarding the interconnect pitch (p) used for routing, as shown in (2.3), when we implement longer interconnect chains between qubits, the pitch will be extended.

2.3 Solid-State Spin Qubit Unit Cell Model

In this analysis, we will consider solid-state spin-based quantum computer platforms with a model that encompasses both donor qubits and quantum dot qubits. To construct a basic unit cell model for the micro-architectural fan-out routing analysis, the low-level physics of the quantum devices, as well as high-level quantum computing architecture, can be abstracted by making the following assumptions: • Generalised quantum spin interconnects between neighboring qubits, • Dedicated single-shot spin readout for every qubit, • Single-sided metallization routing. • Uniform interconnect dimension and spacing. The first assumption regards the mechanism by which the qubit-qubit interaction is realised. In principle, we could only implement direct spin-spin coupling, e.g. by spin exchange or dipole couplings, however, direct spin couplings require stringent spacing between qubits which restricts the control and readout routing. By adding interconnects between qubits, we have some flexibility in arranging the qubits and thus can analyse the fanout scalability accordingly. Secondly, we assume each qubit in the array has its own spin read-out device which is usually a Single Electron Transistor (SET [115]) or equivalent [27, 184, 51, 77, 149]. This assumption may appear to be more than necessary since neighboring qubits can share a common readout device by using some forms of readout multiplexing, for example, the schemes presented in [124, 71, 12]. However, for our generic fan-out analysis, this serves as a baseline scenario from which 34 Chapter 2. Solid-state Spin Qubit Control Routing we can straightforwardly adapt to other cases by modifying the gate count per qubit to reflect other specific configurations with readout multiplexing. We assume thatthe metal routing layers are built on a single side of the substrate. This is the predominant routing technology used by the semiconductor industry. Lastly, we assume that the feature size of interconnect wires is consistent between metallization layers. A pictorial representation of the qubit array structure with dedicated readout devices is shown in Fig. 2.2.

1 X 2 X 3 X 4

Z 5 Z 6 Z 7 Z

8 X 9 X 10 X 11

Z 12 Z 13 Z 14 Z

15 X 16 X 17 X 18

Data Qubits Syndrome Qubits Readout

Fig. 2.2 Diagram of surface code lattice with embedded readout devices. There are two types of qubits: data qubits and syndrome qubits (X and Z types). Neighboring qubits can interact with each other in order to perform CNOT gates. In this model, each qubit has its own readout device. Dashed lines (black) represent quantum interconnects between neighboring qubits. Dotted lines indicate qubits to which readout devices are associated.

Regarding the interconnect protocols, while there seems to be a plethora of coherent spin transport/coupling mechanisms [17, 23, 61, 199, 163, 68, 110, 176, 175, 12], for the purpose of our fanout analysis, the main factor to consider is the number of additional control gates versus interconnect length. We, therefore, consider two broad categories: (i) gate count grows linearly with the interconnect length, and (ii) gate count is fixed and independent of the interconnect length. For instance, SWAP-based interconnect and spin shuttling protocols [12, 11] belong to the first category since we need surface gates 2.3 Solid-State Spin Qubit Unit Cell Model 35 along the channel to execute the quantum operations for spin swapping or shuttling. On the other hand, protocols such as CTAP [61, 73, 111], capacitive coupling via floating gate [176], spin chain [17, 23, 199], microwave line coupling [186, 29, 123], electric dipole coupling [175], and surface acoustic wave spin transport [163, 68, 110] are some examples of the second category because in those protocols we only need to have some additional transport control gates at the ends of the interconnect not along the channel. In what follows, we will use the terms spin shuttling interconnect (SSI) and end control interconnect (ECI) for those two interconnect categories, respectively. The overall length of the interconnect is L (for interconnect schemes based on qubit chains we equivalently describe the interconnect length in terms of the number of nodes, Nnodes).

Nc

Nq

READOUT

Nc

Nr

Fig. 2.3 Diagram of a generic surface code array unit cell. Each qubit (circle) has a certain number of surface gates (Nq) to define qubit confinement potential and to perform single-qubit rotations. Between any pair of neighboring qubits, we have Nc coupling gates that are used to control qubit interconnect coupling. At the center of the cell, we have a readout device that has Nr surface gates.

In terms of physical qubit implementation, we categorise the surface metal gates that need to be fanned out for controllability and readout into three categories: qubit confining and control (Nq), interconnect coupling control (Nc), and readout (Nr). The types of physical spin qubits considered are primarily classified by the confinement mechanism, i.e. either via an atomic Coulomb potential (e.g. donors) for which we assume Nq = 1, or via electrostatic gates (e.g. quantum dots), for which we assume

Nq = 3. Since we assume spin coupling based interconnects, the center-to-center distance (pitch) between qubits needs to be sufficiently small. We use the qubit-qubit pitch of20 36 Chapter 2. Solid-state Spin Qubit Control Routing nm and 50 nm for Coulomb-confined and electrostatically-confined qubits, respectively. Using the above gate classification, the surface code lattice can be decomposed into unit cells, each of which contains one qubit and one readout device as shown in Fig. 2.3. When partitioning the surface code lattice as shown in Fig. 2.2, there are four equivalent interactions, namely along the north-east, north-west, south-east, or south-west direction. For example, the unit cell in Fig. 2.3 is a south west participation scheme where the interconnects and readout device on the bottom left of a qubit are associated with that qubit for analysis purposes. The latest International Technology Roadmap for Semiconductors (ITRS) [196], which dictates the cadence of the semiconductor industry, predicts a wire pitch (distance between two neighbouring wires) of around 20nm for the next ten years as shown in Fig. 2.4. Indeed, 24nm-pitch copper interconnect has been recently demonstrated [200, 13] to be production-worthy using the next generation lithography process. Smaller nanowires can be fabricated up to atomic precision using laboratory equipment [191]. Hence, the parameters which we use in this study are not only relevant to the laboratory experiments but also to future quantum devices fabricated by commercial foundries.

80 ITRS 2013 Production Data

60

40 Metal 1 Pitch (nm) 20

2015 2020 2025 Year Fig. 2.4 Metal 1 pitch scaling roadmap from ITRS 2013 [196]; production data is taken from 22nm and 14nm nodes [9, 119]. 2.3 Solid-State Spin Qubit Unit Cell Model 37

As indicated, we will categorise the interconnect protocols into two groups: SSI, where the number of interconnect control gate count grows linearly with interconnect length and ECI with a fixed number of interconnect surface gates regardless of intercon- nect length. The gate count assumptions for these two scenarios are listed in Table 2.1. The surface contacts are placed directly on top of the qubits, interconnect rails and

Table 2.1 Gate count configurations for spin shuttling interconnect (SSI) and end control interconnect (ECI) protocols. The interconnect node count (Nnodes) is the number of intermediate qubit nodes along the interconnect channel.

Interconnect type SSI ECI

Nc 4 Nnodes 4 × Nr 3 3 readout devices. In order to facilitate routing, these gate contacts are then redistributed into a square grid array. The surface code qubit array can then be assembled by placing unit cells next to each other, thus forms a regular global square grid array used for fan-out routing. It is worth noting that qubits (dots or donors) along the interconnect rails in Fig. 2.3 are not counted as physical qubits in the following analyses. Only the corner qubit of the unit cell which can act as a data or syndrome qubit in the surface code (Fig. 2.2) is accounted for as a physical qubit in the scalability study. In fact, several ECI schemes that we mentioned earlier do not require intermediate qubit nodes at all, e.g. microwave or capacitive coupling. For this scheme, the absolute interconnect distance is the only relevant parameter. For ECI and SSI schemes that involve qubit chains, an important issue may arise which is the loss of qubits during transfer/coupling (due to operational errors or per- manent manufacturing defects). While acknowledging that there are quantum error correction methods and techniques [15, 161, 69, 164, 118] to mitigate qubit loss, this aspect of qubit connectivity is outside the scope of our considerations here. Therefore, we assume the feasibility of reliable quantum interconnects in order to focus on the issue of fan-out routing scalability. 38 Chapter 2. Solid-state Spin Qubit Control Routing

The contact pitch after redistribution is related to the interconnect length (L) by the following inequality: unit cell dimension(L) p (2.3) RL , ≤ Ntotal(L) where N is the total number of gate contacts in a unit cell and p is the contact total p RL pitch at the redistribution layer (RL). This total gate count may or may not depend on the interconnect length. On the other hand, the unit cell dimension is proportional to the interconnect length L. We can clearly see that by increasing the length of the interconnect (L), the contact pitch after redistribution is extended since the denominator is either constant or growing on the scale of square root of L while the nominator grows linearly with L. In principle, larger pitches will benefit the global fan-out routing as more interconnect routing space is created. This is explained in the Methods section where we describe the routing parameters and the two commonly-used fan-out routing algorithms. At the redistribution layer the dimension parameters are d = 10 nm, w = 5 nm, and s = 25 nm whilst the contact-contact pitch equals to the redistributed pitch computed by (2.3). However, there is a minimum contact-contact pitch which needs to be satisfied, namely pmin = d + s =35 nm. Thus, there is a lower bound on the interconnect length to space the contacts sufficiently according to (2.3). The worst-case scenario occurs in the SSI scheme for Coulomb-confined qubits because of their tight qubit-qubit spacing and increasing number of coupling gates with interconnect length. We can estimate the minimum interconnect length by using equation (2.3) in conjunction with the gate count data in Table 2.1 and the qubit pitch assumption, e.g. for the 20 nm case we have

20nm N p nodes 35nm (2.4) RL × > , ≈ 1 + 4Nnodes + 3 p which requires a minimum interconnect length (min(Nnodes)) of 14 nodes (280 nm). Following the same procedure, we can derive the minimum interconnect length for all configurations in terms of Nq configurations and interconnect schemes as shown in Table 2.2. 2.4 Methods 39

Table 2.2 Minimum interconnect length in terms of chain node-count and absolute distance for spin shuttling interconnect (SSI) and end control interconnect (ECI) proto- cols. Qubit-qubit pitch is 20 nm for atomically confined qubitN ( q = 1) and 50 nm for electrostatically confined qubitN ( q = 3).

min(Nnodes)/Linterconnect SSI ECI

Nq = 1 (20 nm) 14 / 280 nm 5 / 100 nm

Nq = 3 (50 nm) 3 / 150 nm 3 / 150 nm

2.4 Methods

2.4.1 Ring-by-ring Routing

Fig. 2.5 Conventional ring-by-ring routing approach: the outermost ring of unconnected pads are connected first, then inner rings are connected using grid channels of theouter ring until their capacity exhausted. This procedure is then repeated on upper metal layers. The left is the routing on the first metal layer. Similarly, the middle one is the routing on the second layer, and so on. The overall procedure is depicted in the right diagram where each ring denotes the remaining pads after each layer of metallization.

A ring-by-ring router will work as follows: 1. Connect the outermost pads directly, 2. Use the grid channels between outermost pads to route internal pads on a ring-by- ring basis, 3. When all the grid channels are exhausted, move up to an upper metal layer and repeat step 1 and 2 until all pads are routed. This approach is very intuitive, as shown in Fig. 2.5. However, the major drawback of this scheme is that its boundaries are quickly shrinking layer-by-layer (as illustrated by the smaller and smaller dotted squares on the rightmost diagram in Fig. 2.5). Therefore, the routing capacity also decays as we proceed to higher and higher layer. This results in 40 Chapter 2. Solid-state Spin Qubit Control Routing

a higher number of metallization layers required as compared to the layer optimisation scheme.

2.4.2 Layer Optimisation Routing A second widely used scheme for escape routing is the so-called triangular routing [190] that is depicted in Fig. 2.6.

Fig. 2.6 Metal layer optimal routing approach: the routing procedure is performed by proceeding triangularly inward. In this way, it can deploy the diagonal channels, which always have higher routing capacity and take advantage of empty spaces resulted from previously routed pads. The left diagram shows the pads that are routed in the first layer. The middle is the routing on the next layer. The right is the overview of this routing approach.

In contrast to the intuitive ring-by-ring approach, this scheme was derived as a maximum flow optimisation problem whereby the opening space left by routed padsin lower layers are utilised maximally, as shown in the middle diagram of Fig. 2.6. This resulted in a minimal number of layers required to route all the pads. An n n array will require at least k layers of routing, where k is the smallest integer × that satisfies the below inequality [190]:

2(D + 1)(D + 2)k2 + [4(D + 1)n 10D + 8C]k n2, (2.5) − − ≥ where C and D are the grid and diagonal capacities in Eq. (2.1) and (2.2), respectively. 2.5 Results 41

2.5 Results

Generally, in order to supply the electrical signals to the control gates or the readout devices to perform qubit readout, each and every gate needs to be fanned out to connect to the classical control systems. In conventional , this is achieved by overlaying the qubit array with many metal lines on several layers. Electrical connections from these metal lines to the surface gates are made by vertical conducting “vias”. The unique advantage of Si-based solid-state quantum platforms is the compatibility with the classical CMOS electronics, whereby both can be integrated onto the same silicon chip. Classical electronics can be fabricated outside the surface code qubit lattice as shown in Fig. 2.7. At the bottom layer lies the semiconducting material substrate in which qubits are realised and controlled by surface gates. Therefore, we need to fan the surface gates out to the classical electronics area where classical processing tasks are performed. Under the generic model considered here, regardless of the interconnect protocols, the gate contacts/vias are redistributed into a square-grid array before global fan-out routing is performed, as illustrated by metal routing layers shown in Fig. 2.7. The fan-out scalability of 2D qubit arrays is examined by looking at the number of routing layers required for complete routability. As shown in Fig. 2.7, multi-layer routing can potentially provide unlimited fan-out capacity if we let the number of metal layers be unbounded. However, in practice it is imperative to keep the number of metallization layers to the absolute minimum - usually in the range of 10-15 layers for the most advanced semiconductor products [119]. The technological and economic challenges associated with fabricating many layers of nano-scale interconnects are going to be similar for the various solid-state quantum computing approaches. In the following analyses, we stretch to a 20 routing layer limit to benchmark the fan-out scalability of the various quantum interconnect schemes. We will adopt two standard routing algorithms from classical electronics, namely the ring-by-ring and the layer optimisation algorithms, which are described in detail in the Methods section. First, we look at the raw differences between the two routing algorithms at a fixed interconnect length. The triangular routing (layer optimisation) algorithm is the most efficient way to fan-out all contacts in terms of the required number of layers (see Methods). This is shown in Fig. 2.8, where we examine both ring-by-ring and layer 42 Chapter 2. Solid-state Spin Qubit Control Routing

Fig. 2.7 Illustration of 2-D qubit lattice surface gate fanout using multiple metal routing layers. The bottom layer is a semiconductor material (Si or GaAs) with top gates for control and readout. On the same substrate lies classical integrated electronics used for signal generation, multiplexing, and sensing. In order to bring connections to the surface gates, multi-layer routing is needed. After surface gates are redistributed into a square-grid array of contacts, as shown in the first metal layer, the fan-out routing procedure is carried out layer-by-layer using a specific routing algorithm. This figure demonstrates ring-by-ring routing, which requires three metal layers for this particular grid array. More sophisticated routing algorithms can be implemented using EDA (Electronic Design Automation) tools. optimal routing solutions for the SSI and ECI protocols for L = 300 nm (which satisfies the minimum interconnect length (14 nodes, 280 nm) for the atomically-confined SSI scheme). It is worth noting that we use the same interconnect length to compute the fan-out for electrostatically-confined qubits (Nq = 3). Because the qubit-qubit distance is different, the number of qubit nodes in the interconnect chain varies across different qubit configurations in the bar chart comparison (Fig. 2.8, right). We observe a factor of 5 to 8 increase in the number of routable qubits by using the optimal router across most of the scenarios (except for SSI, Nq = 1) as shown in the right chart of Fig. 2.8. This highlights the fact that for large-scale qubit integration the use of design-automation tool suites is important to achieve better routing solutions 2.5 Results 43

Number of routing layers comparison for Nq = 1 (L=15, 300nm) Number of qubits routable with 20 layers (L=300 nm)

SSI Ring-by-ring Ring-by-ring 103 8000 SSI Optimal Optimal ECI Ring-by-ring 7000 ECI Optimal 6000 102 5000

20-layer limit 4000

101 3000 Number of layers

Number of physical2000 qubits

1000 464 100 27 27 58 0 1 2 3 4 5 10 10 10 10 10 Nq = 1 Nq = 3 Nq = 1 Nq = 3 Number of physical qubits End Control Interconnect Spin Shuttling Interconnect

Fig. 2.8 Comparison between different interconnect protocols and routing methods at fixed interconnect length: (left) Plot of the number of routing layers vs. number of physical qubits for atomically confined qubits (Nq = 1) at L = 300nm; and (right) scalability comparison between electrostatically confined qubitsN ( q = 3) and atomically confined qubitsN ( q = 1) using the same number of routing layers (20) and interconnect length (L = 300nm, 15 nodes for Nq = 1 and 6 nodes for Nq = 3). Dimension parameters are (see Methods): d = 10nm, w = 5nm, and s = 25nm. The red dashed horizontal line on the left figure represents the technological limit of 20 metal layers that can be fabricated reliably and economically on a semiconductor substrate. compared to more intuitive and direct methods such as the ring-by-ring method. One exception is in the case of SSI scheme for atomically-confined qubits (Nq = 1) where both routing methods result in the same number of routable qubits. The reason is that at this interconnect length (L = 300nm), the contact-contact pitch after redistribution (eq. (2.3)) is barely above the minimum metal-metal pitch requirement, thus no escape routing (wires between pads) is allowed. Another point which can be seen from Fig. 2.8 is the advantage of the ECI scheme over its SSI counterpart in terms of fan-out scalability. This naturally stems from the fact that ECI protocols require far fewer surface gates than their SSI counterparts (Table 2.1). We will later investigate the scaling differences between the two schemes in details by looking at various interconnect lengths. The difference in qubit-qubit spacing manifests itself in the opposite trend observed in Fig. 2.8 bar chart: while atomically-confined qubits are the clear winner in the ECI scheme, the opposite is true if the shuttling interconnect scheme is assumed. This can be explained by the minimum interconnect length data in Table 2.2, i.e. while Nq = 1 has shorter minimum interconnect requirement in the ECI scheme, it has a much longer minimum interconnect length in the SSI scheme. 44 Chapter 2. Solid-state Spin Qubit Control Routing

The scalability difference in the ECI scheme between Nq = 1 and Nq = 3 is narrowed significantly if we use optimal routing for electrostatically-confined qubits (from2x to about 25% different). In all the following analyses, we will only consider triangle (layer optimised) router since this will better reflect the realistic engineering solution. To highlight the effect of even more confining gates (e.g. double-dots as qubits), we also perform the analysis for a hypothetical case of Nq = 5. All the scenarios that we consider so far are homogeneous in the sense that corner qubits and interconnect qubit nodes are of the same type. For SSI scheme, we can implement a hybridisation protocol in which atomically confined qubits are used as surface code physical qubits, while electrostatically confined qubits are utilised for interconnect coupling. By doing this, we can achieve the best of both worlds for the SSI scheme, namely minimising Nq and maximising qubit distance. This approach is only effective for SSI scheme since for ECI the number of interconnect gates is constant. Fig. 2.9 shows the fan-out scalability in terms of routing layers (optimised router) for both the SSI and ECI protocols with interconnect length of 300 nm, 450 nm, and 600 nm

(15/20/30 nodes and 6/8/12 nodes for Nq = 1 and Nq = 3/5 or SSI hybrid, respectively).

In the top graphs, the fan-out scaling of atomically confined qubits (Nq = 1) is analysed in detail to provide a reference and the horizontal line represents the limit of 20 metal layers as previously explained. Other qubit configurations (Nq = 3/5 and SSI hybrid) are compared to this reference in the bottom graphs. An obvious conclusion which can be drawn from both the left charts in Fig. 2.9 is that the SSI protocol does not provide a consistent fan-out scaling benefit as compared to its ECI counterpart, as there is no clear trend in terms of the number of routable qubits vs. interconnect length. The main contributing factors to this fluctuating trend are the opposite effects of redistributed pitch extension, the increasing number of gates per unit cell and the granularity of the routing problem (only full routing channels are considered). On the other hand, ECI protocols provide a monotonic improvement in terms of the number of integrated qubits vs. interconnect length because the interconnect length (thus metal pitch) is Nc-independent. The order of routability vs. interconnect length for different qubit configurations is reserved for both SSI and ECI schemes. While the former interconnect scheme favours electrostatically-confined qubits due to their 2.5 Results 45

Number of routing layers for SSI scheme (Nq = 1) Number of routing layers for ECI scheme (Nq = 1) 103 103 L = 15 (300nm) L = 15 (300nm) L = 20 (400nm) L = 20 (400nm) L = 30 (600nm) L = 30 (600nm)

2 102 10

20-layer limit 20-layer limit

1 1 10 10 Number of layers Number of layers

100 100 101 102 103 104 105 101 102 103 104 105 Number of physical qubits Number of physical qubits

Number of qubits routable with 20 layers - SSI Number of qubits routable with 20 layers - ECI 700 50000 Nq = 1 Nq = 1 Nq = 3 Nq = 3 600 Nq = 5 Nq = 5 Hybrid 40000

500

30000 400

300 20000

200 Number of physical qubits Number of physical qubits

100 10000 100 20 20

0 0 L = 300 nm L = 400 nm L = 600 nm L = 300 nm L = 400 nm L = 600 nm

Fig. 2.9 Qubit fanout scalability in the cases of interconnect protocols of (left) SSI and (right) ECI. (Top) Number of routing layers vs. number of physical qubits for atomically confined qubits (Nq = 1) under different interconnect lengths; and (bottom) number of routable qubits comparison between electrostatically confined qubitsN ( q = 3 and Nq = 5), atomically confined qubits (Nq = 1), and hybrid SSI (donors as qubits and dots as shuttling nodes). Dimensional parameters are: d = 10nm, w = 5nm, and s = 25nm. The red dashed horizontal line on top charts represents the technological limit of 20 metal layers that can be fabricated reliably and economically on a solid-state substrate. long qubit-qubit spacing, the later scheme suits atomically-confined qubits a little bit better thanks to the reduced number of confining gates needed. The hybrid SSI scheme outperforms both of its homogeneous SSI counterparts but noted that the best it can achieve is still an order of magnitude less than that of the ECI scheme. To assess the fan-out scalability of interconnect protocols over extreme length scale, we extend the interconnect length further (up to 100 intermediate nodes for Nq = 1, i.e. 2 µm). The result is shown in Fig. 2.10 for the SSI and ECI schemes. This analysis provides a concrete example to the scaling bottleneck of the SSI protocols in 2D qubit lattice implementation (only routable up to about 103 qubits for electrostatically confined qubits and about 200 for atomically confined qubits). The maximum number of routable qubits is saturating over long SSI interconnect length for both types of qubits. 46 Chapter 2. Solid-state Spin Qubit Control Routing

Number of qubits routable with 20 layers vs SSI interconnect length Number of qubits routable with 20 layers vs ECI interconnect length 700000 1200 Nq = 1 Nq = 1 Nq = 3 Nq = 3 600000 1000

500000 800 400000 600 300000

400 200000 Number of physical qubits Number of physical qubits 200 100000

0 0 0.4 0.6 0.8 1.0 1.2 1.4 1.6 1.8 2.0 0.4 0.6 0.8 1.0 1.2 1.4 1.6 1.8 2.0 SSI interconnect length (µm) ECI interconnect length (µm)

Fig. 2.10 Fan-out scalability vs. interconnect length for (left) SSI and (right) ECI schemes. The inter-qubit interconnect lengths are given in absolute unit (µm). The number of interconnect qubit nodes can be inferred by noting that the qubit-qubit distance is 20 nm for Nq = 1 and 50 nm for Nq = 3.

Multiplexing schemes for SSI control, e.g. Ref [86, 71], will improve the scalability of these approaches to a certain extent. On the other hand, the ECI protocol can scale up (quadratic) to an order of 105 qubits over that length scale. Again, as we have already seen in Fig. 2.9, there is an incremental improvement in terms of scalability at the same interconnect length when using electrostatically self-confined qubit structures due to their gate count efficiency. Further steps can be taken to estimate the number of logical qubits feasible based on the level of error correction required, namely the code distance. The latter depends on multiple factors such as the gate fidelity, total number of gates in the algorithm of interest, and the level of output accuracy required. The analysis in ref [43] provides estimates of the qubit resource required for surface code quantum computation. In addition to quantifying the spatial requirements for scale-up, as we have here, there are undoubtedly other aspects which may restrict the scalability of solid-state qubit integration, namely control timing, signal integrity, thermal budget, testability, and manufacturability . Nevertheless, being able to model and extrapolate the limit of each of the scaling bottlenecks is good engineering practice.

2.6 Summary

If the advancement in solid-state spin qubit fabrication and control follows that of their classical counterparts, the number of integrated qubits will soon reach the threshold 2.6 Summary 47 where scaling up becomes the next bottleneck. As the quantum network gets larger and larger to cope with real-world applications, the amount of routing required to provide control access to surface gates will soon become the limiting factor. By applying the classical electronics know-how regarding interconnect routing to a ubiquitous 2-D qubit array with independent gate control and readout fan-out, we have provided a concrete procedure for scalability estimation, which is adaptable to a wide range of surface code implementations by adjusting the gate configuration and dimensional parameters. This estimation procedure is important for large-scale quantum design process where we need to identify at the very early stages the required specifications (so-called “landing zones” in classical electronics design) regarding quantum interconnect length and fidelity, back-end metal interconnect dimensions and the number of fan-out layers. For architectures where each qubit has its own dedicated control lines and readout device, we have analysed fan-out scenarios associated with two categories of quantum interconnects, namely spin shuttling interconnects (SSI) and end control interconnects (ECI) with high and low gate densities respectively. Both interconnect models help extend the contacts/vias pitch through redistribution, which potentially aids the fan-out routing procedure. However, SSI protocols result in a poorly scalable situation since the added interconnect control gates outweigh the pitch scaling benefit. On the other hand, ECI protocols provide a more consistent fan-out scaling trend with interconnect length, however, relatively long interconnects (greater than several microns) are required to scale the system to the million qubit level, where issues such as interconnect fidelity, charac- terisation and operation time, will affect the error rate and surface code error correction performance negatively. Above all, the errors induced in the quantum interconnect must be correctable by the QEC protocol. Multiplexing schemes [74, 12] alleviate the gate density bottleneck to some extent, with fully distributed control schemes [71] providing scalability without the need for quantum interconnects. This page intentionally left blank. Chapter 3

Continuous Quantum Error Correction

Almost any decision is better than no decision – just keep moving.

Danielle LaPorte

Fighting decoherence in quantum mechanical systems, due to their inevitable cou- pling to the surrounding environment, often requires a combination of multiple ap- proaches such as fabrication techniques, decoupling pulses, quantum feedback control methods and coding schemes. In this chapter, we will not target a particular quantum computing architecture but instead focus on the feedback and control scheme for a promising quantum error correcting coding scheme, namely the surface code. The approach we chose is an extension of the continuous quantum error correction scheme proposed by Ahn and co-workers for simple codes [4], where continuously acquired syndrome measurement signals are used to correct the errors in real-time via Hamiltonian feedback.

3.1 Quantum Errors

The merits of quantum error correction are often evaluated concerning a specific error model. In conventional error models, the Pauli X, Y, and Z errors are applied probabilis- tically to qubits at discrete time intervals. For example, a noise model M is a sequence 50 Chapter 3. Continuous Quantum Error Correction

of quantum operations St(ρ) on the Hilbert space (density matrix, ρ) of the quantum computer. These error operations are indexed by the time-step (t) at which each of them is applied. A general quantum operation, ρ S(ρ), is a linear, trace preserving, and com- 7−→ pletely positive map1. Theorem 3.1.1 [Kraus (operator-sum) decomposition] S is a completely positive trace preserving map iff † † S(ρ) = ∑k AkρAk, with ∑k AkAk = I These are common quantum error channels [122] that are used to model decoherence in quantum computers: 1. Dephasing channel: S(ρ) = (1 p)ρ + pZρZ − 2. Depolarizing channel:

p S(ρ) = (1 p)ρ + (XρX +YρY + ZρZ), − 3

which can also be expressed using the representation:

4p 4p I S(ρ) = (1 )ρ + . − 3 3 2   Note: the identity operator (I) is the balanced mixture, i.e. I ρ 1 1 1 2 = 4 + 4 XρX + 4YρY + 4 ZρZ 3. General Pauli channel

S(ρ) = (1 p p p )ρ + p XρX + p YρY + p ZρZ − x − y − z x y z 4. Amplitude damping channel

† † S(ρ) = A0ρA0 + A1ρA1, 1This is equivalent to the Master equation formulation in (1.10). 3.1 Quantum Errors 51

1 0 0 γ where A0 = and A1 = .  0 1 γ2   0 0  − p In the above models, p the parameter represents the error probability at each time step. Hence, we refer to this as the discrete error model. In physical quantum systems such as atoms, , or spins, however, the amplitude and phase of a qubit will often fluctuate continuously when it is interacting with the environment or other quantum systems. It is worth noting that the parity measurement in quantum error correction scheme provides a discretisation of the set of errors. Hence, the discrete model of QEC is capable of modelling general continuous decoherence processes. However, continuous errors can also happen to parity measurements themselves which makes the fully digitised picture an oversimplification.

3.1.1 Quantum Error Correction Code A universal approach in information theory to deal with noise-corrupted data is to intro- duce auxiliary qubits to carry away extra entropy transferred from the noisy environment into the system. In essence, we need to encode the data (logical qubits) into a larger codeword that has extra qubits. These added qubits will assist us in identifying the most probable candidate error, of several possible errors, occurred, so that corrective action can be taken to preserve the stored quantum information. Among many quantum error correction (QEC) schemes, stabilizer codes [53] are pre- dominantly the most effective and well-studied category, to which the surface code [43] also belongs. A is described by an Abelian (mutually commuting) set of Pauli operators whose simultaneous +1-eigenspace defines the code space. This set is called “stabilizer generators” (S ). Stabilized code words (L ) are defined as:

2 n L = ψ (C )⊗ : P ψ = ψ , P S . {| ⟩ ∈ | ⟩ | ⟩ ∀ ∈ }

Therefore, stabilizers act trivially on the code and can be measured simultaneously. Their eigenvalues form an error syndrome that can help identify the error coset where the actual error resides. By applying an effective decoding policy (such as minimum weight matching), the most probable error candidate will be chosen to be corrected. 52 Chapter 3. Continuous Quantum Error Correction

To build a large scale quantum computer, an error correction code is required through which the error can be made arbitrarily small. In this regard, not all stabilizer codes scale equally due to their specific construction. Some codes may become more susceptible to noise on a larger block than the others. This figure of merit is characterized by the accuracy threshold which is the bound of error rate that the code can tolerate for effective scaling. Among all stabilizer codes, surface code has been proven to be one of the best-performing codes with a threshold two orders of magnitude higher than other error correction codes [45] along with many desirable features that we will explain in the next section.

3.1.2 Surface Code The surface code is a type of topological QEC code where qubits are laid out in a 2-dimensional lattice. This planar layout, in combination with nearest-neighbor interac- tions, makes it a compelling alternative to the conventional stabilizer codes which often require long-range interactions. Similar to other stabilizer codes, a surface code is fully characterized by its stabilizer generators. The stabilizer generators of the surface code come in two types: the so-called X and Z stabilizers, as depicted in Fig. 3.1.

1 X 2 X 3 X 4

Z 5 Z 6 Z 7 Z

8 X 9 X 10 X 11

Z 12 Z 13 Z 14 Z

15 X 16 X 17 X 18

Fig. 3.1 Surface code layout: white circles represent data qubits; filled circles are syndrome qubits (X stabilizers in green and Z stabilizers in yellow). Each internal stabilizer acts on four adjacent data qubits, while boundary stabilizers act on either two or three data qubits.

These local stabilizers are mutually commuting by construction (X and Z stabilizers either share none or two qubits) and thus form a valid set of stabilizer generators 3.1 Quantum Errors 53

for a QECC. These stabilizers fix a set of states, the so-called “quiescent” states, the simultaneous eigenstates of all generators. A codeword is also a quiescent state with all +1 eigenvalues. Error decoding is based on the topological properties of the lattice whereby a bit-flip (X) is detectable because it causes the change of the two neighboring Z syndromes; a phase-flipZ ( ) by the change of the two neighboring X syndromes and a bit-and phase-flip (Y) by both types of syndrome. This is a simplistic explanation for surface code decoding where we skip details about space-time correlations to detect qubit vs. measurement errors and the standard minimum weight perfect matching algorithm used for error decoding. Fowler et al. provides an excellent review for interested readers [43]. The code distance of a surface code can be quickly inferred from lattice dimension. When using the optimal lattice structure [75], an N N (data qubit) lattice forms a code × d 1 of distance N. By definition, a distance-d code can correct arbitrary − -qubit errors. ⌊ 2 ⌋ Thus, a distance-of-3 code is the smallest universal error correction code that can correct any single qubit error.

3.1.3 Previous Work QEC and fault tolerant quantum computing have been studied extensively in the last two decades mostly focusing on the discrete time scheme. Discrete QEC bridges the gap between the conventional computer science and the emerging quantum computing field. However, it relies on the fact that we can do projective measurements and instantaneous corrections. Therefore, research has been done regarding the dynamical representation of the QEC process where errors, syndrome measurement, and correction are performed continuously with finite strengths. The very first framework for the continuous QEC was laid down by Pazand Zurek [142] where continuous error correction is modelled as an infinitesimal limit of syndrome measurement and error correction. The resulting master equation is of the type of a cooling process where the ancillas are continuously “cooled” from the entropy acquired by errors. Sarovar and Milburn used this cooling approach in the 3-qubit flip code153 [ ]. Oreshkov and Brun studied continuous quantum error correction for non-Markovian decoherence using the model of a bit-flip code131 [ ]. Later, Hsu 54 Chapter 3. Continuous Quantum Error Correction and Brun also developed a method for continuous-time quantum error correction for any [[n,k,d]] quantum stabilizer code [78]. This chapter on the other hand is inspired by the measurement feedback scheme that was first developed by Ahn et al. for a simple 3-qubit code[4]. Later, elaboration on this continuous scheme was done using classical signal filtering techniques [152], and instantaneous emission syndromes [5]. Classical hybrid control techniques were also proposed for quantum continuous error correction, in which the Wonham filter was used for error state probability tracking [179]. A filter dimension reduction scheme was also derived [21] for the Wonham filter with Hamiltonian feedback. Mabuchi described an optimal hybrid controller for the 3-qubit flip code [106]. [151] implements a continuous-time error correction protocol for stabilizer codes and discusses some subtleties of routing for the accumulation of multi- qubit syndromes and how that interacts with the subsystem nature of some stabilizer codes. Previously-mentioned control techniques are all referred to as measurement-based as they involve quantum to classical signal conversion. The other type is coherent quantum feedback control whose feedback loop only contains quantum mechanical devices. A coherent feedback scheme for the 3-qubit error correction was shown in [90], in which the feedback loop forms a fully autonomous self-correcting quantum memory without the need for classical processing. In terms of the topological error correction, discrete error correction schemes were investigated by Fowler et al. [44] and Stephens [162], where an accuracy threshold was derived for the surface code. This proved that the surface code is an outstanding candidate for large scale quantum computer architecture. More sophisticated computational simulations [174] were recently done for the minimal surface code of distance 3 under various error models in the discrete framework. A comprehensive review of QEC is presented in the book [99]. A more focused review on error correction for quantum memory is presented in [166] where continuous QEC techniques are also summarized. 3.1 Quantum Errors 55

3.1.4 Contributions The aim of this chapter is two-fold. Firstly, we want to introduce continuous QEC by measurement feedback for topological codes such as the surface code. This is done using fully quantum mechanical representations in terms of stochastic master equations and quantum stochastic differential equations. It provides a complementary view to the conventional semi-classical circuit model approach of surface code error correction. In order to keep the simulations numerically tractable, we also chose a reduced 2 2 lattice × containing only four data qubits affected by a limited error model. This can be regarded as the smallest 2-D structure that still exhibits the non-trivial topological properties which we want to investigate. Secondly, we have put this feedback scheme in the SLH framework that is emerging as a useful tool for control engineering.

3.1.5 Outline and Notations After the general introduction in Section 3.1, we will proceed to describing our surface code model in Section 3.2 that includes the description of the qubit network, dynamical equations, and the SLH model. Section 3.3 will detail the feedback policy for continuous error correction followed by simulation results in Section 3.4. Section 3.5 will conclude the chapter with some final words and avenues for future research.

In this chapter, Pauli operators σx, σy, σz are also represented by capital letters X, Y, and Z, respectively. To shorten the notation, tensor product signs are omitted, i.e. X X X X , and identity operators (I) are assumed in all places where no other Pauli 1 2 ≡ 1 ⊗ 2 operator applied, such as X X X I I X . 1 4 ≡ 1 ⊗ ⊗ ⊗ 4 The commutator between operators is denoted by [A,B] = AB BA, whilst anti- − commutator is A,B = AB + BA. Hermitian conjugate of A is A†. The Heisenberg- { } picture evolution of an X is denoted by Xt = jt(X). We will also use a couple of common superoperators such as the dissipation (D),

Lindblad generator (LL,H), and the homodyne measurement (H ), which are defined as:

1 D[L]ρ = LρL† (L†Lρ + ρL†L), − 2

LL,H(X) = i[H,X] + D[L]X, 56 Chapter 3. Continuous Quantum Error Correction

H [L]ρ = Lρ + ρL† ρTr[Lρ + ρL†]. −

3.2 Model

In this section, we will first introduce the distance-2 surface code block that willbe used to demonstrate the continuous feedback scheme. Then, we will briefly review key concepts of the SLH dynamical model before deriving the detail model of our surface code in the continuous measurement feedback scheme.

3.2.1 Distance-2 Surface Code The surface code lattice that we will consider in the following sections comprises of four data qubits and five syndrome measurements ina 2 2 configuration as shown in × Fig. 3.2. The code stabilizer generators are Z1Z2Z3Z4, X1X2, X1X3, X2X4, and X3X4.

X 1 X

2 Z 3

X 4 X

Fig. 3.2 Distance-2 surface code

This code lattice has a code distance of two which is insufficient to correct arbitrary error such as the general depolarizing error: ρ (1 p)ρ + p (XρX +YρY + ZρZ). 7→ − 3 Indeed, X errors cannot be localized by this lattice since all four X errors have the same syndrome. However, single-qubit Y and Z errors can be identified by combining the five syndrome measurements. Unlike discrete QEC, the continuous syndrome measurement does not require a physical qubit but only a field interacting with the relevant data qubits with some specific coupling parameters. The output fields will carry both information about the syndrome, 3.2 Model 57

as well as additional noise. This information can be used to estimate the original syndrome. This input-output process as well as the filter and estimation will be described by the quantum stochastic differential equations.

3.2.2 Continuous QEC in the SLH Framework Our continuous QEC feedback network will be described in the Heisenberg-picture using the Hudson-Parthasarathy quantum stochastic differential equation (QSDE) [79], which is also known as the input-output formalism [49] in the physics literature. The QEC network is encapsulated by the SLH parametrization [56], which comprises of scattering matrix S, coupling vector L, and Hamiltonian H. Unless otherwise stated, we assume there is no scattering between quantum fields, so S = I. In the continuous QEC scheme, our surface code is coupled to two separate groups

of channels. The first is a collection of error channelsL ( E) which depend on the chosen error model. For generic balanced depolarizing channels, the error coupling vector for a collection of N qubits with per-qubit error rate of γ is:

j [1,N] γ j ∈ L = σ ( ) . E 3 i r i=x,y,z This corresponds to a per time step error probability of γdt for each qubit. As noted before, we will use a limited error model for our distance-2 surface code that only includes Y and Z errors but not X. There are therefore a total of eight error channels coupling to the surface code lattice in Fig. 3.2. Despite having separate channels for errors, we will assume that all of these are unobservable. Indeed, if we can access the error channels, there will be no need for syndromes as errors can be corrected directly. In order to measure the error syndromes, we need to create five syndrome field channels with equal coupling strength, denoted by κ:

T LS = √κ [Z1Z2Z3Z4,X1X2,X1X3,X2X4,X3X4] . 58 Chapter 3. Continuous Quantum Error Correction

dA ,L dAE,out E E Surface Code ˆ dAS,LS dAS,out S(t) F(t) Array Estimator Controller

Fig. 3.3 Block diagram of surface code continuous error correction in the SLH framework: the surface code array is coupled to two groups of channels, namely error channels (dAE) and syndrome channels (dAS). The coupling strengths are LE and LS, respectively. The syndrome outputs are measured to estimate the syndrome conditional expectation values (Sˆ(t)). The Hamiltonian feedback (F(t)) is a function of the syndrome estimators.

The unitary evolution of the surface code network can be derived using the Hudson- Parthasarathy QSDE:

† † 1 † dU(t) = dAE(t)LE LEdAE(t) LELEdt − − 2 (3.1) n 1 + dA†(t)L L†dA (t) L†L dt U(t), S S − S S − 2 S S o where we assume no internal dynamics (H = 0). The QSDE for an arbitrary observable X on the qubit network is given by:

d j X j X X dt t( ) = t(LLE ( ) + LLS ( )) † † + jt([LE,X])dAE(t) + jt([X,LE])dAE(t) (3.2) † † + jt([LS,X])dAS(t) + jt([X,LS])dAS(t).

The measurement signals are taken to be of the forms of homodyme detection on the † syndrome field channels, i.e. dY(t) = dAS(out)(t) + dAS(out)(t). Assuming that the input fields are in vacuum state, the five output equations canbe explicitly derived for the surface code lattice in Fig. 3.2:

dYi(t) = 2√κ jt(Si)dt + dWi(t), (3.3) 3.2 Model 59

† 2 where dWi(t) = dASi(t) + dASi(t) is equivalent to a classical Wiener process , that is a Gaussian distributed random variable with zero mean and variance of dt.

By observing the output field dYi(t), we can write down the optimal estimate of an system observable using quantum filtering techniques:

d X X X dt πt( ) = πt LLE ( ) + LLS ( ) (3.4)

+ ∑ πt( LSi,X ) 2πt(LSi)πt(X) dWi(t), i { { } − }

† where we have used the Hermitian property of syndrome operators (LSi = LSi) to simplify the equation. The notation πt(X) stands for the conditional expectation of the observable X given all measurement records up to time t. So far, we have not made any simplification by using assumptions about the error model or observable operators. Despite using a limited error model for our distance-2 lattice, we derive the filtering estimation equations for general depolarizing noise as this will definitely be used for larger lattice with full error correction capability. Denote g the set of syndrome generators, by using (3.4) we can get their filtering { i} equations:

(4w)γ dπ (g ) = π (g )dt t l − 3 t l k (3.5) + 2√κ ∑ πt(glgi) πt(gl)πt(gi) dWi, i=1{ − } where w denotes the Pauli weight of the parity operator gl. The filtering equations for syndrome measurements are non-linear due to the appear- ance of high-order terms like πt(gl)πt(gi). Also, they expand beyond the initial stabilizer generator set because of operator product terms like πt(glgi). However, they will form a finite set of equations which include all operators generated by the group ofsyndrome generators. Having the estimation of the syndrome state, we can proceed to the next step to build an estimation-based feedback controller to correct the surface code lattice as diagrammatically shown in Fig. 3.3.

2assuming homodyne detection scheme 60 Chapter 3. Continuous Quantum Error Correction

3.3 Methods

The most widely used feedback strategy is to use an additional Hamiltonian to control the system of interest based on information acquired at the outputs. As the errors are occurring, the feedback Hamiltonian will be used to rotate the surface code back to the code space continuously. Therefore, codeword fidelity will be preserved. Each type of error requires a corresponding correction Hamiltonian, thus our feed- back Hamiltonian has the following form:

4 4 z y F(t) = ∑ λi (t)Zi + ∑ λi (t)Yi (3.6) i=1 i=1

z y where λi (t) and λi (t) are the real-time feedback terms that will depend on the estimated syndrome signatures. The topological structure of the code allows us to infer the error by identifying two neighboring syndrome values which change their signs from +1 to -1. We can use that logic to define the feedback policy as:

λ λ z = 0 (1 X )(1 X )(1 + X )(1 + X )(1 + Z[), (3.7) 1 32 − 12 − 13 24 34 1234 λ λ z = 0 (1 Xc )(1 + Xc )(1 Xc )(1 + Xc )(1 + Z[), (3.8) 2 32 − 12 13 − 24 34 1234 λ λ z = 0 (1 + Xc )(1 Xc )(1 + Xc )(1 Xc )(1 + Z[), (3.9) 3 32 12 − 13 24 − 34 1234 λ λ z = 0 (1 + Xc )(1 + Xc )(1 Xc )(1 Xc )(1 + Z[), (3.10) 4 32 12 13 − 24 − 34 1234 y λ λ = 0 (1 Xc )(1 Xc )(1 + Xc )(1 + Xc )(1 Z[), (3.11) 1 32 − 12 − 13 24 34 − 1234 y λ λ = 0 (1 Xc )(1 + Xc )(1 Xc )(1 + Xc )(1 Z[), (3.12) 2 32 − 12 13 − 24 34 − 1234 y λ λ = 0 (1 + Xc )(1 Xc )(1 + Xc )(1 Xc )(1 Z[), (3.13) 3 32 12 − 13 24 − 34 − 1234 y λ λ = 0 (1 + Xc )(1 + Xc )(1 Xc )(1 Xc )(1 Z[), (3.14) 4 32 12 13 − 24 − 34 − 1234 c c c c where we have dropped the time variable for brevity. The maximum feedback strength

λ0 is assumed to be time-independent and equal for all feedback terms. The hats over

the operators represent the conditional expectations, i.e. X12 = πt(X1X2).

c 3.4 Results 61

The Z errors are detected by X syndrome measurement alone, while Y errors are detected by combining X syndromes with the central Z syndrome. For example, a Z

error on qubit number 1 will change both X1X2 and X1X3 signs, thus turning on the z feedback term λ1. On the other hand, a Y error on the first qubit will also change the center Z syndrome therefore we got a minus sign in the last term. The stochastic differential equations are solved numerically using an Euler solver. The time step, measurement and feedback strength will be normalized to the decay rate 5 (γ). A time step of order 10− is used for the solver which yields good convergence over wide range of measurement and feedback strengths. Unless otherwise noted, the default number of Wiener noise realisations is 104,

which will be averaged over. We use codeword fidelity, defined by Tr[ρ0ρ(t)], as the primary figure of merit to assess the performance of our feedback scheme. A fidelity of 1 signals perfect match, while 0 means orthogonal states. Also, to judge the continuous scheme against the conventional discrete error cor- rection, we will also look at the correctable overlap projection which is defined as the combination of the original state and all single-error subspaces:

( j) ( j) ΠC = ρ0 + ∑σi ρ0σi . (3.15) i, j

The expectation of this projector at time t gives us an upper bound estimate of the recoverable fidelity if a discrete error correction cycle is to be performed atthattime[4].

3.4 Results

3.4.1 Distance-2 Surface Code Using our surface code model as described above, we can simulate the evolution of the qubit array stochastically using numerical methods. A sample simulation run for one realization of the noise process, also known as trajectory, is shown in Fig. 3.4. We can clearly see the variation in our syndrome estimates due to noise. However, it also

indicates a clear transition from +1 to -1 of X1X3, X3X4, and Z1Z2Z3Z4 generators.

By inferring from the trajectory, we suspect that a Y3 error is the most probable error. However, we need some quantitative measures to assess the claim that it is indeed the 62 Chapter 3. Continuous Quantum Error Correction

Surface Code Syndrome Estimation 1.0

0.5 Z1Z2Z3Z4 X1X2 0.0 X1X3 X2X4 X3X4 Syndrome Value 0.5 −

1.0 − 0.00 0.02 0.04 0.06 0.08 0.10 Time (1/γ) Fig. 3.4 Syndrome estimation for a single trajectory showing +1 to 1 transitions from − three syndrome operators: X1X3, X3X4, and Z1Z2Z3Z4. This indicates a Y error may occur to qubit 3. Dashed line represents the point in time selected for the fidelity and trace distance comparison in table 3.1. case. Nielsen and Chuang have outlined two effective measures which are the trace distance and fidelity122 [ ]. The first measures how far apart the two states are, whilst the latter measure the opposite. In our simulator, we can extract the actual state at the time right after the transition as denoted by dotted line in Fig. 3.4. We call this inferred state

ρ and we will compare it against the initial state ρ0 as well as the Y3-rotated version of it (ρ0′ = Y3ρ0Y3). The comparison results are summarized in table 3.1. This shows that the latter time state (ρ) is much more matched to the Y3-rotated initial state than to the ρ0 itself. We can then apply our feedback correction policy laid out in Section 3.3.

Measure (ρ0,ρ) (ρ0′ ,ρ) Trace Distance: D(ρ,σ) = 1 Tr ρ σ 0.999 0.069 2 | − | Fidelity: F(ρ,σ) = Tr ρ1/2σρ1/2 0.018 0.998 p Table 3.1 Fidelity and trace distance comparison

The performance of our continuous error correction against no correction as well as correctable overlap (discrete correction bound) is shown in Fig. 3.5. The continuously corrected fidelity is clearly much better than no correction atall, as the feedback loop is correcting the errors in real-time while they are occurring. More 3.4 Results 63

Fidelity Comparison 1.0 0.9 0.8 0.7 0.6 0.5 Fidelity 0.4 No Feedback 0.3 Feedback 0.2 Correctable Overlap 0.1 0.0 0.1 0.2 0.3 0.4 0.5 Time (1/γ) Fig. 3.5 Comparison between continuous feedback error correction fidelity vs. no feedback fidelity and correctable overlap. Feedback enhances the code fidelity overlong period of time. The cross-over between no feedback correctable overlap and feedback fidelity indicates continuous error correction outperforms its discrete counterpart if correction period is longer than that time.

importantly, over long period of time3, the continuous error correction scheme even outperforms its discrete counterpart. Note that in order for the discrete scheme to become more preferable, we need to perform correction cycles frequently enough while still keep the idealized projective measurement and fast correction assumptions.

3.4.2 Distance-3 Surface Code To simulate a generic error model, we extend the surface code lattice to a code distance of three. The qubit lattice is shown in Fig. 3.6. In the following simulation, we will introduce depolarisation noise source to each qubit. The noise coupling operators have the form:

i γ i i i L( ) = (σ ( ) + σ ( ) + σ ( )), (3.16) e 3 x y z

in which we assume the noise strength is the same for all qubits and the noise is balanced among all Pauli operators. These assumptions can be relaxed when considered specific physical systems.

3in terms of error correction cycles 64 Chapter 3. Continuous Quantum Error Correction

X

1 2 3

Z X Z

4 5 6

Z X Z

7 8 9

X

Fig. 3.6 Diagram of distance-3 surface code: white circles are data qubits, green circles are X-stabilizer channels, and yellow circles are Z-stabilizer channels.

The Hilbert space of this qubit network is quite large. It requires a complex matrix of the size of 29 29 to represent the density matrix. Fully stochastic master equation × simulation at this scale, as performed for the distance-2 lattice, demand significant computing resources. Thus, to simplify the simulation, we can convert the stochastic master equation into its counterpart stochastic Schrödinger equation. For a system of size N, the latter only requires 2N complex elements. The drawback of this approach is that we are unable to capture inefficient detection since it will induce mixed states. A stochastic Schrödinger equation for our scheme has the following form:

1 1 d ψ(t) = iH ψ dt + L + L† L L†L L + L† 2 ψ dt (3.17) | ⟩ − | ⟩ 2 ⟨ ⟩ − − 4⟨ ⟩ | ⟩   1 + (L L + L† ) ψ dW. − 2⟨ ⟩ | ⟩

We can verify the equivalence between this and the previous stochastic master equa- tion by using: dρ = d( ψ ψ ) = d( ψ ) ψ + ψ d( ψ ) + d( ψ )d( ψ ) following | ⟩⟨ | | ⟩ ⟨ | | ⟩ ⟨ | | ⟩ ⟨ | Ito rule with the convention: dt2 = 0 and dW 2 = dt. The surface code in Fig. 3.6 is a degenerate code, which means that more than one errors are associated with a specific syndrome signature. Nevertheless, errors with 3.4 Results 65 the same syndrome will constitute a stabilizer operator, thus acts trivially on the code.

Therefore, we can correct the error up to modulo of stabilizer operator, e.g. Z1 and Z4 errors have confounding syndrome signature as Z1Z4 is a stabilizer, but correcting one of them is enough to preserve codeword fidelity. Using the feedback policy similar to the distance-2 case, we can simulate the perfor- mance of the continuous QEC for the surface code under general depolarisation noise as in (3.16). The average code-word fidelity over time of the surface code is shown in Fig. 3.7, which includes 1000 random noise realisations each. In all the range of feedback rates considered, the feedback loop, in the long run, has always delivered some improvement in fidelity. This proves the robustness of the scheme over feedback parameters.

Fig. 3.7 Time-domain simulation of the distance-3 surface code under continuous QEC. Each curve is the average fidelity over 1000 stochastic trajectories with a specific feedback correction strength.

From the above simulation, we can also see that the fidelity performance varies considerably with regard to the feedback strength. This indicates an optimisation opportunity of the parameter to deliver the best performance. This can be considered as 66 Chapter 3. Continuous Quantum Error Correction

a classic feedback control problem where there is an optimum operating point. Too weak or too strong feedbacks are both harmful to the performance as can be seen in Fig. 3.8.

Fidelity Plot vs. Feedback Strength 1.0

0.9

0.8

0.7 Fidelity

0.6

0.5

0.4 0.0 0.2 0.4 0.6 0.8 1.0 λ/κ

Fig. 3.8 Comparison of the final fidelity of the surface code under varying feedback strength.

The steep increase in the fidelity shows the significant gain when we have the feed- back loop in place. Also, the feedback is relatively weak with regard to the measurement. This makes perfect sense since the controller needs to average over long, noisy syndrome records to get an accurate estimation of the errors.

3.5 Conclusions

In summary, we have shown a continuous measurement feedback scheme that can be used for topological codes such as the surface code. The feedback correction preserves the codeword fidelity over long duration against a decoherence process. Syndrome values are estimated from measurement signals without the need for physical ancilla qubits as well as quantum gates. This proves the feasibility of using feedback and control methods in topological QEC. The QSDE formalism and SLH model provide us with an 3.5 Conclusions 67 efficient tool suite to tackle quantum feedback and control problems. Given thegrowing interest in surface code among other alternative codes, this deems a promising method to be used in quantum computers whereby low-level feedback control loop maintains the fidelity of quantum memory. We have just examined our feedback control policy on a minimised surface code lattice under idealistic conditions. Besides, non-ideal effects, such as loop delay, limited measurement bandwidth, measurement error, which are always present in reality will also need to be investigated in the future to assess the robustness of our scheme. The ultimate goal is to envision and design a coherent feedback controller for the surface code which can make our surface code a self-correcting qubit lattice in the quantum domain. This page intentionally left blank. Chapter 4

Quantum Reservoir Engineering

The sky is filled with stars, invisible by day.

Henry Wadsworth Longfellow

The environment within which the quantum system operates typically has a contin- uous degrading effect, i.e. decoherence, on evolution of quantum particles. Reservoir engineering, also known as control, is the term used in quantum con- trol and information technologies to describe manipulating the environment within which an open quantum system operates. Reservoir engineering is essential in applications where storing quantum information is required. When a quantum system possesses a subsystem isolated from the detrimental influ- ence of the environment and probing fields, the quantum information associated with dynamics of such a system is preserved and can be used for quantum computation when needed. In a sense, decoherence-free subsystems (DFS) can play the role of memory elements in quantum information processing. This has motivated a significant interest in the synthesis of quantum systems with the desired DFS structure. On the other hand, when quantum error correction is in use, dissipation control mechanisms derived using the control-theoretical formation of Lyapunov methods can also be applied to stabilizes the code states. This forms a “passive” error correction loop without the need for an active controller. 70 Chapter 4. Quantum Reservoir Engineering

4.1 Introduction

Reservoir engineering refers to the process of determining and implementing coupling

operators L = [L1;...;Ln] for an open quantum system such that desired behavior is achieved. Examples of common objectives include quantum computation by dissi- pation [185], entanglement [97], state preparation [171], and protection of quantum information [26, 137]. Typically open systems have some unavoidable couplings to the environment, and such channels may lead to loss of energy and quantum coher- ence. However, in many systems couplings can be engineered at the fabrication stage, providing a resource for tuning the behavior of the system. The scheme of quantum computation by dissipation [185] suggests that the com- putation result could be encoded into the steady states of a carefully-designed system Hamiltonian. For instance, measurement-based quantum computation [146] can be realized provided that we can prepare a giant entangled state often called graph state [66] or [121]. After the coding step, the system is coupled to an engineered environment, and the dissipative dynamics would drive the system to the ground states which accomplish the computation. This is in contrast to the conventional quantum computation scheme [122] in which the computation is executed by applying a sequence of unitary gates. The dissipative dynamics has been well studied in classical control engineering. The so-called Lyapunov method [63] plays a vital role in establishing the stability of a dissipative system. To be specific, a Lyapunov function is proposed as a cost function and the control is designed such that it decreases the value of the Lyapunov function. Efforts have been made for the purpose of applying Lyapunov techniques to quantum systems [112, 98, 188, 76, 169, 7]. These works employ a Schrödinger-picture analysis which facilitates the engineering of the stability of quantum states [154]. Stabilizing ground states is critical for quantum state engineering and quantum computation [185, 139]. In this chapter, we apply the Lyapunov methods to establish the ground-state stability of an operator-sum representation whose encodes the quantum information. The Lyapunov analysis can thus be conveniently embedded into the framework of quantum computation by dissipation control. In particular, we focus on a specific decomposition of the dissipation control, based on which we can derive the 4.1 Introduction 71 conditions for the Lyapunov method to be scalable. Also we will show that the Lyapunov formalism is closely related to the stabilizer formalism for quantum error correction, in the sense that the dissipation control can be used for passive error correction in addition to stabilization. In Section 4.3, an extended scalability condition which is applicable to a wider range of applications is proposed to achieve the ground-state stability for a class of multipartite quantum systems which may involve two-body interactions, and an explicit procedure to construct the dissipation control is presented. Moreover, we show that dissipation control can be used for automatic error correction in addition to stabilization. We demonstrate the stabilization and error correction of three-qubit repetition code states using dissipation control. Without active error correction, from the control theory perspective, a quantum sys- tem is capable of storing quantum information if it possesses a so-called decoherence free subsystem (DFS). Section 4.4 explores pole placement techniques to facilitate synthesis of decoherence free subsystems via coherent quantum feedback control. We discuss limitations of the conventional ‘open loop’ approach and propose a constructive feedback design methodology for decoherence free subsystem engineering. It captures a quite general dynamic coherent feedback structure which allows systems with decoherence free modes to be synthesized from components which do not have such modes. The problem of DFS synthesis has been found to be nontrivial - it has been shown in [202] that conventional measurement feedback is ineffective in producing quantum systems having a DFS, however certain coherent controllers can overcome this limitation of the measurement-based feedback controllers. The objective of Section 4.4 is to put this observation on a solid systematic footing, by developing a quite general constructive coherent synthesis procedure for generating quantum systems with a DFS of desired dimension. Our particular interest is in a class of quantum linear systems [129] whose dynamics in the are described by complex quantum stochastic differential equations expressed in terms of annihilation operators only. Such systems are known to be passive [83]. Passivity ensures that the system does not generate energy. In addition, in such systems the notion of system controllability by noise and that of observability 72 Chapter 4. Quantum Reservoir Engineering

from the output field are known to be equivalent59 [ ]. Also, one can readily identify uncontrollable and unobservable subspaces of the passive system by analyzing the system in the Heisenberg picture [202]. These additional features of annihilation only passive systems facilitate the task of synthesizing decoherence free subsystems by means of coherent feedback. The focus on a general coherent feedback synthesis is the main distinct feature of our work which differentiates it from other works of a similar kind, notably from [202, 126]. The paper [202] presents an analysis of quantum systems equipped with coherent feedback for the purpose of characterizing decoherence free subsystems, quantum nondemolished (QND) variables and measurements capable of evading backaction; in [202] all these characteristics are expressed in geometric terms of (un)controllable and (un)observable subspaces. In contrast, we propose constructive algebraic conditions for the synthesis of coherent feedback to equip the system with a DFS. These conditions are expressed in terms of linear matrix inequalities (LMIs) and reduce the DFS synthesis problem to an algebraic pole assignment problem. We build our technique using the most general type of dynamic linear passive coherent feedback. We show that the controller structures from [202] are in fact special cases of our general setting. In addition, we discuss the conventional open-loop approach to reservoir engineering and show the shortcoming of such approach. This chapter is based on the work presented in [137]1 and [120]2 where we derived the condition for automatic quantum error correction by dissipation control (Theo- rem 4.3.3) and the DFS synthesis condition (Theorem 4.4.2).

4.2 Background

4.2.1 Notations Given an underlying Hilbert space H and an operator x: H H, x denotes the operator → ∗ adjoint to x. In the case of a vector of operators, the vector consisting of the adjoint components of x is denoted x#, and x† = (x#)T , where T denotes the transpose of a vector.

1the author contributed equally with the co-author 2significant contributions in deriving the equations, providing examples demonstrating the synthesis scheme 4.2 Background 73

Likewise, for a matrix A, A# is the matrix whose entries are complex conjugate of the corresponding entries of A, and A† = (A#)T . [x,y] = xy yx is the commutator of two − operators, and in the case where x,y are vectors of operators, [x,y†] = xy† (y#xT )T . − N A finite-level quantum system is defined on a Hilbert space H C . Denote the ≃ space of bounded operator on H as B(H ). A quantum state is characterized by a density operator ρ B(H ) satisfying trace(ρ) = 1 and ρ 0. In many cases, the ∈ ≥ interaction between the quantum system and the environment is described by a Markov

process, and the dynamical equation of the quantum state ρt can be written as

ρ˙t = L (ρt) J † 1 † 1 † = i[H,ρt] + ∑ L jρtL j L jL j ρt ρtL j L j. (4.1) − j=1 − 2 − 2

Here H B(H ) is the system Hamiltonian and L B(H ), j = 1, ,J are system ∈ { j ∈ ··· } operators that characterize the system-environment couplings. ZV is the space spanned by the ground states of V. 1 0 0 1 0 i σz = ,σx = ,σy = − are Pauli operators acting  0 1   1 0   i 0  − on a two-level system called qubit. Accordingly,  σzi,σxi,σyi are the Pauli operators defined on the i-th qubit. The vectorization of a matrix A is denoted as vec(A), which is a column vector obtained by stacking the columns of the A on top of one another.

4.2.2 Linear Quantum Systems Open quantum systems are systems that are coupled to an external environment or reservoir [19]. The environment exerts an influence on the system, in the form of vectors W(t), W †(t) consisting of quantum Wiener processes defined on a Hilbert space F known as the Fock space. The unitary of the passive annihilation only system governed by these processes is described by the stochastic differential equation

1 dU(t) = ( iH L†L)dt+dW †L L†dW U(t), (4.2) − − 2 −   U(0) = I, 74 Chapter 4. Quantum Reservoir Engineering where H and L are, respectively, the system Hamiltonian and the coupling operator through which the system couples with the environment. Then, any operator X : H H → generates the evolution X(t) = j (X) = U(t) (X I)U(t) in the space of operators on t ∗ ⊗ the tensor product Hilbert space H F, ⊗

dX = G (X)dt + dW †[X,L] + [L†,X]dW, (4.3) where

G (X) = i[X,H] + L (X), − L 1 1 L (X) = L†[X,L] + [L†,X]L L 2 2 are the generator and the Lindblad superoperator of the system, respectively [198]. The field resulting from the interaction between the system and the environment constitutes the output field of the system

dY = Ldt + dW. (4.4)

Linear annihilation only systems arise as a particular class of open quantum systems whose operators ak, k = 1,...,n, describe various modes of photon annihilation resulting from interactions between the environment and the system. Such operators satisfy the canonical commutation relations [a j,ak∗] = δ jk, where δ jk is the Kronecker delta. Taking the system Hamiltonian and the coupling operator of the system to be, respectively, T quadratic and linear functions of the vector X = a = [a1,...an] ,

H = a†Ma, L = Ca, (4.5)

m n where M is a Hermitian n n matrix, and C C × , the dynamics and output equations × ∈ become

da = Aadt + BdW dy = Cadt + dW, (4.6) 4.2 Background 75

n n n m m n where the complex matrices A C × , B C × , and C C × satisfy ∈ ∈ ∈ 1 A = iM C†C, B = C†. (4.7) − − 2 −

The following fundamental identity then holds [102, 103]

A + A† +C†C = 0. (4.8)

According to [83], passivity of a quantum system P is defined as a property of the system with respect to an output generated by an exosystem W and applied to input channels of the given quantum system on one hand, and a performance operator Z of the system on the other hand. To particularize the definition of [83] in relation to the specific class of annihilation only systems, consider a class of exosystems, i.e., open quantum systems with zero Hamiltonian, an identity scattering matrix and a coupling operator u which couples the exosystem with its input field. The exosystem is assumed tobe independent of P in the sense that u commutes with any operator from the C∗ operator algebra generated by X and X†. The time evolution of u is however determined by the full interacting system P ◁ W, and therefore may be influenced by X, X†. If the output of the exosystem W is fed into the input of the system P in a cascade or † series connection, the resulting system P◁W has the Hamiltonian HP◁W = H +Im(u L), the identity scattering matrix and the field coupling operator LP◁W = L + u [83]. The resulting system (P ◁ W) then has the generator GP◁W. Definition 4.2.1 — [83]. A system P with a performance output Z is passive if there exists a nonnegative observable V (called the storage observable of P) such that

G (V) Z†u + u†Z + λ (4.9) P◁W ≤ for some constant λ > 0. The operator

r(W) = Z†u + u†Z is the supply rate which ensures passivity. 76 Chapter 4. Quantum Reservoir Engineering

Now suppose P is a linear annihilation only system (4.5). Also, consider a perfor- mance output for the system P ◁ W to be

Z = Cpa + Dpu.

Taking X = a in (4.3), the system P ◁ W can be written as

da = (Aa + Bu)dt + BdW, (4.10) dY = (Ca + u)dt + dW,

Z = Cpa + Dpu.

n n n m m n where the complex matrices A C × , B C × , and C C × are the coefficients of ∈ ∈ ∈ the annihilation only system P. Without loss of generality, we further take the storage observable V having the form V = a†Pa, r(W) = Z†u + u†Z, then it can be shown that the system P is passive with a storage function V and a supply rate r(W) if for some constant λ > 0,

a†(PA + A†P)a + u†BPa + a†PBu (C a + D u)†u + u†(C a + D u) + λ. ≤ p p p p

This condition is equivalent to the positive realness condition stated in Theorem 3 of [204] (letting Q = 0 in that theorem):

PA + A†P PB C† − p 0. (4.11)  B†P C (D + D† )  ≤ − p − p p   In the special case, where V = a†a, D = 0 [204] and C = C, this reduces to the p p − condition A + A† 0 ≤ as the condition for passivity. Clearly this condition is satisfied in the case ofan annihilation only system P in the of the identity (4.8). Hence the annihilation only 4.2 Background 77

system (4.10) is passive with respect to performance output Z = Ca, with the storage − function V = a†a.

4.2.3 Lyapunov Methods The stationary states of Eq. (4.1) have been studied extensively for the purpose of state stabilization [160, 171, 170, 154, 6]. For a multipartite quantum system, the method of using dissipative dynamics to engineer quantum states has been generalized to the notion of dissipatively quasi-locally stabilizable (DQLS) states [172, 173]. The theory of DQLS states proposes a systematic approach to determine whether a given multipartite state is asymptotically stabilizable if local dissipation controls can be engineered. Furthermore, if the quantum state satisfies the DQLS condition, the required multipartite system Hamiltonian and the system-environment coupling operators can be constructively derived. The aforementioned results are based on (4.1). Alternatively, the desired states can be stabilized by studying the evolution of certain operators. Since the expectation of an operator V B(H ) at the state ρ is calculated by V = trace(Vρ), the evolution of ∈ ⟨ ⟩ρ the operator V(t) can be defined via the relation V(t) = V . Note that V = V(0). ⟨ ⟩ρ0 ⟨ ⟩ρt The generator of this Markov process is given by [83]

G (V(t)) = i[V(t),H(t)] + L(V(t)) − J † = i[V(t),H(t)] + ∑ L j (t)V(t)L j(t) − j=1 1 1 L†(t)L (t)V(t) V(t)L†(t)L (t). (4.12) −2 j j − 2 j j

A large class of quantum states, including graph states and cluster states (which are DQLS states as well), can be encoded as the ground states of a multipartite operator K taking the form V = ∑i=1 Vi [143, 185, 172]. As a result, state stabilization can be achieved by engineering the dissipation such that the system converges to the ground states asymptotically. The merit of this formulation is that the ground-state stability of V can be established by Lyapunov-type operator inequalities. This scenario has been considered before in [139], where a scalability condition is used to prove the ground-state

stability of V when each Vi is stabilized individually. However the scalability condition 78 Chapter 4. Quantum Reservoir Engineering proposed in [139] does not hold for certain applications, especially when V consist of { i} two-body interactions. An illustrative example can be found in Section 4.3. Note that ground-state stability does not necessarily guarantee that a particular ground state is stable against errors, because the erroneous state may return to a different ground state under the dissipative dynamics. However, we can prove in Section 4.3 that if certain types of errors occur to one of the ground states, the dissipation control can steer the erroneous state back to the initial ground state exactly, without any measurement or active feedback. In this regard, this result can be considered as an addition to the existing physical literature on automatic quantum error correction (AQEC) [14, 90, 26, 88, 82]. The results of Section 4.3 are intended to deal with a specialized case, where we apply algebraic methods to achieve the stabilization of the states by imposing scalable Lyapunov-type conditions on the operators. If these conditions are satisfied, then the ground states of the system are DQLS and V is frustration-free[185, 173, 139]. M The multipartite quantum system is defined on H = m=1 Hm which is a tensor product of Hilbert spaces H (each H is associatedN with a subsystem). Unless { m} m otherwise noted, we will the following assumption throughout this chapter. K Assumption 4.2.1 V can be decomposed as V = ∑i=1 Vi, and Vi is defined on a subset of H . V are orthogonal projections, i.e. V 2 = V and [V ,V ] = 0,i = j. Each V is { m} { i} i i i j ̸ i associated with a set of dissipation controls L . Each L allows the decomposition { j} j L j = ∑i Ui, jVi with Ui, j being a unitary operator. Remark 4.2.1 V can be regarded as quasi-local operators [172] since they are de- { i} fined on a subset of H . Therefore, the stabilizing dynamics in this chapter can be { m} considered as specific realizations for the stabilization of DQLS states. V 2 = V 0 is a natural assumption that holds for many applications, e.g. the i i ≥ dissipation control of stabilizer states [143, 185, 139]. V being commutative is an { i} intuitive assumption which enables V to share common ground states. Physical { i} examples of the decomposition includes the dissipation control of graph states [185]. We also make the following assumption. K Assumption 4.2.2 The system Hamiltonian can be written as H = ∑i=1 Hi, where each H satisfies H = V g I. Here g is the smallest eigenvalue of the Hermitian operator i i i − i − i Hi. 4.2 Background 79

Remark 4.2.2 It is experimentally possible to engineer Hamiltonian on a multipartite quantum system, e.g. [93]. As shown in the next section, the two assumptions allow a concise and scalable stability analysis based on the generator (4.17). In addition, we have two definitions as follows.

Definition 4.2.2 Vi is said to be a two-body operator if it can be decomposed as Vi = X X , with X ,X defined on two Hilbert spaces H ,H , respectively. m1 ⊗ m2 m1 m2 m1 m2 Definition 4.2.3 The generator of the evolution of Vi that is induced by a single dissipation control Li is defined by

1 1 G (V ) = i[V ,H] + L†V L L†L V VL†L . (4.13) i Li − i i i i − 2 i i i − 2 i i

Remark 4.2.3 Eq. (4.13) is the generator of Vi controlled by a single coupling operator L . If V is also affected by other coupling operators L , j = i , then we have G (V ) = i i { j ̸ } i V L†V L 1 L†L V 1V L†L G ( i)Li + ∑ j=i j i j 2 j j i 2 i j j. ̸ − − We also recall one theorem from [83]: Theorem 4.2.1 If an operator X 0 satisfies the following inequality ≥

G (X) cX, c > 0, (4.14) ≤ − then the system will asymptotically converge to ZX . Remark 4.2.4 The algebraic condition (4.21) uses X = X(0), H = H(0) and L = { j L j(0) . The satisfaction of this condition implies that limt ∞ X(t) = 0. The other } → ⟨ ⟩ algebraic conditions of this chapter also use the operators at the initial time. For the details of the Heisenberg-picture stability theory, please refer to [136]. The following theorem can be derived using Theorem 4.2.1, Assumption 4.2.1 and 4.2.2. Theorem 4.2.2 [139] If the following condition

J † ∑ (ViUi, jViUi, jVi Vi) ciVi, ci > 0, (4.15) j=1 − ≤ − 80 Chapter 4. Quantum Reservoir Engineering

•••

Fig. 4.1 Each Vi has 0 as its lowest energy. The system may be stabilized to the ground state of V1 under a local dissipation control. The local dissipation control is scalable if it maintains or decreases the energy of V ,i = 1 , i.e. the system is steered towards { i ̸ } the ground states of Vi,i = 1 under the local dissipation control of V1. However for instance, if the local dissipation{ ̸ } control of V increases the energy of V , then L ,i = 1 1 2 { i ̸ } must be able to compensate this increase in order to stabilize V2. holds, then G (V ) c V and V is asymptotically ground-state stable under the dissipa- i ≤ − i i i tion control of L . In particular, we say U stabilize V if Eq. (4.30) holds. { j} { i, j} i Now we recall the scalability condition derived in [139]. Theorem 4.2.3 Suppose for each V , there exists L such that G (V ) c V ,c > 0 i { i, j} i ≤ − i i i holds. The ground-state stability of V can be implied if the intuitive scalability condition

∑ ∑G (Vi)L 0, (4.16) i′ , j ≤ i′ =i j ̸ can be established for all i. Remark 4.2.5 V is asymptotically ground-state stable if the local dissipation controls of V ,i′ = i do not increase the expectation of V (Fig. 4.1). However, Eq. (4.23) { i′ ̸ } i is easily violated if V involve two-body interactions. If V is a two-body operator, { i} i the local control L that stabilizes V may not act on V ,i′ = i trivially. To be more i, j i i′ ̸ specific, if V = X X , then there exists at least one V ,i′ = i which is defined on i m1 ⊗ m2 i′ ̸ , otherwise the resulting ground state cannot be entangled in . As a result, the Hm1 Hm1 local control U defined on H H may act nontrivially on this V . i, j m1 ⊗ m2 i′ 4.3 Quantum Error Correction by Dissipation Control 81

The result of this chapter shows the way to construct the dissipation control for the stabilization of V when V can be locally stabilized but the local dissipation controls { i} do not satisfy the strong scalability condition Eq. (4.23).

4.3 Quantum Error Correction by Dissipation Control

A quantum Lyapunov operator V is an observable on a Hilbert space H for which the following properties hold [136]: 1. V 0. ≥ 2. G (V) 0. ≤ V 0 means V is positive semidefinite with its smallest eigenvalue being 0. By the ≥ definition, V could be understood as a virtual energy operator. We define the virtual energy as the expectation tr(Vρ ) = V = V(t) = tr(V(t)ρ ). ρ is the initial state t ⟨ ⟩ρt ⟨ ⟩ρ0 0 0 of the evolution. The second property G (V) 0 suggests that the virtual energy will not ≤ increase in time, i.e. the virtual energy is stable. However, V being stable is not enough in the context of this Section. In order to stabilize the system to the ground states of V, we need to engineer the dissipation control such that V(t) exponentially converges ⟨ ⟩ρ0 to zero. In the above definition, we have used the superoperator notation G ( ) to represent · the generator of the Heisenberg-picture evolution

G (X(t)) = i[X(t),H(t)] + L(X(t)) (4.17) −

for a Heisenberg-picture operator X(t). H is the system Hamiltonian and

K † L(X(t)) = ∑ Lk(t)X(t)Lk(t) k=1 1 1 L†(t)L (t)X(t) X(t)L†(t)L (t) (4.18) − 2 k k − 2 k k 82 Chapter 4. Quantum Reservoir Engineering

is the Lindblad dissipation term. L ,k = 1, ,K are K coupling operators character- { k ··· } izing the interaction between the system and the environment. Also we define

G (X(t)) = i[X(t),H(t)] + L†(t)X(t)L (t) Lk − k k 1 1 L†(t)L (t)X(t) X(t)L†(t)L (t) (4.19) −2 k k − 2 k k

which represents a generator with regard to a specific coupling operator Lk. We use Z := ρ : X = 0 to denote the subspace spanned by the ground states of X. Then, X { ⟨ ⟩ρ } V is said to be asymptotically ground-state stable if

V(t) = V 0, as t ∞. (4.20) ⟨ ⟩ρ0 ⟨ ⟩ρt → →

A sufficient condition for the asymptotic ground-state stability of V is given by the following operator inequality [83]

G (V) cV, c > 0. (4.21) ≤ −

Integration of the inequality (4.21) yields V(t) e ctV(0). ⟨ ⟩ρ0 ≤ − The inequality (4.21) can be interpreted using the ground-state spaces of the operators. If Z is contained in Z for two operators A,B 0, then there must exist a constant c > 0 A B ≥ such that A cB. This can be seen from the decomposition of A and B into ≥

A˜+ 0 B˜ 0 A = , B = , (4.22)  0 0   0 0      with A˜+ being positive definite and B˜ 0. Then A˜+ ε I > 0 for some ε > 0 and ≥ − 1 1 I ε B˜ for some ε , which yields a solution c = ε ε to A cB. As a result, the ≥ 2 2 1 2 ≥ inequality (4.21) can be established if Z G (V) is contained in ZV . This property will be − useful in the next section.

4.3.1 Scalability of Lyapunov Method For multipartite quantum systems, directly solving (4.21) for L is computationally { k} hard, not to mention the physical realizability issues with the resulting multipartite 4.3 Quantum Error Correction by Dissipation Control 83 coupling operators. Indeed, the local dissipation controls designed for the subsystems can effectively control the overall system, as long as they satisfy certain scalability conditions. This idea was firstly conjectured in [185]. As a matter of fact, this idea is similar to the decomposition-aggregation technique [16, 207] for the classical control engineering of large-scale systems. We can decompose the total Lyapunov operator into a sum of component Lyapunov operators and design environmental couplings for each of them accordingly. If the total Lyapunov operator is asymptotically ground-state stable under the collective action of the individually-designed couplings, we say the Lyapunov method is scalable (Figure 4.1). Consider a finite number of Lyapunov operators V ,i = 1, ,N and the stabilization { i ··· } of the system to the ground states of V = ∑i Vi. We call Vi the component Lyapunov operator. We omit the range of the summation where no confusion is raised. Suppose for each V , there exists a set of local coupling operators L such that ∑ G (V ) i { ik} k i Lik ≤ c V , c > 0 holds. Obviously, the ground-state stability of V = ∑ V can be implied if − i i i i i

V 0 j i (4.23) ∑G ( i)L jk , = , k ≤ ̸ holds for all i, j. That is, V is asymptotically ground-state stable if the dissipation controls do not increase the energy of the other component Lyapunov operators. Eq. (4.23) is a strong scalability condition. Generally speaking, it is possible that some of the individual dissipation controls indeed increases the energy of the other component Lyapunov operators but V is still asymptotically ground-state stable. Example 4.1 (3-qubit repetition code) A logical qubit ( 0 , 1 ) is encoded using three | L⟩ | L⟩ physical qubits, i.e. 0 = 000 , 1 = 111 . (4.24) | L⟩ | ⟩ | L⟩ | ⟩ This code can be used to protect quantum information in the subspace spanned by (i) 0 , 1 against single bit-flip noise, with the error operators given by E = σx ,i = {| L⟩ | L⟩} { (i) 1,2,3 . σx denotes the Pauli operator acting on qubit i, resulting in a flip of the qubit } state. In the stabilizer formalism [53], the codewords (4.63) are characterized by stabilizers. In particular, codewords are invariant under the action of the stabilizers. For the 3-qubit 84 Chapter 4. Quantum Reservoir Engineering repetition code, the group of stabilizers are given by

(1) (2) (2) (3) (1) (3) S = σz σz ,σz σz ,σz σz . (4.25) { }

Lyapunov operator can be defined from the stabilizers as

1 (1) (2) (2) (3) (1) (3) V = [(I σz σz ) + (I σz σz ) + (I σz σz )] 2 − − − = V1 +V2 +V3, (4.26) which is a sum of component Lyapunov operators V ,V ,V 0. For V = 1 (I 1 2 3 ≥ 1 2 − (1) (2) 1 (1) (1) (2) σz σz ), we can easily see that L = σx (I σz σz ) is a solution to the inequality 1 2 − (4.21) due to 1 1 G (V ) = L†V L L†L V V L†L = V . (4.27) 1 L1 1 1 1 − 2 1 1 1 − 2 1 1 1 − 1

However, L1 is not scalable. This is clear by calculating

V diag 0 0 1 1 1 1 0 0 0 (4.28) ∑ G ( j)L1 = ( , , , , , , , ) ≰ , j=1 − − ̸ which violates the scalability condition (4.23). ■

Without loss of generality, we consider one coupling operator (K = 1) for each Vi. We assume V are commuting and satisfying V 2 = V , i.e. V are projectors. Motivated { i} i i { i} by [185], we use the coupling operators of the form Li = UiVi , where Ui is a unitary operator. Also, we assume the Vi is defined by a displacement of the system Hamiltonian

Hi by Vi = Hi + gi. By this way we can ignore the unitary dynamics. Substituting

Li = UiVi into Eq. (4.17) yields

G (V ) = V U†V U V V . (4.29) i i i i i i − i

As a result, the unitary operations U must satisfy { i}

V U†V U V (1 c )V , c > 0, (4.30) i i i i i ≤ − i i i 4.3 Quantum Error Correction by Dissipation Control 85

V 1 U 1 U 2

6 12 H1 H1

3

V 2 V 3

U 3

Fig. 4.2 The schematic representation of three qubits governed by V1,V2,V3. Each Vi (i) acts non-trivially on two of the subsystems. Ui = σx is the unitary rotation on the i-th subsystem. in order to establish G (V ) c V . Fig. 4.2 depicts the systems and dissipation controls i ≤ − i i as proposed in Example 4.1. The Li = UiVi with Ui satisfying Eq. (4.30) fails to satisfy the general scalability condition Eq. (4.23). Therefore, in order to derive dissipation controls that can deal with Example 4.1, we will need weaker scalability condition. Still, we may suppose there exists a unitary rotation Ui which stabilizes each component Lyapunov operator Vi by Eq. (4.30). Denote (i) Vn as the set of component Lyapunov operators that commute with Ui. The other { } i component Lyapunov operators are denoted as V ( ) ,d = i. The sufficient condition for { d } ̸ the asymptotic ground-state stability of V is

i i i i V ( )U†V ( )U V ( ) V ( ), (4.31) d i d i d ≤ d (i) ∑(Vi ∏Vd ) λ ∑Vi, λ > 0. (4.32) i d ≥ i

(i) The resulting dissipation controls are L = U V ∏ V . Under these controls, V(t) { i i i d d } ⟨ ⟩ρ0 will converge to 0 as t ∞. For proof of the sufficient condition please refer to → Appendix A.2. 86 Chapter 4. Quantum Reservoir Engineering

(i) The dissipation control can be written as L = U V ′ = U V ∏ V . Obviously, { i i i i i d d } V ′ can be regarded as the updated Lyapunov operators with the unitary rotations U . { i } { i} As shown before, the condition (4.45) is satisfied if Z is contained in Z V . That ∑i Vi′ ∑i i is, the common ground states of the updated Lyapunov operators are also the common ground states of the original V . Particularly, if the common ground state of V is { i} { i} unique, then V ′ must share the same unique ground state. { i } Now we can solve for the correct dissipation control for Example 4.1 using the weaker scalability condition (4.44)-(4.45). Obviously, the updated Lyapunov operators V ′ ,V ′ ,V ′ are V = V V , V = V V , V = V V . The dissipation control for the first { 1 2 3} 1′ 1 3 2′ 1 2 3′ 2 3 1 (1) (1) (3) (1) (2) Lyapunov operator is given by L = U V = σx (I σz σz )(I σz σz ). We can 1 1 1′ 2 − − derive L2 and L3 similarly. V is asymptotically ground-state stable when the three-qubit

system is coupled to a dissipative environment via L1,L2,L3.

4.3.2 Error Correction Condition The ground-state stability concerns with driving system to the ground state of V from any initial state. However, ground-state stability is not necessarily related to error correction. For instance, suppose we encode the information into a steady ground state of V. If

an error Ea occurs, the perturbed state can be stabilized to ZV . However, we cannot guarantee that the dissipation control will restore the system to the initial state since the ground states may be degenerate. In addition, it is not clear whether the coherence of the initial state will be preserved when subjected to the dissipation. In this section, we will show that the controls L = U V can passively correct the { i i i} errors induced by U† if V satisfy a simple stabilizer-type condition. { i } { i} Denote p as basis vectors of Z . Suppose the Kraus operators [96] describing the {| ⟩} V error process are given by E . We consider a two-step passive error correction. In the { a} first step, the system is coupled to the noise. In the second step, the system issubjected to the dissipation controls. The controls will return the system to the initial state if any error occurs in the first step. If the dissipation strength is strong, it is reasonable toignore the effect of the noise in the second step. 4.3 Quantum Error Correction by Dissipation Control 87

The state dynamics is governed by the master equation

ρ˙t = L (ρt), (4.33) where L ( ) is in Lindblad form ·

† 1 † 1 † L (ρt) = i[H,ρt] + ∑LkρtLk ρtLkLk LkLkρt. (4.34) − k − 2 − 2

An arbitrary pure state in Z is expressed by ρ = ∑ α p (∑ α p )† = ∑ α α p q . V 0 p p| ⟩ p p| ⟩ p,q p q∗| ⟩⟨ | The erroneous states are thus given by E ρ E† . The dissipative dynamics stabilizes { a 0 a } the erroneous states back to the initial ones if

L ( p q ) = 0, (4.35) | ⟩⟨ | L (E p q E†) a| ⟩⟨ | a = κ E p q E† + κ p q , κ > 0 (4.36) − pq a| ⟩⟨ | a pq| ⟩⟨ | pq holds for all p,q. The proof of the condition is put in Appendix A.3. Eq. (4.52)-(4.53) basically says that each of the elements of the erroneous density operator including coherence terms can be restored to the initial value. Please note this implicitly guarantees that the orthogonal states evolve into orthogonal erroneous states, which is a sufficient condition for error correction [95, 14, 82].

With the controls of the form Li = UiVi, it is easy to verify that Eq. (4.52) is satisfied since V p = 0 for all i, p. In addition, Eq. (4.53) can be explicitly written as i| ⟩

L (E p q E†) a| ⟩⟨ | a † † = ∑LiEa p q Ea Li i | ⟩⟨ | 1 1 E p q E†L†L L†L E p q E† − 2 a| ⟩⟨ | a i i − 2 i i a| ⟩⟨ | a † † = ∑UiViEa p q EaViUi i | ⟩⟨ | 1 1 E p q E†V V E p q E†, (4.37) − 2 a| ⟩⟨ | a i − 2 i a| ⟩⟨ | a 88 Chapter 4. Quantum Reservoir Engineering

if the erroneous states E p are eigenstates of the Hamiltonian H. Recall that V is { a| ⟩} i obtained by displacing the system Hamiltonian and the nonzero eigenvalue of Vi is 1. Hence, the requirement that E p are eigenstates of H is equivalent to E p are { a| ⟩} { a| ⟩} eigenstates of Vi. Obviously, a sufficient condition for (4.62) and (4.53) to be equalis

† Ea = Ui , (4.38) V U† p = 1, (4.39) i i | ⟩ V U† p = 0, j = i, (4.40) j i | ⟩ ̸

for all p. Eq. (4.59)-(4.60) imply a one-to-one correspondence between each error operator E = U† to a Lyapunov operator V . The erroneous states E p = U† p are a i i { a| ⟩ i | ⟩} eigenstates of a unique Vi with the positive eigenvalue 1, while remaining as the ground states of V for j = i. Therefore, the component Lyapunov operators are just like the j ̸ syndrome projectors proposed in the stabilizer formalism [53]. Consider Example 4.1. We can check the condition Eq. (4.59)-(4.60) by

(i) (i) V ′ σx 0 = V ′ σx 1 = 1, i | L⟩ i | L⟩ (i) (i) V ′ σx 0 = V ′ σx 1 = 0, j = i. (4.41) j | L⟩ j | L⟩ ̸

As a result, the dissipation controls L proposed at the end of Section 4.3.1 can { i} (i) † (i) passively correct the errors defined by the operators (σx ) = σx , which is exactly { } { } the single bit-flip error E .

4.3.3 Definition of AQEC Next we will introduce the definition of AQEC [14] that is adapted to the context of this Section. Definition 4.3.1 The set of error operators is denoted as E [96]. In the error process, { a} an error may occur with a probability. When the error occurs, the corresponding error operator E transforms the initial state ρ Z to the erroneous state as E ρ E†. In the a 0 ∈ V a 0 a correction process that follows the error process, AQEC is defined as the dissipative dynamics that stabilizes the system to an arbitrary initial state ρ Z , when an error 0 ∈ V 4.3 Quantum Error Correction by Dissipation Control 89 modelled by an arbitrary error operator from E occurs, i.e., { a}

† lim(Eaρ Ea )t = ρ , (4.42) t ∞ 0 0 → holds for arbitrary ρ Z and E . In this case, the errors are said to be correctable by 0 ∈ V a the dissipation control.

For example, Ea can be the bit-flip error operator σx which may flip the state of the qubit as σ 0 = 1 with certain probability. AQEC will automatically correct the error x| ⟩ | ⟩ and return the system state to 0 by dissipation control. | ⟩ Note that the AQEC condition (4.42) implies that the system is ground-state stable as every ρ Z is an invariant state. As a result, if no error occurs, the ground states 0 ∈ V will be stable under the dissipation control. However, ground-state stability does not necessarily imply error correction capability. For instance, suppose the erroneous state is † Eaρ0Ea . The erroneous state can be automatically steered back to the invariant subspace

ZV if the system is asymptotically ground-state stable, but we cannot guarantee that the dissipation control will restore the system to the initial state ρ0 if the ground states are degenerate, i.e. ZV is more than one-dimensional. It is also worth mentioning that Definition 4.3.1 corresponds to an ideal case that the error process and correction process take place consecutively. The following theorem is concerned with the existence of dissipation control. Theorem 4.3.1 There always exists a set of unitary operators U , j = 1, ,J that { i, j ··· } stabilize Vi.

Proof. We provide a constructive method to prove the existence. Since V 0, we can i ≥ write the spectral decomposition of V as V = ∑ h n n ,h 0, with n being the i i n n| ⟩⟨ | n ≥ {| ⟩} basis vectors of the Hilbert space. Denote one of the ground states (with eigenvalue 0) as 0 0 . Therefore, if for each h j > 0 we choose Ui, j = j 0 + 0 j + ∑n= j,0 n n , | ⟩⟨ | | ⟩⟨ | | ⟩⟨ | ̸ | ⟩⟨ | † 3 then ViUi, jViUi, jVi = ∑n= j hn n n . Since hn equals either 0 or 1 for a projector Vi, we ̸ | ⟩⟨ | 3 have ∑n= j hn n n = ∑n= j hn n n . We can verify that ̸ | ⟩⟨ | ̸ | ⟩⟨ |

J J † ∑ (ViUi, jViUi, jVi Vi) = ∑ h j j j = Vi, (4.43) j=1 − − j=1 | ⟩⟨ | − 90 Chapter 4. Quantum Reservoir Engineering

where h = 1, j = 1, ,J is the set of positive eigenvalues. The condition (4.30) is { j ··· } satisfied with ci = 1. ■

Remark 4.3.1 Theorem 4.3.1 provides a specific solution to the exponential stabilization problem. Approaches to choose the set of unitaries have also been discussed in [185].

4.3.4 Scalability of Dissipation Control

Theorem 4.3.2 Suppose U stabilizes V . For each U , V are separated into two sets, i i i { j} (i) (i) namely, Vn and V . The definitions of the two sets are as follows { } { d } (i) • [Vn ,Ui] = 0, i • [V ( ),U ] = 0. d i ̸ A sufficient condition for the asymptotic ground-state stability of V is given by

i i i i V ( )U†V ( )U V ( ) V ( ), (4.44) d i d i d ≤ d (i) ∑(∏Vd ) λV, λ > 0. (4.45) i d ≥

(i) The dissipation control is constructed as L = U ∏ V . { i i d d } (i) Remark 4.3.2 By definition, Vd is the operator that satisfies the condition (4.44) but (i) does not commute with U . U acts trivially on Vn . In contrast, U acts nontrivially on i i { } i V (i) . However, in order for the dissipation controls to be scalable V (i) should satisfy { d } d (i) (i) (i) (i) (i) (i) the stability condition G (V ) = V U†V U V V 0. Note that V V since d Ui d i d i d − d ≤ i ∈ d Ui stabilizes Vi by assumption.

Proof. By assumption of Theorem 4.3.2, we have U satisfying Eq. (4.30) for each V . { i} i (i) (i) Using V V and the dissipation control L = U ∏ V we have i ∈ d { i i d d }

V V (i)U†V U V (i) V V (i) G ( i)Li = ∏ d i i i ∏ d i ∏ d d d − d (i) † (i) (i) = ∏Vd ViUi ViUiVi ∏Vd ∏Vd d d − d (i) (i) (1 ci 1)∏Vd = ci ∏Vd , ci > 0, ≤ − − d − d (4.46) 4.3 Quantum Error Correction by Dissipation Control 91

2 where we have made use of the properties [Vi,Vj] = 0 and Vi = Vi from Assumption 4.2.1. For j = i, either [U ,V ] = 0 which results in ̸ j i

V V ( j)U†V U V ( j) V V ( j) 0 (4.47) G ( i)L j = ∏ d j i j ∏ d i ∏ d = , d d − d or V does not commute with U and satisfies V V ( j) . According to (4.44), this i j i ∈ { d } implies V U†V U V V . (4.48) i j i j i ≤ i Consequently, we can obtain

G (Vi)L j ( j) † ( j) ( j) = ∏Vd Uj ViUj ∏Vd Vi ∏Vd d d − d ( j) † ( j) ( j) = ∏Vd ViUj ViUjVi ∏Vd Vi ∏Vd d d − d 0, (4.49) ≤ which further leads to

(i) (i) G (∑Vi) ∑ci ∏Vd cmin ∑∏Vd i ≤ − i d ≤ − i d cminλ ∑Vi. (4.50) ≤ − i c is the smallest positive number in c . Here we have used the condition (4.45). By min { i} Theorem 4.2.1, V = ∑i Vi is asymptotically ground-state stable. ■

Remark 4.3.3 The strong scalability condition (4.23) is just a special case of Theo- i rem 4.3.2 with V ( ) = U . Furthermore, Eq. (4.44) implies { d i}

(i) G (Vd ) (i) 0. (4.51) Li′ =UiVd ≤

(i) Therefore, ∏ V is the product of the operators in V whose energies are not increased d d { i} (i) by the local controls L′ = U V . However, if we implement the dissipation control as { i i d } L′ = U V , the dissipation control may not satisfy the scalability condition Eq. (4.23). { i i i} 92 Chapter 4. Quantum Reservoir Engineering

(i) The updated dissipation control L = U ∏ V is still in the form of L = U V ′ { i i d d } { i i i } (i) with V ′ = ∏ V . Note that V ′ are still projectors. The reason we preclude the i d d { i } (i) (i) (i) operators Vn from the updated dissipation controls is that ∏ V ∏ Vn = ∏ V { } d d n j j ′ leads to the same Vi for each dissipation control and so often results in the violation of sufficient condition (4.45) in practical implementation.

4.3.5 Automatic Quantum Error Correction by Dissipation Control In this section, we derive the condition such that the dissipation control L can { i} automatically correct certain types of errors. Denote p H as the complete basis vectors of Z . Then we can write the basis {| ⟩ ∈ } V of the bounded operators on Z as p q , where p and q have the same range. An V {| ⟩⟨ |} arbitrary density state in Z can thus be expanded on the basis as ρ = ∑ α p q . V 0 p,q pq| ⟩⟨ | Lemma 4.3.1 The dissipation controls L are error-correcting with respect to the error { i} operators E if { a}

L ( p q ) = 0, (4.52) | ⟩⟨ | L (E p q E†) a| ⟩⟨ | a = κ E p q E† + κ p q , κ > 0 (4.53) − pq a| ⟩⟨ | a pq| ⟩⟨ | pq

hold for all p,q.

Proof. The dynamical equation Eq. (4.1) can be written as a linear system equation

vec˙ (ρt) = Avec(ρt), (4.54)

using the vectorization of ρ ,H, L and the relation vec(B B B ) = (BT B )vec(B ). t { i} 1 2 3 3 ⊗ 1 2 As a result, A is determined by H and L . The solution of the above equation is given { i} by At vec(ρt) = e vec(ρ0). (4.55)

The condition (4.52) ensures the invariance of the initial state under the dissipation control, if no error occurs. If an error E occurs, the erroneous state ∑ α E p q E† a p,q pq a| ⟩⟨ | a 4.3 Quantum Error Correction by Dissipation Control 93

needs to be steered back to ρ0. Since we have

vec((E p q E†) ) = eAtvec(E p q E†), (4.56) a| ⟩⟨ | a t a| ⟩⟨ | a and so

vec˙ ((E p q E†) ) a| ⟩⟨ | a t = eAtAvec(E p q E†) a| ⟩⟨ | a = κ eAtvec(E p q E†) + κ vec( p q ) − pq a| ⟩⟨ | a pq | ⟩⟨ | = κ vec((E p q E†) ) + κ vec( p q ). (4.57) − pq a| ⟩⟨ | a t pq | ⟩⟨ |

Eq. (A.9) is an ordinary first-order differential equation which can be easily integrated to be

vec((E p q E†) ) a| ⟩⟨ | a t κpqt † = e− vec(Ea p q Ea ) | ⟩⟨ t | κpq(t r) + κpqvec( p q ) e− − dr | ⟩⟨ | 0 Z κpqt † κpqt = e− vec(E p q E ) + vec( p q )[1 e− ]. a| ⟩⟨ | a | ⟩⟨ | − (4.58)

This proves (E p q E†) p q as t ∞. Due to the linearity of the dynamical a| ⟩⟨ | a t → | ⟩⟨ | → equation Eq. (4.54), we can deduce that (∑ α E p q E†) ρ for any error p,q pq a| ⟩⟨ | a t → 0 operator Ea. The system is restored to the initial state exactly. ■

Eq. (4.53) guarantees that every element of the erroneous density state, including the non-diagonal terms which characterize the quantum coherence, can be restored to the initial value. In this sense, Eq. (4.52)-(4.53) are more like the definition of quantum error correction, as compared to the sufficient conditions for the errors tobe correctable [95, 82, 14]. Based on Lemma 4.3.1, we can prove the following theorem. Theorem 4.3.3 Suppose the dissipation control takes the form L = U V , with V { i i i} { i} being projectors and U being unitary operators. The sufficient conditions for the set { i} 94 Chapter 4. Quantum Reservoir Engineering of error operators U† to be correctable are { i }

V U† p = U† p , (4.59) i i | ⟩ i | ⟩ V U† p = 0, j = i, (4.60) j i | ⟩ ̸ for all p . | ⟩ Remark 4.3.4 The correctable errors are determined by the available dissipation controls. † For example, Ui can be the bit-flip error operator σx. Note that there exist local dissipation controls L = σ V for the stabilization of the graph states [185, 139]. { i xi i} Therefore, in this case the bit-flip errors caused by σ † = σ are correctable if the { xi} { xi} sufficient conditions are satisfied.

Proof. It is easy to verify that Eq. (4.52) is satisfied since ZV is an invariant subspace under the dissipation control and p is the basis vector of Z . Recall that V is obtained | ⟩ V i by displacing the system Hamiltonian Hi according to Assumption 4.2.2. Since the erroneous state vector U† p is an eigenstate of V with the eigenvalue 1 and an eigenstate i | ⟩ i of V , j = i with eigenvalue 0, we can conclude that U† p is also an eigenstate of { j ̸ } i | ⟩ the system Hamiltonian H. Based on this fact, we can remove the unitary dynamics in Eq. (4.53) due to

i[H,U† p q U ] = i[V,U† p q U ] − i | ⟩⟨ | i − i | ⟩⟨ | i = i[V ,U† p q U ] = 0, (4.61) − i i | ⟩⟨ | i 4.3 Quantum Error Correction by Dissipation Control 95

and obtain

L (U† p q U ) i | ⟩⟨ | i K † † = ∑ L jUi p q UiL j j=1 | ⟩⟨ | 1 1 U† p q U L†L L†L U† p q U† − 2 i | ⟩⟨ | i j j − 2 j j i | ⟩⟨ | i K † † = ∑ UjVjUi p q UiVjUj j=1 | ⟩⟨ | 1 1 U† p q U V V U† p q U − 2 i | ⟩⟨ | i j − 2 j i | ⟩⟨ | i = p q U† p q U . (4.62) | ⟩⟨ | − i | ⟩⟨ | i

Therefore, Eq. (4.53) holds with κpq = 1. By Lemma 4.3.1, the dissipation control L = U V can automatically correct errors induced by the error operators U† . { i i i} { i } ■ Eq. (4.59)-(4.60) imply a one-to-one correspondence between each error operator U† to V . For each error operator U†, the erroneous state vector U† p is an eigenvector i i i i | ⟩ of V with the positive eigenvalue 1. At the same time, U† p remains as the ground i i | ⟩ state of V for j = i. For this reason, V are similar to the error syndrome projectors as j ̸ { i} proposed in the stabilizer formalism [53].

4.3.6 Dissipation Control of 3-qubit Repetition Code States Let us re-consider the three-qubit code introduced in Example 4.1, i.e.

0 = 000 , 1 = 111 , (4.63) | L⟩ | ⟩ | L⟩ | ⟩

where 0 , 1 denote the basis vectors of the physical qubit and 000 = 0 0 0 . | ⟩ | ⟩ | ⟩ | ⟩ ⊗ | ⟩ ⊗ | ⟩ For this 3-qubit repetition code, the set of stabilizers is given by

S = σ σ ,σ σ ,σ σ . (4.64) { z1 z2 z2 z1 z3} 96 Chapter 4. Quantum Reservoir Engineering

Based on the stabilizers, we can define V as

1 V = [(I σ σ ) + (I σ σ ) + (I σ σ )] 2 − z1 z2 − z2 z3 − z1 z3 = V1 +V2 +V3. (4.65)

Note that V ,V ,V are two-body operators. 0 and 1 are two ground states of V. It 1 2 3 | L⟩ | L⟩ is easy to verify that L = 1 σ (I σ σ ) satisfies 1 2 x1 − z1 z2 1 1 G (V ) = L†V L L†L V V L†L = V , (4.66) 1 L1 1 1 1 − 2 1 1 1 − 2 1 1 1 − 1 with U1 = σx1. Similarly, we can obtain the local dissipation controls for V2,V3 as L = 1 σ (I σ σ ),L = 1 σ (I σ σ ), respectively. However, we have 2 2 x2 − z2 z3 3 2 x3 − z1 z3

V V 0 (4.67) ∑ G ( 1)L j = σz1σz2 2 ≰ , j=2,3 which violates the scalability condition (4.23). Instead, we can construct the correct dissipation control for V using Theorem 4.3.2.

Since U1 stabilizes both V1 and V3, the updated dissipation control would be designed as L = U V = 1 σ (I σ σ )(I σ σ ) with V = V V . L and L can be derived 1 1 1′ 2 x1 − z1 z3 − z1 z2 1′ 1 3 2 3 ′ ′ ′ ′ similarly with V2 =V1V2, U2 = σx2, V3 =V2V3, U3 = σx3. Furthermore, we have V1 +V2 + ′ 1 1 V3 =V1V3 +V1V2 +V2V3 = 2 (V1 +V2 +V3) = 2V. By Theorem 4.3.2, V is asymptotically ground-state stable if the 3-qubit system is coupled to a dissipative environment via

L1,L2,L3. Next, we can verify the error correction condition Eq. (4.59)-(4.60) in Theorem 4.3.3 by

V ′ σ 0 = σ 0 , V ′ σ 1 = σ 1 , i xi| L⟩ xi| L⟩ i xi| L⟩ xi| L⟩ V ′ σ 0 = 0, V ′ σ 1 = 0, j = i. (4.68) j xi| L⟩ j xi| L⟩ ̸

As a result, the dissipation control L can automatically correct the errors induced { i} by the set of error operators U† = (σ )† = σ , which is exactly the set of the { i } { xi } { xi} single bit-flip errors E . Fig. 4.3 is the numerical demonstration of the error correction 4.3 Quantum Error Correction by Dissipation Control 97

Coherent evolution under Lyapunov-designed dissipation 1.0

Tr(ρtρtarget)

Tr(ρtρinitial) 0.8

0.6

Projection 0.4

0.2

0.0 0.0 0.1 0.2 0.3 0.4 0.5 1 Time (γ− )

′ ′ ′ Fig. 4.3 Numerical simulation of the state evolution with the coupling operators L1,L2,L3 ′ ′ ′ for 3-qubit repetition code state. Here L1,L2,L3 are renormalized by a coupling strength 001 +i 110 √κ, i.e. L′ = √κL . The initial state is an error-corrupted state ρ = | ⟩ | ⟩ , i i initial √2 000 +i 111 which is different from the code state ρ = ρ = | ⟩ | ⟩ due to the single bit-flip 0 target √2 error σx3. The system converges to the target state with unit probability, which means that no coherence is lost during this dissipative process. κ and the time scale γ are set to 1 in this example. performance of the dissipation control. An erroneous state is shown to be restored to the code state. In particular, the coherence of the initial state is preserved under the dissipation. A more realistic automatic error correction scheme is applying the error correction control in parallel with the noises [82]. In this case, the system can be modelled as subjected to the noise and the engineered couplings simultaneously. As we have demonstrated in Fig. 4.4, the derived system-environment couplings for the 3-qubit repetition code states indeed can be used in parallel with the noises. The bit-flip errors are modelled by coupling the system to the environment via the additional coupling operators Lnoise = √γσ ,i = 1,2,3 , with γ being the coupling strength. As a result, { i xi } the system is associated with 6 coupling channels in total. When we increase the strength of the dissipation controls, a nearly perfect code state preservation can be achieved. 98 Chapter 4. Quantum Reservoir Engineering

Remark 4.3.5 Coherent feedback loop in [90] is essentially implementing the environ- mental couplings adiabatically [90, Eq. (2)]3. Physical implementation of dissipation control has also been experimentally demonstrated for superconducting qubit systems, such as in [156]. Recently, Cohen et al. has demonstrated a scheme which uses the dissipative gadgets to implement automatic quantum error correction [26].

Ground state fidelity under errors and engineered dissipations 1.00

0.95

) 0.90 0 ρ

t κ

ρ = 1 γ

Tr( κ 0.85 = 5 γ κ = 10 γ 0.80 κ = 50 γ κ = 100 γ 0.75 0.0 0.1 0.2 0.3 0.4 0.5 1 Time (γ− )

Fig. 4.4 Numerical simulation of state evolution when the system is subjected to the ′ ′ ′ noise dissipative couplings L1,L2,L3 and the noise operators Li = σxi,i = 1,2,3 simul- {000 +i 111 } taneously. γ = 1. The code state is defined by ρ = | ⟩ | ⟩ . Depending on the 0 √2 coupling strength κ, we achieve different levels of state preservation. In the strong coupling regime κ/γ 50, the code state can be continuously preserved against the bit-flip noise. ≥

4.4 Decoherence Free Subsystem Synthesis

As mentioned, a decoherence free subsystem represents a subsystem whose variables are not affected by input fields and do not appear in the system output fields; this makes the DFS isolated from the environment and inaccessible to measurement devices, thus preserving the quantum information carried by the variables of the DFS. In relation to the T annihilation only system (4.6), with a = [a1,...,an] , a component a j is a decoherence-

free mode if the evolution of a j is independent of the input W and if the system output

3These couplings are obtained if we adiabatically eliminate the coherent controller dynamics. 4.4 Decoherence Free Subsystem Synthesis 99

Y is independent of a j. The collection of decoherence-free modes forms a subspace, called the decoherence-free subspace4. According to this, decoherence free subspaces are uncontrollable and unobservable subspaces of a quantum system. An important fact about the existence of a decoherence-free subsystem for linear annihilation only systems follows from the results established in [59]: Proposition 4.4.1 The linear annihilation only system (4.6) has a decoherence-free sub- system if and only if the matrix A has some of its poles on the imaginary axis, with the remaining poles residing in the open left half-plane of the complex plane.

Proof. According to [59, Lemma 2], for the system (4.6), the properties of controllability, observability and Hurwitz stability are equivalent. The statement of the proposition then follows by contraposition, after noting that being passive, the system (4.6) cannot have eigenvalues in the open right hand-side of the complex plane due to (4.8). ■

4.4.1 Open-loop Reservoir Engineering for DFS Generation With reference to Fig. 4.5, we investigate conditions to enable the synthesis of a quantum coherent controller-system network to generate a DFS in the interconnected system through interactions between the principal quantum system and the controller. The quantum linear passive system in Fig. 4.5 is the system of the form (4.6), and its input fields are further partitioned as W = [wT ,uT , f T ]T . Here, w represents a ‘natural’ environment for the system, and f and u represent an open-loop and feedback engineered fields, respectively. According to this partitioning, the system evolution is described as

dap = Apapdt + B1dw + B2du + B3d f , (4.69a)

dy = Capdt + dw. (4.69b)

n n Accordingly, the matrices of the system have dimensions as follows: Ap C × , ∈ n nw n nu n n f nw n B1 C × , B2 C × B3 C × , and C C × (n,nw,nu,n f N). We also use ∈ ∈ ∈ ∈ T ∈ the notation a for the vector a t a t a t of the system annihilation p p ( ) = p1 ( ),... pn ( )

operators defined on its underlying Hilbert space Hp. 

4 A decoherence-free subspace exists if we can partition the Hilbert space into two subspaces HS = HDF HN, where the subspace of the Hilbert space not affected by decoherence is denoted by HDF and ⊕ HN denotes the decoherence-affected, “noisy” subspace. 100 Chapter 4. Quantum Reservoir Engineering

w y

Quantum f system s

u r

u' y'

W Quantum S controller z u1 u1' z'

v Fig. 4.5 Coherent feedback network for DFS generation.

In terms of the Hamiltonian and coupling operators, the system has the Hamiltonian H = a† Ma where M is an n n complex Hermitian matrix, and is linearly coupled to p p p × the input fields via the coupling operators L a , L a , L a where p1 = α1 p p2 = α2 p p3 = α3 p nw n nu n n f n α1 C × , α2 C × , α3 C × are complex matrices. Then the relations (4.7) ∈ ∈ ∈ specialize as follows:

1 1 1 A = iM + α†α + α†α + α†α , p − 2 1 1 2 2 2 2 3 3   B = α†, 1 − 1 B = α†, 2 − 2 B = α†, 3 − 3 C = α1.

The starting point of the discussion that follows is the assumption that under the influence of its natural environment w alone, (i.e., in the absence of the engineered fields f and u), the system does not possess a DFS. Mathematically, this assumption corresponds to the assumption that Ap,B1 is controllable and Ap,C is observable,   4.4 Decoherence Free Subsystem Synthesis 101

since these properties rule out the existence of a DFS in the plant (4.69) when B2 = 0,

B3 = 0; see Proposition 4.4.1 and [202, 59]. In many cases, system couplings can be engineered at a fabrication stage to reduce unavoidable loss of energy due to decoherence [145, 185]. The process of tuning the system at the fabrication stage does not involve feedback, and we let L 0, which p2 = corresponds to α2 = 0 and B2 = 0 in (4.69); see Fig. 4.6.

w y

Quantum f system s

Fig. 4.6 Open loop setup for DFS generation.

Then the system (4.69) reduces to that of the form

dap = Apapdt + B1dw + B3d f , (4.70a)

dy = Capdt + dw (4.70b)

Here, w and f symbolize the natural environment and the fabricated open-loop field, respectively. Accordingly, the coupling operator L corresponds to a fixed coupling p1 with the natural environment, while the coupling L corresponds to the engineered p3 coupling. The physical realizability requirement imposes the constraint that

† † † Ap + Ap + B1B1 + B3B3 = 0, (4.71) cf. (4.8). Recall [102] that a quantum stochastic differential equation of the form (4.70) is said to be (canonically) physically realizable if it preserves the canonical commutation relations, [a ,a† ] = a a† (a aT )T = I, and is a representation of an open harmonic p p p p − ∗p p oscillator, i.e., it possesses a Hamiltonian and a coupling operator. The satisfaction of the identity (4.71) is a necessary and sufficient condition for physical realizability [102, Theorem 5.1]. 102 Chapter 4. Quantum Reservoir Engineering

Theorem 4.4.1 Suppose ( iM,B ) is controllable. Then a DFS cannot be created by − 1 coupling the system to an engineered environment.

Proof. To prove the theorem we will show that the matrix Ap has all its eigenvalues in the open left half-plane of the complex plane, and therefore it cannot have a DFS, according to Proposition 4.4.1; see [59, Lemma 2]. First consider the system with a fixed coupling with the environment, i.e., L 0. p3 = For this system, the physical realizability properties dictate that

† † Ap1 + Ap1 + B1B1 = 0, (4.72) with A = iM 1 B B†; see (4.7). p1 − − 2 1 1 Recall that for an arbitrary n n matrix Φ and an n m matrix B, the pair (Φ,B) is × × 1 † controllable if and only if (Φ + 2 BB ,B) is controllable. Applying this fact to the pair ( iM,B ) which is controllable by the assumption of the theorem, we conclude that − 1 (Ap1,B1) is controllable. Thus, equation (4.72) can be regarded as a Lyapunov equation

† † Ap1P + PAp1 + B1B1 = 0 with controllable (A ,B ), which has a positive definite solution P = I. Since B B† 0, p1 1 1 1 ≥ according to the inertia theorem [22, Theorem 3], the above observation about the existence of a positive definite solution to the Lyapunov equation implies that Ap1 must have all its eigenvalues in the open left half-plane of the complex plane. As a result, if ( iM,B ) is controllable, the corresponding passive quantum system with fixed coupling − 1 cannot have a DFS, according to Proposition 4.4.1. Next consider this system when it is coupled to an engineered environment, i.e., L = 0 and B = 0. Since A has been shown to have all eigenvalues in the open p3 ̸ 3 ̸ p1 left half-plane of the complex plane, there exists a positive definite Hermitian matrix P = P† > 0 such that † Ap1P + PAp1 < 0.

1 † On the other hand, according to Corollary 4 of [134], the matrix 2 B3B3P cannot have eigenvalues in the open left half-plane of the complex plane, and therefore 1 B B†P − 2 3 3 − 4.4 Decoherence Free Subsystem Synthesis 103

1 PB B† 0. This implies that 2 3 3 ≤ 1 1 (A B B†)†P + P(A B B†) < 0 p1 − 2 3 3 p1 − 2 3 3

and therefore A = A 1 B B† must have all its eigenvalues in the open left half-plane p p1 − 2 3 3 of the complex plane. According to Proposition 4.4.1, this rules out the possibility for the system with engineered coupling to have a DFS. ■

Next, suppose that ( iM,[B B ]) is not controllable5, therefore ( iM,B ) is not − 1 3 − 1 controllable either. Theorem 4.4.1 does not rule out a possibility for a DFS to exist in this case. It is easy to show that

ker(C T ) = ker(C T ) ker(C T ), w ∩ f

where Cw, C f are the controllability matrices with respect to the inputs w and f , respec- tively. From this observation, it follows that the dimension of the DFS of system (4.70) is less or equal to the dimension of each of the decoherence free subsystems arising when the quantum plant is coupled with the fixed and engineered fields only. This leads to the conclusion that coupling the system with additional engineered fields can only reduce the dimension of the DFS. In the remainder of the paper, we will show that using coherent feedback, on the other hand, does allow to create or increase dimension of a DFS.

4.4.2 Coherent Feedback Reservoir Engineering In this section we consider a system of the form (4.69). To simplify the notation we will combine two static channels w and f into a single channel, which will again be denoted as w. More precisely, we combine the coupling operators L and L into a p1 p3 single operator L . Then the system (4.69) reduces to a system of the form p1

dap = Apapdt + B1dw + B2du, (4.73a)

dy = Capdt + dw, (4.73b)

5 Here, [B1 B3] is the matrix obtained by concatenating the rows of B1 and B3. 104 Chapter 4. Quantum Reservoir Engineering

where the new matrix B1 is composed of the previous matrices B1 and B3, so that using the new notation we have

1 1 A = iM + α†α + α†α , p − 2 1 1 2 2 2   B = α†, 1 − 1 B = α†, 2 − 2 C = α1. (4.74)

For a coherent quantum controller for the quantum plant (4.69), we will consider another open quantum linear annihilation only system. Such a system will be assumed to be coupled with three environment noise channels, y′, z′ and v. The fields y′, z′ are to produce output fields which will be used to form the feedback, and the channel v will be used to ensure that the constructed observer is physically realizable. As is known [102], once physical realizability of the observer is ensured, one can readily construct a scattering matrix, a Hamiltonian and a collection of coupling operators describing the quantum evolution of the controller in the form of a quantum stochastic differential equation (4.3). Alternatively, a physically realizable coherent controller can be represented in the form of the quantum stochastic differential equation (4.6) [102], i.e., in the form

dac =Acacdt + G1dy′ + G2dz′ + G3dv, (4.75a)

du′ =Kacdt + dy′, (4.75b) ˜ du˜′ =Kacdt + dz′, (4.75c) where for physical realizability, the following constraints must be satisfied102 [ , Theo- rem 5.1]:

† † † † Ac + Ac + G1G1 + G2G2 + G3G3 = 0, (4.76) K = G†, (4.77) − 1 K˜ = G†. (4.78) − 2 4.4 Decoherence Free Subsystem Synthesis 105

Interconnection between the controller and the plant are through scattering equations relating the output fields of the plant with the input channels of the controller and vice versa. Specifically, the scattering equation

y′ y = S , (4.79)  z′   z      links the output field of the plant y and the controller environment z with the input controller channels y′, z′. Here, S is a unitary matrix partitioned as

S S S = 11 12 . (4.80)   S21 S22   Likewise, feedback from the controller (4.75) is via a unitary matrix W,

u u′ W W = W , W = 11 12 . (4.81)       u˜ u˜′ W21 W22       The matrices A , G = K†, G = K˜ †, G , and the scattering matrices S, W are c 1 − 2 − 3 regarded as the controller design parameters. Our objective in this paper is to find a procedure for selecting those parameters so that the resulting coherently interconnected quantum system in Fig. 4.5 possesses a decoherence free subsystem. To devise the DFS synthesis procedure, we first note that the control system governed by y,z,v and output u can be represented as

da = (A a (G S + G S )B†a )dt c c c − 1 11 2 21 1 p +(G1S11 + G2S21)dw

+(G1S12 + G2S22)dz + G3dv, (4.82) du = ( (W G† +W G†)a − 11 1 12 2 c (W S +W S )B†a )dt − 11 11 12 21 1 p +(W11S11 +W12S21)dw

+(W11S12 +W12S22)dz 106 Chapter 4. Quantum Reservoir Engineering

Also, the closed loop system is described by the quantum stochastic differential equation

dw ap ap d = A dt + B  dz , (4.83)   cl   cl ac ac  dv          with block matrices Acl, Bcl partitioned as follows

† † † Ap B2(W11S11 +W12S21)B1 B2(W11G1 +W12G2) Acl = − − ,  (G S + G S )B† A  − 1 11 2 21 1 c  

B + B (W S +W S ) B (W S +W S ) 0 B = 1 2 11 11 12 21 2 11 12 12 22 . cl   G1S11 + G2S21 G1S12 + G2S22 G3  

Let

A = A B (W S +W S )B† c p − 2 11 11 12 21 1 † +(G1S11 + G2S21)B1 B (W G† +W G†) (4.84) − 2 11 1 12 2

Then for Acl to have all eigenvalues on the imaginary axis or in the left half-plane of the complex plane it is necessary and sufficient that the following matrices

Aˆ = A B (W S +W S )B† p − 2 11 11 12 21 1 B (W G† +W G†), (4.85) − 2 11 1 12 2 Aˇ = A B (W S +W S )B† p − 2 11 11 12 21 1 † +(G1S11 + G2S21)B1 (4.86) have all eigenvalues on the imaginary axis or in the left half-plane of the complex plane. 4.4 Decoherence Free Subsystem Synthesis 107

Proof. The matrix Acl has the same eigenvalues as the matrix

I 0 I 0 Acl  I I   I I  − − † †  Ap B2W11(S11B + G) − 1 1 † † B2(W11G +W12G ) † † 1 2 B2W12(S21B + G )  − 1 2  Ap Ac = − .  B (W S +W S )B†   2 11 11 12 21 1 † †  − B2(W11G +W12G ) + Ac  † 1 2   +(G1S11 + G2S21)B   1  † †  B2(W11G +W12G )   − 1 2    Hence the lemma follows, due to the definition of Ac in (4.84). ■

Theorem 4.4.2 Suppose matrices S, W are given. Let G1, G2 be such that

1. The following linear matrix inequality (LMI) in G1, G2 is satisfied

RG1 G2  G† I 0  0, (4.87) 1 − ≤ †  G 0 I   2 −    where

R = B B† B B† B (W S +W S )B† − 1 1 − 2 2 − 2 11 11 12 21 1 B (S† W † + S† W † )B† + (G S + G S )B† − 1 21 12 11 11 2 1 11 2 21 1 +B (S† G† + S† G†) B (W G† +W G†) 1 11 1 21 2 − 2 11 1 12 2 (G W † + G W † )B†; (4.88) − 1 11 2 12 2

2. The matrices Aˆ and Aˇ, defined in equations (4.85) and (4.86) respectively, have all their eigenvalues in the closed left half-plane, with at least one of them having eigenvalues on the imaginary axis.

Then a matrix G3 can be found such that the closed loop system (4.83) admits a DFS.

Proof. Via the Schur complement, (4.87) is equivalent to

R + G G† + G G† 0. 1 1 2 2 ≤ 108 Chapter 4. Quantum Reservoir Engineering

Therefore one can find G3 such that

† † † R + G1G1 + G2G2 + G3G3 = 0.

From this identity and the expression (4.84), the identity (4.76) follows. This shows that the feasibility of the LMI (4.87) ensures that the controller system (4.75) can be made physically realizable by appropriately choosing G3. As a result, the closed loop system, being a feedback interconnection of physically realizable systems, is a physically realizable annihilation only system. Also, condition (b) and Lemma 4.4.2 ensure that

Acl has eigenvalues on the imaginary axis. Then it follows from Proposition 4.4.1 that the closed loop system (4.83) has a DFS. ■

Note that matrices Aˆ and Aˇ can be rewritten as

Aˆ = A B (W S +W S )B† p − 2 11 11 12 21 1 G† B [W W ] 1 , (4.89) − 2 11 12  †  G2 Aˇ = A B (W S +W S )B† p − 2 11 11 12 21 1 S +[G G ] 11 B† (4.90) 1 2   1 S21   A necessary condition to ensure that an eigenvalue assignment can be carried out for these matrices by selecting G1, G2, is that the pair (Ap,B2[W11 W12]) is control- S lable and the pair (A , 11 B†) is observable; the latter condition is equivalent to p   1 S21  A† B † † the controllability of the pair ( p, 1 S11 S21 ). Indeed, these controllability and h i S observability conditions imply that (A B (W S +W S )B†, 11 B†) is ob- p − 2 11 11 12 21 1   1 S21 servable and (A B (W S +W S )B†,B [W W ]) is controllable. Therefore, if p − 2 11 11 12 21 1 2 11 12 A B W W A† B † † G ( p, 2[ 11 12]) and ( p, 1 S11 S21 ) are controllable, one can always select 1 ˆ ˇ and G2 so that the matrices A, Ah have a requiredi eigenvalue distribution. Thus the condi- 4.4 Decoherence Free Subsystem Synthesis 109

tions of Theorem 4.4.2 boil down to solving a simultaneous pole assignment problem under an LMI constraint. We next demonstrate that our pole assignment problem captured quantum plant- controller DFS architectures considered in [138, 202].

4.4.3 Special Case 1: DFS synthesis using a coherent observer [138] In [138], the DFS synthesis was carried out using a quantum analog of the Luenberger observer for a class of linear annihilation only systems as described by (4.5); see Fig. 4.7. This controller structure is a special case of the architecture in Fig. 4.5, when

I 0 0 I S = , W =  0 I   I 0      With this choice of S and W, we have from (4.84)

A = A + G B† B G† (4.91) c p 1 1 − 2 2

w y

Quantum u system

Quantum controller z

v Fig. 4.7 Coherent plant-observer network considered in [138]. 110 Chapter 4. Quantum Reservoir Engineering

Corollary 4.4.3 Suppose the pair (Ap,C) is observable and the pair (Ap,B2) is control- lable. Let G1, G2 be such that 1. The following linear matrix inequality (LMI) is satisfied

RG1 G2  G† I 0  0, (4.92) 1 − ≤ †  G 0 I   2 −    where

R = B B† B B† − 1 1 − 2 2 +G B† + B G† B G† G B† (4.93) 1 1 1 1 − 2 2 − 2 2

2. The matrices

Aˆ = A B G†, (4.94) p − 2 2 ˇ † A = Ap + G1B1 (4.95)

have all eigenvalues on the imaginary axis or in the left half-plane of the complex plane, with at least one of them having eigenvalues on the imaginary axis. Then the closed loop system admits a DFS.

Proof. Via the Schur complement, condition (4.92) is equivalent to the condition

B B† B B† + G B† + B G† − 1 1 − 2 2 1 1 1 1 B G† G B† + G G† + G G† 0. − 2 2 − 2 2 1 1 2 2 ≤

This ensures that A + A† + G G† + G G† 0. c c 1 1 2 2 ≤

Therefore, one can find G3 such that the controller is physically realizable. The claim then follows from Theorem 4.4.2. ■ 4.4 Decoherence Free Subsystem Synthesis 111

4.4.4 Special Case 2: Coherent feedback DFS generation model from [202]

Consider a system of Fig. 4.5 in which S = I, W = I, and let G2 = 0, G3 = 0. This corresponds to the system shown in Fig. 4.8; which was considered in [202]. In this case, the controller matrix becomes

A = A B B† + G B† B G†. (4.96) c p − 2 1 1 1 − 2 1

w y

Quantum u system

r

Quantum controller

Fig. 4.8 Special Case 2: Coherent feedback network for DFS generation considered in [202].

Corollary 4.4.4 Suppose the pair (Ap,C) is observable and the pair (Ap,B2) is control-

lable. Let G1 be such that 1. The following equation is satisfied

(B + B )(B + B )† + G (B B )† − 1 2 1 2 1 1 − 2 +(B B )G† + G G† = 0; (4.97) 1 − 2 1 1 1 112 Chapter 4. Quantum Reservoir Engineering

2. The matrices

Aˆ = A B B† B G†, (4.98) p − 2 1 − 2 1 Aˇ = A B B† + G B† (4.99) p − 2 1 1 1

have all eigenvalues on the imaginary axis or in the left half-plane of the complex plane, with at least one of them having eigenvalues on the imaginary axis. Then the closed loop system admits a DFS.

Proof. Condition (4.97) ensures that

† † Ac + Ac + G1G1 = 0.

Next, Aˆ and Aˇ have eigenvalues on the imaginary axis or in the open left half-plane, hence the statement of the corollary follows from Theorem 4.4.2. ■

4.4.5 Examples Example 1 To illustrate the DFS synthesis procedure developed in the previous section, consider a system consisting of two optical cavities interconnected as shown in Fig. 4.7. The system is similar to those considered in [126]. The cavity to be controlled is described by equation (4.73), with all matrices becom- ing complex numbers

κ + κ A = iM 1 2 , B = √κ , B = √κ , p − − 2 1 − 1 2 − 2 C = B∗ = √κ . (4.100) − 1 1

Here, κ1, κ2 are real non-negative numbers, characterizing the strength of the couplings between the cavity and the input fields w and u, respectively, and M characterizes the Hamiltonian of the cavity.

Clearly, the pair (Ap,C) is observable and the pair (Ap,B2) is controllable, therefore the optical cavity cannot have a DFS unless the cavity is lossless. To synthesize a DFS, let us connect this cavity to another optical cavity with the same Hamiltonian, as shown 4.4 Decoherence Free Subsystem Synthesis 113 in Fig. 4.7. This corresponds to letting the controller have the coefficients

κ + κ A = iM 3 4 , G = √κ , G = √κ , c − − 2 1 − 3 2 − 4 K = √κ4, G3 = 0. (4.101) and letting the scattering matrices S and W be

1 0 0 1 S = , W = . (4.102) 0 1 1 0     We now apply Corollary 4.4.3 to show that the parameters κ3,κ4 for the controller cavity can be chosen so that the two-cavity system has a DFS. It is readily verified that the matrices Aˆ and Aˇ in (4.94), (4.95) reduce to

κ + κ Aˆ = iM 1 2 √κ κ , (4.103) − − 2 − 2 4 κ + κ Aˇ = iM 1 2 + √κ κ . (4.104) − − 2 1 3

From Corollary 4.4.3, we need either Aˆ or Aˇ to have poles on the imaginary axis in order to create a DFS within the closed-loop system. Clearly, for the two-cavity system under consideration this can only be achieved by placing the pole of Aˇ at the origin. For this, the coupling rate κ3 of the controller must be set to

2 (κ1 + κ2) κ3 = . (4.105) 4κ1

Also we must satisfy the LMI condition (4.92). The matrix R in this example reduces to

R = κ κ + 2√κ κ 2√κ κ . (4.106) − 1 − 2 1 3 − 2 4

Hence, using (4.105) and (4.106), the LMI condition (4.92) reduces to the two following inequalities: Re κ 2κ √κ κ √D 0, (4.107) − 1 − 1 2 4 ± ≤ h i 114 Chapter 4. Quantum Reservoir Engineering where

2 3 2 2 2 D = κ1 + κ1 + 2κ1 κ2 + κ1κ2 + 4κ1 κ4 +4κ2κ κ 4κ2√κ κ . 1 2 4 − 1 2 4

The inequality (4.107) is the only constraint for the remaining coupling parameter κ4 to be determined. Notice that there is an obvious solution to this inequality in the case where κ1 = κ2 = κ. The solution is κ3 = κ4 = κ which satisfies both (4.105) and (4.107). The above calculations demonstrate that by placing the pole of the controller on the imaginary axis, one can effectively create a DF mode which did not exist in the original system. This fact has been established previously in [126] by calculating the system poles, whereas we have arrived at this conclusion from a more general Corollary 4.4.3, as a special case. Example 2 We now present an example in which, the DFS is created which is shared between the controlled system and the controller. The controlled system in this example consists of two cavities as shown in Fig. 4.9. Denote the matrices associated of the Hamiltonians corresponding to the each cavity internal dynamics as M1, M2. Also for the convenience of notation, define the complex numbers

γ j = κ j, j = 1,...,4, associated with the coupling strengthsp within the cavities. All four constants are assumed to be nonzero. 4.4 Decoherence Free Subsystem Synthesis 115

u r

k4 Cavity 1 k2 w y

k1 k3

Cavity 2

Fig. 4.9 The two-cavity system for Example 2.

Then the equations governing the dynamics of the two-cavity system have the form of (4.73) with

2 2 γ1 + γ2 iM1 + | | 2 | | + γ1∗γ2 γ2γ3∗ Ap = − − 2 , γ3   γ γ  iM + | |  − 1∗ 3 − 2 2     (γ1 + γ2) γ4 B1 = − , B2 = − ,  γ   0  − 3  †    C = B = γ + γ γ . (4.108) − 1 1 2 3 h i 116 Chapter 4. Quantum Reservoir Engineering

To verify observability of the pair (Ap,C), we observe that

C 1 2 det = γ∗ γ (γ∗ γ∗)   2 3 3 1 2 CAp | | − 2 2   +(γ∗ + γ∗)( γ γ ) 1 2 | 1| − | 2| +2i(γ∗ + γ∗)(M M )). 1 2 1 − 2

C Suppose γ = γ , then det = γ γ γ 2, and we conclude that the matrix 1 2   3∗ 1∗ 3 − CAp | | C   is full rank. This implies that in the case γ = γ , the pair (A ,C) is   1 2 p CAp − observable. Also, the pair (Ap,B2) is controllable, since

2 det B A B = γ γ γ∗ = 0. 2 p 2 − 4 3 1 ̸   These observations allow us to apply Corollary 4.4.3 to construct a DFS by interconnect- ing the two-cavity system with a coherent quantum observer, which we now construct. For simplicity, choose

g 0 G = 1 , G = . 1   2   0 g2     With this choice of G and G and under the condition γ = γ , the matrices Aˆ = 1 2 1 − 2 A B G† and Aˇ = A + G B† take the form p − 2 2 p 1 1

iM1 γ2γ3∗ + γ4g2∗ Aˆ = − − 2 , γ3  γ γ iM + | |  − 1∗ 3 − 2 2     iM1 γ2γ3∗ g1γ3∗ Aˇ = − − − 2 . γ3  γ γ iM + | |  − 1∗ 3 − 2 2     γ2∗γ3 ˆ ˇ Letting g2 = , g1 = γ2 allows us to conclude that each of the matrices A and A have γ4∗ − 2 γ3 one imaginary eigenvalue and one eigenvalue with negative real part, iM + | | . − 2 2   4.5 Concluding Remarks 117

It remains to show that the LMI condition (4.92) is satisfied in this example. Noting

that with the above choice of g1, g2,

2 γ 2γ γ∗ R = −| 4| 2 3 ,  2γ γ γ 2  2∗ 3 −| 3|   R < 0 holds provided γ 2 > 4 γ 2. Next, the LMI (4.92) in this example requires that | 4| | 2|

γ 2 2γ γ γ 0 −| 4| 2 3∗ − 2 2 γ2∗γ3  2γ2∗γ3 γ3 0  −| | γ4∗ < 0 (4.109)  γ 0 1 0   − 2∗ −   γ2γ∗   0 3 0 1   γ4 −    Using the Schur complement, this requirement is equivalent to

2 2 γ4 2γ2γ3∗ γ2 0 −| | + | | 2 2 < 0. 2 γ2 γ3  2γ γ γ   0 | | | 2 |  2∗ 3 3 γ4 −| | | |     The latter condition holds when γ 2 > (3 + √10) γ 2. | 4| | 2|

4.5 Concluding Remarks

In this chapter, we have applied methods from quantum reservoir engineering and coherent control to address one of the most challenging aspects of quantum computing, namely decoherence. Firstly, we derive an algebraic procedure based on Lyapunov formalism for the engineering of dissipation control. The scalability and error correction capacity of the dissipation control of the form L = UV has been investigated in detail. Hence, the Lyapunov formalism may facilitate the application of the classical decomposition- aggregation technique to a large scale quantum system. Secondly, we have proposed a general coherent quantum controller synthesis proce- dure for generating decoherence-free subspaces in quantum systems. Decoherence-free 118 Chapter 4. Quantum Reservoir Engineering components capable of storing quantum information are regarded to be essential for quantum computation and communication, as quantum memory elements [126]. Chapter 5

Quantum Programming and Simulation

Let the computer itself be built of quantum mechanical elements which obey quantum mechanical laws.

Richard Feynman

The first publicly-available quantum computer was announced in 2016 byIBM[20], which provides a prototype platform for researchers around the world to test their quantum computing programs on a real quantum computer. Despite offering an excellent experience for quantum programmers, the platform is still only a proof-of-concept and could not provide the scale and reliability needed for algorithm discovery or development. Indeed, from the evolution of conventional computer science, we have learned that software is as important as hardware. Software innovations can even lead and guide hardware development. For quantum computing, the current set of applications is very limited. Hence, computer simulation and emulation of quantum computing algorithms on classical computers will still be the most accessible and reliable way that we can rely on to explore quantum software and applications in the foreseeable future. Thanks to the constant innovation of the microelectronic industry, we now have high-performance computing platforms which are capable of providing simulation and emulation of sizable quantum computers. Furthermore, innovative mathematical approaches could be used to 120 Chapter 5. Quantum Programming and Simulation

extend the capability of those simulators in specific use cases beyond the memory-bound limit of the Hilbert space. The work presented in this chapter involves the definition of a quantum assembly language; the complete tool-chain which supports compilation from high-level procedu- ral wrapper language to the assembly instructions and the serialization of the assembly instructions into a binary data structure which could be sent to a simulator or a real quantum computers; and lastly a simulator engine which is based on Feynman path integral that provides unique performance advantages under various test cases as well as could be integrated with a conventional linear algebra simulators to achieve optimal time-to-result for all cases. These were done as part of my research internship at Atos Quantum, a research lab of the Big Data and Security division of Atos SE.1

5.1 Quantum Programming Language

A quantum computer, as described by the quantum gate model, can execute arbitrary quantum programs (algorithms) by applying a specific sequence of gate operations. This computing model is essentially similar to classical computing devices where those low-level operations are described by machine code instructions. These instructions are directly mapped to a human-readable form which is often called assembly languages. In principle, every computer programs (e.g. games, simula- tion, web browsers, etc.) can and in fact must be programmed by the assembly language specific to the hardware that they are running on. The tedious process of writing com- puter programs instruction-by-instruction is thus not very practical and is best reserved for very specific use cases (e.g. low-level firmware). Most computer programmers learned to code in the so-called high-level programming languages (e.g. C/C++, Python, Java, Javascript, etc.) which are both hardware agnostic and algorithmically descriptive (as supposed to be operationally descriptive). Hence, a quantum could mimic that of its classical coun- terpart, i.e. providing multi levels of abstraction from the low-level gate operations to the high-level algorithmic descriptions. This includes an assembly-language definition which closely matches (modulo trivial gate transformations) and directly executable on

1This work does not reflect the views or opinions of Atos SE or any of its employees. 5.1 Quantum Programming Language 121

quantum . On top of that, a higher level language and the correspond- ing compiler is ultimately necessary for practical quantum programming purposes. A comprehensive solution for quantum programming language also needs to be flexible and agnostic in the sense that it can interface with both quantum hardware as well as simulators/emulators.

5.1.1 Quantum Assembly Language The quantum assembly (QASM) language is an abstract description of operations of a general-purpose quantum computer. This includes a set of quantum instructions as well as the syntax and semantics rules. In designing our own QASM language, the Atos Quantum Assembly Language (AQASM), we take into consideration the following criteria: • Fully quantum: Although the first generation of AQASM will only interact witha classical simulator/emulator back-end, the long-term goal is to be able to use it on a real quantum computer. • Low-level: AQASM is designed around the quantum gate model. The basic instructions correspond to elementary quantum gates. • Extendable: AQASM also supports user-defined quantum gates and arbitrary gate extensions by adding control or gate parameterisation. • Standard: AQASM is the universal language for all future ATOS-developed quantum simulators to maintain interoperability. • Complete toolchain: We also plan to develop high-level wrappers together with proper compilation programs in order to provide a high-level abstraction to devel- opers. Also, it is essential to provide parsing/translating support for other existing quantum programming languages to AQASM. The AQASM has native support for arbitrary quantum gates (including user-defined unitary gates and gate parameterisation), expanding quantum gates (e.g. complex conjugate and adding control), and basic quantum operations (e.g. quantum Fourier transform). An example of AQASM programs is given in Fig. 5.1. The compilation of AQASM into quantum circuit data structures is implemented in Coco/R [113], which is a widely-used framework for syntax validation and compiler 122 Chapter 5. Quantum Programming and Simulation

DEFINE GATE qft2 = QFT[2] DEFINE GATE qft10 = QFT[5]

BEGIN qubits 3

QFT q[0],q[1],q[2] H q[0] S q[1] T q[2] CNOT q[0],q[1] GATE ex q[1] X q[2] CNOT q[1],q[2] IQFT q[0],q[1],q[2] DAG(CTRL(RX[PI/2])) q[2],q[0]

END

Fig. 5.1 An example of arbitrary quantum circuit described by the Atos quantum assem- bly language.

generation. By defining the compiler descriptions, which includes the list of keywords (tokens) as well as all the syntax and semantics rules, we can use Coco/R to generate the corresponding scanner and parser to process the AQASM inputs.

5.1.2 High-level Programming and Data Processing The advantages of assembly languages are the strong correspondence between the language, i.e. the instructions, and the physical operations, i.e. quantum gates, on quantum hardware. Experimentalists can import such a program as in Fig. 5.1 and readily generate the control sequence for lab instruments to implement the AQASM program. Or as in the case of our simulation back-end, it can take those AQASM programs and perform the simulation accordingly. However, the main drawback of low-level languages, e.g. AQASM, is its verbosity, which often hides the algorithmic structure and hierarchy of the program. For example, let’s take a look at an 18-qubit quantum Fourier transform program written in AQASM2 as depicted in Fig. 5.2. There are approximately 170 AQASM instructions in that program which has been abbreviated for brevity.

2This is an explicit AQASM representation of the QFT algorithm. The language does have native support for QFT and inverse QFT (IQFT) as demonstrated in Fig. 5.1. 5.1 Quantum Programming Language 123

BEGIN qubits 18 H q[0] CTRL(PH[PI/2]) q[1], q[0] H q[1] CTRL(PH[PI/4]) q[2], q[0] CTRL(PH[PI/2]) q[2], q[1] H q[2] CTRL(PH[PI/8]) q[3], q[0] CTRL(PH[PI/4]) q[3], q[1] CTRL(PH[PI/2]) q[3], q[2] H q[3] CTRL(PH[PI/16]) q[4], q[0] // Skipping ... // H q[17] END

Fig. 5.2 An example of 18-qubit QFT program written in AQASM. The body of the program has been abbreviated for clarity.

Most people will find it difficult to comprehend a program as in Fig. 5.2.More importantly, it is extremely tedious and error-prone for developers/programmers to write quantum programs in that manner. Hence, upon the complete definition of AQASM in terms of language features, semantics and syntax rules, we embarked on creating high-level wrappers for AQASM in commonly-used classical programming languages. For instance, for Python, we developed PyAQASM package 3 which supports looping, subroutine declarations, function calls, classical processing of intermediate data, etc. For comparison, the same 18-qubit QFT program in Fig. 5.2 can be expressed in PyAQASM using the program listed in Fig. 5.3. The looping and parametrisation supported by PyAQASM not only shorted the program significantly but also allow novice readers to comprehend the overall structure of the algorithm. In addition, by having Python support with PyAQASM, we can integrate the programming workflow more seamlessly. For example, a web interface can be used to input the PyAQASM program; the user’s computer can then generate

3The author and other researchers of the ATOS Quantum Lab collaborated on defining the AQASM language itself. The implementation of the Coco/R-based compilation unit was developed by another researcher. The author supported the testing of the compiler and implemented the first high-level Python- based wrapper as described in this section. 124 Chapter 5. Quantum Programming and Simulation

from AQASM import *

nbqubits = 18

AQASM_prog = AQASM("QFT.aqasm", nbqubits)

for i in range(nbqubits - 1): AQASM_prog.apply(qGate("H"), qubit(i)) for j in range(i+1): phase = "PI/" + str(2**(i-j+1)) AQASM_prog.apply( qGate("PH", CTRL = ’true’, PHASE = phase), [qubit(i+1), qubit(j)])

AQASM_prog.apply(qGate("H"), qubit(nbqubits - 1))

AQASM_prog.finish()

Fig. 5.3 An example of 18-qubit QFT program written in PyAQASM. PyAQASM is a Python-based wrapper for AQASM which can export the corresponding AQASM program for simulation and experiment purposes.

the AQASM and serialise it via the Internet to the simulator (e.g. a supercomputer in a remote server room) or real quantum hardware in a remote laboratory; the result data of that algorithm is returned to the user for further data analysis and visualisation. In the next session, we will discuss the ATOS quantum simulator which is a High- Performance Computing (HPC) software program designed specifically to simulate quantum programs written in AQASM.

5.2 Simulation Engine

The exponential size of the Hilbert space which describes the computation space of quantum computers makes the quantum simulation on classical computers impossible in general. Indeed, a conventional linear-algebra based approach will be limited firstly by the computer memory to store the quantum state. In this section, we present an alternative approach to the classical simulation which employs the space-time trade- off 4 to extend the ability to simulate a larger number of qubits and achieve shorter time-to-result in specific use cases.

4memory footprint vs. runtime 5.2 Simulation Engine 125

The program code was written by the author in C++ programming language (includ- ing OpenMP [130] extension), with the primary goal is to reach high performance on High-Performance Computing (HPC) systems.

5.2.1 Overall Architecture The modular representation of our simulation suite is depicted in Fig. 5.4, in which the top right-hand side is the core simulation engine running on high-performance computer clusters. The left-hand side represents user modules (i.e. running on a personal computer/laptop) which handle user interfaces for code editing or importing (from other programming languages) as well as other post-simulation data analysis and visualisation. The ATOS compiler, which also runs on the user side, compiles and serialise AQASM

Fig. 5.4 The functional diagram of ATOS quantum simulator.

code into a binary file for remote execution. The technical specifications of the computing hardware and software packages are listed in Table 5.1. On the hardware side, the ATOS Bullion server is built with an extremely large amount of high-bandwidth memory (per CPU socket as well as in total) which is to 126 Chapter 5. Quantum Programming and Simulation

Table 5.1 Technical details of the ATOS path-integral-based quantum simulator.

Programming Language C++ Compiler gcc (6.2.1) Multithreading OpenMP Bullion (8 sockets, 6TB of main memory) Platform Intel Xeon CPU E7-8890 v4 (2.20GHz) 24 cores/socket Libraries Thrift (serialise/deserialise) Coco/R (AQASM compiler)

address the memory-bound nature of quantum mechanics simulation. The memory specifications of the specific machine that is used for this project is listed inTable5.2. It is worth noting the drop in bandwidth (by more than an order of magnitude) when a CPU wants to access memory from another node. This is one of the reasons why we want to explore the path integral approach since it does not require access to the global state vector during the computation. On the other hand, a linear algebra simulator, which constructs a global state vector and distributes it among multi-node clusters, will need node-to-node data exchange in order to perform the matrix-vector multiplication since each node keeps a portion the state vector of the size (2m) locally and performs state update on its part (which requires inter-process communication from time to time).

Table 5.2 Computer memory capacity and bandwidth specifications of the simulation hardware platform.

Memory per socket 768GB Memory per node 1.5TB Number of nodes 4 Memory bandwidth 58 GB/s Inter-socket BW 30 GB/s Inter-node BW 4.9 GB/s

5.2.2 Technical Implementation In the Feynman path integral approach, the simulation of a quantum operation is divided into individual paths whose results are then combined as shown in equation (5.1). The term “path” here refers to the fact that we have an intermediate node (z) which can 5.2 Simulation Engine 127 take any random values. Each assigned value of z represents a path from x to y and by summing the contributions of all possible paths, we can compute the propagation amplitude from x to y through the quantum operation U.

x U y = ∑ x U1 z z U2 y , U = U1U2 (5.1) ⟨ | | ⟩ z ⟨ | | ⟩⟨ | | ⟩ In the context of quantum computing simulation, Fig. 5.5 demonstrates a simple example where we have a three-qubit register with the initial state of 010 . The paths | ⟩ generated by applying quantum gates on the qubit register are explicitly visualised which highlights the fact that in this path integral simulation, each path “walker” does not need access to the global state vector. In an HPC multi-threading environment, each computing thread can handle each path independently hence can be beneficial when we have a massively parallel computer.

Fig. 5.5 Example of a path integral diagram on a 3-qubit register starting at the state α γ a b 010 and applying the a sequence of two gates and on the second | ⟩ γ∗ β b∗ c qubit.    

In terms of resources, since each path computation is simply a traversal from a classical input and classical output (n-bit string), the memory requirement scales linearly with the number of qubits (O(n)). On the other hand, the upper-bound for run-time is O(2nx2depth), where the depth is the number of quantum gates. Therefore, there are only a few scenarios where path integral is the preferred method of simulation, e.g. classical 128 Chapter 5. Quantum Programming and Simulation

input state (initial state is classical), or fat-short quantum circuits (many qubits but only a few gates), etc. More importantly, by analyzing the input circuit, we can devise the optimal simulation strategy in terms of runtime or memory consumption. At the high level, the simulation program is designed using the object-oriented model. Some key objects classes and their relative relationship is depicted in Fig. 5.6.

Fig. 5.6 Object-oriented design: Quantum circuit simulation objects

The serialised byte-code from the front-end will be translated into the internal data structures from which the simulator further derives an execution model in terms of paths. Those paths are distributed among computing threads and recollected at the end to form the final simulation result.

5.2.3 Benchmark Results In order to validate the simulator, we performed some initial tests using basic quantum circuits such as all Hadamard gates (on each qubit) and the Quantum Fourier Transform (QFT). The main purpose of those tests is to confirm the threading scalability of the path integral approach, i.e. we get a linear reduction in runtime when more computing resources (CPU cores) are added. This is the main difference between the path integral and the linear-algebra methods where the latter is often constrained by memory traffic. 5.2 Simulation Engine 129

First, we ran a scalability test in which we gradually increased the number of computing threads available for the simulator. The data for a test suite consists of all Hadamard gates on a 30-qubit register is shown in Fig. 5.7.

Fig. 5.7 Run-time vs. number of computing thread benchmark of the simulator running all Hadamard gates on a 30-qubit register.

Fig. 5.7 clearly demonstrates the linear scaling that we expect from a path-integral simulator, especially when the thread count is in the range from 16 to 256 threads. Outside that range of core count, there are a few hardware-related effects kick in which changes the expected scaling behaviours. In the low core count range (8 vs. 16), since the number of cores per CPU socket is 24, running only a few cores, e.g. 8 cores, will allow the CPU to throttle the clock frequency of those executing cores hence the difference in runtime is minimal when we double the core count in this case. On the other hand, the total number of physical hardware cores that are available is 384. Hence, using more threads than that will not result in any significant performance improvement as we can see in the tail-end of Fig. 5.7. Next, we compare the ATOS path-integral simulator against the publicly available Microsoft LIQUi (Fig. 5.8) and a generic linear algebra simulator such as Intel qHiP- |⟩ STER (Fig. 5.9). In both cases, we use Quantum Fourier Transform as the test case. 130 Chapter 5. Quantum Programming and Simulation

Fig. 5.8 Run-time comparison between the ATOS simulator and LIQUi running the Quantum Fourier Transform using the same number of threads (128). The|⟩ initial state is 00...0 . | ⟩

Fig. 5.9 Run-time comparison between the simulator and linear algebra (LA) based simulator. We implemented a generic LA quantum simulator using the same computing model as qHiPSTER so that we can run on the local Bullion server. The runtime data of the LA simulator matches the public data of qHiPSTER (after compensating the memory bandwidth differences) as shown by the red triangles in the cases of 29 and 30 qubits. The ATOS path-integral simulator provides faster time-to-result in this case as compared to the LA-based simulator.

When comparing to Microsoft LIQUi , Fig. 5.8 shows a significant performance |⟩ gap in favour of the ATOS simulator. This can be explained partly because the ATOS simulator is heavily optimised for this particular hardware configuration while the LIQUi simulator is designed mainly for general PC-based setups. Secondly, the path- |⟩ 5.2 Simulation Engine 131 integral based simulator can take advantage of the fact that the input state is classical hence eliminating a lot of configuration paths. Fig. 5.9, on the other hand, shows a much closer gap between an optimised LA-based simulator and a path integral based counterpart. The path-integral simulator is still faster in this case stemming from the fact that the input state is singular. One thing that we can observe in Fig. 5.9 is the almost doubling of run time for the path integral simulator when a qubit is added. This is due to the fact that the number of paths which need to be explored doubles. Preliminary data from the ATOS quantum simulator has been promising thanks to its innovative approach to maximising low-level parallelism to achieve speed-up in various use cases. The performance advantage is also derived from software and hardware co-design for the high-end Bull Bullion HPC platforms. A proposal to study the feasibility of using FPGA as an accelerator for this type of simulation is summarized in Appendix B. The simulator is further enhanced and maintained by the ATOS Quantum Lab after the author finished the research internship there. This page intentionally left blank. Chapter 6

Simulating Input-Output Quantum Systems with LIQUi |⟩

Never try to solve all the problems at once — make them line up for you one-by-one.

Richard Sloma

Quantum computation is usually described by unitary operations which is based on closed quantum system dynamics. In contrast, open quantum dynamical systems are often modeled by the master equation which takes into account the environmental interaction. Using the complementary Heisenberg-picture approach, we can derive the quantum stochastic differential equations that describe the dynamics of system operators of an open quantum plant. This is commonly referred to as the quantum input-output formalism, which underpins the burgeoning field of quantum feedback control. The inclusion of dissipation processes, allows us to passively and autonomously perform a wide variety of quantum operations, such as enhancing adiabatic quantum computation, and state preparation/stabilization. For instance, Chapter 3 and 4 have demonstrated the application of open quantum system models in developing protocols to improve the stability of qubit systems. More importantly, fully coherent feedback loops mediated by field coupling without measurement have been shown to have major advantages such as high operating speed for quantum optics applications and the non- demolition nature of coherent operations. 134 Chapter 6. Simulating Input-Output Quantum Systems with LIQUi |⟩

In this chapter, we describe the use of Microsoft Language-Integrated Quantum Operations framework (LIQUi [194]) in simulating complex engineered open quantum |⟩ systems by discretizing the physical system composition, and introducing a dissipation emulator gadget. The Hamiltonian simulator module of LIQUi is used for time |⟩ evolution simulation of the Trotter decomposed unitary. In particular, we will apply this method to compound gradient echo quantum memory which is capable of efficiently capturing and storing a quantum state of light. Inthese experiments, memory hardware consists of a continuous solid-state material (rare-earth- ion-doped crystal) which will be represented in simulation by a network of qubits. This not only provides analysis results for such a discrete quantum memory model, but can also potentially be used as a blueprint for a quantum capable of processing incoming continuous variable quantum information.

6.1 Background

As introduced in Chapter 1, quantum network theory has been developed based on the quantum stochastic differential equation model. In particular, the modular and system-theoretic SLH parametrization scheme [56] provides the mathematical frame- work for quantum network description and analysis. The SLH-based Quantum Hardware Description Language (QHDL)[168], which is illustrated in Figure 6.1, has been suc- cessfully deployed to design a number of quantum optics devices and applications such as quantum NAND logic gate and latch[107], optical Set-Reset flip-flop[105], and a coherent error correction loop[91]. Backend differential equation solver based tools such as QuTiP[85] and XMDS[31] are often used to simulate the system dynamics described by its SLH parameters. The Microsoft Language-Integrated Quantum Operations framework (LIQUi [194]), |⟩ which is based on quantum gate formalism, is not specifically designed for this type of low level dynamical simulation. However, since LIQUi is capable of faithfully |⟩ simulating a general purpose quantum computer, porting the dynamical SLH model onto LIQUi will pave the way for the implementation of discrete/digital quantum emulators |⟩ of open quantum systems. 6.1 Background 135

Functional Spec. (e.g. gate/latch/memory/control)

Quantum Optics Component Circuit Editor

Component Netlist

QHDL Definition

Symbolic Algebra Dynamical Numerical Simulation Simulation

Fig. 6.1 QHDL design flow which incorporates quantum optics schematic editor, netlist- ing tool, Hardware Description Language (HDL) parser, and a full quantum dynamical simulation backend.

One recent development of the SLH modeling approach is the effort to extend its application to a wide variety of input states besides the conventional vacuum inputs, such as thermal field, single-photon and two-photon states. Next, we will introduce the SLH model for a system driven by a continuous-mode single-photon wave packet.

6.1.1 Single-photon State Depending on its source, a photon can be single or multi-modal. In this work, continuous- mode single photon state is concerned. We can decomposed such state in the time and frequency domains as followings,

+∞ +∞ † ˆ † 1ξ = ξ(t)dB (t) 0 , 1ξ = dωξ(ω)a (ω) 0 . (6.1) 0 | ⟩ ∞ | ⟩ E Z E Z−

136 Chapter 6. Simulating Input-Output Quantum Systems with LIQUi |⟩

λ(t) σ Plant − (SLH)

Fig. 6.2 Single-photon generating filter cascading realization.

The function ξ(t) is the time-domain wave packet shape of the photon, which can be interpreted as the of detecting the photon at time t. ξˆ(ω) is the Fourier transform of ξ(t). In the following simulation, we will consider incoming single-photon wave packets which have Gaussian shape parametrized by:

1 4 Ω2 / Ω2 ξ(t) = exp (t t )2 , (6.2) 2π − 4 − c     where tc specifies the peak arrival time and Ω is the frequency bandwidth of the pulse. Using a pre-“signal-generating filter” which is driven by vacuum, we can derive the SLH model for the augmented system. Equations (6.3) and (6.4) show the SLH parameters of the pre-filter ancilla and the overall network, respectively.

ξ(t) Ganc = (I,λ(t)σ ,0), λ(t) = ∞ , (6.3) − ξ(s) 2ds t | | pR † GT = S, L + λ(t)Sσ , H + λ(t)Im(L Sσ ) , (6.4) − −   in which Gs = (S,L,H) is the original system parameters.

The signal-generating filter (Ganc) is a vacuum-driven two-level atom initially pre- pared in the which will decay in time to the ground state via of a photon into the light field. That output field is then channeled to thesystem of interest as shown in Figure 6.2. 6.1 Background 137

Fig. 6.3 Gradient settings for GEM operations

6.1.2 Compound Gradient Echo Memory In the conventional quantum computation paradigm, there is little or no use of a “memory” device since in most cases the problems are formulated as isolated computing tasks with classical information inputs, e.g. factoring, optimization, etc. Nevertheless, if networking between distant quantum computers are required, photons are the best candidate for quantum information carriers. In that scenario, a quantum memory is needed to capture and release photons on-demand. One of the most promising schemes for quantum memory is the so-called Controlled Reversible Inhomogeneous Broadening (CRIB). CRIB can be implemented on any “controllable” absorbing physical system including NV centers, quantum dots, atomic vapors and rare-earth-metal-ion-doped solids. Gradient echo memories (GEM) fall under the CRIB category, in which an electric field induced Stark shift is deployed for broadening. Two different linear gradients are applied for writing and reading phases that causes the rephasing effect as shown in Figure 6.3. While semi-classical approaches [41] can be used to simulate the memory operations, no direct access to individual quantum state of each ion can be attained that way. On the other hand, using the SLH formalism, Hush et al. [80] modeled the memory as a series of optical cavities. Each cavity represents a collection of atomic absorbers at the corresponding location in the memory, which all absorb light of a single frequency. The number of excitations within a given cavity may be thought of as the number of excited atoms in the ensemble at the corresponding location. In this framework, the SLH model 138 Chapter 6. Simulating Input-Output Quantum Systems with LIQUi |⟩ of a gradient echo memory is given by

GGEM = G1 ▷ G2... ▷ Gn (6.5)

= SGEM = I, LGEM = ∑ βak, k Npj 1 † β − † HGEM = ∑ξkakak + ∑ ∑ a jak h.c . k 2i j=2 k − !   The above model is a vacuum input model which has not taken into account the source term. To simulate non-classical input such as the single photon state, the generating filter approach mentioned previously becomes handy and can be apply directly togetthe complete model as followings,

GT = Ga ▷ GGEM (6.6) 1 = I,L + λ(t)σ ,H + λ ∗(t)σ L h.c , GEM GEM 2i + GEM −  −   in which λ(t) term dictates the photon wave packet shape as given by Eq. (6.3). The cascading cavity approach is extremely accurate in the case that there are high concentrations of light absorbers (ions). What we want to investigate is the performance of such memory protocols in the discrete settings where only a countable number of two-level qubits involved as absorbers. More importantly, the dynamics is simulated on a discrete-time basis which is executable on a general-purpose quantum computer. The analogy could be using a Analog-to-Digital converter (ADC) with limited resolution and sampling rate to digitize continuous signals for further processing. Not only will this provide new insights into such discrete memory operations, with a synthesis flow to a target quantum hardware, we can implement such protocol on a real quantum computer. The last piece of this simulation/emulation approach is a method of implementing engineering dissipation which is given by the L operator in the SLH model. This will be introduced in the next section. 6.1 Background 139

H Env. √γσ System L − Ancilla

HL = ω(σ L† + σ+L) −

Equivalent L Model

Fig. 6.4 Engineered dissipation by direct coupling to an amplitude damping ancillary system.

6.1.3 Engineering Dissipation Control At first glance, the input-output open quantum system approach can be easily imple- mented on LIQUi by a set of suitably designed Kraus super-operators. While being |⟩ ideal for simulation purposes, hardware synthesis to real physical systems will be extremely challenging. An alternative approach could be implementing a universal dissipative gadget which is just an amplitude-damped qubit as proposed by Verstraete et al.[185] The damped ancillary qubit is directly coupled to the other qubits (such as the memory qubits) to provide the desired dissipation. The engineering dissipation configuration is illustrated in Figure 6.4.

The coupling Hamiltonian between the ancilla and the system has the form Hc = † ω(σ L + σ+L). In the limit that the damping rate, γ, of this ancilla is much greater − than the strength ω of the coupling Hamiltonian, one can adiabatically eliminate the excited level of the ancilla, thus reconstructing the desired dissipation L for the system. 1 The upper bound for error of this adiabatic approximation is ε ∼ 2 . ∥ ∥ γ The coupling Hamiltonian can be easily transformed into a sequence of discrete quantum gates executable on a quantum computer while there are many physical systems that may act as a dissipative gadget, such as low-Q optical or superconducting cavities. Therefore, a LIQUi program written in this way is more likely to be ready for hardware |⟩ synthesis. 140 Chapter 6. Simulating Input-Output Quantum Systems with LIQUi |⟩

6.1.4 Trotter Decomposition One key aspect of simulating is the time evolution simulation, i.e. applying exp( iHt) to the quantum state. Unlike differential equation solvers which − directly solve for this time evolution, LIQUi uses the quantum gate model where the |⟩ complex exponential term can be approximated by[195]:

t/∆t

exp( iHt) = ∏exp( ihk∆t) + O(∆t), (6.7) − k − !

in which, the original Hamiltonian has the summation form H = ∑k hk and ∆t is the Trotter step size. The term exp( ih ∆t) is in turn implemented by a sequence of quantum gates. This − k is known as first-order Trotter decomposition which is often used in quantum chemistry simulation[193]. For open quantum systems with engineered dissipation coupling, we can use the “dissipative gadget” that was introduced in the previous section to adiabatically emulate the environmental coupling. As shown in Eq. (6.6), the GEM Hamiltonian consists of two classes of terms. The first one is the number operator term(a†a) which can

be implemented directly by a T(θ) gate. The coupling Hamiltonian Hc required for † engineering dissipation, Hc = ω(σ L + σ+L), has the form of the excitation operator − † † (hpq(apaq + aqap)) which can be realized by the sequence of gates as shown in FIG. 5 (ii) in Wecker et al.[193] β N j 1 † Last but not least, the cascading term, i.e. ∑ ∑ − a a h.c , which is not 2i j=2 k j k − commonly seen in the quantum chemistry model, can also be decomposed in the same manner, i.e.

( j) ( j) (k) (k) σx iσy σx + iσy a†a h.c. − h.c. j k − ≡ 2 2 − (k) ( j) (k) ( j) σy σx σx σy = i − . (6.8) 2

The resulting sequence of quantum gates (rendered by LIQUi ) which can be used to |⟩ implement complex exponential of the terms in Eq. (6.8) is shown in Figure 6.5 which 6.1 Background 141

H H Y Y †

Z Z Y θ /2 Y † H θ /2 H −

Fig. 6.5 Quantum circuit that represents the unitary generated by the cascading Hamilto- nian term. involves change-of-basis gates (H and Y) and the standard unitary exp[ i(θ/2)(σ σ )]. − z ⊗ z The LIQUi code snippet that is used to run this Trotter decomposed term is shown as |⟩ below. //Trotterization of Cascading Hamiltonian let HamiltonianCasOp(theta:float, p: int, q:int) (qs:Qubits) = let a_qubit = qs.[p..] let s_qubit = qs.[q..] Ybasis s_qubit H a_qubit CNOT !! (qs,q,p) Rz(-theta) 1.0 ’’’’ a_qubit CNOT !! (qs,q,p) YbasisAdj s_qubit H a_qubit H s_qubit Ybasis a_qubit CNOT !! (qs,q,p) Rz(theta) 1.0 ’’’’ a_qubit CNOT !! (qs,q,p) H s_qubit YbasisAdj a_qubit 142 Chapter 6. Simulating Input-Output Quantum Systems with LIQUi |⟩

Single- photon Qubit 1 Qubit N Ancilla

√γσ Dissipation Ancilla −

Fig. 6.6 Discretized GEM model driven by single-photon source used for LIQUi simulation. |⟩

6.2 Models and Results

6.2.1 Amplitude Damping Set-up Using the dissipation gadget, the discretized gradient echo memory model used for LIQUi simulation is shown in Figure 6.6 below. The dissipation ancilla at the bottom |⟩ is a qubit which is subjected to general amplitude damping. This is done by running idle gate at each Trotter step with the error probability of (1 exp( γ∆t)). A LIQUi code − − |⟩ snapshot for the amplitude damping set-up is also shown in Figure 6.7. The LIQUi simulation is performed on a Windows 7 desktop machine using Intel |⟩ Core i7-4770 3.4 GHz (Haswell) with 16 GB of main memory. In the case of running 4-qubit gradient echo memory model (6 qubits in total), the runtime for 1,000 trajectories each with 10,000 Trotter steps is 3 hours.

6.2.2 Toy Example: Single-Atom Memory Before delving into the discretized GEM simulation, we will test the LIQUi set-up |⟩ in a much simpler situation, namely a single-atom memory. Here we consider a single two-level atom driven by a Gaussian continuous-mode single photon as given by Eq. (6.2). This problem has been investigated thoroughly by both conventional and quantum network approaches. The coupling operator of the atom is L = √Γσ . The atom is assumed to be free of − internal Hamiltonian dynamics and field scattering for simplicity, i.e., H = 0 and S = I . Here Γ > 0 is the normalized coupling rate (Γ = 1). 6.2 Models and Results 143

//Probability of amplitude damping let probDamp_E = 1.0 - Math.Exp(- gamma*dt) let noise = Noise(circ,ket,models) ket.TraceRun <- 0 noise.LogGates <- false noise.TraceWrap <- false noise.TraceNoise <- false noise.DampProb(0) <- 0.0//single- photon ancilla noise.DampProb(1) <- 0.0//qubit1 noise.DampProb(2) <- 0.0//qubit2 ... noise.DampProb(Nq+1) <- probDamp_E //dissipation ancilla

Fig. 6.7 LIQUi code snapshot for the amplitude damping set-up. |⟩

By using Trotter decomposition technique and LIQUi , we were able to simulate |⟩ the dynamics of this open quantum system. In our simulation, dissipation is induced by an ancilla which undergoes amplitude damping. In Figure 6.8, we plot the “detection time” histogram and the excited-state population for the case of Ω = 1.5Γ, which is known to be the optimal Gaussian wave packet for atomic excitation. The detection time is triggered by the state-collapse event of amplitude damping noise and histogram is plotted from 10,000 LIQUi runs. |⟩ This is consistent with theoretical analysis which shows that that the maximum excitation probability of an atom driven by a Gaussian-shaped single photon is about 80%[189]. Since we are essentially running a stochastic simulation on the input-output model, we have the benefit of being able to simulate the conditional dynamics and output observable (photon detection in this case) if we choose to observe the output. By sweeping the Gaussian bandwidth (larger Ω means broader spectrum in frequency domain and vice versa), we can get the maximum excitation (absorption) rate of our single atom model, as shown in Figure 6.9 (black curve). There is a very narrow range of bandwidth where the absorption peaks. The optical “depth” created by cascading 144 Chapter 6. Simulating Input-Output Quantum Systems with LIQUi |⟩

0.30 Single-photon pulse shape

1.0 0.25

0.8

0.20 0.6 E P 0.4 0.15 0.2 Frequency 0.0 0 5 10 15 20 0.10 Time

0.05

0.00 0 5 10 15 20 Time

Fig. 6.8 Histogram of photon detection events from a two-level atom driven by a Gaussian-shape single photon state. Inset: the excited state population of the atom. The photon wave-packet is included for reference (red curve in main and dotted curve in 4 inset). Trotter step is chosen to be 2π 10− , and the number of trajectories (realizations) is 10,000. ×

absorbers of gradient echo memory can enhance the photon absorption as shown in the below section.

6.2.3 Discretized Gradient Echo Memory Using the full GEM model with signal generating filter as in Eq. (6.7) and Figure 6.6,we can investigate the performance of the discrete memory in terms of photon absorption (efficiency). Due to computing resource and runtime constraints, only models oftwo- and four-atom GEM are considered in this report (4 and 6 qubits in total, respectively). Despite minimal system size, the performance enhancement is significant as shown in Figure 6.9. Almost perfect absorption (100% excitation) can be achieved for some Gaussian wave packet shapes by using just 4 atoms in series. More importantly, a monotonic improvement over the full range of bandwidth is achieved by introducing more qubit resources. Notice that in the case of the multi-atom memory, the single excitation from 6.2 Models and Results 145

1.0 Single Ion Two-ion GEM 0.8 Four-ion GEM

0.6 x a m E

P 0.4

0.2

0.0 0 2 4 6 8 10 Ω/Γ Fig. 6.9 Single photon absorption probability as a function of photon bandwidth. The baseline (black) is the single atom model which has the max absorption of 80% for a very narrow range of bandwidth. The more atoms involve, the better absorption and also wider range of bandwidth can be achieved. Each data point is a LIQUi run of 1,000 trajectories. Solid line is polynomial fit. |⟩ the photon is distributed among all memory qubits in a Fourier-transformed (frequency) basis. Therefore, the choice of gradient is of importance and can be optimized for a given target input wave packet. Since we use a linear symmetric gradient and the number of atoms are even (thus missing a zero point), the absorption rate has bi-modal behavior, as is clearly seen in the four-atom case. If, as for continuous solid-state GEM, the gradient is a smooth continuous function, the memory can effectively capture the full Fourier spectrum of incoming photons. Besides the fact that this discrete memory model can be implemented on a general purpose quantum computer, one major advantage is that we can potentially extend the range of gradient. Inhomogeneous broadening (by the electric field induced Stark shift, for instance) has difficulty in achieving the bandwidth required for telecommunication wavelength photon absorption. If implemented on a digital quantum computer, the gradient term is controlled by the Trotter decomposed unitary thus can be changed freely provided that the time step can be reduced for sufficient error bound. 146 Chapter 6. Simulating Input-Output Quantum Systems with LIQUi |⟩

This discretized memory model has close analogy to classical digital signal pro- cessing technology. The gradient quantum memory program running on the a quantum computer is equivalent to an Analog-to-Digital Converter (ADC), where (i) the Trotter step serves as the sampling rate; (ii) the resolution is dictated by the number of qubits; and (iii) the sampling method is frequency gradient mapping (classical ADC’s have a wide variety of sampling methods such as integrating and sigma-delta.)

6.3 Conclusions and Future Work

6.3.1 Summary In this chapter, we have adopted LIQUi to simulate quantum open systems using the |⟩ input-output formalism. A combination of theoretical (Trotter decomposition, dissipation gadgets) and practical (Hamiltonian simulator and the noise models available in LIQUi ) |⟩ solutions can provide accurate and consistent simulation results with other tool suites as demonstrated in the “single atom driven by single photon” case. Simulation-wise, the use of LIQUi for this sort of numerical simulation struggles |⟩ to compete with more specialized direct differential solver based tools such as XMDS or QuTiP due to (i) extra efforts needed to perform the Trotter decomposition and set- up the dissipation ancilla; (ii) simulation errors associated with these approximations (could be trade-off by additional runtime). However, if we look at the grand scheme of quantum computation with reference to the classical computing paradigm, this approach is essentially bridging the analog and digital worlds of the quantum framework. The fact that LIQUi is a quantum simulator which guarantees a direct “plug-and-play” on a |⟩ future digital quantum computer. Being able to simulate this system on LIQUi shows |⟩ that we can readily emulate this sort of quantum dynamics on a general purpose quantum computer. This is what we have shown in the discrete quantum memory example where a small collection of qubits running synchronously to perform photon quantum state storage. An initial dry run of this hypothetical memory demonstrates great improvement in terms of the absorption rate even with an unoptimized gradient scheme. Using this discretized method to demonstrate open quantum system approach, we can get new insights about hardware requirements and potential errors associated with emulating continuous “analog” quantum functions and inputs. This is somewhat missing 6.3 Conclusions and Future Work 147

in the current quantum computing picture where computing problems are often formu- lated as an algorithm started on a given initial state without the need for external quantum inputs. The SLH formalism provides a modular and systematic approach toward this modeling problem thus worthwhile integrating to the LIQUi framework, especially |⟩ when quantum hardware synthesis is taken into account since the SLH framework has native models for a lot of quantum optics, opto-mechanical and cavity QED devices.

6.3.2 The Path Forward In the discretized GEM simulation, we have introduced an analogy between a GEM with a finite number of qubits and a classical A/D converter. There are some immediate considerations that warrant further investigation such as error bound estimation regarding the system size and Trotter step size; whether aliasing effect exists in this context; some optimization techniques that we can do to improve the performance. As this approach can be used to treat a large variety of quantum input-output dynam- ical models besides the GEM, some future research avenues which can be considered are listed below. • Non-Markovian quantum noise model: Recent work[201] has shown that the amplitude damping dissipation ancilla, when treated non-adiabatically, is equiva- lent to a non-Markovian (colored) Lorentzian noise source. By combining multiple ancillas, we can construct an arbitrary noise spectrum. We can thus use this model to evaluate the performance of a quantum computer under influence of colored noise, especially regarding the performance of quantum error correction codes. The advantage of this dynamical approach is that an experimentally measured noise spectrum can be fed directly into the model by adjusting the parameters of the dissipation ancillas. For instance, quantum dot - cavity QED is a good candidate, since the noise in this platform is intrinsically colored. • Coherent digital quantum controller: Another direction is to look at the use of a quantum computer in quantum control settings which usually involve continuous input-output models. Especially in the case of coherent feedback control whereby control objectives are achieved by field coupling quantum systems together. This removes the measurement step and can perform control actions at the intrinsic 148 Chapter 6. Simulating Input-Output Quantum Systems with LIQUi |⟩

system speed (e.g. for quantum optics systems). A coherent digital controller can perform equally well in this setting if equipped with appropriate quantum coherent A/D and D/A converters at its input and output ports. By allowing quantum programing, a coherent digital quantum controller can potentially achieve much better performance than just wiring up quantum components (e.g. cavities, beam- splitters, Kerr non-linear media.)[104] • Quantum synthesis: As LIQUi is part of a larger effort to create a full quantum |⟩ design flow from software to target hardware implementation, it is worthwhile considering the integration of the SLH network model at the low-level physical description. It is one of the most accurate and systematic dynamical descriptions for quantum optics devices and circuits. In comparison, a classical VLSI design flow always has a so-calledparasitic “ extraction and analysis” step after “place and route” during which the full RLC model of the entire circuit plus routing is compiled and simulated. Besides simulations at the logic and transistor levels, it is deemed necessary to perform such low level verification especially for complex and high speed designs. The approach taken by classical design is by no mean the absolute solution for quantum computer design. However, by incorporating this “analog” model of quantum devices, we can definitely improve the versatility of the synthesis process especially in cases where continuous time is the most natural description (e.g. continuous variable quantum computation). Given the “Big Hairy Audacious Goal” of creating a functional quantum computer in the next one or two decades, a solid foundation for quantum system design is imperative. And LIQUi created by Microsoft is the first bold step in that direction. Augmenting |⟩ the quantum gate model of LIQUi with the SLH dynamical model either by emulating |⟩ or intrinsic integration will open up new applications as well as cater to a larger research community. Chapter 7

Concluding Remarks

Any sufficiently advanced technology is indistinguishable from magic

Arthur C. Clark

Thanks to the first-wave of quantum innovation in the 20th century, we have achieved unimaginable technologies, especially in the electronics industry. The second wave of quantum revolution that we are witnessing is set to experience exponential growth in a foreseeable future. Building a functional quantum computer which can outperform any of our current computing devices and systems is one of the grand challenges of the quantum technology sector. Hence, the primary goal of this thesis is to study the scalability and engineering aspects of quantum computing architectures. That includes the estimation of the overhead incurred in quantum error correction, the potential use of advanced quantum control techniques in migrating quantum errors as well as enhancing existing quantum error correction protocols, and the development of quantum software simulation tools to aid early quantum programmers.

7.1 Where We Stand

• In Chapter 2, we applied the classical electronics know-how regarding interconnect routing to provide a concrete procedure for fan-out scalability analysis. The 150 Chapter 7. Concluding Remarks

results not only indicate the potential scalability bottleneck but, more importantly, highlight the need for innovative solutions w.r.t. the scale-up of quantum circuits. • In Chapter 3, we derived a continuous measurement feedback scheme that can be used for topological quantum error codes. Quantum control modelling techniques, namely the Quantum Stochastic Differential Equation (QSDE) and the (S, L, H) model are demonstrated in designing the controller to tackle the problem of correcting surface code qubit lattice automatically. • In Chapter 4, we take a step back and look at the problem of at a fundamental/theoretical level. In particular, we demonstrated a pathway to the synthesis of the so-called decoherence-free subsystem (DFS) via quantum coherent feedback. Despite not being universal, the technique is nonetheless applicable to a wide variety of passive quantum systems. Furthermore, we adopted the Lyapunov formalism to the design and synthesis of passive quantum error correction. • In Chapter 5, we summarised the quantum programming suite which includes the definition of a gate-based quantum assembly language, the design of aquantum programming work-flow, and most importantly the implementation of ahigh- performance quantum simulator. The framework that we derived bridges the gap between computer science and quantum physics hence assists the development and testing of quantum algorithms and application. • In Chapter 6, we demonstrated that a digital quantum simulator, such as LIQUi |⟩ is capable of simulating quantum open systems using the input-output formalism. This bridges the gap between gate-based quantum computation and open quantum system approaches.

7.2 The Way Forward

Quantum computing architecture is a rapidly-evolving field which takes advantages of both the academic and industry research. For example, the surface-code quantum error correction, which is currently state-of-the-art, could be surpassed by other codes. Also, all the assumptions about the qubit devices in terms of geometry, operating conditions, 7.2 The Way Forward 151 and characteristics could dramatically change in the near future given the substantial investment of technology companies around the world. Hence, the study of quantum computing architecture needs to keep up with the rate of development in the field. In particular, the fan-out scalability study in Chapter 2 haslaid the foundation for other types of scalability analysis where we could predict in advance potential scaling issues and hence adjust the design to circumvent such limitation. Control and coherence of large quantum systems remain one of the most challenging aspects of quantum technologies. Quantum control engineering is still an emerging field, yet very promising. Indeed, we can translate many quantum computing problems into control problems as what we demonstrated in this thesis with the quantum error cor- rection. Quantum control could provide a scalable approach, given its autonomous and passive nature, toward the construction of large quantum networks which is crucial for quantum computation. The problem of quantum decoherence suppression or elimination is particularly well-suited to quantum control engineering. Last but not least, the software stack will play a vital role in the roll out of any future quantum computing platforms. At this stage, the lack of real quantum hardware is the limiting factor in quantum application development. However, as the field progresses, the need for an end-to-end quantum software development environment will become more prevalent. This area, in particular, requires a strong collaboration between academic and industry. The ultimate goal is to provide quantum software engineers with the tools they need to explore and fully-utilise the capability of quantum computers. This page intentionally left blank. References

[QSh] Microsoft quantum development kit. https://docs.microsoft.com/en-us/quantum/ ?view=qsharp-preview. Accessed: 2019-04-27. [2] Aasen, D., Hell, M., Mishmash, R. V., Higginbotham, A., Danon, J., Leijnse, M., Jespersen, T. S., Folk, J. A., Marcus, C. M., Flensberg, K., et al. (2016). Milestones toward majorana-based quantum computing. Physical Review X, 6(3):031016. [3] Abhari, A. J., Faruque, A., Dousti, M. J., Svec, L., Catu, O., Chakrabati, A., Chiang, C.-F., Vanderwilt, S., Black, J., and Chong, F. (2012). Scaffold: Quantum program- ming language. Technical report, PRINCETON UNIV NJ DEPT OF COMPUTER SCIENCE. [4] Ahn, C., Doherty, A. C., and Landahl, A. J. (2002). Continuous quantum error correction via quantum feedback control. Physical Review A, 65(4):042301. [5] Ahn, C., Wiseman, H. M., and Milburn, G. (2003). Quantum error correction for continuously detected errors. Physical Review A, 67(5):052310. [6] Altafini, C. and Ticozzi, F. (2012). Modeling and control of quantum systems:an introduction. IEEE Transactions on Automatic Control, 57(8):18981917. [7] Amini, H., Somaraju, R. A., Dotsenko, I., Sayrin, C., Mirrahimi, M., and Rou- chon, P. (2013). Feedback stabilization of discrete-time quantum systems sub- ject to non-demolition measurements with imperfections and delays. Automatica, 49(9):26832692. [8] Aspuru-Guzik, A., Dutoi, A. D., Love, P. J., and Head-Gordon, M. (2005). Simulated quantum computation of molecular energies. Science, 309(5741):17041707. [9] Auth, C., Allen, C., Blattner, A., Bergstrom, D., Brazier, M., Bost, M., Buehler, M., Chikarmane, V., Ghani, T., Glassman, T., et al. (2012). A 22nm high performance and low-power cmos technology featuring fully-depleted tri-gate transistors, self- aligned contacts and high density mim capacitors. In VLSI Technology (VLSIT), 2012 Symposium on, page 131132. IEEE. [10] Awschalom, D. D., Bassett, L. C., Dzurak, A. S., Hu, E. L., and Petta, J. R. (2013). Quantum : engineering and manipulating atom-like spins in semiconductors. Science, 339(6124):11741179. [11] Baart, T., Jovanovic, N., Reichl, C., Wegscheider, W., and Vandersypen, L. (2016a). Nanosecond-timescale spin transfer using individual in a quadruple- quantum-dot device. Letters, 109(4):043101. 154 REFERENCES

[12] Baart, T. A., Shafiei, M., Fujita, T., Reichl, C., Wegscheider, W., and Vandersypen, L. M. K. (2016b). Single-spin ccd. Nature nanotechnology. [13] Bao, T., Yakimets, D., Ryckaert, J., Ciofi, I., Baert, R., Veloso, A., Boemmels, J., Collaert, N., Roussel, P., Demuynck, S., Raghavan, P., Mercha, A., Tokei, Z., Verkest, D., Thean, A.-Y., and Wambacq, P. (2014). Circuit and process co-design with vertical gate-all-around nanowire fet technology to extend cmos scaling for 5nm and beyond technologies. In Solid State Device Research Conference (ESSDERC), 2014 44th European, page 102105. [14] Barnes, J. P. and Warren, W. S. (2000). Automatic quantum error correction. Phys. Rev. Lett., 85:856859. [15] Barrett, S. D. and Stace, T. M. (2010). Fault tolerant quantum computation with very high threshold for loss errors. Physical review letters, 105(20):200502. [16] Bellman, R. (1962). Vector lyanpunov functions. SIAM Journal on Control and Optimization, 1(1):32. [17] Bose, S. (2003). Quantum communication through an unmodulated spin chain. Phys. Rev. Lett., 91:207901. [18] Bouten, L., Van Handel, R., and James, M. R. (2007). An introduction to quantum filtering. SIAM Journal on Control and Optimization, 46(6):21992241. [19] Breuer, H.-P. and Petruccione, F. (2002). The theory of open quantum systems. Oxford University Press on Demand. [20] Castelvecchi, D. et al. (2017). Quantum cloud goes commercial. Nature, 543(7644):159159. [21] Chase, B. A., Landahl, A. J., and Geremia, J. (2008). Efficient feedback controllers for continuous-time quantum error correction. Phys. Rev. A, 77:032304. [22] Chen, C.-T. (1973). A generalization of the inertia theorem. SIAM Journal on Applied Mathematics, 25(2):158161. [23] Christandl, M., Datta, N., Ekert, A., and Landahl, A. J. (2004). Perfect state transfer in quantum spin networks. Phys. Rev. Lett., 92:187902. [24] Ciliberto, C., Herbster, M., Ialongo, A. D., Pontil, M., Rocchetto, A., Severini, S., and Wossnig, L. (2018). learning: a classical perspective. Pro- ceedings of the Royal Society A: Mathematical, Physical and Engineering Sciences, 474(2209):20170551. [25] Coecke, B. and Duncan, R. (2011). Interacting quantum observables: categorical algebra and diagrammatics. New Journal of Physics, 13(4):043016. [26] Cohen, J. and Mirrahimi, M. (2014). Dissipation-induced continuous quantum error correction for superconducting circuits. Phys. Rev. A, 90:062344. REFERENCES 155

[27] Colless, J. I., Mahoney, A. C., Hornibrook, J. M., Doherty, A. C., Lu, H., Gossard, A. C., and Reilly, D. J. (2013). Dispersive readout of a few-electron double quantum dot with fast rf gate sensors. Phys. Rev. Lett., 110:046805. [28] Copsey, D., Oskin, M., Impens, F., Metodiev, T., Cross, A., Chong, F. T., Chuang, I. L., and Kubiatowicz, J. (2003). Toward a scalable, silicon-based quantum com- puting architecture. Selected Topics in Quantum Electronics, IEEE Journal of, 9(6):15521569. [29] Deng, G.-W., Wei, D., Li, S.-X., Johansson, J., Kong, W.-C., Li, H.-O., Cao, G., Xiao, M., Guo, G.-C., Nori, F., et al. (2015). Coupling two distant double quantum dots with a microwave resonator. Nano letters, 15(10):66206625. [30] Dennis, E., Kitaev, A., Landahl, A., and Preskill, J. (2002). Topological quantum memory. Journal of Mathematical Physics, 43(9):44524505. [31] Dennis, G. R., Hope, J. J., and Johnsson, M. T. (2013). Xmds2: Fast, scalable simulation of coupled stochastic partial differential equations. Comput Phys Commun, 184(1):201208. [32] Devitt, S. J., Fowler, A. G., Stephens, A. M., Greentree, A. D., Hollenberg, L. C., Munro, W. J., and Nemoto, K. (2009). Architectural design for a topological cluster state quantum computer. New Journal of Physics, 11(8):083032. [33] Devoret, M. H. and Schoelkopf, R. J. (2013). Superconducting circuits for quantum information: an outlook. Science, 339(6124):11691174. [34] Divincenzo, D. P. (2000). The physical implementation of quantum computation. Fortschr. Phys, 48:2000. [35] DiVincenzo, D. P. (2009). Fault-tolerant architectures for superconducting qubits. Physica Scripta, 2009(T137):014020. [36] Dong, D. and Petersen, I. R. (2010). Quantum control theory and applications: a survey. IET Control Theory & Applications, 4(12):26512671. [37] Dowling, J. P. and Milburn, G. J. (2003). Quantum technology: the second quantum revolution. Philosophical Transactions of the Royal Society of London A: Mathematical, Physical and Engineering Sciences, 361(1809):16551674. [38] Dreher, L., Hoehne, F., Stutzmann, M., and Brandt, M. S. (2012). Nuclear spins of ionized phosphorus donors in silicon. Phys. Rev. Lett., 108:027602. [39] Dunjko, V. and Briegel, H. J. (2018). Machine learning & artificial intelligence in the quantum domain: a review of recent progress. Reports on Progress in Physics, 81(7):074001. [40] Dzurak, A. S. (2016). Spin-based quantum computing in silicon CMOS-compatible platforms. In 2016 IEEE International Electron Devices Meeting (IEDM), page 13.2.113.2.2. 156 REFERENCES

[41] Fleischhauer, M. and Lukin, M. D. (2000). Dark-state in electromagneti- cally induced transparency. Phys. Rev. Lett., 84:50945097. [42] Fowler, A. G. (2013). Coping with qubit leakage in topological codes. Phys. Rev. A, 88:042308. [43] Fowler, A. G., Mariantoni, M., Martinis, J. M., and Cleland, A. N. (2012a). Surface codes: Towards practical large-scale quantum computation. Phys. Rev. A, 86:032324. [44] Fowler, A. G. and Martinis, J. M. (2014). Quantifying the effects of local many-qubit errors and nonlocal two-qubit errors on the surface code. Phys. Rev. A, 89:032316. [45] Fowler, A. G., Stephens, A. M., and Groszkowski, P. (2009). High-threshold universal quantum computation on the surface code. Phys. Rev. A, 80:052312. [46] Fowler, A. G., Whiteside, A. C., and Hollenberg, L. C. L. (2012b). Towards practical classical processing for the surface code. Phys. Rev. Lett., 108:180501. [47] Fuechsle, M., Miwa, J. A., Mahapatra, S., Ryu, H., Lee, S., Warschkow, O., Hollenberg, L. C., Klimeck, G., and Simmons, M. Y. (2012). A single-atom transistor. Nature Nanotechnology, 7(4):242246. [48] Fuhrer, A., Fuchsle, M., Reusch, T., Weber, B., and Simmons, M. (2009). Atomic- scale, all epitaxial in-plane gated donor quantum dot in silicon. Nano letters, 9(2):707710. [49] Gardiner, C. and Zoller, P. (2004). Quantum noise: a handbook of Markovian and non-Markovian quantum stochastic methods with applications to quantum optics, volume 56. Springer Science & Business Media. [50] Gardiner, C. W. and Collett, M. J. (1985). Input and output in damped quantum systems: Quantum stochastic differential equations and the master equation. Phys. Rev. A, 31:37613774. [51] Gonzalez-Zalba, M., Barraud, S., Ferguson, A., and Betz, A. (2015). Probing the limits of gate-based charge sensing. Nature communications, 6. [52] Gottesman, D. (1996). Class of quantum error-correcting codes saturating the quantum hamming bound. Phys. Rev. A, 54:18621868. [53] Gottesman, D. (1997). Stabilizer codes and quantum error correction. arXiv preprint quant-/9705052. [54] Gottesman, D. (2010). An introduction to quantum error correction and fault- tolerant quantum computation. In Quantum information science and its contributions to mathematics, Proceedings of Symposia in Applied Mathematics, volume 68, page 1358. [55] Gough, J. and James, M. (2009a). Quantum feedback networks: Hamiltonian formulation. Communications in Mathematical Physics, 287(3):11091132. REFERENCES 157

[56] Gough, J. and James, M. R. (2009b). The series product and its application to quantum feedforward and feedback networks. Automatic Control, IEEE Transactions on, 54(11):25302544. [57] Gough, J. E. and James, M. R. (2017). The series product for gaussian quantum input processes. Reports on Mathematical Physics, 79(1):111133. [58] Gough, J. E., James, M. R., Nurdin, H. I., and Combes, J. (2012). Quantum filtering for systems driven by fields in single-photon states or superposition of coherent states. Phys. Rev. A, 86:043819. [59] Gough, J. E. and Zhang, G. (2015). On realization theory of quantum linear systems. Automatica, 59:139151. [60] Green, A. S., Lumsdaine, P. L., Ross, N. J., Selinger, P., and Valiron, B. (2013). Quipper: a scalable quantum programming language. In ACM SIGPLAN Notices, volume 48, page 333342. ACM. [61] Greentree, A. D., Cole, J. H., Hamilton, A. R., and Hollenberg, L. C. L. (2004). Coherent electronic transfer in quantum dot systems using adiabatic passage. Phys. Rev. B, 70:235317. [62] Grover, L. K. (1996). A fast quantum mechanical algorithm for search. In Proceedings of the twenty-eighth annual ACM symposium on Theory of computing, page 212219. ACM. [63] Haddad, W. M. and Chellaboina, V. (2008). Nonlinear dynamical systems and control: a Lyapunov-based approach. Princeton University Press. [64] Hanson, R., Kouwenhoven, L. P., Petta, J. R., Tarucha, S., and Vandersypen, L. M. K. (2007). Spins in few-electron quantum dots. Rev. Mod. Phys., 79:12171265. [65] Harrow, A. W., Hassidim, A., and Lloyd, S. (2009). Quantum algorithm for linear systems of equations. Phys. Rev. Lett., 103:150502. [66] Hein, M., Eisert, J., and Briegel, H. J. (2004). Multiparty entanglement in graph states. Phys. Rev. A, 69:062311. [67] Hempel, C., Maier, C., Romero, J., McClean, J., Monz, T., Shen, H., Jurcevic, P., Lanyon, B. P., Love, P., Babbush, R., Aspuru-Guzik, A., Blatt, R., and Roos, C. F. (2018). Quantum chemistry calculations on a trapped-ion quantum simulator. Phys. Rev. X, 8:031022. [68] Hermelin, S., Takada, S., Yamamoto, M., Tarucha, S., Wieck, A. D., Saminadayar, L., Brle, C., and Meunier, T. (2011). Electrons surfing on a sound wave as a platform for quantum optics with flying electrons. Nature, 477(7365):435438. [69] Herrera-Mart. A., Fowler, A. G., Jennings, D., and Rudolph, T. (2010). Photonic implementation for the topological cluster-state quantum computer. Phys. Rev. A, 82:032332. 158 REFERENCES

[70] Hill, C. D., Hollenberg, L. C. L., Fowler, A. G., Wellard, C. J., Greentree, A. D., and Goan, H.-S. (2005). Global control and fast solid-state donor electron spin quantum computing. Phys. Rev. B, 72:045350. [71] Hill, C. D., Peretz, E., Hile, S. J., House, M. G., Fuechsle, M., Rogge, S., Simmons, M. Y., and Hollenberg, L. C. L. (2015). A surface code quantum computer in silicon. Science Advances, 1(9). [72] Hoefflinger, B. (2012). Chips 2020: a guide to the future of nanoelectronics. Springer. [73] Hollenberg, L., Greentree, A., Fowler, A., and Wellard, C. (2006). Two-dimensional architectures for donor-based quantum computing. Physical Review B, 74(4):045311. [74] Hornibrook, J., Colless, J., Mahoney, A., Croot, X., Blanvillain, S., Lu, H., Gossard, A., and Reilly, D. (2014). Frequency multiplexing for readout of spin qubits. Applied Physics Letters, 104(10):103108. [75] Horsman, C., Fowler, A. G., Devitt, S., and Meter, R. V. (2012). Surface code quantum computing by lattice surgery. New Journal of Physics, 14(12):123011. [76] Hou, S. C., Khan, M. A., Yi, X. X., Dong, D., and Petersen, I. R. (2012). Optimal lyapunov-based quantum control for quantum systems. Phys. Rev. A, 86:022321. [77] House, M., Kobayashi, T., Weber, B., Hile, S., Watson, T., van der Heijden, J., Rogge, S., and Simmons, M. (2015). Radio frequency measurements of tunnel couplings and singlet-triplet spin states in Si: P quantum dots. Nature communications, 6. [78] Hsu, K.-C. and Brun, T. A. (2016). Method for quantum-jump continuous-time quantum error correction. Phys. Rev. A, 93:022321. [79] Hudson, R. L. and Parthasarathy, K. R. (1984). Quantum ito’s formula and stochas- tic evolutions. Communications in Mathematical Physics, 93(3):301323. [80] Hush, M., Carvalho, A., Hedges, M., and James, M. (2013). Analysis of the operation of gradient echo memories using a quantum input-output model. New J. Phys, 15(8):085020. [81] Hr, T., Steiger, D. S., Smelyanskiy, M., and Troyer, M. (2016). High performance emulation of quantum circuits. In Proceedings of the International Conference for High Performance Computing, Networking, Storage and Analysis, page 74. IEEE Press. [82] Ippoliti, M., Mazza, L., Rizzi, M., and Giovannetti, V. (2015). Perturbative approach to continuous-time quantum error correction. Phys. Rev. A, 91:042322. [83] James, M. R. and Gough, J. (2010). Quantum dissipative systems and feed- back control design by interconnection. IEEE Transactions on Automatic Control, 55(8):18061821. REFERENCES 159

[84] James, M. R. and Nurdin, H. I. (2015). A tutorial introduction to quantum feedback control. In 2015 IEEE Conference on Control Applications (CCA), page 112. [85] Johansson, J., Nation, P., and Nori, F. (2012). Qutip: An open-source python framework for the dynamics of open quantum systems. Comput Phys Commun, 183(8):17601772. [86] Jones, N. C., Van Meter, R., Fowler, A. G., McMahon, P. L., Kim, J., Ladd, T. D., and Yamamoto, Y. (2012). Layered architecture for quantum computing. Phys. Rev. X, 2:031007. [87] Kane, B. E. (1998). A silicon-based nuclear spin quantum computer. Nature, 393(6681):133137. [88] Kapit, E., Chalker, J. T., and Simon, S. H. (2015). Passive correction of quantum logical errors in a driven, dissipative system: A blueprint for an analog quantum code fabric. Phys. Rev. A, 91:062324. [89] KawakamiE, ScarlinoP, Ward, D. R., Braakman, F. R., Savage, D. E., Lagally, M. G., Friesen, M., Coppersmith, S. N., Eriksson, M. A., and Vandersypen, L. M. K. (2014). Electrical control of a long-lived spin qubit in a Si/SiGe quantum dot. Nature nanotechnology, 9(9):666670. [90] Kerckhoff, J., Nurdin, H. I., Pavlichin, D. S., and Mabuchi, H. (2010). Design- ing quantum memories with embedded control: Photonic circuits for autonomous quantum error correction. Phys. Rev. Lett., 105:040502. [91] Kerckhoff, J., Pavlichin, D. S., Chalabi, H., and Mabuchi, H. (2011). Design of nanophotonic circuits for autonomous subsystem quantum error correction. New Journal of Physics, 13(5):055022. [92] Kielpinski, D., Monroe, C., and Wineland, D. J. (2002). Architecture for a large- scale ion-trap quantum computer. Nature, 417(6890):709. [93] Kienzler, D., Lo, H.-Y., Keitch, B., de Clercq, L., Leupold, F., Lindenfelser, F., Marinelli, M., Negnevitsky, V., and Home, J. (2015). Quantum harmonic oscillator state synthesis by reservoir engineering. Science, 347(6217):5356. [94] Kitaev, A. Y. (2003). Fault-tolerant quantum computation by . Annals of Physics, 303(1):230. [95] Knill, E., Laflamme, R., and Viola, L. (2000). Theory of quantum error correction for general noise. Phys. Rev. Lett., 84:25252528. [96] Kraus, K., Bhm, A., Dollard, J., and Wootters, W. (1983). States, effects, and operations fundamental notions of quantum theory. In States, Effects, and Operations Fundamental Notions of Quantum Theory, volume 190. [97] Krauter, H., Muschik, C. A., Jensen, K., Wasilewski, W., Petersen, J. M., Cirac, J. I., and Polzik, E. S. (2011). Entanglement generated by dissipation and steady state entanglement of two macroscopic objects. Physical review letters, 107(8):080503. 160 REFERENCES

[98] Kuang, S. and Cong, S. (2008). Lyapunov control methods of closed quantum systems. Automatica, 44(1):98108. [99] Lidar, D. A. and Brun, T. A. (2013). Quantum error correction. Cambridge University Press. [100] Liu, X. and Kubiatowicz, J. (2013). Chisel-q: Designing quantum circuits with a scala embedded language. In Computer Design (ICCD), 2013 IEEE 31st International Conference on, page 427434. IEEE. [101] Loss, D. and DiVincenzo, D. P. (1998). Quantum computation with quantum dots. Physical Review A, 57(1):120. [102] Maalouf, A. I. and Petersen, I. R. (2011a). Bounded real properties for a class of annihilation-operator linear quantum systems. IEEE Transactions on Automatic Control, 56(4):786801. [103] Maalouf, A. I. and Petersen, I. R. (2011b). Coherent h∞ control for a class of annihilation operator linear quantum systems. IEEE Transactions on Automatic Control, 56(2):309319. [104] Mabuchi, H. (2008). Coherent-feedback quantum control with a dynamic com- pensator. Phys. Rev. A, 78:032323. [105] Mabuchi, H. (2009a). Cavity-qed models of switches for attojoule-scale nanopho- tonic logic. Phys. Rev. A, 80:045802. [106] Mabuchi, H. (2009b). Continuous quantum error correction as classical hybrid control. New Journal of Physics, 11(10):105044. [107] Mabuchi, H. (2011). Nonlinear interferometry approach to photonic sequential logic. Appl. Phys. Lett., 99(15):153103. [108] Mariantoni, M., Wang, H., Yamamoto, T., Neeley, M., Bialczak, R. C., Chen, Y., Lenander, M., Lucero, E., O’connell, A., Sank, D., et al. (2011). Implementing the quantum with superconducting circuits. Science, 334(6052):6165. [109] McClean, J. R., Kivlichan, I. D., Sung, K. J., Steiger, D. S., Cao, Y., Dai, C., Fried, E. S., Gidney, C., Gimby, B., Gokhale, P., et al. (2017). Openfermion: the electronic structure package for quantum computers. arXiv preprint arXiv:1710.07629. [110] McNeil, R., Kataoka, M., Ford, C., Barnes, C., Anderson, D., Jones, G., Farrer, I., and Ritchie, D. (2011). On-demand single-electron transfer between distant quantum dots. Nature, 477(7365):439442. [111] Menchon-Enrich, R., Benseny, A., Ahufinger, V., Greentree, A. D., Busch, T., and Mompart, J. (2016). Spatial adiabatic passage: a review of recent progress. Reports on Progress in Physics, 79(7):074401. [112] Mirrahimi, M. and Van Handel, R. (2007). Stabilizing feedback controls for quantum systems. SIAM Journal on Control and Optimization, 46(2):445467. REFERENCES 161

[113] Moessenboeck, H. (1990). Coco/R: A Generator for Fast Compiler Front-Ends. Citeseer. [114] Monroe, C. and Kim, J. (2013). Scaling the quantum processor. Science, 339(6124):11641169. [115] Morello, A., Dzurak, A., Huebl, H.-G., Clark, R. G., Van Beveren, L. H. W., Hollenberg, L. C. L., Jamieson, D. N., and Escott, C. (2013). Control and readout of electron or hole spin. US Patent 8,507,894. [116] Muhonen, J. T., Dehollain, J. P., Laucht, A., Hudson, F. E., Kalra, R., Sekiguchi, T., Itoh, K. M., Jamieson, D. N., McCallum, J. C., Dzurak, A. S., and Morello, A. (2014). Storing quantum information for 30 seconds in a nanoelectronic device. Nature nanotechnology, 9(12):986991. [117] Nadj-Perge, S., Drozdov, I. K., Li, J., Chen, H., Jeon, S., Seo, J., MacDonald, A. H., Bernevig, B. A., and Yazdani, A. (2014). Observation of majorana fermions in ferromagnetic atomic chains on a superconductor. Science, 346(6209):602607. [118] Nagayama, S., Fowler, A. G., Horsman, D., Devitt, S. J., and Van Meter, R. (2017). Surface code error correction on a defective lattice. New Journal of Physics, 19(2):023050. [119] Natarajan, S., Agostinelli, M., Akbar, S., Bost, M., Bowonder, A., Chikarmane, V., Chouksey, S., Dasgupta, A., Fischer, K., Fu, Q., et al. (2014). A 14nm logic technology featuring 2nd-generation finfet, air-gapped interconnects, self-aligned double patterning and a 0.0588 µm2 SRAM cell size. In Electron Devices Meeting (IEDM), 2014 IEEE International, page 37. IEEE. [120] Nguyen, T., Miao, Z., Pan, Y., Amini, N., Ugrinovskii, V., and James, M. R. (2017). Pole placement approach to coherent passive reservoir engineering for storing quantum information. In American Control Conference (ACC), 2017, page 234239. IEEE. [121] Nielsen, M. A. (2004). Optical quantum computation using cluster states. Phys. Rev. Lett., 93:040503. [122] Nielsen, M. A. and Chuang, I. L. (2010). Quantum computation and quantum information. Cambridge university press. [123] Nigg, S. E., Fuhrer, A., and Loss, D. (2017). Superconducting grid-bus surface code architecture for hole-spin qubits. Phys. Rev. Lett., 118:147701. [124] Nowack, K., Shafiei, M., Laforest, M., Prawiroatmodjo, G., Schreiber, L., Reichl, C., Wegscheider, W., and Vandersypen, L. (2011). Single-shot correlations and two-qubit gate of solid-state spins. Science, 333(6047):12691272. [125] Nurdin, H. I. (2014). Quantum filtering for multiple input multiple output systems driven by arbitrary zero-mean jointly gaussian input fields. Russian Journal of Mathematical Physics, 21(3):386398. 162 REFERENCES

[126] Nurdin, H. I. and Gough, J. E. (2015). Modular quantum memories using passive linear optics and coherent feedback. Quantum Information & Computation, 15(11- 12):10171040. [127] Nurdin, H. I., James, M. R., and Doherty, A. C. (2009a). Network synthesis of lin- ear dynamical quantum stochastic systems. SIAM J Control Optim, 48(4):26862718. [128] Nurdin, H. I., James, M. R., and Petersen, I. R. (2009b). Coherent quantum lqg control. Automatica, 45(8):18371846. [129] Nurdin, H. I. and Yamamoto, N. (2017). Linear Dynamical Quantum Systems. Springer International Publishing. [130] OpenMP (2018). Openmp. http://www.openmp.org/. [131] Oreshkov, O. and Brun, T. A. (2007). Continuous quantum error correction for non-markovian decoherence. Phys. Rev. A, 76:022318. [132] Ors, R., Mugel, S., and Lizaso, E. (2019). Quantum computing for finance: overview and prospects. Reviews in Physics, page 100028. [133] Oskin, M., Chong, F., and Chuang, I. (2002). Overhead reduction in a architecture for quantum computers. IEEE Computer, 35(1):7987. [134] Ostrowski, A. and Schneider, H. (1962). Some theorems on the inertia of general matrices. Journal of and Applications, 4(1):7284. [135] Paetznick, A. and Fowler, A. G. (2013). Quantum circuit optimization by topo- logical compaction in the surface code. arXiv preprint arXiv:1304.2807. [136] Pan, Y., Amini, H., Miao, Z., Gough, J., Ugrinovskii, V., and James, M. R. (2014). Heisenberg picture approach to the stability of quantum markov systems. Journal of Mathematical Physics, 55(6):062701. [137] Pan, Y. and Nguyen, T. (2017). Stabilizing quantum states and automatic er- ror correction by dissipation control. IEEE Transactions on Automatic Control, 62(9):46254630. [138] Pan, Y., Nguyen, T., Miao, Z., Amini, N., Ugrinovski, V., and James, M. (2016). Coherent observer engineering for protecting quantum information. In Control Conference (CCC), 2016 35th Chinese, page 91399144. IEEE. [139] Pan, Y., Ugrinovskii, V., and James, M. R. (2015). Ground-state stabilization of open quantum systems by dissipation. arXiv preprint arXiv:1502.05593. [140] Park, S.-J., Persaud, A., Liddle, J., Nilsson, J., Bokor, J., Schneider, D., Rangelow, I., and Schenkel, T. (2004). Processing issues in topdown approaches to quantum computer development in silicon. Microelectronic engineering, 73:695700. [141] Parthasarathy, K. R. (2012). An introduction to quantum stochastic calculus, volume 85. Birkher. REFERENCES 163

[142] Paz, J. P. and Zurek, W. H. (1998). Continuous error correction. Proceedings of the Royal Society of London. Series A: Mathematical, Physical and Engineering Sciences, 454(1969):355364. [143] Perez-Garcia, D., Verstraete, F., Wolf, M. M., and Cirac, J. I. (2008). Peps as unique ground states of local hamiltonians. Quantum Information & Computation, 8(6):650663. [144] Pla, J. J., Tan, K. Y., Dehollain, J. P., Lim, W. H., Morton, J. J., Jamieson, D. N., Dzurak, A. S., and Morello, A. (2012). A single-atom electron spin qubit in silicon. Nature, 489(7417):541545. [145] Poyatos, J. F., Cirac, J. I., and Zoller, P. (1996). Quantum reservoir engineering with laser cooled trapped ions. Phys. Rev. Lett., 77:47284731. [146] Raussendorf, R. and Briegel, H. J. (2001). A one-way quantum computer. Phys. Rev. Lett., 86:51885191. [147] Raussendorf, R. and Harrington, J. (2007). Fault-tolerant quantum computation with high threshold in two dimensions. Phys. Rev. Lett., 98:190504. [148] Raussendorf, R., Harrington, J., and Goyal, K. (2007). Topological fault-tolerance in cluster state quantum computation. New Journal of Physics, 9(6):199. [149] Rossi, A., Zhao, R., Dzurak, A., and Gonzalez-Zalba, M. (2016). Dispersive readout of a silicon quantum dot with accumulation-mode gate sensor. arXiv preprint arXiv:1610.00767. [150] Saeedi, K., Simmons, S., Salvail, J. Z., Dluhy, P., Riemann, H., Abrosimov, N. V., Becker, P., Pohl, H.-J., Morton, J. J., and Thewalt, M. L. (2013). Room-temperature quantum bit storage exceeding 39 minutes using ionized donors in silicon-28. Science, 342(6160):830833. [151] Sarma, G. and Mabuchi, H. (2013). Gauge subsystems, separability and robustness in autonomous quantum memories. New Journal of Physics, 15(3):035014. [152] Sarovar, M., Ahn, C., Jacobs, K., and Milburn, G. J. (2004). Practical scheme for error control using feedback. Physical Review A, 69(5):052324. [153] Sarovar, M. and Milburn, G. (2005). Continuous quantum error correction by cooling. Physical Review A, 72(1):012306. [154] Schirmer, S. G. and Wang, X. (2010). Stabilizing open quantum systems by markovian reservoir engineering. Physical Review A, 81(6):062306. [155] Schofield, S. R., Curson, N. J., Simmons, M. Y., Rue F. J., Hallam, T., Oberbeck, L., and Clark, R. G. (2003). Atomically precise placement of single dopants in Si. Phys. Rev. Lett., 91:136104. [156] Shankar, S., Hatridge, M., Leghtas, Z., Sliwa, K., Narla, A., Vool, U., Girvin, S. M., Frunzio, L., Mirrahimi, M., and Devoret, M. H. (2013). Autonomously stabilized entanglement between two superconducting quantum bits. Nature, 504(7480):419422. 164 REFERENCES

[157] Shor, P. W. (1994). Algorithms for quantum computation: discrete logarithms and factoring. In Proceedings 35th Annual Symposium on Foundations of Computer Science, page 124134. [158] Shor, P. W. (1997). Polynomial-time algorithms for prime factorization and discrete logarithms on a quantum computer. SIAM Journal on Computing, 26(5):14841509. [159] Song, H., Zhang, G., and Xi, Z. (2016). Continuous-mode multiphoton filtering. SIAM Journal on Control and Optimization, 54(3):16021632. [160] Spohn, H. (1976). Approach to equilibrium for completely positive dynamical semigroups of n-level systems. Reports on Mathematical Physics, 10(2):189194. [161] Stace, T. M. and Barrett, S. D. (2010). Error correction and degeneracy in surface codes suffering loss. Phys. Rev. A, 81:022317. [162] Stephens, A. M. (2014). Fault-tolerant thresholds for quantum error correction with the surface code. Phys. Rev. A, 89:022321. [163] Stotz, J. A., Hey, R., Santos, P. V., and Ploog, K. H. (2005). Coherent spin transport through dynamic quantum dots. Nature materials, 4(8):585588. [164] Tang, Y.-C. and Miao, G.-X. (2016). Robust surface code topology against sparse fabrication defects in a superconducting-qubit array. Physical Review A, 93(3):032322. [165] Technologies, R. B. (2018). Quantum gate language (qgl). https://bbn-q.github. io/QGL/. [166] Terhal, B. M. (2013). Quantum error correction for quantum memories. arXiv preprint arXiv:1302.3428. [167] Terhal, B. M. (2015). Quantum error correction for quantum memories. Rev. Mod. Phys., 87:307346. [168] Tezak, N., Niederberger, A., Pavlichin, D. S., Sarma, G., and Mabuchi, H. (2012). Specification of photonic circuits using quantum hardware description language. Philosophical Transactions of the Royal Society of London A: Mathematical, Physical and Engineering Sciences, 370(1979):52705290. [169] Ticozzi, F., Lucchese, R., Cappellaro, P., and Viola, L. (2012). Hamiltonian control of quantum dynamical semigroups: Stabilization and convergence speed. Automatic Control, IEEE Transactions on, 57(8):19311944. [170] Ticozzi, F., Schirmer, S. G., and Wang, X. (2010). Stabilizing quantum states by constructive design of open quantum dynamics. IEEE Transactions on Automatic Control, 55(12):29012905. [171] Ticozzi, F. and Viola, L. (2009). Analysis and synthesis of attractive quantum markovian dynamics. Automatica, 45(9):20022009. REFERENCES 165

[172] Ticozzi, F. and Viola, L. (2012). Stabilizing entangled states with quasi-local quantum dynamical semigroups. Phil. Trans. R. Soc. A, 370(1979):52595269. [173] Ticozzi, F. and Viola, L. (2014). Steady-state entanglement by engineered quasi-local markovian dissipation: Hamiltonian-assisted and conditional stabilization. Quantum Information & Computation, 14(3-4):265294. [174] Tomita, Y. and Svore, K. M. (2014). Low-distance surface codes under realistic quantum noise. Phys. Rev. A, 90:062320. [175] Tosi, G., Mohiyaddin, F. A., Tenberg, S. B., Rahman, R., Klimeck, G., and Morello, A. (2015). Silicon quantum processor with robust long-distance qubit couplings. arXiv preprint arXiv:1509.08538. [176] Trifunovic, L., Dial, O., Trif, M., Wootton, J. R., Abebe, R., Yacoby, A., and Loss, D. (2012). Long-distance spin-spin coupling via floating gates. Phys. Rev. X, 2:011006. [177] van der Wiel, W. G., De Franceschi, S., Elzerman, J. M., Fujisawa, T., Tarucha, S., and Kouwenhoven, L. P. (2002). Electron transport through double quantum dots. Rev. Mod. Phys., 75:122. [178] Van Donkelaar, J. A., Greentree, A. D., Alves, A. D., Jong, L. M., Hollenberg, L. C., and Jamieson, D. N. (2010). Top-down pathways to devices with few and single atoms placed to high precision. New Journal of Physics, 12(6):065016. [179] van Handel, R. and Mabuchi, H. (2005). Optimal error tracking via quantum coding and continuous syndrome measurement. arXiv preprint quant-ph/0511221. [180] Van Meter, R. and Horsman, C. (2013). A blueprint for building a quantum computer. Communications of the ACM, 56(10):8493. [181] Vandersypen, L., Bluhm, H., Clarke, J., Dzurak, A., Ishihara, R., Morello, A., Reilly, D., Schreiber, L., and Veldhorst, M. (2016). Interfacing spin qubits in quantum dots and donors-hot, dense and coherent. arXiv preprint arXiv:1612.05936. [182] Veldhorst, M., Hwang, J., Yang, C., Leenstra, A., de Ronde, B., Dehollain, J., Muhonen, J., Hudson, F., Itoh, K., Morello, A., et al. (2014). An addressable quantum dot qubit with fault-tolerant control-fidelity. Nature nanotechnology. [183] Veldhorst, M., Yang, C., Hwang, J., Huang, W., Dehollain, J., Muhonen, J., Simmons, S., Laucht, A., Hudson, F., Itoh, K. M., et al. (2015). A two-qubit logic gate in silicon. Nature, 526(7573):410414. [184] Verduijn, J., Vinet, M., and Rogge, S. (2014). Radio-frequency dispersive detection of donor atoms in a field-effect transistor. Applied Physics Letters, 104(10):102107. [185] Verstraete, F., Wolf, M. M., and Cirac, J. I. (2009). Quantum computation and quantum-state engineering driven by dissipation. Nat. Phys., 5(9):633636. 166 REFERENCES

[186] Viennot, J., Dartiailh, M., Cottet, A., and Kontos, T. (2015). Coherent coupling of a single spin to microwave cavity photons. Science, 349(6246):408411. [187] Walls, D. F. and Milburn, G. J. (2007). Quantum optics. Springer Science & Business Media. [188] Wang, D., Fowler, A., Stephens, A., and Hollenberg, L. (2010). Threshold error rates for the toric and planar codes. Quantum Information & Computation, 10(5):456469. [189] Wang, D. S., Fowler, A. G., and Hollenberg, L. C. L. (2011). Surface code quantum computing with error rates over 1%. Phys. Rev. A, 83:020302. [190] Wang, R., Shi, R., and Cheng, C.-K. (2006). Layer minimization of escape routing in area array packaging. In Computer-Aided Design, 2006. ICCAD ’06. IEEE/ACM International Conference on, page 815819. [191] Weber, B., Mahapatra, S., Ryu, H., Lee, S., Fuhrer, A., Reusch, T., Thompson, D., Lee, W., Klimeck, G., Hollenberg, L. C., et al. (2012). Ohm’s law survives to the atomic scale. Science, 335(6064):6467. [192] Weber, J. R., Koehl, W. F., Varley, J. B., Janotti, A., Buckley, B. B., Van de Walle, C. G., and Awschalom, D. D. (2010). Quantum computing with defects. Proceedings of the National Academy of Sciences, 107(19):85138518. [193] Wecker, D., Bauer, B., Clark, B. K., Hastings, M. B., and Troyer, M. (2014). Gate-count estimates for performing quantum chemistry on small quantum computers. Phys. Rev. A, 90:022305. [194] Wecker, D. and Svore, K. M. (2014). Liqui|>: A architecture and domain-specific language for quantum computing. arXiv:1402.4467. [195] Whitfield, J. D., Biamonte, J., and Aspuru-Guzik, A. (2011). Simulation ofelec- tronic structure hamiltonians using quantum computers. Mol. Phys., 109(5):735750. [196] Wilson, L. (2013). International technology roadmap for semiconductors (itrs). [197] Wiseman, H. M. and Milburn, G. J. (1993). Quantum theory of optical feedback via homodyne detection. Phys. Rev. Lett., 70:548551. [198] Wiseman, H. M. and Milburn, G. J. (2009). Quantum measurement and control. Cambridge University Press. [199] Wk, A., Łuczak, T., Kurzynski,´ P., Grudka, A., Gdala, T., and Bednarska, M. (2005). Unmodulated spin chains as universal quantum wires. Phys. Rev. A, 72:034303. [200] Xu, K., Souriau, L., Hellin, D., Versluijs, J., Wong, P., Vangoidsenhoven, D., Vandenbroeck, N., Dekkers, H., Shi, X., Albert, J., Tan, C. L., Vertommen, J., Coenegrachts, B., Orain, I., Kimura, Y., Wiaux, V., and Boullart, W. (2013). Key contributors for improvement of line width roughness, line edge roughness, and critical dimension uniformity: 15m half-pitch patterning with extreme ultraviolet REFERENCES 167

and self-aligned double patterning. Journal of Micro/Nanolithography, MEMS, and MOEMS, 12(4):041302. [201] Xue, S., James, M. R., Shabani, A., Ugrinovskii, V., and Petersen, I. R. (2015). Quantum filter for a class of non-markovian quantum systems. arXiv:1503.07999. [202] Yamamoto, N. (2014). Coherent versus measurement feedback: Linear systems theory for quantum information. Phys. Rev. X, 4:041029. [203] Yao, N. Y., Jiang, L., Gorshkov, A. V., Maurer, P. C., Giedke, G., Cirac, J. I., and Lukin, M. D. (2012). Scalable architecture for a room temperature solid-state quantum information processor. Nature communications, 3:800. [204] Zhang, G. and James, M. R. (2011). Direct and indirect couplings in coherent feedback control of linear quantum systems. IEEE Transactions on Automatic Control, 56(7):15351550. [205] Zhang, J., Liu, Y.-x., Wu, R.-B., Jacobs, K., and Nori, F. (2017). Quantum feedback: theory, experiments, and applications. Physics Reports, 679:160. [206] Zwanenburg, F. A., Dzurak, A. S., Morello, A., Simmons, M. Y., Hollenberg, L. C. L., Klimeck, G., Rogge, S., Coppersmith, S. N., and Eriksson, M. A. (2013). Silicon quantum electronics. Rev. Mod. Phys., 85:9611019. [207] iljak, D. D. (1978). Large-scale dynamic systems: stability and structure, vol- ume 2. North Holland. [208] er, B. (1998). A procedural formalism for quantum computing. This page intentionally left blank. Appendix A

Mathematical Proofs

A.1 General form of the QSDE for continuous error correction in Chap- ter 3

Conditional master equation for continuous error correction monitor:

n k k γ (m) dρc = ∑ ∑D[σ j ]ρcdt + κ ∑ D[gi]ρcdt + √κ ∑ H [gi]ρcdWi 3 m=1 j i=1 i=1 In which, (m) (1) • σ j represent Pauli operators (error channels), i.e. σx = X1, etc. • g is set of stabilizer operators: for our distance-2 surface code, they are { i} Z1Z2Z3Z4, X1X2, X1X3, X2X4, and X3X4

We want to derive a set of stochastic differential equations for π(gi) = gˆi, which is the expectation of stabilizer operator (syndrome value)

gˆi = π(gi) = Tr[giρc];dgˆi = Tr[gidρc]

n k k γ (m) dgˆl = ∑ ∑Tr[glD[σ j ]ρc]dt + κ ∑ Tr[glD[gi]ρc]dt + √κ ∑ Tr[glH [gi]ρc]dWi 3 m=1 j i=1 i=1 170 Chapter A. Mathematical Proofs

• First term

(m) (m) (m) Tr[g D[σ ]ρ ] = Tr[g (σ ρ σ ρ )] l j c l j c j − c m m = Tr[g σ ( )ρ σ ( )] Tr[g ρ ] l j c j − l c m m = Tr[σ ( )g σ ( )ρ ] Tr[g ρ ] j l j c − l c 0 if g (m) I,σ l ∈ { j} =   2g ˆ if g (m) / I,σ − l l ∈ { j}  The gl(m) in the last equation denotes the position m Pauli operator in the stabilizer (m) gl. In deed, if the stabilizer gl contains σ j or has an identity operator at that m m m m position, σ ( )g σ ( ) = g . Otherwise, σ ( )g σ ( ) = g , eg. X (Z Z Z Z )X = j l j l j l j − l 1 1 2 3 4 1 Z Z Z Z or Y (X X )Y = X X − 1 2 3 4 1 1 2 1 − 1 2 For a depolarizing channel, we can generalize the results as following:

n γ (m) (4w)γ ∑ ∑Tr[glD[σ j ]ρc]dt = gˆl,w = Pauli weight of gl 3 m=1 j − 3 • Second term

k k κ ∑ Tr[glD[gi]ρc] = κ ∑(Tr[gl(giρcgi)] Tr[glρc]) i=1 i=1 − k = κ ∑(Tr[(giglgi)ρc] Tr[glρc]) = 0 i=1 −

This is the basis property of stabilizer operators: commuting and unitary. • Last term A.1 General form of the QSDE for continuous error correction in Chapter 3 171

k k √κ ∑ Tr[glH [gi]ρc]dWi = √κ ∑ Tr[gl(giρc + ρcgi ρcTr[giρc + ρcgi])]dWi i=1 i=1 − k = √κ ∑ Tr[gl(giρc + ρcgi)] Tr[glρc]Tr[giρc + ρcgi] dWi i=1{ − } k = 2√κ ∑ Tr[glgiρc] Tr[glρc]Tr[giρc] dWi i=1{ − } k = 2√κ ∑ glgi gˆlgˆi dWi i=1{ − } d Notice in this equation that:

– The product glgi can become a new operator outside the set of initial stabilizer

set. However, stabilizer code properties tell us that glgi is also a stabilizer of the code and they will be closed.

– The resulting QSDE is non-linear as it involves second-order terms like gˆlgˆi In conclusion, we have derive the set of QSDE’s tracking the parity syndrome of the surface code which have the following form:

(4w)γ k dgˆl = gˆl + 2√κ ∑ glgi gˆlgˆi dWi − 3 i=1{ − } with w is the weight if g and l is the index of all membersd of the set generated by g k l { i}i=1 For example, the distance-2 surface code has 5 stabilizer operators: Z1Z2Z3Z4,

X1X2, X1X3, X2X4, and X3X4. With that, we can form a close set of all stabilizer opera- tors: Z Z Z Z , X X , X X , X X , X X , X X , X X , X X X X , Y Y Z Z , Y Z Y Z , { 1 2 3 4 1 2 1 3 2 4 3 4 2 3 1 4 1 2 3 4 1 2 3 4 1 2 3 4 Z Y Z Y , Z Z Y Y , Z Y Y Z , Y Z Z Y , Y Y Y Y . 1 2 3 4 1 2 3 4 1 2 3 4 1 2 3 4 1 2 3 4} There are a total number of 15 equations, which is a great reduction from propagating the full density matrix having 4n elements (256 for the distance-2 four qubit code). However, there is also a caveat associated with this QSDE approach. We have not yet included the feedback in our conditional master equation. Adding feedback will then break the closeness of our stabilizer QSDE’s. 172 Chapter A. Mathematical Proofs

Let’s consider a specific type of feedback which is Hamiltonian (unitary) feedback, i.e. adding the commutation term i[F,ρ ]dt into the conditional master equation, where − c F is the feedback Hamiltonian. Using a similar approach, we will have an additional term: Tr( ig [F,ρ ]) which − l c can be rewritten as Tr( i[g ,F]ρ ) using the cyclic property of the trace. At this point, − l c we can see that additional operators will appear namely the commutator [gl,F]. If we (m) choose F = σ j to correct Pauli errors, the commutator will certainly be outside the stabilizer set. Thus, a reduced QSDE model as before cannot be realized. Approximation methods are required to reduce the dimension of the syndrome filter in order to tackle real surface codes as they contain a big number of qubits.

A.2 Proof of the scalability condition (4.44)-(4.45)

(i) Proof : By assumption, we have U satisfying Eq. (4.30). Let L = U V ∏ V and we { i} i i i d d have

V V V (i)U†V U V V (i) V V (i) G ( i)Li = i ∏ d i i i i ∏ d i ∏ d d d − d (i) (i) (1 ci 1)Vi ∏Vd = ciVi ∏Vd , ci > 0. ≤ − − d − d (A.1)

For j = i, either [U ,V ] = 0 which results in ̸ j i

V V V ( j)U†V U V V ( j) V V V ( j) G ( i)L j = j ∏ d j i j j ∏ d i j ∏ d d d − d = 0, (A.2)

or Uj satisfies (4.44) as V U†V U V V . (A.3) i j i j i ≤ i A.3 Proof of the condition (4.52)-(4.53) 173

Note that Eq. (A.3) implies V V ( j) according to the assumption. Based on this fact, i ∈ { d } we obtain

G (Vi)L j ( j) † ( j) ( j) = Vj ∏Vd Uj ViUjVj ∏Vd ViVj ∏Vd d d − d ( j) † ( j) ( j) = Vj ∏Vd ViUj ViUjViVj ∏Vd ViVj ∏Vd d d − d 0, (A.4) ≤

which further leads to

(i) (i) G (∑Vi) ∑ciVi ∏Vd cmin ∑Vi ∏Vd i ≤ − i d ≤ − i d cminλ ∑Vi. (A.5) ≤ − i

c is the smallest number in c . Here we have used the condition (4.45). min { i} ■

A.3 Proof of the condition (4.52)-(4.53)

Proof. The Liouville-space representation of the master equation (4.33) is

vec(ρ˙t) = Avec(ρt), (A.6)

whose solution is At vec(ρt) = e vec(ρ0), (A.7)

where vec(ρt) is a column vector obtained by piling up the column vectors of ρt, and A is matrix determined by H, L . { k} The condition (4.52) ensures the invariance of the state if no error occurs in the first step. If the error E occurs, the erroneous state E p q E† needs to be steered back to a a| ⟩⟨ | a p q . Since we have | ⟩⟨ |

vec((E p q E†) ) = eAtvec(E p q E†), (A.8) a| ⟩⟨ | a t a| ⟩⟨ | a 174 Chapter A. Mathematical Proofs and so

vec˙ ((E p q E†) ) a| ⟩⟨ | a t = eAtAvec(E p q E†) a| ⟩⟨ | a = eAt[ κ vec(E p q E†) + κ vec( p q )] − pq a| ⟩⟨ | a pq | ⟩⟨ | = κ eAtvec(E p q E†) + κ vec( p q ) − pq a| ⟩⟨ | a pq | ⟩⟨ | = κ vec((E p q E†) ) + κ vec( p q ). (A.9) − pq a| ⟩⟨ | a t pq | ⟩⟨ |

Eq. (A.9) is an ordinary first-order differential equation which can be easily integrated to be

† vec((Ea p q Ea )t) | ⟩⟨ | t κpqt † κpq(t r) = e− vec(Ea p q Ea ) + κpqvec( p q ) e− − dr | ⟩⟨ | | ⟩⟨ | 0 Z κpqt † κpqt = e− vec(E p q E ) + vec( p q )[1 e− ]. (A.10) a| ⟩⟨ | a | ⟩⟨ | −

This proves (E p q E†) p q as t ∞. Due to the linearity of the Liouville a| ⟩⟨ | a t → | ⟩⟨ | → equation, finally we have (∑ α α E p q E†) ρ . p,q p q∗ a| ⟩⟨ | a t → 0 ■ Appendix B

Feynman Path Integral Simulation With FPGA

B.1 Method Overview

The Feynman path integral method can be used to calculate the propagation amplitude from the input state (classical) to a particular classical output state. To illustrate this, considering a quantum algorithm f operating on N qubits:

2N 1 − f : i1i2...iN ∑ αk k , (B.1) | ⟩ 7→ k=0 | ⟩

In the Feynman path integral framework, we theoretically need to compute the N coefficients αk’s iteratively for all possible outcomes (2 ). Then, this is completely equivalent to the linear algebra approach which represents the output as a tall column vector of length 2N. An unique advantage of the path integral method is its memory efficiency and distributed-computing compatibility. Firstly, since we do not storethe whole state vector at any given time, we do not have the memory “hard” limit (space-time trade-off). Secondly, path calculation is an independent workload, thus can be distributed to a large number of processing units without worrying about data dependency. For

example, each unit compute the αk amplitude for a specific value of k. 176 Chapter B. Feynman Path Integral Simulation With FPGA

Let’s look at the method in more details. Consider a quantum circuit with d layers of quantum gate and N qubits. Assuming only 1- and 2-qubit gates are used (satisfying quantum computing universality).

G1

G2

Gd

G3 G4

The input is a classical state ( x ) that we load to the qubits. We calculate the | ⟩ amplitude α to get a readout of y = k , k [0,2N 1] as k | ⟩ | ⟩ ∈ −

x f y = ∑ x1 G1 a1 x2x3 G2 b1c1 ..Gd y4y5 , (B.2) ⟨ | | ⟩ internal nodes ⟨ | | ⟩⟨ | | ⟩ | ⟩ in which we used the notations a to h to represent the 8 qubit lines and the subscript numbers to denote the sequence of gates on that line. We shall call a connection inside the circuit between gates as “wire”. The idea is to sum over all possible binary combinations of internal wires. In order to explain this concept better, let’s look at a simple example which is a 3-qubit quantum Fourier transform (QFT) circuit.

We have labeled all the internal wires which need to be summed over. Since we have 4 internal wires, each path calculation will require a sum of 24 = 16 terms. Each term is computed from a product of 6 complex numbers (equal to the number of gate layers). B.2 FPGA Implementation 177

And to get the complete final state vector, we need to repeat this task 23 = 8 times to cover all possible outcomes of y y y . Explicitly, we have: | 1 2 3⟩

x x x QFT y y y = ( x H c x c CR(π/2) x c x H b (B.3) ⟨ 1 2 3| 3 | 1 2 3⟩ ∑ ⟨ 1| | 1⟩⟨ 2 1| | 2 2⟩⟨ 2| | 1⟩ c1c2b1c3 x c CR(π/4) x c x b CR(π/2) x y x H y ). × ⟨ 3 2| | 3 3⟩⟨ 3 1| | 3 2⟩⟨ 3| | 1⟩

For each layer of gate, we only deal with the local gate which is applied at that layer. The operands for the multiplier are elements of the corresponding gate matrix indexed by the current classical bra and ket states.

B.2 FPGA Implementation

As shown in the previous example, the calculation of Feynman path integral can be efficiently simulated on the FPGA by: 1. Streaming the complex matrix elements, i.e. a b G a b , into the FPGA. The ⟨ 1 1| | 2 2⟩ host CPU will serve as a parser for the input quantum circuit and dispatch the coefficients onto a continuous stream sending to the FPGA.

// Define operation functions

//multiply float2 comp_mult(float2 a, float2 b) { float2 res; res.x = a.x * b.x - a.y * b.y; res.y = a.x * b.y + a.y * b.x; return res; }

//add float2 comp_add(float2 a, float2 b) { float2 res; res.x = a.x + b.x; res.y = a.y + b.y; return res; }

Fig. B.1 OpenCL implementation of complex arithmetic. 178 Chapter B. Feynman Path Integral Simulation With FPGA

2. Implement a pipeline of sum operations with enough depth to hide the latency in- volved in the data loading and multiplication (multiple copies of the multiplication unit). The high-level structure can be seen as following:

LOAD LOAD LOAD LOAD COMPUTE UNIT

m-way m-way m-way m-way Complex Complex Complex Complex Multiplier Multiplier Multiplier Multiplier

+ + + + RESULT STORE

3. Multiple compute units can be mapped onto the FPGA so long as the hardware complexity is permitted. Many path can be calculated independently on the same FPGA or even across multiple FPGA’s. For a very large quantum circuit, we can choose between fast single amplitude calculation (latency optimized) or parallel multiple amplitudes (throughput optimized). Data access can be organized in SIMD fashion for more efficient bandwidth.

4. Perform quantum circuit optimization before the simulation, e.g. combining gates together for less memory transfer between FPGA and CPU, reducing internal nodes, etc. Innovative data structure for gate coefficient storage to quickly identify multiplying sequences which contain zero element(s), thus don’t send to the FPGA. B.3 Software Components 179

B.3 Software Components

B.3.1 Host Program Task: Manage the overall execution of the simulator, including: reading the input quantum gate sequence and configurations; assembling the required data to send tothe FPGA; collecting the results returned by all the compute units of the FPGA; performing any circuit optimization if required. Components: • Quantum circuit parser: parsing the quantum assembly language. For example, the sequence for the above 3-qubit QFT circuit is shown below.

num_operations: 6 // Quantum Fourier Transform on 3-qubit register x H x[1] cR_Piover2 x[2], x[1] H x[2] cR_Piover4 x[3], x[1] cR_Piover2 x[3], x[2] H x[3]

• FPGA control and management for initialization, send and receive data, etc. This part is closely related to the kernel implementation, e.g. the assembled data stream needs to match the work-group size of the kernel and the returned amplitude data needs to be mapped to the corresponding state, etc. • Quantum circuit optimization: reorganizing and combining gates to reduce internal nodes; eliminating zero or insignificant paths; optimizing data transfer between host and kernel; etc.

B.3.2 FPGA Kernel Task: Fetching data in main memory sent by the host, computing the complex mul- tiplication, adding the amplitudes of multiple paths. Depending on the problem size (number of gates/circuit depth), multiple compute units can be instantiated in one FPGA for computing multiple output states or segmenting the sum into chunks to optimize for low latency in case only one amplitude is concerned. 180 Chapter B. Feynman Path Integral Simulation With FPGA

// Define the work group size __attribute__((reqd_work_group_size(NUM_WORKGROUPS, 1, 1)))

// Multiplication kernel __kernel void Feynman_Mult (global const float2 * restrict src) {

//get global ID uint gid = get_global_id(0);

//temp var for running product float2 running_prod; running_prod.x = 1.0f; running_prod.y = 0.0f;

// Compute the multiplication of corresponding elements // in the data stream. #pragma unroll for (unsigned a = 0; a < MUL_POINTS; a ++) { running_prod = comp_mult(running_prod, src[gid*MUL_POINTS + a]); }

// Write the result to the FIFO channel // for the next kernel (sum) to process write_channel_altera (chanin, running_prod); }

// Summation kernel __kernel void Feynman_Sum(global float2 * restrict result) { //temp var for running sum float2 running_sum; running_sum.x = 0.0f; running_sum.y = 0.0f;

float2 tempVar; for (unsigned i = 0; i < NUM_WORKGROUPS; i++) { // read data from the channel tempVar = read_channel_altera(chanin); // cumulative sum running_sum = comp_add(running_sum, tempVar); } //get global ID uint gid = get_global_id(0); //send back the sum result with respect to the assigned ID result[gid] = running_sum; }

Fig. B.2 OpenCL implementation of multiplication and summation kernels. B.3 Software Components 181

Internally, the compute unit has a couple of kernels passing data through FPGA FIFO channel as shown in the figure below. This will be more efficient and flexible intermsof memory access (potential bottleneck). Data input and output to and from the kernel are fetched and assembled before accessing the memory.

Components: • Fetcher: fetch data stream from memory. Optimize for efficient data access. • Multiplier: need to be sufficiently wide and balance for fast execution. • Sum: deeply pipelined to mask the latency of the fetcher and multiplier. For real circuits with a sufficient number of internal nodes (many terms in the sum), this strategy is feasible since after the initial delay to do the first fetch and multiplica- tion, sum operation can be done in every cycle. This page intentionally left blank. Index

automatic quantum error correction, 78 quantum computer architecture, 30 quantum computer micro-architectures, 30 Bloch sphere, 5 quantum computers, 3 coherence time, 11 quantum computing, 2 coherent feedback, 25 quantum dissipation control, 69 quantum dots, 30 decoherence-free subsystem, 69 quantum error correction, 11, 12 dissipatively quasi-locally stabilizable, 77 quantum feedback control, 24 DiVincenzo’s criteria, 3 quantum filtering, 19 donor-based qubits, 6, 30 quantum gates, 6 entanglement, 1, 2 quantum input-output model, 20 quantum noise, 19 fault-tolerance threshold, 12 quantum programming language, 16 Fock space, 73 quantum stochastic differential equation, Hilbert space, 2 20 quantum Wiener process, 73 Lindblad superoperator, 74 qubit, 3 logical qubits, 12 spin qubits, 30 master equation, 18 superposition, 1, 2 measurement feedback, 24 surface code, 12 open quantum system, 73 tensor product, 2, 5 open quantum systems, 18 universal quantum gates, 9 quantum assembly language, 121 quantum circuits, 6