QECC Tutorial Long
Transcript of QECC Tutorial Long
-
7/30/2019 QECC Tutorial Long
1/90
Quantum Error Correction
Daniel Gottesman
Perimeter Institute
-
7/30/2019 QECC Tutorial Long
2/90
TheClassical
and
QuantumWorlds
-
7/30/2019 QECC Tutorial Long
3/90
Quantum Errors
A general quantum error is a superoperator:
Ak Ak
Examples of single-qubit errors:
Bit Flip X: X0 = 1, X1 = 0
Phase Flip Z: Z0 = 0, Z1 = -1Complete dephasing: ( + ZZ)/2(decoherence)
Rotation: R0 = 0, R1 = ei1
-
7/30/2019 QECC Tutorial Long
4/90
Classical Repetition Code
To correct a single bit-flip error for classicaldata, we can use the repetition code:
0 0001 111
If there is a single bit flip error, we can
correct the state by choosing the majority ofthe three bits, e.g. 010 0. When errorsare rare, one error is more likely than two.
-
7/30/2019 QECC Tutorial Long
5/90
No-Cloning Theorem
There is no device that will copy an unknownquantum state:
0 00, 1 11
0 + 100 + 11(0 + 1)(0 + 1)
By linearity,
(Related to Heisenberg Uncertainty Principle)
-
7/30/2019 QECC Tutorial Long
6/90
Barriers to Quantum Error
Correction1. Measurement of error destroys
superpositions.
2. No-cloning theorem prevents repetition.
3. Must correct multiple types of errors (e.g., bitflip and phase errors).
4. How can we correct continuous errors anddecoherence?
-
7/30/2019 QECC Tutorial Long
7/90
Measurement Destroys
Superpositions?Let us apply the classical repetition code to aquantum state to try to correct a single bit flip error:
0 + 1000 + 111
Bit flip error (X) on 2nd qubit:
010 + 101
2nd qubit is now different from 1st and 3rd. Wewish to measure that it is different without
finding its actual value.
-
7/30/2019 QECC Tutorial Long
8/90
Measure the Error, Not the Data
00
Use this circuit:
Encoded
state
Errorsyndrome
1st bit of error syndrome says whether the first twobits of the state are the same or different.
2nd bit of error syndrome says whether the second
two bits of the state are the same or different.
Ancillaqubits
-
7/30/2019 QECC Tutorial Long
9/90
Measure the Error, Not the Data
With the information from the error syndrome,we can determine whether there is an error andwhere it is:
E.g., 010 + 101 has syndrome 11, whichmeans the second bit is different. Correct it witha X operation on the second qubit. Note that the
syndrome does not depend on and .
We have learned about the error without learningabout the data, so superpositions are preserved!
-
7/30/2019 QECC Tutorial Long
10/90
Redundancy, Not Repetition
This encoding does not violate the no-cloningtheorem:
0 + 1000 + 111
(0 + 1)3
We have repeated the state only in the
computational basis; superposition states arespread out (redundant encoding), but notrepeated (which would violate no-cloning).
-
7/30/2019 QECC Tutorial Long
11/90
Update on the Problems
1. Measurement of error destroyssuperpositions.
2. No-cloning theorem prevents repetition.
3. Must correct multiple types of errors (e.g., bitflip and phase errors).
4. How can we correct continuous errors anddecoherence?
-
7/30/2019 QECC Tutorial Long
12/90
Correcting Just Phase Errors
Hadamard transform H exchanges bit flipand phase errors:
H (0 + 1) = + + -
X+ = +, X- = -- (acts like phase flip)
Z+ = -, Z- = + (acts like bit flip)
Repetition code corrects a bit flip errorRepetition code in Hadamardbasis corrects a phase error.
+ + -+++ + ---
-
7/30/2019 QECC Tutorial Long
13/90
Nine-Qubit Code
To correct both bit flips and phase flips, use bothcodes at once:
0 + 1
(000 + 111)3 + (000 - 111)3
Repetition 000, 111 corrects a bit flip error,
repetition of phase +++, --- corrects a phase errorActually, this code corrects a bit flip and aphase, so it also corrects a Y error:
Y = iXZ: Y0 = i1, Y1 = -i0(global phase
irrelevant)
-
7/30/2019 QECC Tutorial Long
14/90
Update on the Problems
1. Measurement of error destroyssuperpositions.
2. No-cloning theorem prevents repetition.
3. Must correct multiple types of errors (e.g., bitflip and phase errors).
4. How can we correct continuous errors anddecoherence?
-
7/30/2019 QECC Tutorial Long
15/90
Correcting Continuous Rotation
Let us rewrite continuous rotation
R0 = 0, R1 = ei1
R = ( )= ei/2( )= cos (/2) I - i sin (/2) Z
1 00 ei
e-i/2
00 ei/2
R(k) = cos (/2) - i sin (/2) Z(k)
(R(k) is R acting on the kth qubit.)
-
7/30/2019 QECC Tutorial Long
16/90
Correcting Continuous Rotations
How does error correction affect a state with acontinuous rotation on it?
R
(k) = cos (/2) - i sin (/2) Z(k)
cos (/2)I - i sin (/2) Z(k)Z(k)
Error syndrome
Measuring the error syndrome collapses the state:Prob. cos2 (/2): (no correction needed)
Prob. sin2 (/2): Z(k) (corrected with Z(k))
-
7/30/2019 QECC Tutorial Long
17/90
Correcting All Single-Qubit Errors
Theorem:If a quantum error-correcting code (QECC)corrects errors A and B, it also corrects A + B.
Any 2x2 matrix can be written as I + X + Y + Z.
A general single-qubit error Ak Ak acts like amixture of Ak, and Ak is a 2x2 matrix.
Any QECC that corrects the single-qubit errors X, Y,and Z (plus I) corrects every single-qubit error.
Correcting all t-qubit X, Y, Z on t qubits (plus I)
corrects all t-qubit errors.
-
7/30/2019 QECC Tutorial Long
18/90
The Pauli Group
Define the Pauli group Pn on n qubits to begenerated by X, Y, and Z on individual qubits.Then Pn consists of all tensor products of up to n
operators I, X, Y, or Z with overall phase 1, i.
Any pair M, N of Pauli operators either commutes(MN = NM) or anticommutes (MN = -NM).
The weight of M Pn is the number of qubits onwhich M acts as a non-identity operator.
The Pauli group spans the set of all n-qubit errors.
-
7/30/2019 QECC Tutorial Long
19/90
Small Error on Every Qubit
Suppose we have a small error U on everyqubit in the QECC, where U = I + E.
Un = + (E(1) + ... + E(n)) + O(2).
Then
If the code corrects one-qubit errors, it correctsthe sum of the E(i)s. Therefore it corrects theO() term, and the state remains correct toorder 2.
A code correcting t errors keeps the state
correct to order t+1.
-
7/30/2019 QECC Tutorial Long
20/90
QECC is Possible
1. Measurement of error destroyssuperpositions.
2. No-cloning theorem prevents repetition.
3. Must correct multiple types of errors (e.g., bitflip and phase errors).
4. How can we correct continuous errors anddecoherence?
-
7/30/2019 QECC Tutorial Long
21/90
QECC Conditions
Thm.: A QECC can correct a set Eof errors iff
iEaEbj = Cabij
where {i} form a basis for the codewords,and Ea, EbE.
Note:The matrix Cab
does not depend on i and j.
As an example, consider Cab = ab. Then we canmake a measurement to determine the error.
If Cab has rank < maximum, code is degenerate.
-
7/30/2019 QECC Tutorial Long
22/90
Erasure Errors
Suppose we know the location of an error, but notits type (I, X, Y, or Z). This is called an erasure.
By QECC conditions iEa
Ebj = Cabij:Correct t general errors Correct 2t erasures
For erasures, QECC conditions become:
TrA does not depend on encoded state ,where A is set of qubits which are not erased.
That is, erased qubits have no info. about .
-
7/30/2019 QECC Tutorial Long
23/90
Stabilizer Codes
-
7/30/2019 QECC Tutorial Long
24/90
Error Syndromes Revisited
Let us examine more closely the error syndromefor the classical repetition code.
For correctly-encoded state 000 or 111: first
two bits have even parity (an even number of1s), and similarly for the 2nd and 3rd bits.
We can rephrase this by saying a codeword is a+1 eigenvector of ZZI and a state with an erroron the 1st or 2nd bit is a -1 eigenvector of ZZI.
For state with erroron one of the first two bits:
odd parity for the first two bits.
-
7/30/2019 QECC Tutorial Long
25/90
Error Syndromes Revisited
For the three-qubit phase error correcting code, acodeword has eigenvalue +1 for XXI, whereasa state with a phase error on one of the first two
qubits has eigenvalue -1 for XXI.
Measuring ZZ detects bit flip (X) errors, andmeasuring XX detects phase (Z) errors.
Error syndrome is formed by measuring enoughoperators to determine location of error.
-
7/30/2019 QECC Tutorial Long
26/90
Stabilizer for Nine-Qubit Code
Z Z
Z Z
Z Z
Z Z
Z Z
Z Z
X X X X X XX X X X X X
M1
M2
M3
M4
M5M6
M7M8
We can writedown all the
operatorsdeterminingthe syndromefor the nine-
qubit code.
These generate a group, the stabilizer of the code,consisting of all Pauli operators M with the property
that M = for all encoded states .
-
7/30/2019 QECC Tutorial Long
27/90
Properties of a StabilizerThe stabilizer is a group:
If M = and N = , then MN = .
The stabilizer is Abelian:
If M = and N = , then
(MN-NM) = MN - NM = 0(For Pauli matrices)
MN = NMGiven any Abelian group S of Pauli operators, definea code spaceT(S) = { s.t. M = M S}.Then T(S) encodes k logical qubits in n physical
qubits when S has n-k generators (so size 2n-k).
-
7/30/2019 QECC Tutorial Long
28/90
Stabilizer Elements Detect Errors
Suppose M S and Pauli error E anticommuteswith M. Then:
M (E) = - EM = - E,
so E has eigenvalue -1 for M.
Conversely, if M and E commute for all M S,
M (E) = EM = E M S,so E has eigenvalue +1 for all M in the stabilizer.
The eigenvalue of an operator M from the stabilizer
detects errors which anticommute with M.
-
7/30/2019 QECC Tutorial Long
29/90
Distance of a Stabilizer Code
Let S be a stabilizer, and let T(S) be thecorresponding QECC. Define
N(S) = {N Pn s.t. MN=NM M S}.Then the distance d of T(S) is the weight of thesmallest Pauli operator N in N(S) \ S.
The code detects any error not in N(S) \ S (i.e., errorswhich commute with the stabilizer are not detected).
Why minus S? Errors in S leave all codewords
fixed, so are not really errors. (Degenerate QECC.)
-
7/30/2019 QECC Tutorial Long
30/90
Error Syndromes and Stabilizers
To correct errors, we must accumulate enoughinformation about the error to figure out whichone occurred.
The error syndrome is the list of eigenvalues ofthe generators of S: If the error E commuteswith M S, then M has eigenvalue +1; if E andM anticommute, M has eigenvalue -1.
We can then correct a set of possible errors ifthey all have distinct error syndromes.
-
7/30/2019 QECC Tutorial Long
31/90
Stabilizer Codes Correct Errors
A stabilizer code with distance d corrects (d-1)/2
errors (i.e., to correct t errors, we need d = 2t+1):
E and F act the same, so we need not distinguish.
Thm.: The code corrects errors for which EF N(S) \ S for all possible pairs of errors (E, F).
E and F have same error syndrome
E and F commute with same elements of S
EF N(S)
EF S EF = F = E
-
7/30/2019 QECC Tutorial Long
32/90
Stabilizer Codes Summary
Choose an Abelian subgroup of the Pauligroup. This will be the stabilizer S of the QECC.
The codewords: { s.t. M = M S}
If S has r generators on n qubits, the QECChas k = n-r encoded qubits.
The codes corrects errors if EF N(S) \ S forall pairs (E, F) of possible errors. The distanced is the minimum weight of N(S) \ S.
-
7/30/2019 QECC Tutorial Long
33/90
Application: 5-Qubit Code
We can generate good codes by picking anappropriate stabilizer. For instance:
X Z Z X I
I X Z Z X
X I X Z Z
Z X I X Z
n = 5 physical qubits
- 4 generators of S
k = 1 encoded qubit
Distance d of this code is 3.
Notation: [[n,k,d]] for a QECC encoding k logicalqubits in n physical qubits with distance d. The
five-qubit code is a non-degenerate[[5,1,3]] QECC.
-
7/30/2019 QECC Tutorial Long
34/90
The Smallest QECC
Can we do better than a [[5,1,3]] QECC? No.
Recall that correcting 1 general error isequivalent to correcting 2 erasure errors.
Suppose we had a 4-qubit code whichcould correct 2 erasure errors:
Each pair of qubitshas 2 erasures
Cloning machine
-
7/30/2019 QECC Tutorial Long
35/90
Classical Linear Codes
A large and useful family of classical error-correcting codes can be defined similarly, usinga parity check matrix. Let H be a (n-k) x nbinary matrix, and define a classical error-
correcting code C of n-bit vectors by
v C Hv = 0.
C is linear: v,w C v+w C. Also, let the
distance d of C be the weight (# of non-zeroentries) of the smallest non-zero v C. Then acode with distance 2t+1 corrects t errors: theerror syndrome of error e is He, and He = Hf
only if e+f C.
-
7/30/2019 QECC Tutorial Long
36/90
Classical Hamming Codes
H =
( )1 1 1 1 0 0 01 1 0 0 1 1 01 0 1 0 1 0 1
Define a parity check matrix whose columnsare all vectors of length r. E.g., for r=3:
This code has distance 3: if error e has weight1, the error syndrome He specifies its location.
Thus, the Hamming code for r is an [n=2r
-1,k=2r-r-1, d=3] ECC (with k logical bits encodedin n physical bits and distance 3).
E.g., for r=3, we have a [7,4,3] code.
-
7/30/2019 QECC Tutorial Long
37/90
Linear Codes and Stabilizers
The classical parity check matrix H is analogousto the stabilizer S of a quantum error-correctingcode. Indeed, if we replace all of the 1s of H
with Z operators, we get a stabilizer S definingexactly the same classical code. In particular, itcan correct the same number of bit-flip errors.
E.g., Stabilizer of the [7,4,3] Hamming code:Z Z Z Z I I IZ Z I I Z Z I
Z I Z I Z I Z
-
7/30/2019 QECC Tutorial Long
38/90
CSS CodesWe can then define a quantum error-correctingcode by choosing two classical linear codes C1and C2, and replacing the parity check matrix of C1with Zs and the parity check matrix of C
2with Xs.
X X X X I I IX X I I X X IX I X I X I X
Z Z Z Z I I IZ Z I I Z Z I
Z I Z I Z I Z
E.g.:C1: [7,4,3]Hamming
C2: [7,4,3]Hamming
[[7,1,3]]QECC
-
7/30/2019 QECC Tutorial Long
39/90
Which CSS Codes Are Possible?
Not all pairs C1 and C2 are possible: thestabilizer must be Abelian.
If v C1 and w C2, the corresponding Paulioperators commute iff v w = 0. Thus, w C2is also in (C1
) = C1.
The dual C
of a classical code C is the set ofvectors w s.t. v w = 0 for all v C. The rowsof the parity check matrix for C generate C.
To make a CSS code, we require C2 C1.
-
7/30/2019 QECC Tutorial Long
40/90
Properties of CSS Codes
The parameters of a CSS code made from C1, a[n,k1,d1] code, and C2, a [n,k2,d2] code, are
[[n, k1 + k2 -n, d]] with d
min (d1,d2).Why ? Because of degeneracy (e.g., 9-qubit code).
Codewords of a CSS code are superpositions
of classical codewords: For v C1,v = v+w
w C2
If v-v C2, v and v are the same state, so v
should run over C1/C2. (Recall C2 C1.)
-
7/30/2019 QECC Tutorial Long
41/90
Summary: Stabilizer Codes
We can describe a quantum stabilizer codeby giving its stabilizer, an Abelian subgroup ofthe Pauli group.
By looking at the stabilizer, we can learn allof the most interesting properties of a QECC,including the set of errors it can correct.
One interesting and useful class of stabilizercodes is the family of CSS codes, derivedfrom two classical codes. The 7-qubit code is
the smallest example.
-
7/30/2019 QECC Tutorial Long
42/90
Quantum Error Correction Sonnet
We cannot clone, perforce; instead, we splitCoherence to protect it from that wrongThat would destroy our valued quantum bitAnd make our computation take too long.
Correct a flip and phase - that will suffice.
If in our code another error's bred,We simply measure it, then God plays dice,Collapsing it to X or Y or Zed.
We start with noisy seven, nine, or five
And end with perfect one. To better spotThose flaws we must avoid, we first must striveTo find which ones commute and which do not.
With group and eigenstate, we've learned to fixYour quantum errors with our quantum tricks.
-
7/30/2019 QECC Tutorial Long
43/90
Fault-Tolerant Quantum
Computation
-
7/30/2019 QECC Tutorial Long
44/90
Error Propagation
When we perform multiple-qubit gates during aquantum computation, any existing errors in thecomputer can propagate to other qubits, even if
the gate itself is perfect.CNOT propagatesbit flips forward:
0 1
0 0
0
1
1
Phase errorspropagate backwards:
0 + 1
0 + 1 0 + 1
0 + 1
0 - 1
0 - 1
0 - 1
-
7/30/2019 QECC Tutorial Long
45/90
Fault-Tolerance
ECFault-toleranterror correction
Fault-tolerantmeasurement
We need:
Fault-tolerantencoded gates
Fault-tolerantpreparation ofencoded state
We need to avoid error propagation, and also needto perform gates without decoding the QECC.
-
7/30/2019 QECC Tutorial Long
46/90
Ideal Decoder and t-Filter
Ideal decoder
Corrects errors anddecodes state producingan unencoded qubit.
These operations cannot be performed using realgates, but they are useful for defining and provingfault-tolerance.
tt-Error filter
Projects on states thatare within t errors of avalid codeword
code block decoded qubit
-
7/30/2019 QECC Tutorial Long
47/90
Properties of FT gates
GateProp. 1:
=
(decoded)
Gate
Prop. 2:
=r r+s
Errors propagate benignly. (Similarly for preparation.)
A good FT gate performs the right gate on the encodedstate. (Similarly for preparation and measurement.)
total per
block
total total
s r s
# errors
r s
(r+s 1 for distance 3 code)
(r+s 1 for distance 3 code)
r
total
-
7/30/2019 QECC Tutorial Long
48/90
Transversal Operations
Error propagation is only a serious problem if itpropagates errors within a block of the QECC. Thenone wrong gate could cause the whole block to fail.
The solution: Perform gates transversally - i.e. onlybetween corresponding qubits in separate blocks.
7-qubit code
7-qubit code
-
7/30/2019 QECC Tutorial Long
49/90
Encoded X and Z
X X X X I I IX X I I X X IX I X I X I X
Z Z Z Z I I IZ Z I I Z Z IZ I Z I Z I Z
Operations which commute with a stabilizer, but
are not in it, perform encoded operations: We canidentify them as logical Pauli gates. Also, theyare transversal.
X X X X X X X
Z Z Z Z Z Z Z
X
Z
-
7/30/2019 QECC Tutorial Long
50/90
Logical Clifford Group GatesFor the 7-qubit code, CNOT, Hadamard H, andphase gate P = R/2 = diag (1,i) can all be donewith transversal gates. (They generate the
Clifford group, which can be efficiently simulatedclassically.)
For instance, for CNOT:
CNOT7v+wv+w= v+w(v+v)+(w+w)
= (logical CNOT) vv
-
7/30/2019 QECC Tutorial Long
51/90
FT Preparation and Measurement
FT measurement for a CSS code:
v = v+ww C2
If we measure each qubit, we get a classicalcodeword v from C1, shifted by a randomcodeword from C2
. Use classical EC to find v.
FT preparation:
1. Encode using any circuit.2. Perform FT error correction.
3. Test encoded state.
-
7/30/2019 QECC Tutorial Long
52/90
Properties of FT Error Correction
ECProp. 1:EC = EC s
Good error correction corrects any pre-existing errors.
EC =
Good error correction leaves the encoded state alone.
ss
(s 1 for distance 3 code)
(r+s 1 for distance 3 code)
ECProp. 2:
s rr
-
7/30/2019 QECC Tutorial Long
53/90
Fault-Tolerant Error Correction
How can we perform error correction transversally?
0
Encodedstate
Non-fault-tolerant measurement of Z Z Z Z:
An error here couldpropagate to two qubits.
-
7/30/2019 QECC Tutorial Long
54/90
Fault-Tolerant Error Correction
How can we perform error correction transversally?
Even strings
0000 +1111
Encodedstate
Fault-tolerant measurement of Z Z Z Z:
H
H
H
H
Measureparity
-
7/30/2019 QECC Tutorial Long
55/90
Fault-Tolerant Error Correction
Create and verify cat states 0000 + 1111.
Measure stabilizer generators to learn syndrome.
Repeat for more confidence.
More advanced FT syndrome measurementtechniques use more complicated ancillas, but
fewer operations on the data:
Steane error correction (uses encoded states)
Knill error correction (based on teleportation)
Shor fault-tolerant error correction:
-
7/30/2019 QECC Tutorial Long
56/90
Steane Error Correction
data
block
0 + 1
For CSS codes:
H0
Ancilla blocks are encoded using same code(verify them before using)
bit flips propagateforwards
phase errorspropagate backwards
Perrors inclassicalcodewordsreveal
locations oferrors
random classicalcodeword w/ error
-
7/30/2019 QECC Tutorial Long
57/90
Universal Fault-Tolerant QC
To complete a universal set of gates, we need someadditional gate outside the Clifford group, forinstance the /8-gate: R/40 = e-i/80, R/41 =
ei/81.We cannot perform it transversally, so we will needa more complicated construction:
Create special ancilla state Perform teleportation-like procedure
Perform Clifford group logical correction
-
7/30/2019 QECC Tutorial Long
58/90
Teleporting Quantum Gates
Quantum teleportation followed by U:
Bell
measurement
U
2 classical bits
Q U
Pauli operator Qspecified by classicalbits
UQUU
Correction operator UQUspecified by classical bits
00 +11
Specialancilla
-
7/30/2019 QECC Tutorial Long
59/90
Fault-Tolerant /8-Gate/8 gate has a special and useful property:
R/4 X R/4 = e-i/4 PX, R/4 Z R/4
= Z
The correction required after teleportation is aClifford group gate, for which we already knowa fault-tolerant procedure!
Create ancilla state: encoded 00 + ei/4
11 Perform teleportation-like procedure
Perform Clifford group logical correction
-
7/30/2019 QECC Tutorial Long
60/90
Extended Rectangles
Definition:An extended rectangle (or ExRec)consists of an EC step (leading), followed by an
encoded gate, followed by another EC step (trailing).
Definition:An ExRec is good if it contains at most one
error (roughly speaking) in a gate in the ExRec.
Note: Extended rectangles overlap with each other.
EC EC EC
1st ExRec 2nd ExRec
-
7/30/2019 QECC Tutorial Long
61/90
Good Circuits are Correct
Lemma [ExRec-Cor]:An ideal decoder can be pulledback through a good ExRec to just after the leading EC.
EC EC =
EC =
(gate ExRec)
(preparation ExRec)
EC = EC
(measurement ExRec)
EC
-
7/30/2019 QECC Tutorial Long
62/90
Correct Means What It Ought To
Suppose we have a circuit consisting of only goodExRecs. Then its action is equivalent to that of thecorresponding ideal circuit:
EC EC EC
1. Use ExRec-Cor for measurement to introduce an
ideal decoder before the final measurement.2. Use ExRec-Cor for gates to push the ideal decoder
back to just after the very first EC step.
3. Use ExRec-Cor for preparation to eliminate the
decoder.
-
7/30/2019 QECC Tutorial Long
63/90
Fault-Tolerant SimulationA fault-tolerant circuit simulates the behaviorof a circuit on the encoded qubits. We canreplace each ExRec with the correspondinggate. Suppose the ExRec has A gates, and
each gate is wrong with probability p:Good ExRec:
If there are 0 or 1 errors in the ExRec,replace the ExRec with the ideal gate.
Bad ExRec:
With prob. ~(A2/2)p2 the ExRec is bad,and we replace it with a faulty gate.
For small enough p, error rate decreases.
-
7/30/2019 QECC Tutorial Long
64/90
Summary of Fault Tolerance
We can create fault-tolerant circuits from anystabilizer code, but the 7-qubit code is particularlystraightforward.
We perform many logical gates by transversaloperations to avoid error propagation within blocks.
Not all operations can be performed this way - theother trick is to create special ancillas and workhard to verify them.
-
7/30/2019 QECC Tutorial Long
65/90
Threshold for Fault Tolerance
-
7/30/2019 QECC Tutorial Long
66/90
Concatenated Codes
Error correctionis performedmore frequentlyat lower levels ofconcatenation.
Threshold for fault-tolerance proven usingconcatenated error-correcting codes.
Effective error rateOne qubit isencoded as n,which areencoded as n2,
(for a code correcting 1 error)
p Cp2
-
7/30/2019 QECC Tutorial Long
67/90
History of the Threshold
-
7/30/2019 QECC Tutorial Long
68/90
History of the ThresholdShor (1996) - FT protocols
Aharonov, Ben-Or
(1996) - threshold
proof
Knill, Laflamme (1996)
storage thresholdKitaev (1996-...)
topological FT,
thresholdK, L, Zurek (1996)
threshold
Zalka (1996)
simulation
Dennis et al. (2001)
topological threshold
Other
simulations
G, Preskill
higher value
Golden
Age (1996)
Renaissance (2004-)
Dark
Ages
Knill (2004),
Reichardt (2004)
very high threshold
Local gates, specific systems, ...
Aliferis, G, Preskill
(2005) - simple proof
Reichardt (2005)
d=3 proof
Th DiVi C it i
-
7/30/2019 QECC Tutorial Long
69/90
The DiVincenzo Criteria
1. A scalable physical system with well-
characterized qubits.2. The ability to initialize the state of the qubits
to a simple fiducial state, such as 0...0.3. Long relevant decoherence times, much
longer than the gate operation time.
4. A universal set of quantum gates.
5. A qubit-specific measurement capability.
6. The ability to interconvert stationary andflying qubits.
7. The ability to faithfully transmit flying qubitsbetween specified locations.
-
7/30/2019 QECC Tutorial Long
70/90
Requirements for Fault-Tolerance
1. Low gate error rates.2. Ability to perform operations in parallel.
3. A way of remaining in, or returning to, the
computational Hilbert space.4. A source of fresh initialized qubits during
the computation.
5. Benign error scaling: error rates that do notincrease as the computer gets larger, andno large-scale correlated errors.
-
7/30/2019 QECC Tutorial Long
71/90
Additional Desiderata
1. Ability to perform gates between distantqubits.
2. Fast and reliable measurement andclassical computation.
3. Little or no error correlation (unless theregisters are linked by a gate).
4. Very low error rates.
5. High parallelism.
6. An ample supply of extra qubits.
7. Even lower error rates.
-
7/30/2019 QECC Tutorial Long
72/90
Tradeoffs Between Desiderata
It is difficult, perhaps impossible, to find a physical
system which satisfies all desiderata. Therefore, weneed to study tradeoffs:which sets of properties willallow us to perform fault-tolerant protocols? Forinstance, if we only have nearest-neighbor gates, whaterror rate do we need?
The mandatory requirements for fault-tolerance are nottoo strenuous -- many physical systems will satisfy them.
However, we will probably need at least some of the
desiderata in order to actually make a fault-tolerantquantum computer.
-
7/30/2019 QECC Tutorial Long
73/90
The Meaning of Error Rates
Gate errors: errors caused by an imperfectgate.
Storage errors: errors that occur evenwhen no gate is performed.
Cited error rates are error probabilities;that is, the probability of projecting ontothe correct state after one step.
E.g.: Rotation by angle has errorprobability ~ 2.
Error rates are for a particular universal gate set.
-
7/30/2019 QECC Tutorial Long
74/90
Determining the Threshold ValueThere are three basic methodologies used todetermine the value of the threshold:
Numerical simulation: Randomly choose errors on acomputer, see how often they cause a problem. Tendsto give high threshold value, but maybe this is anoverestimate; only applies to simple error models.
Rigorous proof: Prove a certain circuit is fault-tolerantfor some error rate. Gives the lowest threshold value,but everything is included (up to proofs assumptions).
Analytic estimate: Guess certain effects are negligibleand calculate the threshold based on that. Gives
intermediate threshold values.
-
7/30/2019 QECC Tutorial Long
75/90
Threshold Values
Computed threshold value depends on error-correctingcode, fault-tolerant circuitry, analysis technique. Assumefor now that all additional desiderata are satisfied.
Concatenated 7-qubit code, standard circuitry:
Threshold ~ 10-3(various simulations)
Threshold ~ 3 x 10-5(proof: Aliferis,Gottesman, Preskill, quant-ph/0504218; also
Reichardt, quant-ph/0509203) Best known code: 25-qubit Bacon-Shor code
Threshold ~ 2 x 10-4 (proof: Aliferis, Cross,quant-ph/0610063)
-
7/30/2019 QECC Tutorial Long
76/90
Ancilla FactoriesBest methods trade extra ancilla qubits for error rate:Ancilla factories create complex ancilla states tosubstitute for most gates on the data. Errors onancillas are less serious, since bad ancillas can bediscarded safely (Steane, quant-ph/9611027).
Extreme case: Create all states using error-detectingcodes, ensuring a low basic error rate but very highoverheads (e.g. 106 or more physical qubits perlogical qubit) -- Knill, quant-ph/0404104, Reichardt,
quant-ph/0406025.
Simulations: threshold ~ 1% or higher.
Provable threshold~ 10-3 (Reichardt, quant-ph/0612004,
Aliferis, Gottesman, and Preskill, quant-ph/0703264)
-
7/30/2019 QECC Tutorial Long
77/90
Parallel Operations
Error correction operations should be applied inparallel, so we can correct all errors beforedecoherence sets in.
Fault-tolerant gates are easily parallelized.
Threshold calculations assume full parallelism.
-
7/30/2019 QECC Tutorial Long
78/90
Erasure Errors
For instance: loss of atoms
Losing one is not too serious,but losing all is fatal.
Erasures are an issue for:
Quantum cellular automata
Encoded universality
-
7/30/2019 QECC Tutorial Long
79/90
Fresh Ancilla States
We need a constant source of fresh blankqubits to perform error correction.
Thermodynamically, noise introduces
entropy into the system. Error correctionpumps entropy into cold ancilla states.
a) Used ancillas become noisy.b) Ancillas warm up while they
wait.
Data
Ancilla
-
7/30/2019 QECC Tutorial Long
80/90
Fresh Ancilla States
Used ancillas can be replaced by newancillas, but we must ensure ancillas do notwait too long: otherwise, there is anexponential loss of purity.
In particular:
It is not sufficient to initialize all qubits
at the start of computation.
For instance, this is a problem for liquid-stateNMR.
-
7/30/2019 QECC Tutorial Long
81/90
Large-Scale Error Rates
The error rate for a given qubit should notincrease when we add more qubits to thecomputer.
For instance:
Short-range crosstalk is OK, since it stopsincreasing after neighbors are added.
(See Aharonov, Kitaev, Preskill, quant-ph/0510231.)
Long-range crosstalk (such as 1/r2Coulomb coupling)
-
7/30/2019 QECC Tutorial Long
82/90
Correlated Errors
Small-scale correlations are acceptable:
We can choose an error-correcting code whichcorrects multiple errors.
Large-scale correlations are fatal:
A large fraction of the computer fails withreasonable probability.
Note: This type of error is rare in most weakly-coupled systems.
-
7/30/2019 QECC Tutorial Long
83/90
Correlated Errors
Small-scale correlations are not fatal, butare still better avoided.
We assume correlated errors can occur whena gate interacts two qubits. Any other sourceof multiple-qubit errors is an additional errorrate not included in the threshold calculations.
The worst case is correlated errors within ablock of the code, but the system can bedesigned so that such qubits are well separated.
G
-
7/30/2019 QECC Tutorial Long
84/90
Long-Range Gates
Most calculated thresholds assume we canperform gates between qubits at arbitrarydistances.
If not, threshold still exists, but we need
better error rates to get a threshold, since weuse additional gates to move data aroundduring error correction.
-
7/30/2019 QECC Tutorial Long
85/90
Local Gates
Proof that threshold still exists with local gates: Gottesman,quant-ph/9903099; Aharonov, Ben-Or, quant-ph/9906129.
We are starting to understand the value of thethreshold in this case:
With concatenation, in 2D, proven threshold of ~ 10-5(Svore, Terhal, DiVincenzo, quant-ph/0604090)
Almost 2D, w/ topological codes & cluster states,
simulated threshold of ~ 6 x 10-3 (Raussendorf,Harrington, quant-ph/0610082)
Almost 1D: proven threshold of ~ 10-6 (Stephens,Fowler, Hollenberg, quant-ph/0702201)
F Cl i l P i
-
7/30/2019 QECC Tutorial Long
86/90
Fast Classical Processing
Fast measurement and classical processing isvery useful for error correction to compute theactual type and location of errors.
We can implement the classical circuit withquantum gates if necessary, but this addsoverhead: the classical circuit must be madeclassically fault-tolerant.
May not matter much for threshold? (Theclassical repetition code is very robust.)(Szkopek et al., quant-ph/0411111.)
-
7/30/2019 QECC Tutorial Long
87/90
Other Error Models
Coherent errors: Not serious; could addamplitudes instead of probabilities, but this worstcase will not happen in practice (unproven).
Restricted types of errors: Generally nothelpful; tough to design appropriate codes. (Butother control techniques might help here.)
Non-Markovian errors: Allowed; when theenvironment is weakly coupled to the system, atleast for bounded system-bath Hamiltonians.(Terhal, Burkhard, quant-ph/0402104, Aliferis, Gottesman, Preskill,quant-ph/0504218, Aharonov, Kitaev, Preskill, quant-ph/0510231.)
-
7/30/2019 QECC Tutorial Long
88/90
Summary
Quantum error-correcting codes exist which cancorrect very general types of errors on quantumsystems.
A systematic theory of QECCs allows us to buildmany interesting quantum codes.
Fault-tolerant protocols enable us to accurately
perform quantum computations even if thephysical components are not completely reliable,provided the error rate is below some thresholdvalue.
-
7/30/2019 QECC Tutorial Long
89/90
Further Information
Short intro. to QECCs: quant-ph/0004072
Short intro. to fault-tolerance: quant-ph/0701112
Chapter 10 of Nielsen and ChuangChapter 7 of John Preskills lecture notes:http://www.theory.caltech.edu/~preskill/ph229
Threshold proof & fault-tolerance: quant-ph/0504218
My Ph.D. thesis: quant-ph/9705052
Complete course on QECCs:http://perimeterinstitute.ca/personal/dgottesman/QECC2007
http://www.theory.caltech.edu/~preskill/ph229http://perimeterinstitute.ca/personal/dgottesman/QECC2007http://perimeterinstitute.ca/personal/dgottesman/QECC2007http://www.theory.caltech.edu/~preskill/ph229 -
7/30/2019 QECC Tutorial Long
90/90
The Future of Fault-Tolerance
Industrial Age
Experimental FT
Ancilla
factories
Understanding
of resource
tradeoffs
Efficient fault-
tolerance
Large quantum
computers! Quantum
I f ti A