Quantum Circuit Visualization Bradley S. Rubin, Ph.D. Associate Professor Graduate Programs in Software University of St. Thomas St. Paul, MN bsrubin@stthomas.edu
In The Beginning... 0s and 1s (bits) It was all a simple matter of (conventional computing)
Then In 1981... Qubits Richard Feynman thought about a computer built with quantum particles Qubits (quantum computing)
( ) The Qubit α β α | 0 〉+ β | 1〉 = Physicist Computer Scientist α, β ∈ Complex | α |2 + | β |2 = 1
Occupy multiple states simultaneously Qubit Power Superposition Occupy multiple states simultaneously Entanglement Correlation amongst states
Can represent ONE of 23=8 states Example: 3 Bits Can represent ONE of 23=8 states 000 001 010 011 100 101 110 111
Can represent ALL 23=8 states SIMULTANEOUSLY Example: 3 Qubits Can represent ALL 23=8 states SIMULTANEOUSLY 000 001 010 011 100 101 110 111 and 100 qubits → 1030 states
The Catch Even though n qubits can represent a superposition of 2n states... When we measure them, we only read one state, and all the others disappear... The probability of reading a state is given by the norm of the qubit’s complex coefficient, squared
The Big Deal (Theory) Shor’s Quantum Factoring Algorithm (1994) Exponential Speedup in Integer Factoring Breaks the RSA cryptosystem (and most others) Grover’s Quantum Search Algorithm (1996) Quadratic Speedup in Unordered Search And many others... but only a narrow subset of algorithms benefit from quantum computation + Feynman’s dream of quantum quantum simulation
The Little Deal (Practice) Currently, quantum information theory FAR outpaces physical implementation The best Shor hardware implementation (2009): 15=3x5 Quantum states are fragile (decoherence) → Quantum Error Correction
Learning Quantum Computing Physicists must learn some computer science Computer scientists must learn some quantum mechanics Both must learn a new paradigm: states, operators/gates, circuit diagrams, algorithms
How can we gain some intuition Circuits Familiar How can we gain some intuition about how this works?
Leverage Mathematica Color States Dash Entangled States Draw Circuit Diagrams Show Intermediate States Compute Output from Input MANIPULATE INPUT Some Examples...
1-Qubit Gates
Bell States and Swapping
Deutsch’s Algorithm Experiment using colored balls to represent qubit state
Quantum Teleportation
Grover Search
Shor Factoring
Why Explore Quantum Computing? Rethink algorithms/computational complexity Probe the foundations of quantum mechanics Dream about quantum quantum simulators RETHINK WHAT IT MEANS TO COMPUTE (And maybe, even build one someday) Plus, this is a great problem domain for building Mathematica skill!