2
$\begingroup$

I am currently working on modelling distillation factories for remote entanglement. For five-qubit code my circuit is as follows:

  • Share 5 noisy bell states between processors (encoded into 5 surface code patches)
  • Measure the stabilizers of the code on each side, projecting the state onto the subspace of the code
  • If the stabilizer measurements do not match, dicard the qubits
  • If the stabilizer measuremnts match, apply the "correction" to bring the state into the logical code space
  • Apply the decoding cirquit to obtain a single surface code qubit on each side encoding a bell pair

From what I understand in magic state distillation usually the stabilizer measurement and decoding is done by the same cirquit, where the stabilizer measurements come from the measurement of ancillary qubits of the code, such as in https://arxiv.org/pdf/1808.02892 (Fig.14). This I imagine reduces the temporal footprint of the distillation cirquit.

How do I come up with a similar decoding cirquit for stabilizer codes such as a five-qubit code?

$\endgroup$

1 Answer 1

1
$\begingroup$

It's more space efficient if you stream the Bell pairs, instead of having them all present at the start.

Here's a 5 qubit code decoding circuit (up to single qubit rotations of the input / output):

enter image description here

If you can't read ZX diagrams, read this paper and this paper or this book. It will save you a lot of time in the end.

As with any decoding circuit for a stabilizer code, attaching the inputs to a mirrored copy creates an entanglement distiller (vertical lines crossing between the two mirrored copies are the Bell pairs):

enter image description here

Here's an alternate one using H and CZ instead of sqrt(X) and sqrt(Z):

enter image description here

converted into an entanglement distiller:

enter image description here

This is a lattice surgery mockup of a less efficient version of that one, using 2 CZs and 3 Hadamards instead of 1 CZ and 1 Hadamard:

enter image description here

$\endgroup$

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.