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. Commented May 7, 2018 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. Commented May 7, 2018 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). Commented May 8, 2018 at 23:54
• @agaitaarino: Thanks for adding my question to it! Commented May 20, 2018 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.