The curse of the Eastin-Knill theorem
In recent years, we’ve seen tremendous progress in quantum error correction, with the demonstration of the first logical qubits capable of correcting errors and having lifetimes longer than the physical qubits that compose them [1]. But while building a logical qubit is a formidable challenge, it is just the beginning of the story. To run quantum algorithms beyond the reach of classical computers, you must perform logical operations on these logical qubits, so-called logical gates.

Some gates are easy to implement. If you want to apply a logical X gate, which flips the logical qubit state from
to
or vice versa, on a repetition code or a surface code, it is enough to apply an X gate to each of the physical qubits. This type of logical operation is known as a transversal gate, and it offers the advantage of being both simple and fast to implement. But to have a universal quantum computer, capable of executing any quantum algorithm, a certain number of gates is necessary. This set of gates is called a universal set. For example, the
,
and
gates form a universal gate set onto which any quantum algorithm can be compiled efficiently.
However, while the
gate, for example, is transversal on the repetition code and the surface code, the
gate is not. And this isn’t just bad luck in choosing the wrong code: in fact, no quantum error-correcting code has a universal set of transversal gates, this is the Eastin–Knill theorem [2]. That doesn’t mean applying a
gate on a repetition or surface code is impossible, but doing it without destroying the protection granted by the error-correcting code is going to be tricky. Indeed, because transversal gates are implemented by independently applying a gate to each physical qubit, they avoid creating errors that involve many qubits during the operation. This is where magic states come in; magic states are special quantum resources that allow us to implement these non-transversal gates in a fault-tolerant manner, thereby completing our universal gate set. The catch? Magic states remain expensive to prepare.
Magic states
Since their introduction in the early 2000s, scientists have tried to optimize magic state preparation and recently, significant headway has been made by leading teams in the field. A new scheme by Gidney et al reduced the resources needed for magic state preparation on 2D superconducting platforms, requiring 463 qubits to produce one magic state [3]. Around the same period, we saw the first experimental demonstration of logical magic state distillation on neutral atoms, showing early experimental proof that magic states work as theory intended [4].
So how exactly do they work? The basic idea behind magic states is simple: if applying a
gate is too complicated, we focus on preparing a state, called a magic state, which we then use as a resource to apply the
gate.

This magic state is denoted
, and by consuming it you can apply a
gate to any state
. Note that the gates used to consume the magic state are all easy to implement, so the difficulty of performing a
gate now lies entirely in preparing the
state. But even if the problem is simplified, the hardest part remains, because preparing this magic state is not so simple.
Magic state distillation
One of most common and best-known techniques to prepare magic states is magic state distillation. The idea is to first create
magic states with poor fidelity (which is relatively easy), and then “distill” them to get a higher fidelity magic state. The protocol relies on a code that has a transversal
gate. Among such codes, the Reed-Muller code has become the standard magic state preparation scheme: it uses 15 physical qubits to encode one logical qubit. Distillation using this code therefore requires 15
magic states as input to produce one
state at the output.

However, this code is a 3D code and to implement it physically, you’d have to arrange the qubits in 3D, which is very challenging for superconducting qubits, which typically lay out qubits in 2D configurations. To get around this, the strategy is to use the Reed–Muller code at the logical level: the 15 input
states are placed in 15 separate surface codes/repetition codes, and a logical circuit implementing the Reed–Muller code is used to detect errors. But distillation becomes costly, as 15 surface codes are needed. And because logical operations are used to implement the Reed-Muller code and detect errors, producing a state also takes quite a bit of time.
Biased-noise to the rescue
Biased-noise qubits, like the cat qubits we develop at Alice & Bob, are qubits, which by design, suppress one type of quantum error, bit-flips. This enables us to reduce the number of qubits needed by significant amounts. Could this noise bias also help us reduce the cost of distillation? By replacing the 15 surface codes with codes tailored to the noise bias, such as a thin surface code or a repetition code, we could already reduce the cost. But the number of qubits and the preparation time would still remain substantial.
Noise bias, however, gives us another option: go back to distillation at the physical level instead of at the logical level. As we explained, distillation is done at the logical level because the Reed-Muller code is a 3D code. In the Reed-Muller code, as in all codes, some qubits are measured to detect errors, both phase flips and bit flips. These measurements are checks that are supposed to yield
, but in case of an error give
. Because cat qubits mainly suffer from phase-flip errors rather than bit-flip errors, we can bypass measuring all the Reed-Muller checks, checking only those that detect phase-flip errors. Remarkably, doing this lets us go back to a two-dimensional code. We transpose the original 3D scheme to a 2D one by unfolding the code, hence why we named it “unfolded distillation”, or informally the “heart code” thanks to its distinctive shape.

Thus, thanks to cats’ special noise bias, distillation can be carried out at the physical level, without using a 3D code, which significantly reduces both the time and qubit overhead. We detail this research in our preprint on ArXiv. Overall, we estimate that we could produce one magic state with only 53 cat qubits, whereas logical level distillation would require several hundred cat qubits and take longer because the necessary logical operations are slower. This constitutes a significant 8.7x reduction in qubit count compared to the most efficient schemes to-date for non-biased noise qubits, while maintaining the same low error rate of one in a million. We also estimate an approximate 5x speedup compared with the current leading scheme for superconducting platforms, calculated based on quantum error correction cycles (assuming a time of 1µs per correction cycle).

One step closer to universal quantum computation
This unfolded distillation scheme further highlights how noise-biased qubits could help speed up the path to fault-tolerant quantum computing, by drastically cutting the overhead and hardware needed to build a useful quantum computer. Cat qubits and the unfolded code enable the preparation of magic states in a very hardware-efficient manner. Next, we’ll work on demonstrating these promising results experimentally on the hardware. Stay tuned!
References
- [1] Google Quantum AI, Suppressing quantum errors by scaling a surface code logical qubit, Nature 614, 676–681, 2023
- [2] B. Eastin et al, Restrictions on Transversal Encoded Quantum Gate Sets, PRL 102 (11): 110502, 2009
- [3] C. Gidney et al, Magic state cultivation: growing T states as cheap as CNOT gates, arXiv:2409.17595, 2024
- [4] P. S. Rodriguez et al, Experimental demonstration of logical magic state distillation, Nature 1-3, 2025