Honeycomb Floquet code[1] 


Floquet code based on the Kitaev honeycomb model [2] whose logical qubits are generated through a particular sequence of measurements.

The code is defined on a hexagonal (honeycomb) lattice with a physical qubit located at each vertex. Edges are labeled \(x\), \(y\), and \(z\), such that one edge of each label meet at every vertex. Check operators are defined as \(XX\) acting on any two qubits joined by an \(x\) edge, and similarly for \(y\) and \(z\). The hexagonal lattice is 3-colorable, so the hexagons may be labeled 0, 1, 2 such that no two neighboring hexagons have the same label.

The code-generating measurement pattern consists of measuring the check operators located on all of the \(r\)-labeled edges in round \(r\) mod 3. The code space is the \(+1\) eigenspace of the instantaneous stabilizer group (ISG). The ISG specifies the state of the system as a Pauli stabilizer state at a particular round of measurement, and it evolves into a (potentially) different ISG depending on the check operators measured.

A CSS version of the code has been proposed which loosens the restriction of which sequences to use [3].


Protective features similar to the surface code: on a torus geometry, the code protects two logical qubits with a code distance proportional to the linear size of the torus. Properties of the code with open boundaries are discussed in Refs. [4,5], and various other generalizations have been proposed [6].


Initialization can be performed by preparing each pair of qubits on an edge in some particular state independently specified by the effective-one-qubit operators (two-qubit Pauli strings centered on an edge) and then beginning the check measurement sequence. This is analogous to projecting a state into the code space by measuring stabilizers.


There are two types of logical operators, inner and outer. An inner logical operator is the product of check operators on a homologically nontrivial cycle. They belong to the stabilizer group as a subsystem code. Outer logical operators have an interpretation in terms of magnetic and electric operators of an embedded surface code, and they do not belong to the stabilizer group of the associated subsystem code.


The ISG has a static subgroup for all time steps \(r\geq 3\) – that is, a subgroup which remains a subgroup of the ISG for all future times – given by so-called plaquette stabilizers. These are stabilizers consisting of products of check operators around homologically trivial paths. The syndrome bits correspond to the eigenvalues of the plaquette stabilizers. Because of the structure of the check operators, only one-third of all plaquettes are measured each round. The syndrome bits must therefore be represented by a lattice in spacetime, to reflect when and where the outcome was obtained.

Fault Tolerance

One can run a fault-tolerant decoding algorithm by (1) bipartitioning the syndrome lattice into two graphs which are congruent to the Cayley graph of the free abelian group with three generators (up to boundary conditions) and (2) performing a matching algorithm to deduce errors.


\(0.2\%-0.3\%\) in a controlled-not circuit model with a correlated minimum-weight perfect-matching decoder [7].\(1.5\%<p<2.0\%\) in a circuit model with native two-body measurements and a correlated minimum-weight perfect-matching decoder [7]. Here, \(p\) is the collective error rate of the two-body measurement gate, including both measurement and correlated data depolarization error processes.Against circuit-level noise: within \(0.2\% − 0.3\%\) for SD6 (standard depolarizing 6-step cycle), \(0.1\% − 0.15\%\) for SI1000 (superconducting-inspired 1000 ns cycle), and \(1.5\% − 2.0\%\) for EM3 (entangling-measurement 3-step cycle) [8,9].


