La correction d'erreur fera partie intégrante de toute technologie d'information quantique. Diverses méthodes de correction d'erreurs quantiques ont par conséquent été élaborées pour pallier les erreurs inévitables qui proviennent de la manipulation des qubits ainsi que de leur interaction inévitable avec l'environnement. Parmi les familles de codes de correction d'erreurs se trouvent les codes convolutifs, dont l'utilité envisagée est surtout pour protéger l'information quantique envoyée à travers un canal de communication bruyant. La méthode de décodage des codes convolutifs utilise des algorithmes d'estimation d'erreur basés sur un principe de maximum de vraisemblance. L'algorithme de Viterbi permet de déterminer ce maximum de vraisemblance de façon efficace. Cette méthode permet de trouver le mot code le plus probable et ce en utilisant des outils telle décodage par trellis. De plus, cet algorithme a une complexité linéaire avec le nombre de qubits encodés. Ce mémoire porte sur l'effet de la dégénérescence sur le décodage Viterbi. La dégénérescence est une propriété de lamécanique quantique ne possédant aucun analogue classique par laquelle des corrections distinctes peuvent corriger une erreur donnée. Les versions précédentes de décodage quantique suivant l'algorithme de Viterbi étaient sous-optimales parce qu'elles ne tenaient pas compte de la dégénérescence. La réalisation principale de ce mémoire est la conception d'un algorithme de décodage de Viterbi qui tient compte des erreurs dégénérées et nous les testons par des simulations numériques. Ces simulations démontrent qu'il y a effectivement un avantage à utiliser le décodeur Viterbi qui tient compte de la dégénérescence.
La correction d'erreur fera partie intégrante de toute technologie d'information quantique. Diverses méthodes de correction d'erreurs quantiques ont par conséquent été élaborées pour pallier les erreurs inévitables qui proviennent de la manipulation des qubits ainsi que de leur interaction inévitable avec l'environnement. Parmi les familles de codes de correction d'erreurs se trouvent les codes convolutifs, dont l'utilité envisagée est surtout pour protéger l'information quantique envoyée à travers un canal de communication bruyant. La méthode de décodage des codes convolutifs utilise des algorithmes d'estimation d'erreur basés sur un principe de maximum de vraisemblance. L'algorithme de Viterbi permet de déterminer ce maximum de vraisemblance de façon efficace. Cette méthode permet de trouver le mot code le plus probable et ce en utilisant des outils telle décodage par trellis. De plus, cet algorithme a une complexité linéaire avec le nombre de qubits encodés. Ce mémoire porte sur l'effet de la dégénérescence sur le décodage Viterbi. La dégénérescence est une propriété de lamécanique quantique ne possédant aucun analogue classique par laquelle des corrections distinctes peuvent corriger une erreur donnée. Les versions précédentes de décodage quantique suivant l'algorithme de Viterbi étaient sous-optimales parce qu'elles ne tenaient pas compte de la dégénérescence. La réalisation principale de ce mémoire est la conception d'un algorithme de décodage de Viterbi qui tient compte des erreurs dégénérées et nous les testons par des simulations numériques. Ces simulations démontrent qu'il y a effectivement un avantage à utiliser le décodeur Viterbi qui tient compte de la dégénérescence.
On sait depuis vingt ans maintenant qu'un ordinateur quantique permettrait de résoudre en temps polynomial plusieurs problèmes considérés comme difficiles dans le modèle classique de calcul, comme la factorisation ou le logarithme discret. Entre autres, un tel ordinateur mettrait à mal tous les systèmes de chiffrement à clé publique actuellement utilisés en pratique, mais sa réalisation se heurte, entre autres, aux phénomènes de décohérence qui viennent entacher l'état des qubits qui le constituent. Pour protéger ces qubits, on utilise des codes correcteurs quantiques, qui doivent non seulement être performants mais aussi munis d'un décodage très rapide, sous peine de voir s'accumuler les erreurs plus vite qu'on ne peut les corriger. Une solution très prometteuse est fournie par des équivalents quantiques des codes LDPC (Low Density Parity Check, à matrice de parité creuse). Ces codes classiques offrent beaucoup d'avantages : ils sont faciles à générer, rapides à décoder (grâce à un algorithme de décodage itératif) et performants. Mais leur version quantique se heurte (entre autres) à deux problèmes. On peut voir un code quantique comme une paire de codes classiques, dont les matrices de parité sont orthogonales entre elles. Le premier problème consiste alors à construire deux « bons » codes qui vérifient cette propriété. L'autre vient du décodage : chaque ligne de la matrice de parité d'un des codes fournit un mot de code de poids faible pour le second code. En réalité, dans un code quantique, les erreurs correspondantes sont bénignes et n'affectent pas le système, mais il est difficile d'en tenir compte avec l'algorithme de décodage itératif usuel. On étudie dans un premier temps une construction existante, basée sur un produit de deux codes classiques. Cette construction, qui possède de bonnes propriétés théoriques (dimension et distance minimale), s'est avérée décevante dans les performances pratiques, qui s'expliquent par la structure particulière du code produit. Nous proposons ensuite plusieurs variantes de cette construction, possédant potentiellement de bonnes propriétés de correction. Ensuite, on étudie des codes dits q-Aires~: ce type de construction, inspiré des codes classiques, consiste à agrandir un code LDPC existant en augmentant la taille de son alphabet. Cette construction, qui s'applique à n'importe quel code quantique 2-Régulier (c'est-À-Dire dont les matrices de parité possèdent exactement deux 1 par colonne), a donné de très bonnes performances dans le cas particulier du code torique. Ce code bien connu se décode usuellement très bien avec un algorithme spécifique, mais mal avec l'algorithme usuel de propagation de croyances. Enfin, un équivalent quantique des codes spatialement couplés est proposé. Cette idée vient également du monde classique, où elle améliore de façon spectaculaire les performances des codes LDPC : le décodage s'effectue en temps quasi-Linéaire et atteint, de manière prouvée, la capacité des canaux symétriques à entrées binaires. Si dans le cas quantique, la preuve éventuelle reste encore à faire, certaines constructions spatialement couplées ont abouti à d'excellentes performances, bien au-Delà de toutes les autres constructions de codes LDPC quantiques proposées jusqu'à présent.
La correction d'erreur est l'ensemble des techniques utilisees pour stocker, processer et transmettre de l'information de facon fiable dans un environnement bruite. La theorie de la correction d'erreur classique est fondee sur l'encodage redondant de l'information. L'un des buts principaux de cette theorie est de trouver des compromis optimaux entre la redondance, qu'on essaie de minimiser, et la tolerance au bruit, qu'on essaie de maximiser.
La theorie quantique de la correction d'erreur ne peut pas directement imiter les schemas redondants de la theorie classique parce qu'elle doit faire avec le theoreme de non-clonage: l'information quantique ne peut pas etre copiee. La correction d'erreur quantique est neanmoins possible en repartissant l'information sur un plus grand nombre d'elements de memoire quantique que necessaire. Dans la theorie de l'information quantique, la dilution de l'information remplace la redondance parce que la copie est interdite par les lois de la mecanique quantique.
Au dela de cette difference conceptuelle, la correction d'erreur quantique a beaucoup herite de son equivalent classique. Dans cette these nous nous interessons a une classe de codes correcteurs quantiques dont l'equivalent classique a ete definie en 1961 par Gallager. A cette epoque l'information quantique n'etait meme pas encore un domaine de recherche. Cette classe est la famille des codes LDPC (low density parity check). De facon informelle un code est dit LDPC si les contraintes imposees pour assurer la redondance dans le cas classique ou la dilution dans le cas quantique sont locales.
Plus precisement cette these se concentre sur un sous-ensemble des codes correcteurs quantiques LDPC: les codes correcteurs quantiques homologiques. Ces codes tiennent leur nom du domaine mathematique de l'homologie, dont les objets d'etude sont des suites d'applications lineaires telles que le noyau d'une application contienne l'image de son voisin de gauche. Initialement introduite pour etudier la topologie de formes geometriques, la theorie de l'homologie comprend maintenant egalement des branches plus algebriques, dont le centre d'interet est plus abstrait et combinatoire. Les codes homologiques ont suivi la meme trajectoire: ils ont ete introduits en 1996 par Kitaev avec un code quantique qui a la forme d'un tore. Ils forment maintenant une vaste famille de codes quantiques LDPC, certains plus inspires de formes geometriques que d'autres. Des codes quantiques homologiques ont ete construits a partir de geometries spheriques, euclidiennes et hyperboliques, a partir d'objets de dimension 2 et de dimension 4, a partir d'objets de dimension croissante et non bornee et a partir de produits d'hypergraphes et homologiques.
Apres avoir introduit des concepts generaux de l'information quantique dans le premier chapitre de cette these, nous nous concentrons dans les deux chapitres suivants sur des familles de code quantique fondee sur des objets hyperboliques de dimension 4. Nous insistons sur l'interconnexion entre leur cote geometrique, donne par des varietes, et leur cote cote combinatoire, donne par des polytopes abstraits. Nous utilisons ces deux aspects pour analyser les codes quantiques correspondants. Dans le quatrieme et dernier chapitre nous analysons une famille de codes quantiques fondee sur des objets spheriques de dimension quelconque. Pour avoir plus de flexibilite dans la construction de codes quantiques, nous utilisons des objets combinatoires qui realisent cette geometrie spherique: des hypercubes. Ce contexte nous permet d'introduire un nouveau lien entre corrections d'erreur classique et quantique ou des codes classiques sont utilises pour introduire de l'homologie dans les hypercubes.
La correction d'erreurs quantiques et les protocoles tolérants aux fautes ont été développés pour protéger l'information quantique d'inévitables erreurs affectant les bits quantiques, les qubits. Ces aspects de l'informatique quantique sont toutefois très coûteux en termes de ressources physiques ce qui représente un grand défi pour la réalisation expérimentale. Plusieurs études ont montré que les qubits présentant un modèle d'erreurs ayant une certaine structure dite asymétrique permettent l'optimisation de la correction d'erreurs et de protocoles tolérants aux fautes. Cette optimisation mène à l'amélioration de la performance de la correction d'erreurs et une diminution des ressources nécessaires aux algorithmes tolérants aux fautes. Dans ce mémoire, nous étudions le qubit de chats composé d'états chats stabilisés dans un résonateur supraconducteur micro-ondes dans l'architecture de l'électrodynamique quantique en circuit. Nous montrons que le modèle d'erreurs du qubit de chats, donné par la perte de photons, possède la propriété d'asymétrie. La performance de la correction d'erreurs est évaluée avec ce modèle d'erreurs et nous montrons qu'il est avantageux en principe d'utiliser le qubit de chats. Finalement, nous développons une opération quantique importante avec le qubit de chats. Cette opération permet l'intrication entre deux qubits et elle possède la propriété cruciale de préserver le bruit asymétrique, un aspect souvent impossible pour cette opération avec un qubit typique. L'utilisation de cette opération procure des avantages majeurs aux protocoles tolérants aux fautes permettant une protection efficace contre le bruit asymétrique.
Contrôler des systèmes quantiques avec une précision arbitraire semble être un défi insurmontable en raison de l'influence de l'environnement se manifestant sous forme d'erreurs dans les algorithmes quantiques. Cependant, il existe des protocoles de tolérance aux fautes qui résolvent ce problème en stockant l'information quantique de manière redondante dans un état à plusieurs qubits. Il est crucial d'optimiser ces protocoles, en les adaptant aux processus de génération du bruit, dans le but de minimiser l'ajout d'espace et de temps aux calculs quantiques. Les méthodes actuelles se basent sur un cycle d'optimisation comprenant la caractérisation du matériel, la modélisation du bruit et des simulations numériques. Pour la majorité des études sur la tolérance aux fautes, le bruit est modélisé comme l'application stochastique de matrices de Pauli. Cette approche, communément appelé le modèle d'erreurs de Pauli est l'exemple typique de décohérence induite par l'environnement. Les probabilités associées à chacune des matrices de Pauli définissent le taux d'erreurs. Même si ce modèle d'erreurs est utilisé pour réaliser des preuves analytiques et effectuer des simulations classiques, le niveau de précision de ce dernier dépend de la nature quantique de la source d'erreurs. Toutefois, un dispositif quantique réaliste est affecté par un processus bruyant qui n'est pas très bien approximé par le modèle d'erreurs de Pauli. Un exemple extrême étant les erreurs cohérentes causées par rotation excessive d'un qubit. De plus, un modèle général de bruit quantique illustre beaucoup plus de caractéristiques que le modèle simplifié de Pauli. La notion de taux d'erreurs est alors moins bien définie dans ces cas. Ainsi, nous avons besoin d'une mesure appropriée pour quantifier l'effet du bruit qui s'intègre bien aux preuves de tolérance aux fautes. Pour ce faire, il existe plusieurs options dont la fidélité et la norme diamant. Les simulations numériques ont été centrales au développement des protocoles de tolérance aux fautes. Généralement, des simulations impliquant des modèles de bruits spécifiques sont utilisées pour évaluer l'efficacité de ces méthodes. Dans le cas du modèle simplifié d'erreurs de Pauli, la source du bruit est simulée par un algorithme classique appliquant une matrice de Pauli tirée selon une distribution prédéterminée. Cependant, il n'est généralement pas nécessaire d'assumer que le bruit est généré de façon stochastique. Par exemple, il est possible de décrire le bruit comme une évolution temporelle du système. Malgré cela, il existe des techniques pour mesurer numériquement la performance d'un protocole de tolérance aux fautes. Dans la présente thèse, nous faisons une étude critique des méthodes actuelles d'optimisation des protocoles de tolérances aux fautes et nous appuyons nos analyses sur des observations provenant de simulations numériques. D'abord, nous montrons que les protocoles de tolérance aux fautes sont sensibles à certains détails du modèle bruits qui ne sont pas bien décrits pas les métriques standards. Alors que la valeur d'une métrique peut être la même pour deux processus bruyants, nous observons que la performance d'un protocole de tolérance aux fautes peut différer grandement pour ces deux processus. Ainsi, nous avons défini de nouvelles métriques ne reposant pas sur les méthodes standards. Ces métriques s'appuient plutôt sur des méthodes d'apprentissage automatique qui considèrent les propriétés importantes des processus bruyants et qui permettent de prédire avec plus de précision la performance d'un protocole de tolérance aux fautes. Par la suite, nous argumentons que la présence d'événements rares détériore la précision des simulations numériques. En d'autres termes, les événements bruyants qui affectent significativement la performance d'un protocole de tolérances aux fautes sont rarement observés, ce qui engendre une grande erreur statistique dans les estimations numériques. Pour pallier partiellement à ce problème, nous présentons des méthodes d'échantillonnages préférentielles. Toutefois, la recherche de meilleures méthodes demeure ouverte. Finalement, la mauvaise qualité des précisions des métriques et la difficulté des simulations numériques nous amènent à conclure que la portée des méthodes actuelles d'optimisation des protocoles de tolérances aux fautes est très limitée. Nous supposons qu'une caractérisation expérimentale d'un tel protocole sur un ordinateur quantique de taille modeste permettrait de surmonter ces difficultés. Cela pourrait paver le chemin à la réalisation d'un ordinateur quantique tolérant les fautes.
On sait depuis vingt ans maintenant qu'un ordinateur quantique permettrait de résoudre en temps polynomial plusieurs problèmes considérés comme difficiles dans le modèle classique de calcul, comme la factorisation ou le logarithme discret. Entre autres, un tel ordinateur mettrait à mal tous les systèmes de chiffrement à clé publique actuellement utilisés en pratique, mais sa réalisation se heurte, entre autres, aux phénomènes de décohérence qui viennent entacher l'état des qubits qui le constituent. Pour protéger ces qubits, on utilise des codes correcteurs quantiques, qui doivent non seulement être performants mais aussi munis d'un décodage très rapide, sous peine de voir s'accumuler les erreurs plus vite qu'on ne peut les corriger. Une solution très prometteuse est fournie par des équivalents quantiques des codes LDPC (Low Density Parity Check, à matrice de parité creuse). Ces codes classiques offrent beaucoup d'avantages : ils sont faciles à générer, rapides à décoder (grâce à un algorithme de décodage itératif) et performants. Mais leur version quantique se heurte (entre autres) à deux problèmes. On peut voir un code quantique comme une paire de codes classiques, dont les matrices de parité sont orthogonales entre elles. Le premier problème consiste alors à construire deux « bons » codes qui vérifient cette propriété. L'autre vient du décodage : chaque ligne de la matrice de parité d'un des codes fournit un mot de code de poids faible pour le second code. En réalité, dans un code quantique, les erreurs correspondantes sont bénignes et n'affectent pas le système, mais il est difficile d'en tenir compte avec l'algorithme de décodage itératif usuel. On étudie dans un premier temps une construction existante, basée sur un produit de deux codes classiques. Cette construction, qui possède de bonnes propriétés théoriques (dimension et distance minimale), s'est avérée décevante dans les performances pratiques, qui s'expliquent par la structure particulière du code produit. Nous proposons ensuite plusieurs variantes de cette construction, possédant potentiellement de bonnes propriétés de correction. Ensuite, on étudie des codes dits q-Aires~: ce type de construction, inspiré des codes classiques, consiste à agrandir un code LDPC existant en augmentant la taille de son alphabet. Cette construction, qui s'applique à n'importe quel code quantique 2-Régulier (c'est-À-Dire dont les matrices de parité possèdent exactement deux 1 par colonne), a donné de très bonnes performances dans le cas particulier du code torique. Ce code bien connu se décode usuellement très bien avec un algorithme spécifique, mais mal avec l'algorithme usuel de propagation de croyances. Enfin, un équivalent quantique des codes spatialement couplés est proposé. Cette idée vient également du monde classique, où elle améliore de façon spectaculaire les performances des codes LDPC : le décodage s'effectue en temps quasi-Linéaire et atteint, de manière prouvée, la capacité des canaux symétriques à entrées binaires. Si dans le cas quantique, la preuve éventuelle reste encore à faire, certaines constructions spatialement couplées ont abouti à d'excellentes performances, bien au-Delà de toutes les autres constructions de codes LDPC quantiques proposées jusqu'à présent.
L'un des principaux obstacles pour construire un ordinateur quantique est la décohérence, laquelle limite grandement le temps alloué pour un calcul ainsi que la taille du système. Pour combattre la décohérence dans un système quantique, des protocoles de correction d'erreurs ont été proposés et semblent apporter une bonne solution à ce problème. Ces protocoles consistent à confiner l'information que contiennent les qubits dans un sous-espace nommé espace code. Après un certain temps d'évolution, on pose un diagnostic sur l'erreur qui s'est produite sur le système en effectuant des mesures indiquant s'il est toujours dans l'espace code où s'il a évolué vers un autre sous-espace. Pour que de tels protocoles soient efficaces, les mesures effectuées doivent en principe être rapides et projectives. Cependant, pour plusieurs architectures de qubits existantes, les mesures sont faibles et se font de façon continue. De plus, elles peuvent introduire elles-mêmes des erreurs dans le système. Ces caractéristiques de mesure rendent difficile le diagnostic de l'erreur tel qu'il est effectué traditionnellement. Aussi comme les mesures peuvent introduire des erreurs, il n'est pas certain que les protocoles de diagnostic d'erreur traditionnels soient utiles. Dans ce travail, on étudie l'utilité d'une mesure faible et continue dans un processus de correction d'erreurs. Cette étude s'est réalisée en deux volets. D'abord, on présente un protocole de correction d'erreur adapté aux architectures de qubits dont la mesure est faible et se fait de façon continue. On montre que ce protocole permet d'évaluer sous quelles conditions une mesure présentant ces caractéristiques peut aider à corriger des erreurs. Ensuite, on teste ce protocole de correction dans le cas particulier des qubits supraconducteurs. On établit sous quelles conditions la mesure sur ces qubits peut aider à diagnostiquer les erreurs et on étudie l'effet de différents paramètres expérimentaux dans ce contexte.