

Quantum Computing
Hacking Nature's Computer

About Presenter James Weaver
Java Champion, JavaOne Rockstar, plays well with others, etc :-)


Author of several Java/JavaFX/RaspPi books

Developer Advocate & International Speaker for Pivotal
Mission: "Transform how the world builds software"







Mission: "Transform how the world builds software"



You are cordially invited to ...

Concepts we'll address today
Introduction to quantum computing
Axioms of quantum mechanics (with cats)
- Superposition principle
- Measurement
- Unitary evolution
Quantum mechanical demo (with photons)
Abstracting cats and photons with qubits
Quantum computing algorithms
Quantum entanglement
More algorithms
Supplementary resources

Deutsch's algorithm (1985)
Literally the Hello World of quantum algorithms


Deutsch's algorithm
Determine if function is constant or balanced
Input a | Constant f(a) | Constant f(a) | Balanced f(a) | Balanced f(a) |
---|---|---|---|---|
0 | 0 | 1 | 0 | 1 |
1 | 0 | 1 | 1 | 0 |


Deutsch's algorithm
How many queries of the oracle to solve?
Classical:
This oracle requires 2 queries classically
Quantum:
We create a superposition of inputs to the oracle for constructive/destructive interference.

Querying the oracle classically

example: f (0) = 0 and f (1) = 1 balanced

Quantum parallelism
what is it, really?


Double-slit experiment
constructive and destructive interference

Text

Choreographing interference
to increase the chance of getting the right answer
Text

Excerpts from “THE TALK” by Scott Aaronson and Zach Weinersmith


Querying the oracle quantumly
example: f (0) = 0 and f (1) = 1 balanced

Lecture 3: One Qubit, Two Qubit by Dave Bacon, University of Washington (Deutsch slightly modified)


Deutsch (slightly modified)
Why constant vs. balance require only one query
Inp | Con |
---|---|
0 | 0 |
1 | 0 |
Inp | Con |
---|---|
0 | 1 |
1 | 1 |
Inp | Bal |
---|---|
0 | 0 |
1 | 1 |
Inp | Bal |
---|---|
0 | 1 |
1 | 0 |





Deutsch's algorithm
with oracle having constant function
Leverages phase-kickback from the bottom wire to choreograph constructive and destructive interference
Expected result is 100% probability of measuring



Deutsch's algorithm
with oracle having balanced function
Expected result is 0% probability of measuring


Leverages phase-kickback from the bottom wire to choreograph constructive and destructive interference

Deutsch-Jozsa algorithm
exponentially faster than classical


Deutsch-Jozsa algorithm, 1992
Determine if function is constant or balanced
Input | Constant | Constant | Balanced | Balanced |
---|---|---|---|---|
000 | 0 | 1 | 0 | 1 |
001 | 0 | 1 | 1 | 0 |
010 | 0 | 1 | 0 | 1 |
011 | 0 | 1 | 1 | 0 |
100 | 0 | 1 | 0 | 1 |
101 | 0 | 1 | 1 | 0 |
110 | 0 | 1 | 0 | 1 |
111 | 0 | 1 | 1 | 0 |
Results when querying our example oracle

Deutsch-Jozsa algorithm
How many invocations of the oracle to solve?
Classical:
Our oracle (black box) requires 5 invocations classically
Quantum:
We create a superposition of inputs to the oracle, and use the phase-kickback trick, for constructive/destructive interference. See:
see also: Wikipedia Deutsch-Jozsa Decoherence section
(Exponentially faster!)

Deutsch-Jozsa algorithm
with oracle having constant function


Deutsch-Jozsa algorithm
example oracle with constant function


Deutsch-Jozsa algorithm
with oracle having balanced function


Deutsch-Jozsa algorithm
example oracle with balanced function


Deutsch-Jozsa implemented in Quil



Deutsch-Jozsa implemented in Quil



Concepts we'll address today
Introduction to quantum computing
Axioms of quantum mechanics (with cats)
- Superposition principle
- Measurement
- Unitary evolution
Quantum mechanical demo (with photons)
Abstracting cats and photons with qubits
Quantum computing algorithms
Quantum entanglement
More algorithms
Supplementary resources

Quantum entanglement
Alice and Bob's long running relationship


Quantum entanglement

basic circuit

Quantum teleportation

and the no cloning theorem

Superdense coding

example circuit

Bell inequality test
(CHSH game)


Concepts we'll address today
Introduction to quantum computing
Axioms of quantum mechanics (with cats)
- Superposition principle
- Measurement
- Unitary evolution
Quantum mechanical demo (with photons)
Abstracting cats and photons with qubits
Quantum computing algorithms
Quantum entanglement
More algorithms
Supplementary resources

Bernstein-Vazirani algorithm
basic circuit


Simon's algorithm
the quantum portion


Shor's algorithm


Period finding
using Quantum Fourier Transform


Grover's search
finding a needle in a haystack


Concepts we'll address today
Introduction to quantum computing
Axioms of quantum mechanics (with cats)
- Superposition principle
- Measurement
- Unitary evolution
Quantum mechanical demo (with photons)
Abstracting cats and photons with qubits
Quantum computing algorithms
Quantum entanglement
More algorithms
Supplementary resources

Complex numbers

aren't complicated

Complex numbers encode
amplitude and phase

Roots of unity
are useful for Shor


Matrices
think two-dimensional arrays


Vector spaces
a home for vectors and scalars


Classic textbook on Quantum Computing

by "Mike & Ike"
By Source (WP:NFCC#4), Fair use,



Quantum Computing

Quantum Computing Exposed: Hacking Nature's Computer
By javafxpert
Quantum Computing Exposed: Hacking Nature's Computer
Part two of a gentle introduction to quantum computing
- 2,813