# Tag Info

5

When using a simulator, it doesn't really matter what kind of qubit you refer to. You can even mix-and-match the types. The type of qubit only becomes relevant when you intend to run on a device, because devices have qubits at specific locations. For example, if you wanted to run on Bristlecone, you would limit yourself to GridQubit instances that actually ...

5

Primal and dual lattice We do not need to use the dual lattice. The observation that the primal lattice is sufficient to describe both the $X$- and $Z$-type stabilizer generators is correct. To that end, we associate the data qubits with the edges of the lattice, one type of operators, e.g. $X$, with the vertices and the other type of operators, e.g. $Z$, ...

4

an X error on the top left qubit and the qubit beneath it would be undetectable That error would be detected by the flipping of the four body Z stabilizer adjacent to the lower qubit you operated on: If you or I got X and Z mixed up, then the error is undetectable, but it corresponds to a topologically trivial cycle from a boundary to itself, so it has no ...

4

Each vertex has a physical data qubit. But what exactly do the operators (green circles) represent? Is there an X and Z operator on every vertex site, or only some of them (Figure 1b)? The circles on, e.g. the bottom-left of Fig. 1, show you how to describe each of the stabilizers. So, for every mustard yellow square in the top-left diagram, there is a ...

4

For $|0\rangle$, $|1\rangle$, $|+\rangle$, and $|-\rangle$ you do transversal initialization (initialize all physical qubits to the desired state, then turn on the stabilizers). For $|i\rangle$ and $|-i\rangle$ you do topological initialization using twists. For $T|+\rangle$ states and other states with nice state distillation protocols, you do noisy low ...

4

1) Magic state distillation is performed within the surface code If you mean the distillation circuit is implemented with encoded logical qubits instead of raw physical qubits, then yes. 2) The initial step of producing many copies of raw noisy T-states is done through the direct use of a non-fault tolerant T-gate Yes, the initial T states fed into the ...

3

is the common depiction of a surface code (the pattern of the measure qubits and data qubits) to be taken literally as a real-space image of the actual hardware? Correct. The surface code is physically implemented by a planar grid of qubits. Left image source are surface codes still a theoretical framework due to the massive amount of qubits that are ...

3

1) There are 4 Bell states, namely the ones you listed divided by $\sqrt{2}$. There is no "the bell state". The Bell states are only defined for 2 qubits, so there is no "higher dimensional definition of a Bell state". One of the key features of the Bell states is that they're maximally entangled. If this is what you'd like in a higher dimensional analog of ...

2

To make a simple example, let's imagine we are not doing measurement by instead just applying the stabilizer operators. So we want to do $XXXX$ around the $X$ plaquettes, and $ZZZZ$ around the $Z$ plaquettes. The method in the article you mention applies operations in four steps: first to the 'north east' qubit of each plaquette, then in the order NW $\to$ ...

2

I've not read the cited paper, so I don't know how this corresponds to anything that they say, but one way that I would think about it is, if I have an unknown qubit state stored on a single qubit, how do I copy this onto a surface code already initialised in logical 0? Now, if it weren't logical qubits, we can easily write down a circuit that would ...

2

What is a “temporal” or “timelike” logical error in the surface code? An example of an undetectable timelike error is a stabilizer measurement being consistently wrong. For example, when you initialize your data qubits to be $|0\rangle$, all the X stabilizer measurements project randomly into their +1 or -1 eigenspaces. If one of the X stabilizers happens ...

2

Well I also had a similar issue. As far as I know, when you are considering Lattice Surgery specifically Merging Operation, you get the final output state depending on Measurement result. For applying CNOT operation between two Logical qubits, according to what result(Merging Operation) you get, you decide whether you should apply Logical operator or not. In ...

2

The key property these circuits have to satisfy is that, if there is a small number of Z or X errors next to the key gate (the T gate or the S gate in this case), the measurements that you perform will detect those errors. Additionally, they have to have the property that in the noiseless case they output the state you want. Put those two together, and you ...

2

I will attempt to provide some insight regarding your first question. For starters, both quantum surface codes and quantum block codes are stabilizer codes, which means that although they are significantly different in terms of their construction and utility, they still share some common ground. With regard to which code family is more promising, I believe ...

1

An encoding circuit is needed [...] for toric and surface codes The notebook you linked does a surface code experiment at the end. It uses Stim's built-in surface code circuit generation (stim.Circuit.generated). Running: import stim circuit = stim.Circuit.generated( "surface_code:rotated_memory_z", distance=3, rounds=10**5, ...

1

The 𝑋 error on the top left qubit and the qubit beneath it indeed produce the same measurement syndrome, but this does not mean they are uncorrectable. Lets call 𝑋 on the top left qubit $𝑋_{topleft}$ and 𝑋 beneath it $X_{beneath}$. $X_{topleft} 𝑋_{beneath}$ is a stabilizer and acts as the identity gate on the logical qubit. So we can choose to correct ...

1

Distinguishing $X$ and $Z$ errors is easy. $X$ errors anti-commute with the $Z$-type stabilizers, and so when you perform a measurement of those parity checks, you get and answer '1'. Similarly, $Z$ errors give you a '1' answer only on the $X$-type parity checks. Also, note that, in the bulk (i.e. not on the edges), you never get a '1' on only one weight-4 ...

1

Cirq defines qubits to be LineQubits or GridQubits, since these are common constructions in NISQ computers. Qubits are commonly defined in lists (or generally iterables) for easy indexing in algorithms. In simulation using either has no impact on your algorithm. From Cirq's documentation GridQubit is a qubit on a 2d square lattice.

1

You can initialize a qubit to any arbitrary state by gate $U3$ (abbreviation used on IBM Q): $$U3(\theta,\phi,\lambda)= \begin{pmatrix} \cos(\theta/2) & -\mathrm{e}^{i\lambda} \sin(\theta/2) \\ \mathrm{e}^{i\phi}\sin(\theta/2) & \mathrm{e}^{i(\lambda+\phi)} \cos(\theta/2) \end{pmatrix}$$ It is also possible to prepare any multi-qubit quantum ...

Only top voted, non community-wiki answers of a minimum length are eligible