La correction d'erreur quantique est un aspect fondamental du calcul quantique, sans lequel les calculs quantiques à grande échelle sont pratiquement impossibles.
Un aspect de l'informatique quantique à tolérance de pannes qui est souvent mentionné est que chaque protocole de correction d'erreur a associé un seuil de taux d'erreur . Fondamentalement, pour qu'un calcul donné puisse être protégé contre les erreurs via un protocole donné, le taux d'erreur des portes doit être inférieur à un certain seuil.
En d'autres termes, si les taux d'erreur des portes simples ne sont pas suffisamment bas, il n'est pas possible d'appliquer des protocoles de correction d'erreurs pour rendre le calcul plus fiable.
Pourquoi est-ce? Pourquoi n'est-il pas possible de réduire des taux d'erreur qui ne sont pas déjà très bas au départ?
Réponses:
Nous voulons comparer un état de sortie avec un état idéal, donc normalement, la fidélité, est utilisée car c'est un bon moyen de dire dans quelle mesure la mesure possible les résultats de comparent aux résultats de mesure possibles de , où est l'état de sortie idéal et est l'état atteint (potentiellement mélangé) après un processus de bruit. Lorsque nous comparons des états, il s'agit de ρ | ψ ⟩ | ψ ⟩ ρ F ( | ψ ⟩ , ρ ) = √F(|ψ⟩,ρ) ρ |ψ⟩ |ψ⟩ ρ
Décrivant à la fois les processus de correction de bruit et d' erreur en utilisant les opérateurs Kraus, où est le canal de bruit avec les opérateurs Kraus N i et E est le canal de correction d'erreurs avec les opérateurs Kraus E j , l'état après le bruit est ρ ' = N ( | ψ ⟩ ⟨ ψ | ) = ∑ i N i | ψ ⟩ ⟨ ψ | N † i et l'état après le bruit et la correction d'erreur est ρ = E ∘N Ni E Ej
La fidélité de ceci est donné par
Pour que le protocole de correction d'erreur soit utile, nous voulons que la fidélité après correction d'erreur soit supérieure à la fidélité après bruit, mais avant la correction d'erreur, de sorte que l'état corrigé d'erreur soit moins distinct de l'état non corrigé. Autrement dit, nous voulons Cela donne √
Fractionnement dans la partie corrigible, N c , pour lequel E ∘ N c ( | ψ ⟩ ⟨ ψ | ) = | ψ ⟩ ⟨ ψ | et la partie non corrigible, N n c , pour lequel E ∘ N n c ( | ψ ⟩ ⟨ ψ | ) = σ . Indiquant la probabilité que l'erreur soit corrigible comme P cN Nc E∘ Nc( | Ψ ⟩ ⟨ ψ | ) = | ψ ⟩ ⟨ ψ | Nn c E∘ Nn c( | Ψ ⟩ ⟨ ψ | ) = σ Pc et non corrigeable (c'est-à-dire que trop d'erreurs se sont produites pour reconstruire l'état idéal) car donne ∑ i , j | ⟨ Ψ | E j N i | ψ ⟩ | 2 = P c + P n c ⟨ ψ | σ | ψ ⟩ ≥ P c , où l' égalité sera assumée en supposant ⟨ ψ | σ | ψ ⟩ = 0Pn c
Pour qubits, avec une probabilité d'erreur (égale) sur chaque qubit comme p ( remarque : ce n'est pas le même que le paramètre de bruit, qui devrait être utilisé pour calculer la probabilité d'une erreur), la probabilité d'avoir un erreur corrigible (en supposant que les n qubits ont été utilisés pour coder k qubits, permettant des erreurs sur jusqu'à t qubits, déterminées par la limite singleton n - k ≥ 4 t ) est P cn p n k t n - k ≥ 4 t .
Les canaux de bruit peuvent également s'écrire pour une base P j , qui peut être utilisée pour définir une matrice de processus χ j , k = ∑ i α i , j α ∗ i , k . Cela donne ∑ i | ⟨ Ψ | N i | ψ ⟩ | 2 = ∑ j , k χNje= ∑jαi , jPj Pj χj , k= ∑jeαi , jα∗i , k où χ 0 , 0 = ( 1 - p ) n est la probabilité d'aucuneerreurproduise.
Cela signifie que la correction d'erreur a réussi à atténuer (au moins une partie) du bruit lorsque
Modifier à partir des commentaires:
Cela montre, à une approximation approximative, que la correction d'erreur, ou simplement la réduction des taux d'erreur, n'est pas suffisante pour un calcul tolérant aux pannes , à moins que les erreurs soient extrêmement faibles, selon la profondeur du circuit.
la source
Il y a déjà une bonne réponse mathématique, je vais donc essayer d'en fournir une facile à comprendre.
La correction d'erreur quantique (QEC) est un (groupe de) algorithme (s) assez complexe (s), qui nécessite beaucoup d'actions (portes) sur et entre les qubits. Dans QEC, vous connectez à peu près deux qubits à un troisième helper-qubit (ancilla) et transférez les informations si les deux autres sont égales (à certains égards spécifiques) dans ce troisième qubit. Ensuite, vous lisez ces informations sur l'ancialla. S'il vous dit qu'ils ne sont pas égaux, vous agissez sur ces informations (appliquez une correction). Alors, comment cela peut-il mal tourner si nos qubits et nos portes ne sont pas parfaits?
QEC peut réduire les informations stockées dans vos qubits. Chacune de ces portes peut altérer les informations qui y sont stockées si elles ne sont pas exécutées parfaitement. Donc, si l'exécution de la QEC détruit plus d'informations qu'elle n'en récupère en moyenne, c'est inutile.
Vous pensez avoir trouvé une erreur, mais vous ne l'avez pas trouvée. Si la comparaison (exécution de portes) ou la lecture des informations (ancilla) est imparfaite, vous pouvez obtenir des informations erronées et ainsi appliquer des "corrections erronées" (lire: introduire des erreurs). De plus, si les informations contenues dans les ancillas se désintègrent (ou sont modifiées par le bruit) avant de pouvoir les lire, vous obtiendrez également une lecture erronée.
Le but de chaque QEC est évidemment d'introduire moins d'erreurs qu'il n'en corrige, vous devez donc minimiser les effets susmentionnés. Si vous faites tout le calcul, vous trouvez des exigences assez strictes sur vos qubits, portes et lectures (selon l'algorithme QEC exact que vous avez choisi).
la source
Version classique
Version quantique
la source
Pour moi, il semble y avoir deux parties de cette question (une de plus liée au titre, une de plus liée à la question elle-même):
1) À quelle quantité de bruit les codes de correction d'erreur sont-ils efficaces?
2) Avec quelle quantité d'imperfection dans les portes pouvons-nous implémenter des calculs quantiques tolérants aux pannes?
Permettez-moi d'abord de souligner la différence: les codes de correction d'erreur quantique peuvent être utilisés dans de nombreux scénarios différents, par exemple pour corriger les pertes de transmission. Ici, la quantité de bruit dépend principalement de la longueur de la fibre optique et non de l'imperfection des portes. Cependant, si nous voulons implémenter un calcul quantique tolérant aux pannes, les portes sont la principale source de bruit.
Le 1)
Le 2)
Nous voulons effectuer des calculs quantiques arbitrairement longs avec un ordinateur quantique. Cependant, les portes quantiques ne sont pas parfaites. Afin de faire face aux erreurs introduites par les portes, nous utilisons des codes de correction d'erreurs quantiques. Cela signifie qu'un qubit logique est codé en plusieurs qubits physiques. Cette redondance permet de corriger une certaine quantité d'erreurs sur les qubits physiques, de sorte que les informations stockées dans le qubit logique restent intactes. Des codes plus grands permettent à des calculs plus longs d'être toujours précis . Cependant, des codes plus grands impliquent plus de portes (par exemple plus de mesures de syndrome) et ces portes introduisent du bruit. Vous voyez qu'il y a un compromis ici, et quel code est optimal n'est pas évident.
Si le bruit introduit par chaque porte est inférieur à un certain seuil (le seuil de tolérance aux pannes ou de précision), il est possible d'augmenter la taille du code pour permettre des calculs arbitrairement longs. Ce seuil dépend du code avec lequel nous avons commencé (il est généralement concaténé de manière itérative avec lui-même). Il existe plusieurs façons d'estimer cette valeur. Souvent, cela se fait par simulation numérique: introduisez des erreurs aléatoires et vérifiez si le calcul fonctionne toujours. Cette méthode donne généralement des valeurs de seuil trop élevées. Il existe également des preuves analytiques dans la littérature, par exemple celle d'Aliferis et Cross .
la source
Cependant, la raison principale est que vous ne pouvez pas utiliser un circuit de détection d'erreurs simple: chaque CNOT (ou chaque autre porte de qubit non triviale 2 ou plus) transmet les erreurs d'un qubit à un autre qubit, ce qui serait désastreux pour le plus trivial. cas d'un seul code correcteur d'erreur qubit et encore très mauvais pour des codes plus sophistiqués. Par conséquent, une mise en œuvre (utile) tolérante aux pannes nécessite encore plus d'efforts qu'on pourrait le croire naïvement.
Les erreurs incohérentes sont plus bénignes. Pourtant, si l'on doit donner une seule valeur comme seuil d'erreur, on ne peut pas choisir de ne supposer que des erreurs bénignes!
la source