Simulation and Design of Clifford

Download Report

Transcript Simulation and Design of Clifford

Improved Simulation of
Stabilizer Circuits
0
0
1
0
0
1
0
0
1
0
0
0
0
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|00, |01|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
3. Phase =To see why we need
|0|0,
|1i|1
some group
0 i
theory…
P
4. Measurement of a single qubit
Pauli Matrices: Collect ‘Em All
I=
1 0
0 1
X2=Y2=Z2=I
X=
0 1
1 0
XY=iZ
XZ=-iY
Y=
0 -i
i 0
YZ=iX
ZY=-iX
Z=
1 0
0 -1
ZX=iY
YX=-iZ
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 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
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 2n+1 bits: 2 for each Pauli
matrix and 1 for the sign. So n(2n+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(2n+1) bits, store 2n(2n+1) bits
• n stabilizers S1,…,Sn, 2n+1 bits each Together
generate
• n “destabilizers” D1,…,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
D2
Stabilizers S1
S2
1
0
0
0
0
1
0
0
zij bits
0
0
1
0
0
0
0
1
ri bits
0
0
0
0
+XI
+IX
+ZI
+IZ
Hadamard on qubit a:
For all i{1,…,2n}, swap xia with zia, and set
ri := ri  xiazia
State:
Destabilizers
Stabilizers
|00
1
0
0
0
0
1
0
0
0
0
1
0
0
0
0
1
0
0
0
0
+XI
+IX
+ZI
+IZ
State:
Destabilizers
Stabilizers
|00+|10
0
0
1
0
0
1
0
0
1
0
0
0
0
0
0
1
0
0
0
0
+ZI
+IX
+XI
+IZ
CNOT from qubit a to qubit b:
For all i{1,…,2n}, set xib := xib  xia and
zia := zia  zib
State:
Destabilizers
Stabilizers
|00+|10
0
0
1
0
0
1
0
0
1
0
0
0
0
0
0
1
0
0
0
0
+ZI
+IX
+XI
+IZ
State:
Destabilizers
Stabilizers
|00+|11
0
0
1
0
0
1
1
0
1
0
0
1
0
0
0
1
0
0
0
0
+ZI
+IX
+X
X
+Z
Phase on qubit a:
For all i{1,…,2n}, set ri := ri  xiazia, then set
zia := zia  xia
State:
Destabilizers
Stabilizers
|00+|11
0
0
1
0
0
1
1
0
1
0
0
1
0
0
0
1
0
0
0
0
+ZI
+IX
+X
X
+Z
State:
Destabilizers
Stabilizers
|00+i|11
0
0
1
0
0
1
1
0
1
0
0
1
0
1
1
1
0
0
0
0
+ZI
+IY
+X
Y
+Z
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.
State:
Destabilizers
Stabilizers
|00+i|11
0
0
1
0
0
1
1
0
1
0
0
1
0
1
1
1
0
0
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
1
1
0
0
0
0
1
1
1
1
0
1
0
0
1
0
+X
Y
+IY
-ZI
+Z
Z
Novel part: How to obtain deterministic
measurement outcomes in only O(n2) steps, without
using Gaussian elimination?
Za must commute with stabilizer, so
n
c S
h 1
h
h
  Za
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
n
ci   ch  Di Sh   Di
h 1
n
c S
h 1
h
h
 Di Z a  mod 2 
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
H
H
|0
|0
Prepare
EPR pair
Alice’s part
Bob’s part
|
h1
c12
c01
h0
m0
m1
c03
c14
c42
h2
c32
h2
Seconds per measurement
1
0.9
0.8
0.7
0.6
0.5
0.4
0.3
0.2
0.1
0
β=1.2
β=1.1
β=1.0
β=0.9
β=0.8
β=0.7
β=0.6
200
Performance
of CHP
600 1000 1400 1800 2200 2600 3000
Number of qubits n
Average time needed to simulate a measurement
after applying βnlogn random unitary gates to n
qubits, on a 650MHz Pentium III with 256MB 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?
n 1
2
n
 2
k 0
n k
 1  2
1/ 2o1n2
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)…