Qu'est-ce que le «Surface Code»? (Correction d'erreur quantique)

21

J'étudie l'informatique quantique et l'information. J'ai croisé la phrase «Surface Code» mais je ne trouve pas une brève explication de ce que c'est et comment ça marche. J'espère que vous pourrez m'aider avec ça.

Remarque: Si vous le souhaitez, vous pouvez utiliser des mathématiques compliquées, je connais dans une certaine mesure la mécanique quantique.

Ivanovitch
la source
1
Bienvenue! Pour clarifier: les réponses devraient-elles supposer que vous avez déjà examiné les codes toriques et les codes stabilisateurs au niveau de Wikipédia ?
agaitaarino
2
Je ne connais pas les codes toriques ou les codes stabilisateurs: | Mais je vais lire à ce sujet
Ivanovitch
1
Agréable! Cela devrait être un bon début, je pense. Je suggère peut-être de les examiner rapidement et de mettre plus de détails dans la question: des choses que vous pensez déjà comprendre et d'autres qui n'ont pas encore autant de sens. Une fois qu'il a été répondu, cela pourrait être un Q&A très utile pour les personnes qui viennent après vous: ce sont des concepts importants et la terminologie est en effet un peu déroutante.
agaitaarino
4
Je ne connais pas le brief, mais arxiv.org/abs/1208.0928 est l'endroit où j'ai commencé à apprendre le code de surface.
Craig Gidney

Réponses:

10

Les codes de surface sont une famille de codes de correction d'erreurs quantiques définis sur un réseau 2D de qubits. Chaque code de cette famille a des stabilisateurs qui sont définis de manière équivalente dans la masse, mais diffèrent les uns des autres dans leurs conditions aux limites.

Les membres de la famille des codes de surface sont parfois également décrits par des noms plus spécifiques: le code torique est un code de surface avec des conditions aux limites périodiques, le code planaire est défini sur un plan, etc. Le terme «code de surface» est parfois également utilisé. de manière interchangeable avec «code planaire», car il s'agit de l'exemple le plus réaliste de la famille des codes de surface.

Les codes de surface sont actuellement un vaste domaine de recherche, je vais donc vous indiquer quelques bons points d'entrée (en plus de l'article Wikipedia lié à ci-dessus).

Les codes de surface peuvent également être généralisés aux qudits. Pour en savoir plus, voir ici .

James Wootton
la source
Le code des surfaces fonctionne-t-il uniquement pour les ordinateurs quantiques topologiques?
Ivanovitch
2
Les codes de surface fonctionneraient pour tous les qubits. Dans un certain sens, avec les codes de surface, vous créez un ordinateur quantique topologique à l'aide de qubits non topologiques.
James Wootton
13

La terminologie du «code de surface» est un peu variable. Il peut se référer à une classe entière de choses, des variantes du code Toric sur différents réseaux, ou il peut se référer au code Planaire, la variante spécifique sur un réseau carré avec des conditions aux limites ouvertes.

Le code torique

Je vais résumer certaines des propriétés de base du code Toric. Imaginez un réseau carré avec des conditions aux limites périodiques, c'est-à-dire que le bord supérieur est joint au bord inférieur et le bord gauche est joint au bord droit. Si vous essayez ceci avec une feuille de papier, vous constaterez que vous obtenez une forme de beignet, ou tore. Sur ce treillis, nous plaçons un qubit sur chaque bord d'un carré.

entrez la description de l'image ici

Stabilisateurs

Ensuite, nous définissons tout un tas d'opérateurs. Pour chaque carré du réseau (comprenant 4 qubits au milieu de chaque bord), nous écrivons agissant une rotation Pauli- X sur chacun des 4 qubits. L'étiquette p fait référence à «plaquette», et n'est qu'un indice pour que nous puissions ensuite compter sur l'ensemble des plaquettes. Sur tous les sommets du réseau (entouré de 4 qubits), nous définissons A s = Z Z Z Z . s fait référence à la forme d'étoile et, encore une fois, nous permet de résumer tous ces termes.

Bp=XXXX,
Xp
UNEs=ZZZZ.
s

Nous observons que tous ces termes commuent mutuellement. C'est trivial pour car les opérateurs de Pauli font la navette entre eux et moi . Plus de prudence est requise avec [ A s , B p ] = 0 , notez que ces deux termes ont soit 0 ou 2 sites en commun, et que des paires d'opérateurs de Pauli différents font la navette, [ X X , Z Z ] = 0[UNEs,UNEs]=[Bp,Bp]=0je[UNEs,Bp]=0[XX,ZZ]=0.

Espace de code

Puisque tous ces opérateurs font la navette, nous pouvons définir un état propre simultané de tous, un état telle que s : A s | ψ = | ψ |ψ Ceci définit l'espace de code du code. Nous devons déterminer sa taille.

s:UNEs|ψ=|ψp:Bp|ψ=|ψ.

N×NN22N2N2UNEsBp±1UNEs2=Bp2=je

sUNEs=pBp=jeUNEsBp

Opérateurs logiques

X1,LZ1,LX2,LZ2,L

[X1,L,X2,L]=0[X1,L,Z2,L]=0[Z1,L,Z2,L]=0[Z1,L,X2,L]=0
{X1,L,Z1,L}=0{X2,L,Z2,L}=0

Il existe quelques conventions différentes pour étiqueter les différents opérateurs. J'irai avec mon préféré (qui est probablement le moins populaire):

  • ZZ1,L

  • ZX2,LZ2,L

  • XZ2,L

  • XX1,L

XZ

|ψX,y:Z1,L|ψX,y=(-1)X|ψX,y,Z2,L|ψX,y=(-1)y|ψX,y

NN

Détection et correction d'erreurs

UNEsBp±1

X-1+1XXX

Erreur de correction du seuil

NNNXZpp=0,1111%. Il a également un seuil tolérant aux pannes fini (où vous autorisez des mesures et des corrections erronées avec un certain taux d'erreur par qubit)

Le code planaire

Les détails sont plus identiques au code Toric, sauf que les conditions aux limites du réseau sont ouvertes au lieu de périodiques. Ce mens que, sur les bords, les stabilisateurs se définissent légèrement différemment. Dans ce cas, il n'y a qu'un seul qubit logique dans le code au lieu de deux.

DaftWullie
la source