- a quantum computer operates directly using the unintuitive laws of quantum physics
- quantum computing is a more powerful model of computation than classical computing*
- if we could build a moderately-sized quantum computer, it would radically change technology: Shor's algorithm, quantum simulations

- a quantum system can be in a “superposition” of two or more of its allowed states
- in general, we can only predict probabilities of what might happen
- this is *NOT* a failure in our description -- it is an inherent aspect of quantum physics

- detection/measurement irreversibly changes the state of a system

- possible states
- measurement
- operations

(in a nutshell)

- A four bit machine can be in one of 16 different states.
- A 300 bit machine can be in one of 2,037,035,976,334,486,086,268,445,688,409,378,161,051,468,393,665,936,250,636,140,449,354,381,299,763,336,706,183,397,376 possible states.

(more than the number of atoms in the observable universe!)

- With one bit, the only nontrivial operation is “NOT”

(0 → 1, 1 → 0) - A computer works by controlling bits with other bits;

e.g. “CCNOT”

(if bits A and B are both 1, perform a NOT operation on bit C)

- a 300 qubit machine can be in a superposition of all 2,037,035,976,334,486,086,268,445,688,409,378,161,051,468,393,665,936,250,636,140,449,354,381,299,763,336,706,183,397,376 possible states.
- as such, there's no possible way to simulate a 300-qubit machine in the universe.

- measurement of 300 qubits → 300 classical bits of classical information
- but yet, it takes incredible computing power to simulate this on a classical computer
- the design of quantum algorithms involves coming up with tricks for doing useful computations despite this seeming limitation

“Bloch Sphere” by “Smite-Meister.” Licensed CC-BY-SA from Wikipedia.

- the only irreversible step is “measurement”
- quantum no clone theorem

- no clone → information can be lost to anything it interacts with
- low temperatures typically, or a degree of freedom that doesn't interact easily

- well-defined qubits
- reliable state preparation
- low decoherence
- accurate operations
- strong measurements

- ion traps
- superconducting qubits
- spin-defects in diamond and other materials
- quantum dots
- toplogical quantum computing

factoring 21 = 3 * 7

- quantum teleportation
- quantum cryptography
- quantum error correction

- a quantum computer operates directly using the unintuitive laws of quantum physics
- quantum computing is a more powerful model of computation than classical computing*
- if we could build a moderately-sized quantum computer, it would radically change technology: Shor's algorithm, quantum simulations

#### John Preskill's quantum computation lecture notes

available for free (gratis) online#### An Introduction to Quantum Computing

(Amazon | WorldCat) by Phillip Kaye, Raymond Laflamme, and Michele Mosca#### Quantum Computation and Quantum Information

(Amazon | WorldCat) by Michael A. Nielsen and Isaac L. Chuang (a thick, comprehensive book)

Note: the language of quantum mechanics is linear algebra (matrices) over the complex numbers

- jsqis for quantum simulations
- RaphaĆ«l for 2D vector graphics
- deck.js and deck.events.js for presentation-building
- jQuery and Modernizr as a foundation
- mooz's fork of js2-mode for keeping me sane

- Andrew Cholakian for suggesting that I present this as part of LA Hacker News
- Matthew Fisher, my academic advisor, for telling me to “have fun with it.”
- the National Science Foundation for funding my research