Quantum Information for Developers 2018 was a quantum computing summer school and hackathon, which took place at ETH Zurich, 11-14 September 2018, and counted with 130 participants.
Video recordings of lectures are available here.
QuID brings together key academia and industry players in Zurich, to promote synergies and prepare concerted efforts towards quantum computing research in the region.
- Students: undergrad and masters students in physics, computer science and related fields, who may or not have taken courses on quantum information and quantum computing.
- Academics: PhD students, postdocs and faculty in physics, computer science or related fields, who would like to learn more about quantum computing.
- Software developers: working in industry, and who are curious about the quantum buzz.
The event consisted of two days of school followed by two days of hackathon.
- On the two school days, we will have two tracks: one for participants who are new to quantum computing (basics track), and one for those who are already familiar with basic quantum formalism and algorithms (advanced track).
- On the two hackathon days, we will start with tutorials on each platform, followed by free programming with supervision through afternoon.
The platforms covered are Microsoft’s Q#, ProjectQ, Google’s Cirq and IBM’s Qiskit.
- Introduction to quantum computation – Elisa Bäumer, ETH Zurich (basics track, 2h, lecture notes and cheatsheet)
From bits to qubits, quantum gates and circuits, oracles and complexity, Deutsch-Josza algorithm, misconceptions about quantum computing.
- Quantum algorithms – Chris Cade, University of Bristol (basics track, 2h, slides)
Grover’s algorithm, quantum Fourier transform, period finding, matrix inversion. See also Ashley Montanaro’s lecture notes.
- Quantum networks and security – Yfke Dulek, CWI, University of Amsterdam (advanced track, 2h, slides)
Encryption and authentication, secret sharing, delegated quantum computation.
- Introduction to quantum complexity theory – Adam Bouland, UC Berkeley (advanced track, 2h)Computational and query complexity.
- Programming quantum games – James Wootton, IBM Research (joint track, 1h, slides)
Just because quantum computers can be used for fancy things, doesn’t mean we have to. We can have fun with them too! I’ll talk about games and other fun projects made with quantum computers. I’ll discuss how they can serve as examples of how to program, accessible ways to understand the pros and cons of current hardware, and break barriers to entry for a field that many assume is ‘too hard’.
- Principles for quantum algorithms – Johannes Bausch, University of Cambridge (joint track, 2h, slides)
Backtracking algorithms, quantum random walks, amplitude amplification.
- Near-term quantum computing – Scott Aaronson, University of Texas (joint track, 2h, slides)
Theoretical basis of near-term quantum supremacy experiments.
- Simulating quantum computers – Matthias Troyer, ETH Zurich and Microsoft (joint track, 1h)
Hackathon & tutorials
Install all platforms at once with the docker image prepared by QuID volunteer Michal Sudwoj. Cheatsheet for quick commands on all platforms, also by Michal.
- Qiskit – Stefan Wörner, Pauline Ollitrault and Christa Zoufal, IBM Research
Introduction to Qiskit with this this tutorial, which provide the foundations to program quantum computers and a library of quantum algorithms e.g. for chemistry, optimization, and machine learning. To run these algorithms, follow the install guides for Qiskit Terra and Qiskit Aqua. Use the instructions under configuring your system to access the real quantum hardware or use binder to try without installations.
- Q# – Chris Granade and Bettina Heim, Microsoft (slides)
To prepare for the hackathon, you may download the install guide and work through the online tutorials.
- Cirq – David Yonge-Mallo, Google
Cirq is a Python library for writing, manipulating, and optimizing quantum circuits and running them against quantum computers and simulators. You can install Cirq here.
- ProjectQ – Damian Steiger and Thomas Häner, ETH Zurich
To prepare for the hackathon, you should install the software. You may go over the online tutorials, but this is not a requirement, as they will be covered in the morning session. Examples here.
- Forest – Keri McKiernan, Rigetti
Forest is a simple yet powerful quantum developer environment, designed to accelerate your research in quantum computing and its applications. To prepare for the hackathon, you should install PyQuil.