5

On the rotated surface code, it is known that choosing a "bad" interaction order when measuring stabilizers leads to a halving of the effective code distance. This is because of hook errors: a single error on the measurement qubit can propagate to two errors on two data qubits supporting the same logical operator. This issue with hook errors occurs on qLDPC codes in general.

I am interested in ways of avoiding this issue, that is, in coming up with distance-preserving stabilizer measurement circuits, more generally.

In a comment to a related StackExchange post (Advantages and disadvantages of rotated surface code), Gidney mentioned in a comment that "alternating the order from round to round fixes them [the distance-halving problem] regardless of the order". I am confused on why this works. My naïve expectation is that alternating between two bad interaction orders, or indeed even a good interaction order with a bad one, will still lead to a halving of distance as hook errors on data qubits nonetheless appear twice-at-a-time, each time aligned with a logical operator.

Might anyone be able to shed some light on why this alternating strategy works?

Exorus Koh
  • 53
  • 3

1 Answers1

6

Hook errors are not single-cycle phenomena. When a hook error occurs, the detection events it produces are not just separated by 2 layers in space; they are separated by 1 layer in time. This means that what happens from round to round can matter. It also means that, if you make a circuit that has bad hook errors but only runs for a couple rounds, you won't see how bad the hook errors are until you add more rounds.

Here is a simplified example of how oscillating the order helps. In the following picture the circles are detectors. The black edges are potential data errors and measurement errors. The red edges are potential hook errors. Depending on the gate ordering in a round, hook errors lean rightward or leftward in spacetime. The blue edges form a minimum length error chain travelling from the left to the right of the patch.

enter image description here

When the red edges have a consistent lean, you can race across in double sized steps. When they alternate the direction that they lean from round to round, you keep having to take an extra useless step to line up to take a double step. So you end up only losing one distance (from one double step that messes up the alignment for other double steps), instead of losing half the distance.

In a full surface code circuit, this picture is more complicated. There will be a second space direction, and there will be additional diagonal spacetime edges that aren't hook errors. But the same phenomenon occurs, where oscillating causes hook errors to not line up in a way that allows taking more than one to be useful. It's not the case that literally all possible cycles have the property that alternating their order causes hook errors to only reduce the distance by 1, but it's almost always helpful to do.

Craig Gidney
  • 44,299
  • 1
  • 41
  • 116