Skip to main content
Planned maintenance impacting Stack Overflow and all Stack Exchange sites is scheduled for Monday, September 16, 2024, 5:00 PM-10:00 PM EDT (Monday, September 16, 21:00 UTC- Tuesday, September 17, 2:00 UTC). The email/password authentication method will be unavailable for logging in and registering. Read more here

Questions tagged [surface-code]

The surfaces codes are a family of quantum error correcting codes defined on a 2D lattice of qubits. Each code within this family has stabilizers that are defined equivalently in the bulk, but they differ in their boundary conditions.

Filter by
Sorted by
Tagged with
3 votes
1 answer
51 views

Are toric codes (surface codes) doubly even, therefore have transversal $S$?

From this site and this post, doubly even codes have transversal $S$. Based on this post, surface codes don't have transversal $S$ gates. We can check the boundary stabilizers of surface codes are not ...
Yunzhe's user avatar
  • 915
1 vote
1 answer
52 views

Why does measuring the $X$ stabilisers at the boundary for rough merging give $X_{L}X_{L}$

In the paper Surface code quantum computing by lattice surgery, for rough merging, they state that measuring the $X$ stabilisers at the boundary is equivalent to $X_{L}X_{L}$. What I don't understand ...
GaussStrife's user avatar
  • 1,095
0 votes
1 answer
36 views

Are rough and smooth boundaries (or primal and dual) always Z stabilisers and X stabilisers?

I've been going through a lot of literature on surface codes and lattice surgery, and I keep running into the issue of different papers, at least to me, changing their definition of rough and smooth (...
GaussStrife's user avatar
  • 1,095
1 vote
1 answer
150 views

Are the preparations of a logical state in a surface code random and do we need to update the stabilizers after preparation?

Reading Fowler et al, there is something in regards to the intialisation of the surface code in a logical state (ie a state of a logical operator) that is confusing me. I can think of two examples ...
GaussStrife's user avatar
  • 1,095
2 votes
0 answers
111 views

Measurement of a logical operator in a Foliated Surface Code

I am reading Universal Fault Tolerant Measurement Based Quantum Computing. On page 6, under the section Measurement-based qubit transmission, it states that measurement of the logical operators is ...
GaussStrife's user avatar
  • 1,095
0 votes
1 answer
57 views

What are existing ways to do logical CZ gates on the surface code?

The surface code is a CSS code, so assuming all-to-all connectivity (unrealistic on most physical platforms), the logical CNOT can be implemented transversally. In a biplanar architecture, the setup ...
clearski's user avatar
1 vote
1 answer
71 views

What is the physical operation behind "moving edges" and "moving corners" in Litinski's game of surface codes paper?

I was reading Litinski's A game of surface codes (https://quantum-journal.org/papers/q-2019-03-05-128/pdf/). In the introduction (page 2), the paper talks about operations like "moving edges"...
siddharth dangwal's user avatar
0 votes
0 answers
23 views

Toric Code with stim?

Is there any way to encode toric code with stim with desired error such as erasure error and z error? I have seen their documentation on surface code but that is already encoded. Is there any good ...
Rayhan's user avatar
  • 1
0 votes
0 answers
26 views

Boundary conditions for surface code

I have a question about boundary conditions for surface codes. Do any surface codes have torus-like boundary conditions? Are there any surface codes that don't actually have boundary conditions, i.e. ...
Kmai's user avatar
  • 21
1 vote
1 answer
78 views

Advantages and disadvantages of rotated surface code

I think one of the advantages of rotated surface code is that it can express surface code with fewer physical bits. Are there any other advantages? Also, are there any disadvantages compared to ...
Kmai's user avatar
  • 21
0 votes
1 answer
29 views

Realization of Surface code, can an eigenvalue of -1 be taken?

I have a question about the implementation of Surface Code. I understand that Surface Code is a stabilizer state defined by plaquette operators and vertex operators, meaning it is a state where the ...
Kmai's user avatar
  • 21
1 vote
1 answer
76 views

