Adapting Quantum Error Correction to Specific Channels Peter Shor Massachusetts Institute of...

37
Adapting Quantum Error Correction to Specific Channels Peter Shor Massachusetts Institute of Technology Joint work with Andrew Fletcher and Ruitian Lang

Transcript of Adapting Quantum Error Correction to Specific Channels Peter Shor Massachusetts Institute of...

Adapting Quantum Error Correction to Specific Channels

Peter Shor

Massachusetts Institute of Technology

Joint work with Andrew Fletcher and Ruitian Lang

Outline of talk

• Blatantly commercial advertisement

• Review of stabilizer codes

• Optimal recovery from error using semidefinite programming

• Error correction for the amplitude damping channel.

• Ruitian Lang’s new class of codes

• Generalization of Lang’s codes.

Advertisement

MIT Keck Center for Extreme Quantum Computing has position for a postdoc in quantum algorithms.

• Apply via http://xqit.mit.edu

• We will start evaluating applications in mid-January.

Traditional stabilizer codes

• Choose an abelian subgroup of the form

niiii ...321

where the σi are the Pauli matrices or the identity.

• Choose simultaneous eigenvalues ±1 for each generator of this subgroup.

• The operations commute, so there exists a simultaneous eigenspace for these eigenvalues

• The code is the eigenspace.

Traditional recovery for stabilizer codes• Measure all the eigenvalues for the generators of this

subgroup. This is the syndrome.• For the measured syndrome, classically compute the

minimum Hamming weight error that could have caused the syndrome.

• Better yet, if phase and bit errors are not equally likely, compute the most probable (maximum likelihood) error that could have caused the syndrome.

• Apply the Pauli matrices that correct this error.

The symmetric depolarizing channel is the most commonly considered error model. For this model, the minimum Hamming weight error and the maximum likelihood error are the same.

Is traditional recovery the best thing to do?

Suppose we know what the error model is.

For example, suppose we are using an amplitude damping channel, and we encode using the five-qubit code.

We can compute the optimal error recovery and compare it with the standard method.

How?

We use semidefinite programming.

Semidefinite Programming

Semidefinite programming is an optimization method which is a generalization of linear programming.

It lets you optimize a linear function over an affine subspace of positive semidefinite matrices:

subject to and

One good thing about semidefinite programming is that there are efficient algorithms for it.

Better yet, there are good software packages available.

XC tr max ii bXA tr 0X

We consider the encoder and the channel together as one operation E. We now want to find the recovery operation R that gives the maximum fidelity between the input ρ and the output R○E(ρ).

We can try to optimize• the average fidelity• the entanglement fidelity• the fidelity of the worst-case input ρ

The first two optimization problems can be solved using semidefinite programming. We have investigated channel adaptation using the entanglement fidelity.

ChannelE’

Encoder RecoveryR

E