Plaquette stabilizer measurement realized on the IBM Falcon superconducting-qubit device [10]



  • \(\mathbb{Z}_q^{(1)}\) subsystem code — The dynamically generated logical qubit of the honeycomb Floquet code is generated by appropriately scheduling measurements of the gauge generators of the \(\mathbb{Z}_{q=2}^{(1)}\) subsystem stabilizer code corresponding to the Kitaev honeycomb model. However, since this subsystem code has zero logical qubits, the instantaneous stabilizer codes of the honeycomb code cannot be interpreted as gauge-fixed versions of this subsystem code.
  • Kitaev surface code — Measurement of each check operator of the honeycomb Floquet code involves two qubits and projects the state of the two qubits to a two-dimensional subspace, which we regard as an effective qubit. These effective qubits form a surface code on a hexagonal superlattice. Electric and magnetic operators on the embedded surface code correspond to outer logical operators of the Floquet code. In fact, outer logical operators transition back and forth from magnetic to electric surface code operators under the measurement dynamics. Inspired by this code, stabilizer measurement circuits consisting of two-body measurements have been designed for the surface code [11,12].
  • Subsystem color code — Both honeycomb and subsystem color codes are generated via periodic sequences of measurements. However, any measurement sequence can be performed on the color code without destroying the logical qubits, while honeycomb codes can be maintained only with specific sequences. Honeycomb codes require a shorter measurement cycle and use fewer qubits at the given code distance [1].
  • Majorana stabilizer code — The Honeycomb code admits a convenient representation in terms of Majorana fermions. This leads to a possible physical realization of the code in terms of tetrons [13], where each physical qubit is composed of four Majorana modes.
  • Quantum low-density parity-check (QLDPC) code — The Floquet check operators are weight-two, and each qubit participates in one check each round.
  • Kitaev honeycomb code — The Kitaev honeycomb model has a Hamiltonian which is the sum of checks of the honeycomb Floquet code [1].


M. B. Hastings and J. Haah, “Dynamically Generated Logical Qubits”, Quantum 5, 564 (2021) arXiv:2107.02194 DOI
A. Kitaev, “Anyons in an exactly solved model and beyond”, Annals of Physics 321, 2 (2006) arXiv:cond-mat/0506438 DOI
M. Davydova, N. Tantivasadakarn, and S. Balasubramanian, “Floquet Codes without Parent Subsystem Codes”, PRX Quantum 4, (2023) arXiv:2210.02468 DOI
J. Haah and M. B. Hastings, “Boundaries for the Honeycomb Code”, Quantum 6, 693 (2022) arXiv:2110.09545 DOI
C. Vuillot, “Planar Floquet Codes”, (2021) arXiv:2110.05348
D. Aasen, Z. Wang, and M. B. Hastings, “Adiabatic paths of Hamiltonians, symmetries of topological order, and automorphism codes”, Physical Review B 106, (2022) arXiv:2203.11137 DOI
C. Gidney et al., “A Fault-Tolerant Honeycomb Memory”, Quantum 5, 605 (2021) arXiv:2108.10457 DOI
C. Gidney, M. Newman, and M. McEwen, “Benchmarking the Planar Honeycomb Code”, Quantum 6, 813 (2022) arXiv:2202.11845 DOI
A. Paetznick et al., “Performance of Planar Floquet Codes with Majorana-Based Qubits”, PRX Quantum 4, (2023) arXiv:2202.11829 DOI
J. R. Wootton, “Measurements of Floquet code plaquette stabilizers”, (2022) arXiv:2210.13154
R. Chao et al., “Optimization of the surface code design for Majorana-based qubits”, Quantum 4, 352 (2020) arXiv:2007.00307 DOI
C. Gidney, “A Pair Measurement Surface Code on Pentagons”, (2022) arXiv:2206.12780
T. Karzig et al., “Scalable designs for quasiparticle-poisoning-protected topological quantum computation with Majorana zero modes”, Physical Review B 95, (2017) arXiv:1610.05289 DOI
Page edit log

Your contribution is welcome!

on github.com (edit & pull request)

edit on this site

Zoo Code ID: honeycomb

Cite as:
“Honeycomb Floquet code”, The Error Correction Zoo (V. V. Albert & P. Faist, eds.), 2022. https://errorcorrectionzoo.org/c/honeycomb
  title={Honeycomb Floquet code},
  booktitle={The Error Correction Zoo},
  editor={Albert, Victor V. and Faist, Philippe},
Share via:
Twitter | Mastodon |  | E-mail
Permanent link:

Cite as:

“Honeycomb Floquet code”, The Error Correction Zoo (V. V. Albert & P. Faist, eds.), 2022. https://errorcorrectionzoo.org/c/honeycomb

Github: https://github.com/errorcorrectionzoo/eczoo_data/tree/main/codes/quantum/qubits/dynamic_gen/da/honeycomb.yml.