Content uploaded by Shui Hu
Author content
All content in this area was uploaded by Shui Hu on Sep 08, 2020
Content may be subject to copyright.
Quasilinear Time Decoding Algorithm for
Topological Codes with High Error Threshold
Mark Shui Hu1, David Elkouss
One of the most promising approaches for fault-tolerant quantum computation is based
on surface quantum error correcting codes [1, 2]. With surface codes, error correction
only requires the measurement of local operators on a 2-dimensional lattice of qubits. The
measurement outcome, called the syndrome, is passed to the decoding algorithm to deduct
the error that has occurred and to supply a correction operator. The resilience against
errors can be improved by increasing the system size whilst the physical error rate is below
a threshold value pth. For this, it is essential that the decoder has low time complexity; if
the clock-rate of the quantum computer becomes limited by the decoder, the advantages
of increasing the system size could be compromised.
Arguably, the most popular decoder for surface codes is the Minimum-Weight Perfect
Matching (MWPM) decoder [1]. The basic principle behind this approach is to identify
the lowest weight error configuration that can produce the syndrome. In general this is
a good approximation to the optimal maximum likelihood decoder [3]. For a toric code
that only suffers random Pauli noise, the optimal code threshold is pth = 10.9%, whereas
the MWPM decoder has pth = 10.3%. The MWPM matching are found by constructing
a fully connected graph between nodes of the syndrome, which leads to a cubic worst-case
time complexity of O(n3) [4].
Many other decoding algorithms have been developed [5–12]. Here, we build on top
of a recently proposed decoder called the Union-Find (UF) decoder. It combines a very
low time complexity with a high threshold [13, 14] making it a practical solution for real
devices. The UF decoder maps each syndrome to a vertex in a non-connected graph on the
code lattice, and grows clusters of vertices locally by adding iteratively a layer of edges and
vertices to existing clusters until all clusters have an even number of non-trivial syndrome
vertices. It then trims the clusters until all non-trivial syndrome vertices are paired and
linked by a path, which is the correcting operator. By growing the clusters of vertices in
order of their sizes, the UF-decoder can be regarded as a heuristic for minimum-weight
matching, and has a threshold of pth = 9.9% for the toric code. The complexity of the UF
decoder is driven by the merging between clusters. For this the algorithm uses the Union-
Find or disjoint-set data structure [15], which has worst-cast time complexity O(Nα(N)),
where αis the inverse of Ackermann’s function. For any physical feasible amount of qubits,
this value is α(N)≤3, leading to an “almost-linear” time complexity.
We propose here a modification of the UF decoder that improves the heuris-
tic for minimum-weight matching. The modified decoder, which we dub the
Union-Find Balanced Bloom decoder (UFBB), achieves near MWPM thresh-
olds while retaining a quasilinear time complexity.
In the following we give some intuition into how the UFBB decoder works. Consider
the cluster of vertices V={v0, v1, v2}in Figure 1. Now let us investigate the weights of a
matching if an additional vertex v0is connected to the cluster. If v0is connected to v0or
to v2, then the resulting matching has a total weight of 2: (v0, v0) and (v1, v2), or (v0, v1)
and (v2, v0). However, if v0is connected to vertex v2, then the total weight is 3: (v0, v1)
and (v0, v2). Inspired by this idea, we introduce the concept of potential matching weight
(PMW) of a vertex.
1S.Hu-1@student.tudelft.nl
1
The calculation of the PMW requires to introduce a new data structure that we call
the node-set of a cluster. The node-set of a cluster is a partition of the cluster such that
each element of the partition consists of a set of adjacent vertices that are either interior
elements in the associated graph or have equal PMW (Figure 2). The calculation of the
PMW is performed by two depth-first searches of the node-set (Figure 3), where the PMW
is translated into a node delay that determines the priority for cluster growth, such that
the growth of a cluster moves towards equal PMW in the cluster (Balanced Bloom).
The UFBB decoder has a higher complexity than the UF decoder. Due to the merges
of clusters, the PMW values in a cluster change and need to be recalculated, which in turn
requires to join the associated node-sets. These join operations are more complex than
those of the UF (union of vertex sets). However, we can show that the worst-case time
complexity of UFBB is O(nlog n), which is still quasilinear.
Our numerical results show that the error threshold of the UFBB decoder (Figure 4)
is pth = 10.25% compared to 10.02% for our implementation of the UF decoder and near
the threshold of MWPM 10.35% (thresholds differ from reported value due to changes
in cluster sorting, fitting parameters, etc.). Including measurement errors, the UFBB
decoder achieves a threshold of 2.86%, compared to 2.70% (UF) and 2.98% (MWPM).
We also find that the numeric average-case time complexity (for a range of error rates in
Figure 5) matches the complexity of the UF decoder up to a constant factor.
[1] Eric Dennis et al. “Topological quantum memory”. In: Journal of Mathematical Physics 43.9 (2002),
pp. 4452–4505.
[2] A Yu Kitaev. “Fault-tolerant quantum computation by anyons”. In: Annals of Physics 303.1 (2003),
pp. 2–30.
[3] Sergey Bravyi, Martin Suchara, and Alexander Vargo. “Efficient algorithms for maximum likelihood
decoding in the surface code”. In: Physical Review A 90.3 (2014), p. 032326.
[4] Vladimir Kolmogorov. “Blossom V: a new implementation of a minimum cost perfect matching
algorithm”. In: Mathematical Programming Computation 1.1 (2009), pp. 43–67.
[5] Austin G Fowler. “Minimum weight perfect matching of fault-tolerant topological quantum error
correction in average O(1) parallel time”. In: arXiv preprint arXiv:1307.1740 (2013).
[6] Guillaume Duclos-Cianci and David Poulin. “Fault-tolerant renormalization group decoder for Abelian
topological codes”. In: arXiv preprint arXiv:1304.6100 (2013).
[7] Adrian Hutter, Daniel Loss, and James R Wootton. “Improved HDRG decoders for qudit and non-
abelian quantum error correction”. In: New Journal of Physics 17.3 (2015), p. 035017.
[8] Fern HE Watson, Hussain Anwar, and Dan E Browne. “Fast fault-tolerant decoder for qubit and
qudit surface codes”. In: Physical Review A 92.3 (2015), p. 032309.
[9] David K Tuckett, Stephen D Bartlett, and Steven T Flammia. “Ultrahigh error threshold for surface
codes with biased noise”. In: Physical review letters 120.5 (2018), p. 050505.
[10] Aleksander Kubica and John Preskill. “Cellular-automaton decoders with provable thresholds for
topological codes”. In: Physical review letters 123.2 (2019), p. 020501.
[11] Giacomo Torlai and Roger G Melko. “Neural decoder for topological codes”. In: Physical review
letters 119.3 (2017), p. 030501.
[12] Savvas Varsamopoulos, Ben Criger, and Koen Bertels. “Decoding small surface codes with feedfor-
ward neural networks”. In: Quantum Science and Technology 3.1 (2017), p. 015004.
[13] Nicolas Delfosse and Gilles Z´emor. “Linear-time maximum likelihood decoding of surface codes over
the quantum erasure channel”. In: arXiv preprint arXiv:1703.01517 (2017).
[14] Nicolas Delfosse and Naomi H Nickerson. “Almost-linear time decoding algorithm for topological
codes”. In: arXiv preprint arXiv:1709.06218 (2017).
[15] Robert Endre Tarjan. “Efficiency of a good but not linear set union algorithm”. In: Journal of the
ACM (JACM) 22.2 (1975), pp. 215–225.
2
V
v0
v0
0
v1
v0
0
v2
v0
0
Figure 1: Unbalanced matching
weight in cluster vertex set V.
The matching edges (dashed)
correspond to the position of v0.
σ0σ1σ2
v3
v4
v5
V
N:
Figure 2: A node-set Nvs. a
vertex set V, both representing
the same cluster. Each shaded
area covers the vertices of a dif-
ferent node.
Parity
Delay
N
Figure 3: Two depth-first
searches on Nto compute node
parities (head recursively) and
delays (tail recursively).
Figure 4: Decoder success rate and threshold. Figure 5: Decoder performance in computation time.
3