Le code de répétition revisité
Nous allons à présent revoir le code de répétition à 3 bits, cette fois en le formulant en termes d'opérations de Pauli. Ce sera notre premier exemple de code stabilisateur.
Observables de Pauli pour le code de répétition
Rappelons que, lorsqu'on applique le code de répétition à 3 bits aux qubits, un vecteur d'état qubit donné est encodé sous la forme
Tout état de cette forme est un encodage valide sur 3 qubits d'un état qubit — mais si on avait un état dont on n'était pas sûr, on pourrait vérifier qu'il s'agit d'un encodage valide en vérifiant les deux équations suivantes.
La première équation stipule que l'application d'opérations aux deux qubits les plus à gauche de n'a aucun effet, c'est-à-dire que est un vecteur propre de avec la valeur propre La deuxième équation est similaire, sauf que les opérations sont appliquées aux deux qubits les plus à droite. L'idée est que, si on considère comme une combinaison linéaire d'états de la base standard, alors la première équation implique qu'on ne peut avoir de coefficients non nuls que pour les états de la base standard où les deux bits les plus à gauche ont une parité paire (ou, de manière équivalente, sont égaux), et la deuxième équation implique qu'on ne peut avoir de coefficients non nuls que pour les états de la base standard pour lesquels les deux bits les plus à droite ont une parité paire.
De manière équivalente, si on considère les deux opérations de Pauli et comme des observables, et qu'on les mesure toutes les deux en utilisant les circuits suggérés à la fin de la section précédente, on serait certain d'obtenir des résultats de mesure correspondant aux valeurs propres , car est un vecteur propre des deux observables avec la valeur propre Mais la version simplifiée du circuit (combiné) pour mesurer indépendamment les deux observables, représentée ici, n'est autre que le circuit de vérification de parité pour le code de répétition à 3 bits.
Les deux équations ci-dessus impliquent donc que le circuit de vérification de parité produit la sortie ce qui est le syndrome indiquant qu'aucune erreur n'a été détectée.
Les opérations de Pauli à 3 qubits et sont appelées générateurs du stabilisateur pour ce code, et le stabilisateur du code est l'ensemble engendré par les générateurs du stabilisateur.
Le stabilisateur est un objet mathématique fondamentalement important associé à ce code, et le rôle qu'il joue sera discuté au fil de la leçon. Pour l'instant, observons qu'on aurait pu faire un choix différent pour les générateurs et les vérifications de parité correspondantes, notamment en prenant à la place de l'un des générateurs sélectionnés, mais le stabilisateur et le code lui-même n'en auraient pas été modifiés.
Détection d'erreurs
Nous allons ensuite considérer la détection des retournements de bits pour le code de répétition à 3 bits, en nous concentrant sur les interactions et les relations entre les opérations de Pauli impliquées : les générateurs du stabilisateur et les erreurs elles-mêmes.
Supposons qu'on ait encodé un qubit en utilisant le code de répétition à 3 bits, et qu'une erreur de retournement de bit se produise sur le qubit le plus à gauche. Cela provoque la transformation de l'état selon l'action d'une opération (ou erreur ).
Cette erreur peut être détectée en effectuant les vérifications de parité pour le code de répétition à 3 bits, comme discuté dans la leçon précédente, ce qui est équivalent à mesurer de façon non destructive les générateurs du stabilisateur et en tant qu'observables.
Commençons par le premier générateur du stabilisateur. L'état a été affecté par une erreur sur le qubit le plus à gauche, et notre objectif est de comprendre comment la mesure de ce générateur du stabilisateur, en tant qu'observable, est influencée par cette erreur. Parce que et anticommutent, alors que toute matrice commute avec la matrice identité, il s'ensuit que anticommute avec Par ailleurs, comme est un encodage valide d'un qubit, agit trivialement sur
Par conséquent, est un vecteur propre de avec la valeur propre Lorsque la mesure associée à l'observable est effectuée sur l'état le résultat est donc certain d'être celui associé à la valeur propre
Un raisonnement similaire peut être appliqué au deuxième générateur du stabilisateur, mais cette fois l'erreur commute avec le générateur du stabilisateur plutôt qu'anticommuter, et le résultat pour cette mesure est donc celui associé à la valeur propre
Ce qu'on constate en examinant ces équations, c'est que, quel que soit l'état initial l'état corrompu est un vecteur propre des deux générateurs du stabilisateur, et que la valeur propre soit ou est déterminée par le fait que l'erreur commute ou anticommute avec chaque générateur du stabilisateur. Pour les erreurs représentées par des opérations de Pauli, ce sera toujours l'un ou l'autre, car deux opérations de Pauli quelconques commutent ou anticommutent. Par ailleurs, l'état réel ne joue pas un rôle important, sauf pour le fait que les générateurs du stabilisateur agissent trivialement sur cet état.
Pour cette raison, on n'a pas besoin en général de se préoccuper de l'état encodé spécifique avec lequel on travaille. Tout ce qui compte, c'est de savoir si l'erreur commute ou anticommute avec chaque générateur du stabilisateur. En particulier, voici les équations pertinentes concernant cette erreur particulière pour ce code.