# State of the art logical gate implementations for surface code

I am currently learning surface code. In this framework, we can either do a quantum memory (for which we have good knowledge of how to do it), but we can also "in principle" perform an arbitrary computation.

So far, to implements non identity logical gates (hence, cNOT, Hadamard,...), there are from my very partial understanding different techniques. Please note that for 1. and 2., I do not know any technical details behind those yet, I just barely know their name.

1. "Lattice surgery": I don't know exactly in what it consists but I know it can be used to perform logical gates.
2. Braiding. I actually believe it is the same as lattice surgery but I am not sure.
3. Transversal operations. We first protect each logical qubit by surface code. Then we can use the concatenated construction (for instance based on the Steane method), and perform transversal Clifford gates with this.

Also, we can perform gate by doing magic distillation protocole (but as you typically need to know "at least" how to perform a logical cNOT, I guess this is more a complementary technique to have the full gateset).

My questions:

1. Is my little summary of techniques more or less complete (and correct).
2. What is the most seriously considered technique to perform logical gates for the surface code?
3. What is a good pedagogic reference to learn it?

I am currently learning the basics of surface codes using the following refs: ref1 ref2 ref3. They talk a bit about how to do logical gates but they are also some kind of general reviews (and they do not necessarily enter in too much details for this). My goal is to save my energy to focus on learning what is considered to be a good way to do logical gates (and not some historical "abandonned" ways).

1. Is my little summary of techniques more or less complete (and correct).

Yes, basically.

1. What is the most seriously considered technique to perform logical gates for the surface code?

Lattice surgery is the current best technique.

1. What is a good pedagogic reference to learn it?

For the basics I'd recommend reading "Surface code quantum computing by lattice surgery" and "Low overhead quantum computation using lattice surgery". For putting together larger scale computations see "A Game of Surface Codes" and "Flexible layout of surface code computations using AutoCCZ states".

There's also "Poking Holes and Cutting Corners to Achieve Clifford Gates with the Surface Code" which explains how the S gate is done via code deformation in the context of lattice surgery.

• Great, thanks!! Jan 24 at 13:25

A list of up-to-date techniques and references have been compiled at the Error-correction zoo for this and other codes: https://errorcorrectionzoo.org/c/surface.

• Hey! Thanks for your answer. Just a comment for your last paragraph. While I think ref3 gives a good overview I figured out that many of the things explained there are not really proven (i.e you have to trust that it works). And I find part hard to understand without introducing additional material (for instance it is hard to understand properly that you can resist to $(d-1)/2$ errors without introducing the notion of dual lattice and defining the $0,1$ and $2$-chains. Jan 24 at 13:23