Simulation and Design of Stabilizer Quantum Circuits ZI
Simulation and Design of Stabilizer Quantum Circuits +ZI 0 0 1 1 +IX 1 1 0 0 +X 1 0 0 0 X 0 0 0 1 +Z Scott Z Aaronson and Boriska Toth CS 252 Project December 10, 2003
Quantum Computing: New Challenges for Architecture • If you speculate on a measurement, rollback will not happen • Cache coherence protocols violate nocloning 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.
Quantum Gates We Allow 1. Controlled-NOT (CNOT): Replaces a, b by a, b a |00 , |01 , AMAZING FACT |10 |11 , |11 |10 These gates are NOT 1 1 universal—Gottesman 2. Hadamard: Applies / 2 to& single qubit 1 -1 how to Knill showed |0 (|0 +|1 )/ 2 on a(|0 -|1 )/ 2 Hsimulate them quickly|1 classical computer 1 0 we to To see why need somequbit 3. Phase: Applies single group 0 i theory… P |0 |0 , |1 i|1 4. Measurement of a single qubit
Pauli Matrices: Collect ‘Em All I= 1 0 0 1 X 2=Y 2=Z 2=I X= 0 1 1 0 XY=i. Z XZ=-i. Y Y= 0 -i i 0 YZ=i. X ZY=-i. X Z= 1 0 0 -1 ZX=i. Y YX=-i. Z 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 2 n tensor products of Pauli matrices or their opposites (where n = number of qubits) In that case, | is uniquely determined by these stabilizers
Goal: Using a classical computer, simulate an nqubit CNOT/Hadamard/Phase computer. Gottesman & Knill’s solution: Keep track of n generators of the stabilizer group Each generator uses 2 n+1 bits: 2 for each Pauli matrix and 1 for the sign. So n(2 n+1) bits total Example: |01 +|11 CNOT(1 2) |01 +|10 +XI -IZ +X Updating stabilizers takes only O(n) steps X -ZZ OUCH! But as we discovered when we tried to implement, measurement takes O(n 3) steps by Gaussian elimination
Our Faster, Easier-to-Implement Solution: “Scoreboarding” Idea: Instead of n(2 n+1) bits, store 2 n(4 n+1) bits (1) n stabilizers, 2 n+1 bits each Together generate full Pauli group (2) n “destabilizers” (3) A 2 n 2 n scoreboard, that stores how to write XIIII, …, IIIIX, ZIIII, …, IIIIZ as products of the stabilizers and destabilizers Destabilizers Stabilizers XI IX ZI IZ +XI 1 0 0 0 +IX 0 1 0 0 +ZI 0 0 1 0 +IZ 0 0 0 1 Scoreboard Initial State: |00
Our Faster, Easier-to-Implement Solution: “Scoreboarding” Idea: Instead of n(2 n+1) bits, store 2 n(4 n+1) bits (1) n stabilizers, 2 n+1 bits each Together generate full Pauli group (2) n “destabilizers” (3) A 2 n 2 n scoreboard, that stores how to write XIIII, …, IIIIX, ZIIII, …, IIIIZ as products of the stabilizers and destabilizers Destabilizers Stabilizers XI IX ZI IZ +ZI 0 0 1 0 +IX 0 1 0 0 Swap +XI 1 0 0 0 +IZ 0 0 0 1 Scoreboard Hadamard the 1 st qubit: |00 +|10
Our Faster, Easier-to-Implement Solution: “Scoreboarding” Idea: Instead of n(2 n+1) bits, store 2 n(4 n+1) bits (1) n stabilizers, 2 n+1 bits each Together generate full Pauli group (2) n “destabilizers” (3) A 2 n 2 n scoreboard, that stores how to write XIIII, …, IIIIX, ZIIII, …, IIIIZ as products of the stabilizers and destabilizers Destabilizers Stabilizers XI IX ZI IZ +ZI 0 0 1 1 +IX 1 1 0 0 +X 1 0 0 0 X 0 0 0 1 +Z Scoreboard CNOT into the 2 nd qubit: |00 +|11
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(n 2) steps. No Gaussian elimination needed! • Recently measured observables are automatically “cached”—measuring them again takes only O(n) steps.
Bob’s Qubits Alice’s Qubits CHP: An interpreter for “quantum assembly language” programs that implements our scoreboard algorithm CHP Code Example: Quantum Teleportation | |0 H H |0 |0 Prepare EPR pair Alice’s part Bob’s part | h 1 c 12 c 01 h 0 m 1 c 03 c 14 c 42 h 2 c 32 h 2
Performance of CHP 650 MHz Pentium III, 256 MB RAM s 0 0 00 2 te a g tes a g 0 500 1 es 1 at g 0 0 00 s 5000 gate Compiler optimizations made it 50% slower! • 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 gates In theory jargon: Simulating stabilizer circuits is “ Lcomplete” • Proved that any stabilizer circuit has an equivalent circuit with at most O(n 2/log n) gates, saturating the Shannon lower bound Builds 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)…
- Slides: 14