ρ )(ER

How do we turn our problem into a semidefinite program?

jiaAji

ji |||,

,

We use the Jamiolkowski isomorphism. We turn a matrix A into a vector using

We then have that ACBBAC || T

Quantum channels via Jamiolkowski isomorphism

|| kk

kE AAX EXIE )(tr)( in

If we have a channel k

kk AAE †)(

This turns into

where

The condition that IAA kk

k †

turns into IX E outtr

Entanglement Fidelity via Janiolkowski isomorphism

The entanglement fidelity of an input ρ operated on by a channel E is

||),( EXEF

||tr ),( EXEF

k

kk

kk AAAEF 2† |tr |tr ),(

This turns into

or

The semidefinite program

We can combine the input ρ with the error process E to get a matrix CE,ρ. Maximizing the entanglement fidelity thus becomes

, tr max ERCX

subject to the constraints that the recoveryoperation XR represents a valid quantum operation, which are

IX R outtr0RX and

This is a semidefinite program.

Results for five-qubit code

For the amplitude damping channel, optimal recovery is a significant improvement over the standard recovery.

Optimizing encoding operation for a given channel.

Suppose that you fix the recovery operation, as well as the channel, and want to optimize the encoding operation UC .

This is also a semidefinite programming problem.

We can alternatively improve the recovery and the encoding. This should eventually converge to a local optimum in the space of (UC ,R) pairs.

ChannelE’

Encoder RecoveryR

R’

Results of iterated optimization

From Reimpell and Werner. quant-ph/0606059. Amplitude damping channel acting on 4 qubits.

The three plots are no encoding, Optimal recovery using 4-qubit stabilizer code of Leung and optimal recovery, and optimized encoding and recovery,

Dual semidefinite programs

Like linear programs, every semidefinite program has a dual program.

• The optimal value of the dual program is equal to the optimal value of the original. It turns maximization into minimization, and vice versa.

• The dual program bounds the optimum from the other side: if a feasible solution to the original is always below the optimum, a feasible solution to the dual is always above the optimum.

Near-optimal recovery

The semidefinite program for optimal recovery grows large and computationally expensive very quickly.

But even for cases where the semidefinite program is too large to solve exactly, you can use heuristics to find near-optimal solutions for this program and its dual.

The true optimum is bounded between these solutions.

Performance of heuristics on amplitude damping channel

Performance of heuristics finding upper and lower bounds for optimal recovery of the 5, 7, 9 qubit codes. For the 9-qubit code, the bounds are very tight, because this code can correct amplitude damping errors to second order, and the heuristics figure this out.

Dual program

Many times, the dual program has an intuitive interpretation that is useful.

For an arbitrary channel, we have not found an intuitive interpretation of this dual program.

But we can use the dual program to prove that for a stabilizer code and a channel that is a mixture of Pauli operations, the standard recovery is optimal.

Optimal recovery in this case: measure syndrome, then correct maximum likelihood error.

Amplitude Damping Channel

We can describe the amplitude damping channel as

Where and

10

011A

†22

†11 AAAA

00

02

A

Here A2 is equal to . Instead of decomposing a damping error into a separate σx and σy syndromes, and using separate measurement outcomes for each, the optimal recovery essentially uses only one measurement outcome for each damping error. This saves us degrees of freedom which we can use for other errors.

)(2

1yx i

Dimension counting

In the five-qubit code, we have the case of no error, and five first-order damping errors. This gives 6 syndrome measurements, which we can use to (approximately) correct all first-order errors. Each one is a 2-dimensional element of a POVM. This leaves 20 dimensions left over for second order errors, which is where we get the improvement on standard recovery.

4-qubit amplitude damping code

Leung et al. proposed a 4-qubit code for the amplitude damping channel.

111100002

10 L 11000011

2

11 L

This can correct all one-qubit errors.Optimized error recovery improves it substantially,

so that it has fidelity essentally equal to the optimized 5-qubit code.

Why the 4-qubit code works

Suppose there is a damping error on the first qubit. We get

111100002

10 L 11000011

2

11 L

10112

0)2(1

LA 1000

21)2(

1

LA

These two resulting states are still orthogonal and superpositions of them remain coherent.

The no-error subspace is distorted, but not to first order.

Dimension counting, againWe asked the question: could we have a 3-qubit

code that corrects amplitude damping errors to first order?

There are 8 dimensions in our space, and four possible errors. 2∙4=8, so dimension counting suggests it might be possible.

We found locally optimal 3-qubit codes by alternately optimizing the encoding and decoding operations.

Result: we got lots of different-looking codes, many of them fairly good, but none worked to first order.

Open problem: prove this is impossible.

Investigating 3-qubit codes

• Recall that the 4-qubit code also had this complementary structure.

• This eventually led Lang to propose a general class of codes.

...101010

• In summer 2007, Ruitian Lang looked at these 3-qubit codes, to try to figure out their structure.

• There were several classes of these codes, and their codewords tended to include pairs of complementary basis states together, e.g., states like where α and β are larger than the other amplitudes.

Complementary one-error correcting amplitude damping codes

What conditions do we need to make sure they correct all first-order errors?

Look at the set of basis vectors . • We want no two of these vectors to have

Hamming distance 1 between them.• If two of these vectors have Hamming distance

2, they cannot have the same Hamming weight.

ss 2

1where is the complement of . s s

Suppose we choose codewords that look like

ss,

Why these conditions?

If we had two vectors |010011010 and |000011010 in our set , then the first codeword with the second bit damped would overlap the second codeword.

If we had two vectors |010011010 and |000011110 in our set , then we would not be able to tell the difference between a damping operation of the second bit on the first codeword, and the seventh bit on the second codeword.

ss,

ss,

Are these conditions sufficient?

applied to the kth qubit, it is not annihilated.

This is ensured because either s or s has a 1 in position k.

We also need to make sure that the no-error subspace is not distorted to the first order.

This can be checked.

ss 2

1has an amplitude damping error

We need to make sure that if a codeword

Can we find good codes?

We want to find as many codewords as we can with these constraints.

This is a maximum clique problem, which is NP-complete.

We used a relatively unsophisticated greedy clique algorithm, and obtained the results in the table to the right.

These are better than the best single error correcting stabilizer codes.

n k

4 2

5 2

6 5

8 12

9 18

10 41

11 78

12 146

13 273

14 515

15 931

16 1716

What do these codes look like?

For n = 6, k = 5, we get:

We can specify this code more compactly by listing just s:

0011111100002/1

1010100101012/1

1100110011002/1

1111000000112/1

1111110000002/1

000000

110000

001100

000011

010101The first four codewords form a stabilizer code generalizing the four-qubit one. We squeeze one more codeword in.

A larger example

For n=8, k=12, we get:

The first eight rows give a stabilizer code, but then we can add four more codewords.

00000000

00000011

00001100

00110000

11000000

00001111

00110011

00111100

10101000

01011000

01100100

10010100

Proposal to generalize this to 2-error-correcting codes for the

amplitude damping channelSuppose we take a linear code C so that in each

pair of coordinates, 00, 01, 10, 11, appear an equal number of times.

Now define

The code will consist of for some set of w.

What conditions do we need on the set ?

Cc

wcC

wC2/1||

1

wC

wc

2-error correcting codes

We need that if we change no, one, or two 1’s to 0’s in any two strings in {c+w}, they do not collide. (If they did, then we could not distinguish between two different damping errors.)

We also need that the no-error subspace is not distorted up to second order. Remarkably, this follows from the condition that the code C contains an equal number of pairs 00, 01, 10, 11 in each pair of positions.

Can we find good 2-error correcting codes for the amplitude damping channel?

Need to first choose a code C.

Then, to find the maximum number of codewords we can obtain of the form |C+w, we need to solve a clique problem.

We haven’t done this yet.

How do we find this code C?

Needs to have pairs (0,0), (0,1), (1,0), (1,1) equally often in every pair of positions.

What does this mean? If C is linear, it means that C has no

codewords of weight two or less, i.e., it has minimum weight 3.

If we wanted every triple of bits to appear equally often in every three positions, we would need C to have no codewords of weight three or less, and so on.

Codeword stabilized codes

You have probably already noticed that these codes are a type of CWS codes.

We start with the stabilizer codeword |C and add codewords of the form g|C, where g is a tensor product of σx matrices on the qubits.

For the one-error correcting codes, |C is the cat state (|000…0 + |111…1)/2.

This is a specialization of the recipe for constructing CWS codes.

Open questions

• Are there other kinds of CWS codes that are good for the amplitude damping channel?

• What about other stabilizer codes that work well for the amplitude damping channel? (see Andrew Fletcher’s talk)

• Are these codes useful in any way for fault tolerance? (Maybe use first layer of concatenation to protect against amplitude damping, and subsequent layers to correct other errors?)