Why can Pauli errors $E$ be decomposed as $E=T(S)LG$ with $T(S)$ "pure errors"?

I have a question about the decomposition of Pauli errors. Pauli error $E \in \{I,X,Y,Z\}^{{\bigotimes}n}$ that satisfies the syndrome $S$ can be decomposed into a product of pure error $T(S)$, ...
Kmai's user avatar
  • 21
2 votes
1 answer
100 views

Fault-tolerant Bell measurement in the surface code

How do you do a fault tolerant Bell measurement in the surface code? Experimentally how do you do a Bell state measurement? Is it just a CNOT and a Hadamard and then a measurement in the computational ...
Ian Gershon Teixeira's user avatar
0 votes
1 answer
62 views

Obtaining and Applying XX and ZZ Parity in Stim for Controlled Paulis

I am attempting to perform a CNOT between two surface code qubits in Stim, based on this paper by Daniel Litinski and Felix von Oppen. The CNOT they perform is shown in the figure below (Figure 3 from ...
decaf's user avatar
  • 25
0 votes
3 answers
90 views

Does the threshold estimation of the surface code not need a fault-tolerant setup?

The threshold estimation of the $[[9,1,3]]$ surface code in stim's getting started tutorial extracts the syndromes by having a single ancilla for each stabilizer generator. It is the same setup as in ...
qubitzer's user avatar
  • 894
0 votes
1 answer
53 views

Why do Surface codes generate so much measurement data?

I read in the Sparse Blossom paper: "A surface code superconducting quantum computer with a million physical qubits will generate measurement data at a rate of around 1 terabit per second". ...
Daniel Mandragona's user avatar
2 votes
1 answer
87 views

Locally transforming a color code into two surface codes

I've heard before that there are 2d-local unitary operations that transform color code stabilizers into two sets of surface code stabilizers. Globally this would presumably do things like transform a ...
Craig Gidney's user avatar
  • 40.8k
0 votes
1 answer
129 views

Is there a proof in the literature of magic state injection for surface codes?

Proofs of correctness for fault-tolerance schemes rarely give tight constants for error correction performance. However, they do provide formal reasoning that a scheme is correct and all the pieces ...
Chris Pattison's user avatar
1 vote
1 answer
38 views

Simulating an ideal circuit with surface code

In a seminal paper AGP, the authors proved the threshold theorem and obtained a threshold for concatenated Steane code $[[7^k,1,3^k]]$. One thing to note is that, to ensure fault-tolerance, error ...
AndyLiuin's user avatar
  • 386
0 votes
1 answer
60 views

Is there a relation between number of non-equivalent logical operators and number of logical qubits?

I've been reading this blog post about surface code and it says There are four non-equivalent types of loops: the trivial ones (stabilizers), the horizontal ones ($X_1$ operator), the vertical ones ($...
hamed's user avatar
  • 89
0 votes
1 answer
59 views

error correction after lattice surgery for merging

Imagine you have merged two surface codes with lattice surgery by measuring all the stabilizers and treating both surface codes as one surface code, then are we doing error correction before or after ...
Shahrooz Pooryousef's user avatar
0 votes
1 answer
85 views

Confusion about lattice-surgery operation

According to https://arxiv.org/abs/1111.4022, to perform a logical CNOT using lattice surgery, three patches of surface codes are needed and nearest neighbour operations are performed. However, I ...
AndyLiuin's user avatar
  • 386
4 votes
1 answer
85 views

How does the surface code satisfy constraints of relativity?

Consider a surface code in the shape of a rectangle that has very very long horizontal edges and very short vertical edges. I initialize the surface code into the logical state $\vert 0\rangle$. Let's ...
user1936752's user avatar
  • 3,137
1 vote
1 answer
125 views

State injection in a surface code

I am reading this paper on lattice surgery by Dominic Horsman et al, and am struggling to understand a simple method they put forward in their Figure 8(a)(b)(c) to inject an arbitrary state into a ...
quantumctrl's user avatar
0 votes
1 answer
29 views

Fault tolerance of turning off a stabilizer measurement for later rounds of error correction?

Suppose during a smooth lattice merge operation, I perform one round of error correction, treating the two code patches as one single lattice that stretches across the intermediate qubits. Then, one ...
usermm's user avatar
  • 101
0 votes
1 answer
79 views

Surface code with measurement errors

I am trying to implement error correction to a surface code with circuit-based noise model. In this model, there is a probability $p$ for an error in: initialization, Hadamard, CZ (or CNOT) and ...
David Dentelski's user avatar
1 vote
1 answer
95 views

How is Magic State Distillation (MSD) compatible with Stabiliser Measurement?

Suppose I have the rotated surface code in which I want to inject a $T$-state. What I don't get it is: suppose we do end up with the logical state $|0_L\rangle+e^{i\pi/4}|1_L\rangle$, then we must ...
JoJo P's user avatar
  • 347
3 votes
1 answer
85 views

How is a surface code state measured?

What is the exact operation required to measure the logical state of a surface code? Does one need to measure every data qubit, or only some subset of them to perform the measurement? For simplicity, ...
Whitman's user avatar
  • 33
3 votes
1 answer
77 views

Can you produce Non-Clifford gates via Lattice Surgery?

Is there any theorem stating that lattice merge/split operations (or perhaps more generally, so-called gauge-fixing) cannot produce a non-Clifford gate that can complete the universal gateset for the ...
usermm's user avatar
  • 101
2 votes
0 answers
60 views

How can I obtain the rotated surface code from the original unrotated one?

I am trying to understand the equivalence between the original planar surface code and the rotated version. Looking at Tomita and Svore's paper (2014), they say "The number of qubits [from ...
Ezequiel Rodriguez Chiacchio's user avatar
2 votes
3 answers
274 views

Rotated surface code vs unrotated surface code - Boundary stabilizers

I use these image for the questions below: When we look at the surface code, we can define it in two slightly different ways. The first figure shows a way where we keep all the data qubits and ...
user1936752's user avatar
  • 3,137
0 votes
1 answer
208 views

Initialization of surface code into a logical state

I read this nice answer about how to initialize a surface code into a logical state but have a basic question about it. If I take a surface code patch with all physical qubits in the $\vert 0\rangle$ ...
user1936752's user avatar
  • 3,137
1 vote
1 answer
60 views

What is the reason for qubit indexing in Stim's surface code skipping some indices?

A very silly question perhaps but why does Stim skip certain numbers when it initializes the surface code? For example, a distance 2 surface code has 4 data qubits and 3 ancilla qubits. The Stim ...
user1936752's user avatar
  • 3,137
1 vote
1 answer
53 views

Relating different surface code diagrams

How do I relate the surface code plaquette and vertex stabilisers of this depiction of the surface code (where the qubits are the edges): to this depiction (measurement qubits are the black dots, ...
compp's user avatar
  • 133
8 votes
1 answer
650 views

What exactly is a subsystem code?

I'm sure I'm just tripping up on terminology here. I'm new to the wonderful field of QEC, and so far am familiar with the stabiliser formalism and basic codes such as the generic surface code. I keep ...
compp's user avatar
  • 133
3 votes
0 answers
58 views

How many $ [[9,1,3]] $ surface codes are there?

Two codes are said to be equivalent if their code spaces are related by a non-entangling gate, i.e., a gate from $U(2)^{\otimes n} \rtimes S_n$, the local unitaries together with permutations. The ...
Ian Gershon Teixeira's user avatar
3 votes
1 answer
172 views

What is the best way to parallelise processes across multiple cores when computing logical error rates with Stim and PyMatching?

I am currently trying to compute logical error rates for the surface code using Stim's detector error models and PyMatching for different distances and noise strengths. tl;dr : What is the best ...
Ezequiel Rodriguez Chiacchio's user avatar
1 vote
1 answer
122 views

How can we decode non CSS codes like XZZX code with Pymatching?

I am trying to use Pymatching to decode some non CSS codes like the XZZX code. Pymatching is a perfect decoder for CSS codes, which can work effectively even of a large code distance. I have tried to ...
Qingwei Wang's user avatar
1 vote
1 answer
113 views

Lattice surgery and real-time decoding

This question pertains to the real-time classical processing required while running the surface code. Consider two logical patches $P$, $P'$. Let's assume that after $d$ rounds, a ...
control freak's user avatar
1 vote
1 answer
99 views

How can I use surface code measurement data produced with Qiskit to run matching algorithms (e.g. PyMatching)?

I built a complex time-space dependent error model with Qiskit, and I am simulating surface codes with such error model to test their error correction capabilities. Qiskit supplies measurement data as ...
Marzio Vallero's user avatar
0 votes
0 answers
27 views

3D surface code and unionfind

I was reading some papers about the UnionFind Decoder but I don't get how matching can be used to decode on a 3D surface code. If I understood correctly every layer in our 3D surface code corresponds ...
Feder's user avatar
  • 1
1 vote
0 answers
40 views

How to estimate the logical error rate function of different code distance parameters?

I know that if we have physical qubits in a grid of square shape with the same code distance of $X$ and $Z$, $d_X=d_Z=d$, then given physical qubit error rate $p$, we have logical estimate $$p_L\sim A\...
Zehong Fan's user avatar
0 votes
1 answer
103 views

Quantum Error Correction on a hexagonal lattice

I have an exercise in QEC, where I have given a hexagonal lattice with periodic boundary conditions (wrapped around a torus), with a qubit at each vertex. I have also given the Stabilizer generators $...
Ruebli's user avatar
  • 85
2 votes
1 answer
120 views

Number of logical cycles to implement $R_Z(\theta)$ gates in lattice surgery: why isn't it the number of layers $\times$ the $T$-count in $R_Z$?

Let's assume I want to implement a rotation $R_Z(\theta)$ for a lattice-surgery based computation, for $\theta$ being an arbitrary angle (i.e. the gate is not necessarily Clifford nor a $T$-gate). It ...
Marco Fellous-Asiani's user avatar
0 votes
1 answer
65 views

Litinsky's fast block scheme: should the tile count also include the number of **purified** magic-states

I was looking at the assumptions behind the Microsoft Azure resource estimator, which is mostly built on Litinsky's paper. Calling $Q_{\text{Alg}}$ the number of logical qubits required by the end-...
Marco Fellous-Asiani's user avatar
2 votes
0 answers
62 views

MWPM / Union Find Implementations for 3D Toric Code

I am currently looking into 3D surface codes and was wondering if there are open-source implementations for decoders like MWPM or the Union Find decoder. I found quite a lot of different GitHub repos ...
Oliver's user avatar
  • 21
1 vote
1 answer
126 views

What are the logical 0 & 1 states for the 17 qubit (9 data qubit) surface code?

What are the logical 1 and logical 0 states for the 17 qubit (9 data qubit ) surface code given stabilixzers below ? I have read there is an algorithm that calculates the logical 0 and 1 states ...
Doug Beveridge's user avatar
3 votes
0 answers
68 views

How to address the 2 logical qubits on the toric code individually? In general, how to address $k$ logical qubits in a $[[n,k,d]]$ code independently?

Suppose I have a $[[n,k,d]]$-quantum error correction code. Let us take the toric code $(T^2=S^1 \times S^1)$ as an example. We have 2 logical qubits whose logical operators lie along the different ...
JoJo P's user avatar
  • 347
3 votes
1 answer
119 views

Single-shot error correction for the surface code with measurement errors

I am trying to implement a single-shot error correction for the surface code with data + measurement errors (both with prob. p), using the (build-in) BP+OSD decoder. I am mostly following these papers:...
David Dentelski's user avatar
3 votes
2 answers
255 views

Complexity of translation between Measurement Based and Circuit Based with Error Correction

As I know, translation between measurement-based and circuit-based is polynomial, not trivial, and might not be efficient in real time. It behaves this way because given some quantum circuit, we have ...
Ron Cohen's user avatar
  • 1,452