improved simulation of stabilizer circuits scott aaronson (uc berkeley) joint work with daniel...
TRANSCRIPT
Improved Simulation of Stabilizer Circuits
Scott Aaronson (UC Berkeley)
Joint work with Daniel Gottesman (Perimeter)
00
00
0 0 1 00 1 0 01 0 0 00 0 0 1
+ZI+IX+XI+IZ
Quantum Computing:New Challenges for Computer
Architecture
• Can’t speculate on a measurement and then roll back
• Cache coherence protocols violate no-cloning 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 Circuits1. Controlled-NOT
|00|00, |01|01, |10|11, |11|10
2. Hadamard |0(|0+|1)/2|1 (|0-|1)/2
H
3. Phase = |0|0, |1i|1
P
1 0
0 i
4. Measurement of a single qubit
AMAZING FACTThese gates are NOT
universal—Gottesman & Knill showed how to
simulate them quickly on a classical computer
To see why we need some group theory…
X2=Y2=Z2=I XY=iZ YZ=iX ZX=iYXZ=-iY ZY=-iX YX=-iZ
Unitary matrix U stabilizes a quantum state | if U| = |. Stabilizers of | form a group
X stabilizes |0+|1 -X stabilizes |0+|1Y stabilizes |0+i|1 -Y stabilizes |0-i|1Z stabilizes |0 -Z stabilizes |1
1 0
0 1
1 0
0 -1I = Z =
0 1
1 0X =
0 -i
i 0Y =
Pauli Matrices: Collect ‘Em All
If | can be produced from the all-0 state by just CNOT, Hadamard, and phase gates, then | is stabilized by 2n tensor products of Pauli matrices or their opposites (where n = number of qubits)
So the stabilizer group is generated by log(2n)=n such tensor products
Indeed, | is then uniquely determined by these generators, so we call | a stabilizer state
Gottesman-Knill Theorem
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 measurement takes O(n3) steps by Gaussian elimination
+XX-ZZ
|01+|11 |01+|10CNOT(12)
+XI-IZ
Updating stabilizers takes only O(n) steps
OUCH!
Our Faster, Easier-To-Implement Tableau Algorithm
Idea: Instead of n(2n+1) bits, store 2n(2n+1) bits
• n stabilizers S1,…,Sn, 2n+1 bits each
• n “destabilizers” D1,…,Dn
Together generate full Pauli group
Maintain the following invariants:
• Di’s commute with each other
• Si anticommutes with Di
• Si commutes with Dj for ij
00
00
1 0 0 00 1 0 00 0 1 00 0 0 1
Destabilizers
Stabilizers
State: |00
+XI+IX+ZI+IZ
xij bits zij bits ri bits
I: xij=0, zij=0 + phase: ri=0X: xij=1, zij=0 - phase: ri=1Y: xij=1, zij=1Z: xij=0, zij=1
S1
S2
D1
D2
00
00
1 0 0 00 1 0 00 0 1 00 0 0 1
Destabilizers
Stabilizers
State: |00
+XI+IX+ZI+IZ
Hadamard on qubit a:
For all i{1,…,2n}, swap xia with zia, and setri := ri xiazia
00
00
0 0 1 00 1 0 01 0 0 00 0 0 1
Destabilizers
Stabilizers
State: |00+|10
+ZI+IX+XI+IZ
00
00
0 0 1 00 1 0 01 0 0 00 0 0 1
Destabilizers
Stabilizers
State: |00+|10
+ZI+IX+XI+IZ
CNOT from qubit a to qubit b:
For all i{1,…,2n}, set xib := xib xia andzia := zia zib
00
00
0 0 1 00 1 0 01 1 0 00 0 1 1
Destabilizers
Stabilizers
State: |00+|11
+ZI+IX+XX+ZZ
00
00
0 0 1 00 1 0 01 1 0 00 0 1 1
Destabilizers
Stabilizers
State: |00+|11
+ZI+IX+XX+ZZ
Phase on qubit a:
For all i{1,…,2n}, set ri := ri xiazia, then setzia := zia xia
00
00
0 0 1 00 1 0 11 1 0 10 0 1 1
Destabilizers
Stabilizers
State: |00+i|11
+ZI+IY+XY+ZZ
00
00
0 0 1 00 1 0 11 1 0 10 0 1 1
Destabilizers
Stabilizers
State: |00+i|11
+ZI+IY+XY+ZZ
Measurement of qubit a:
If xia=0 for all i{n+1,…,2n}, then outcome will be deterministic. Otherwise 0 with ½ probability and 1 with ½ probability.
10
00
1 1 0 10 1 0 10 0 1 00 0 1 1
Destabilizers
Stabilizers
State: |11
+XY+IY-ZI+ZZ
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
Novel part: How to obtain deterministic measurement outcomes in only O(n2) steps, without using Gaussian elimination?
Za must commute with stabilizer, so
for a unique choice of c1,…,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
1
n
h h ah
c S Z
1 1
mod2n n
i h i h i h h i ah h
c c D S D c S D Z
CHP: An interpreter for “quantum assembly language” programs that implements our
scoreboard algorithm
Example: Quantum Teleportation
H
H
H H
|
|0
|0
|0
|0
|
Alic
e’s
Qu
bit
sB
ob
’s Q
ub
its
Prepare EPR pair
Alice’s part Bob’s part
h 1c 1 2c 0 1h 0m 0m 1c 0 3c 1 4c 4 2h 2c 3 2h 2
CHP Code
Performance of CHP
Average time needed to simulate a measurement after applying βnlogn random unitary gates to n qubits, on a 650MHz Pentium III with 256MB RAM
0
0.1
0.2
0.3
0.4
0.5
0.6
0.7
0.8
0.9
1
200 600 1000 1400 1800 2200 2600 3000
Number of qubits n
Se
co
nd
s p
er
me
as
ure
me
nt
β=1.2
β=1.1
β=1.0
β=0.9
β=0.8
β=0.7
β=0.6
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
How many n-qubit stabilizer states are there?
Fun With Stabilizers
211/ 2 1
0
2 2 1 2n
o nn n k
k
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)…