Improved Simulation of Stabilizer Circuits 0 0 1
Improved Simulation of Stabilizer Circuits 0 0 1 0 0 0 0 +ZI +IX +XI +IZ Scott Aaronson (UC Berkeley) Joint work with Daniel Gottesman (Perimeter)
Quantum Computing: New Challenges for Computer Architecture • Can’t speculate on a measurement and then roll back • Cache coherence protocols violate nocloning theorem • How do you design and debug circuits that you can’t even simulate efficiently with existing tools?
Our Approach: Start With A Subset of Quantum Computations Stabilizers (Gottesman 1996): Beautiful formalism that captures much (but not all) of quantum weirdness – Linear error-correcting codes – Teleportation – Dense quantum coding – GHZ (Greenberger-Horne-Zeilinger) paradox
Gates Allowed In Stabilizer Circuits 1. Controlled-NOT |00 , |01 , |10 |11 , |11 |10 AMAZING FACT These gates are NOT 2. Hadamarduniversal—Gottesman |0 (|0 +|1 )/ 2 & |1 (|0 -|1 )/ 2 Knill showed how to H simulate them quickly on a 1 classical 0 computer |0 |0 , |1 i|1 3. Phase = To see why we need some 0 i group theory… P 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 a group X stabilizes |0 +|1 Y stabilizes |0 +i|1 Z stabilizes |0 -X stabilizes |0 +|1 -Y stabilizes |0 -i|1 -Z stabilizes |1
Gottesman-Knill Theorem If | can be produced from the all-0 state by just CNOT, Hadamard, and phase gates, then | is stabilized by 2 n tensor products of Pauli matrices or their opposites (where n = number of qubits) So the stabilizer group is generated by log(2 n)=n such tensor products Indeed, | is then uniquely determined by these generators, so we call | a stabilizer state
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 +XI -IZ CNOT(1 2) |01 +|10 +X Updating stabilizers takes only O(n) steps X -ZZ OUCH! 3 But measurement takes O(n ) steps by Gaussian elimination
Our Faster, Easier-To-Implement Tableau Algorithm Idea: Instead of n(2 n+1) bits, store 2 n(2 n+1) bits • n stabilizers S 1, …, Sn, 2 n+1 bits each Together generate • n “destabilizers” D 1, …, Dn full Pauli group Maintain the following invariants: • Di’s commute with each other • Si anticommutes with Di • Si commutes with Dj for i j
I: xij=0, zij=0 X: xij=1, zij=0 Y: xij=1, zij=1 Z: xij=0, zij=1 State: + phase: ri=0 - phase: ri=1 |00 xij bits D Destabilizers 1 D 2 Stabilizers S 1 S 2 1 0 0 0 0 1 0 zij bits ri bits 0 0 0 1 0 0 +XI +IX +ZI +IZ
Hadamard on qubit a: For all i {1, …, 2 n}, swap xia with zia, and set ri : = ri xiazia State: Destabilizers Stabilizers |00 1 0 0 0 0 +XI +IX +ZI +IZ
State: Destabilizers Stabilizers |00 +|10 0 0 1 0 0 0 0 +ZI +IX +XI +IZ
CNOT from qubit a to qubit b: For all i {1, …, 2 n}, set xib : = xib xia and zia : = zia zib State: Destabilizers Stabilizers |00 +|10 0 0 1 0 0 0 0 +ZI +IX +XI +IZ
State: Destabilizers Stabilizers |00 +|11 0 0 1 0 0 0 0 +ZI +IX +X X +Z
Phase on qubit a: For all i {1, …, 2 n}, set ri : = ri xiazia, then set zia : = zia xia State: Destabilizers Stabilizers |00 +|11 0 0 1 0 0 0 0 +ZI +IX +X X +Z
State: Destabilizers Stabilizers |00 +i|11 0 0 1 1 1 0 0 +ZI +IY +X Y +Z
Measurement of qubit a: If xia=0 for all i {n+1, …, 2 n}, then outcome will be deterministic. Otherwise 0 with ½ probability and 1 with ½ probability. State: Destabilizers Stabilizers |00 +i|11 0 0 1 1 1 0 0 +ZI +IY +X Y +Z
Random outcome: Pick a stabilizer Si such that xia=1 and set Di: =Si. Then set Si: =Za and output 0 with ½ probability, and set Si: =-Za and output with ½ probability, where Za is Z on ath qubit and I elsewhere. Finally, left-multiply whatever rows don’t commute with Si by Di State: Destabilizers Stabilizers |11 1 0 0 0 0 1 1 0 1 0 +X Y +IY -ZI +Z Z
Novel part: How to obtain deterministic measurement outcomes in only O(n 2) steps, without using Gaussian elimination? Za must commute with stabilizer, so for a unique choice of c 1, …, cn {0, 1}. If we can determine ci’s, then by summing corresponding Sh’s we learn sign of Za. Now So just have to check if Di commutes with Za, or equivalently if xia=1
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 Average time needed to simulate a measurement after applying βnlogn random unitary gates to n qubits, on a 650 MHz Pentium III with 256 MB RAM
Simulating Stabilizer Circuits is L-Complete L = class of problems reducible in logarithmic space to evaluating a circuit of CNOT gates Natural, well-studied subclass of P Conjectured that L P. So our result means stabilizer circuits probably aren’t even universal for classical computation! Simulating L with stabilizer circuits: Obvious Simulating stabilizer circuits with L : Harder
Fun With Stabilizers How many n-qubit stabilizer states are there? Can we represent mixed states in the stabilizer formalism? YES Can we efficiently compute the inner product between two stabilizer states? YES
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: 23