# Introduction to quantum computing and quantum annealing

## May 9 - May 14, 2019

Olivia Di Matteo

April 27, 2019

**Logistics**

Lectures will take place from 12:00 - 1:30pm in the TRIUMF auditorium on May 9, 10, 13, and 14.

**Prerequisites**

Basic quantum mechanics and linear algebra (superposition of states, measurement, spin 1/2 systems, Hamiltonians,eigenvalues/eigenvectors). Experience with Python is helpful for following the demonstrations and playing with the software on your own. No quantum computing experience is necessary.

**May 9th/10th: gate model quantum computing**

**Day 1: Theory**

- Motivation behind quantum computing
- Mathematical representation of qubits
- Unitary operations; common quantum gates and universal gate sets; quantum circuits
- Measurements; measurement bases; projectors
- Visualizing qubits on the Bloch sphere
- Multi-qubit systems; tensor products and entanglement
- Applications: superdense coding, quantum teleportation, Deutsch's algorithm

**Day 2: Hardware and applications**

- Overview of major classes of algorithms
- Visual walk-through of Grover's search algorithm
- Computational speedups and quantum advantage
- How do I build a qubit? How do I manipulate it?
- Curernt state of noisy intermediate-scale quantum devices (NISQ devices): qubit hardware graphs, error
- rates, technical challenges
- Full-stack quantum computing'; see the work ow of solving a problem on a quantum computer
- Overview of Hamiltonian simulation
- HEP application: Calculating neutrino oscillation probabilities on a quantum processor
- HEP application: Finding ground states of molecules with the variational quantum eigensolver

**May 13th/14th: quantum annealing**

**Day 1: Theory**

- The adiabatic theorem
- Equivalence of adiabatic and gate-model quantum computing
- Simulated annealing and the Ising model; transverse-eld Ising model
- Quadratic unconstrained binary optimization problems (QUBOs)
- Equivalence of QUBOs and Ising Hamiltonians
- D-Wave quantum annealers: what are they? How do they work?
- Formulation of problems as QUBOs; what kinds of problems have people solved using D-Wave?

**Day 2: Hardware and applications**

- Brief overview of superconducting qubit hardware
- D-Wave topology; the chimera and Pegasus qubit hardware graphs
- Technological limitations: noise, precision restrictions, problem size and graph minor embeddings
- Application Solving a simple graph theory problem (hopefully using the actual quantum processor!)
- Graph embedding; how do I couple two qubits that aren't directly connected?
- HEP application: classifying Higgs decay signals
- HEP application: particle tracking with LHC data
- Brief survey of ideas in quantum machine learning

**Software demonstrations**

I will be doing demonstrations live, but will also distribute the code and Jupyter notebooks so you can follow along

or play with it afterwards. You will need to install:

- Python 3 (I recommend the Anaconda distribution since it comes pre-installed with Jupyter and the scientic
- packages you will need),
- Qiskit, IBM's software platform, installable from their Github page or via pip,
- D-Wave's Ocean SDK, installable via pip with instructions here

I recommend doing the installation before the lectures start. If at any point you're stuck, feel free to message me (odimatteo@triumf.ca) or even better, drop by my oce (MOB 284) with your laptop and I will help.