# Translation of color/toric code to a small network of solid-state spins

Within Quantum Error Correction and stabilizer codes, toric codes/surface codes are very tempting, mainly for their high error threshold. For more background please check up, in our Physics sister (aunt?) site: Quantum Error Correction: Surface code vs. color code.

However, these codes require fairly specific measurements in specific bases, which I find hard to translate in practice, especially into my language of interest which is spin states in a solid-state few-spin collection. To see my motivation, here is a not-quite successful attept from a few years ago, using a more naïve QEC scheme: "Quantum Error Correction with magnetic molecules".

So, the problem:

Related: How does the size of a toric code torus affect its ability to protect qubits?

• It seems most of the solid-state questions you asked on this site have gone unanswered. I wonder if we can bring in more experimentalists to answer such questions. – Sanchayan Dutta May 7 '18 at 16:40
• I try to post questions that are interesting, related to my research work and at on-topic for QC. If a train full of solid-state quantum physicists (experimentalists or otherwise) arrives, their answers sure will be welcome :) In any case, I'd say this discussion belongs to the chat rather than here. – agaitaarino May 7 '18 at 17:55
• Would Ising type anyonic interaction be applicable, in which case the frustrations are local, something in adiabatic regime, could be tried then- If there are any Ising anyons that are implemented by adiabatic(or even annealing schemes). – user3483902 May 8 '18 at 23:54
• @agaitaarino: Thanks for adding my question to it! – user1271772 May 20 '18 at 2:30

I don't know the translation into physics, but the circuit you want for the most basic demonstration is the following: Here, $|+\rangle=(|0\rangle+|1\rangle)/\sqrt{2}$, and the gates are controlled-not gates and controlled-phase gates. The state $|\psi\rangle$ can be any input state initially. The first time the circuit is run prepares the $|\psi\rangle$ qubits in a 4-qubit Toric code (up to some corrections depending on what measurement results you got). Repeat the measurements again, and you get a round of error correction. In effect, what the first qubit is doing is measuring the expectation value of the observable $XXXX$ on the Toric code qubits, while the second qubit measures the $ZZZZ$ observable.

I seem to remember that Jiannis Pachos (and coauthors) explicitly described the smallest Toric code implementation possible (which I guess was this version), but I can't seem to find the paper. I had assumed that JamesWooton would have jumped in by now to tell you where that paper is. It must be commented, however, that such a small size of Toric Code is completely hopeless for error correcting properties; you cannot even correct for single-qubit errors!

• Although that is not at all the final result that I aimed for, that was already helpful! And even before going into the required translation into spins, I need a few further clarifications on the circuit. By |+> you mean the linear combination of |0> and |1>, or something different? By ZZZ you actually mean ZZZZ? For some reason I wrote I needed 7 spins but it actually works with 6? – agaitaarino May 19 '18 at 8:19
• @agaitaarino Yes, exactly. I think you can make this 6-qubit case (where the actual code is on 4 qubits) but it's just an in-prinicple demonstration with completely hopeless error correcting properties. You need quite a few more qubits to make it worthwhile (perhaps 9? code qubits and however many you use for stabilizer measurements) – DaftWullie May 19 '18 at 9:15