140 likes | 262 Views
Simulation and Design of Stabilizer Quantum Circuits. +ZI +IX. 0 0 1 1 1 1 0 0. . +XX +ZZ. 1 0 0 0 0 0 0 1. Scott Aaronson and Boriska Toth CS252 Project December 10, 2003. Quantum Computing: New Challenges for Architecture.
E N D
Simulation and Design of Stabilizer Quantum Circuits +ZI+IX 0 0 1 11 1 0 0 +XX+ZZ 1 0 0 00 0 0 1 Scott Aaronson and Boriska Toth CS252 Project December 10, 2003
Quantum Computing: New Challenges for Architecture • If you speculate on a measurement, rollback will not happen • Cache coherence protocols violate no-cloning theorem • How do you design and debug circuits that you can’t even simulate efficiently?
Our Approach: Start With A Subset of Quantum Computations • Stabilizers (Gottesman 1996): Beautiful formalism that captures much (but not all) of quantum weirdness • Quantum linear error-correcting codes • Teleportation • Dense quantum coding • GHZ (Greenberger-Horne-Zeilinger) paradox • What We Did:Invented new algorithms for simulating and designing quantum circuits described by the stabilizer formalism. Implemented and tested an efficient simulator with possible practical value.
AMAZING FACTThese gates are NOT universal—Gottesman & Knill showed how to simulate them quickly on a classical computerTo see why we need some group theory… Quantum Gates We Allow 1. Controlled-NOT (CNOT): Replaces a,b by a,ba |00|00, |01|01, |10|11, |11|10 1 1 1 -1 2. Hadamard: Applies /2 to single qubit |0(|0+|1)/2|1 (|0-|1)/2 H 1 0 0 i 3. Phase: Applies to single qubit |0|0, |1i|1 P 4. Measurement of a single qubit
Pauli Matrices: Collect ‘Em All 1 0 0 1 0 1 1 0 0 -i i 0 1 0 0 -1 I = X = Y = Z = X2=Y2=Z2=I XY=iZ YZ=iX ZX=iY XZ=-iY ZY=-iX YX=-iZ Unitary matrix U stabilizes a quantum state | if U| = |. Stabilizers of | form an abelian group Theorem:| can be produced from the all-0 state by just CNOT, Hadamard, and phase gates, iff | is stabilized by 2n tensor products of Pauli matrices or their opposites (where n = number of qubits)In that case, | is uniquely determined by these stabilizers
OUCH! Goal: Using a classical computer, simulate an n-qubit CNOT/Hadamard/Phase computer. Gottesman & Knill’s solution: Keep track of n generators of the stabilizer groupEach generator uses 2n+1 bits: 2 for each Pauli matrix and 1 for the sign. So n(2n+1) bits total Example: But as we discovered when we tried to implement, measurement takes O(n3) steps by Gaussian elimination CNOT(12) |01+|11 |01+|10 +XI-IZ +XX-ZZ Updating stabilizers takes only O(n) steps
Our Faster, Easier-to-Implement Solution: “Scoreboarding” • Idea: Instead of n(2n+1) bits, store 2n(4n+1) bits • n stabilizers, 2n+1 bits each • n “destabilizers” • A 2n2n scoreboard, that stores how to write XIIII,…,IIIIX, ZIIII,…,IIIIZ as products of the stabilizers and destabilizers Together generate full Pauli group XI IX ZI IZ +XI+IX 1 0 0 00 1 0 0 Initial State:|00 Destabilizers +ZI+IZ 0 0 1 00 0 0 1 Stabilizers Scoreboard
Our Faster, Easier-to-Implement Solution: “Scoreboarding” • Idea: Instead of n(2n+1) bits, store 2n(4n+1) bits • n stabilizers, 2n+1 bits each • n “destabilizers” • A 2n2n scoreboard, that stores how to write XIIII,…,IIIIX, ZIIII,…,IIIIZ as products of the stabilizers and destabilizers Together generate full Pauli group XI IX ZI IZ +ZI+IX 0 0 1 00 1 0 0 Hadamard the 1st qubit:|00+|10 Destabilizers Swap +XI+IZ 1 0 0 00 0 0 1 Stabilizers Scoreboard
Our Faster, Easier-to-Implement Solution: “Scoreboarding” • Idea: Instead of n(2n+1) bits, store 2n(4n+1) bits • n stabilizers, 2n+1 bits each • n “destabilizers” • A 2n2n scoreboard, that stores how to write XIIII,…,IIIIX, ZIIII,…,IIIIZ as products of the stabilizers and destabilizers Together generate full Pauli group XI IX ZI IZ +ZI+IX 0 0 1 11 1 0 0 CNOT into the 2nd qubit:|00+|11 Destabilizers +XX+ZZ 1 0 0 00 0 0 1 Stabilizers Scoreboard
Advantages • Because we force each instruction to “tell the scoreboard” what it did, measuring a state (and updating it after the measurement) can be done in only O(n2) steps.No Gaussian elimination needed! • Recently measured observables are automatically “cached”—measuring them again takes only O(n) steps.
CHP Code Example: Quantum Teleportation | h 1 c 1 2 c 0 1 h 0 m 0 m 1 c 0 3 c 1 4 c 4 2 h 2 c 3 2 h 2 H Alice’s Qubits |0 H |0 H H | |0 Bob’s Qubits |0 Prepare EPR pair Alice’s part Bob’s part CHP: An interpreter for “quantum assembly language” programs that implements our scoreboard algorithm
Performance of CHP 650MHz Pentium III, 256MB RAM Compiler optimizations made it 50% slower! 20000 gates 15000 gates 10000 gates 5000 gates • Randomly-generated circuits with equal mix of CNOT, Hadamard, phase, and measurement gates • Updating the state after measurements with random outcomes dominates the running time. Amdahl’s Law suggests this is what we should optimize—and we have ideas!
Other Stuff We Did • Proved that any stabilizer quantum circuit can be simulated using only CNOT gatesIn theory jargon: Simulating stabilizer circuits is “L-complete” • Proved that any stabilizer circuit has an equivalent circuit with at most O(n2/log n) gates, saturating the Shannon lower boundBuilds on work by an architecture group at U. Michigan—K. Patel, I. Markov, and J. Hayes (quant-ph/0302002)—who showed this for CNOT circuits
Future Directions • Measurements (at least some) in O(n) steps? • Apply CHP to quantum error-correction, studying conjectures about entanglement in many-qubit systems… • Efficient minimization of stabilizer circuits? • Superlinear lower bounds on stabilizer circuit size? • Other quantum computations with efficient classical simulations: bounded entanglement (Vidal 2003), “matchgates” (Valiant 2001)…