Démystifier les principes de l'informatique quantique

Démystifier les principes de l'informatique quantique
"Je pense pouvoir affirmer avec certitude que personne ne comprend la mécanique quantique." - Richard Feynman

Le sujet de l’informatique quantique a toujours fasciné les rédacteurs techniques et les journalistes. Son potentiel informatique et sa complexité lui confèrent une certaine aura mystique. Trop souvent, articles de fond et infographies décrivent en détail les différentes perspectives de cette industrie, en abordant à peine ses applications pratiques : cela peut induire en erreur le lecteur le moins attentif.

Les articles scientifiques populaires omettent les descriptions des systèmes quantiques et font des déclarations telles que :

Un bit normal peut être un 1 ou un 0, mais un qubit peut être un 1 et un 0 en même temps.

Si vous avez beaucoup de chance (ce dont je ne suis pas sûr), on vous dira que :

Le qubit est dans une superposition entre « 1 » et « 0 ».

Aucune de ces explications ne semble plausible, puisque nous essayons de formuler un phénomène de mécanique quantique en utilisant un langage développé dans un monde très traditionnel. Pour expliquer clairement les principes de l'informatique quantique, il est nécessaire d'utiliser un autre langage : le mathématique. 

Dans ce didacticiel, je couvrirai les outils mathématiques nécessaires pour modéliser et comprendre les systèmes informatiques quantiques, ainsi que la manière d'illustrer et d'appliquer la logique de l'informatique quantique. De plus, je vais donner un exemple d'algorithme quantique et vous expliquer quel est son avantage par rapport à un ordinateur traditionnel.

Je ferai de mon mieux pour expliquer tout cela dans un langage clair, mais j'espère toujours que les lecteurs de cet article ont une compréhension de base de l'algèbre linéaire et de la logique numérique (l'algèbre linéaire est couverte ici, à propos de la logique numérique - ici). 

Tout d’abord, passons en revue les principes de la logique numérique. Elle repose sur l’utilisation de circuits électriques pour réaliser des calculs. Pour rendre notre description plus abstraite, simplifions l'état du fil électrique à « 1 » ou « 0 », qui correspondront aux états « on » ou « off ». En disposant les transistors dans un certain ordre, nous créerons des éléments dits logiques qui prendront une ou plusieurs valeurs de signal d'entrée et les convertirons en un signal de sortie basé sur certaines règles de la logique booléenne.

Démystifier les principes de l'informatique quantique

Portes logiques communes et leurs tables d'état

Sur la base des chaînes de ces éléments de base, des éléments plus complexes peuvent être créés, et sur la base des chaînes d'éléments plus complexes, nous pouvons finalement, avec un grand degré d'abstraction, espérer obtenir un analogue du processeur central.

Comme je l’ai mentionné plus tôt, nous avons besoin d’un moyen de représenter mathématiquement la logique numérique. Tout d’abord, introduisons la logique mathématique traditionnelle. En utilisant l'algèbre linéaire, les bits classiques avec les valeurs « 1 » et « 0 » peuvent être représentés comme deux vecteurs colonnes :
Démystifier les principes de l'informatique quantique
où se trouvent les chiffres à gauche Notation de Dirac vecteur. En représentant nos bits de cette manière, nous pouvons modéliser des opérations logiques sur les bits à l'aide de transformations vectorielles. Attention : bien que l'utilisation de deux bits dans les portes logiques puisse effectuer de nombreuses opérations (AND, NOT, XOR, etc.), lors de l'utilisation d'un seul bit, seules quatre opérations peuvent être effectuées : conversion d'identité, négation, calcul de la constante « 0 » et calcul de la constante « 1 ». Avec une conversion d'identité, le bit reste inchangé, avec une négation, la valeur du bit change à l'opposé (de « 0 » à « 1 » ou de « 1 » à « 0 »), et le calcul de la constante « 1 » ou « 0 » définit le bit sur « 1 » ou « 0 » quelle que soit sa valeur précédente.
Démystifier les principes de l'informatique quantique

Active Transformation d'identité
Négation Antithèse
Constante-0 Calcul de la constante "0"
Constante-1 Calcul de la constante "1"

Sur la base de notre nouvelle représentation proposée d'un bit, il est assez simple d'effectuer des opérations sur le bit correspondant en utilisant une transformation vectorielle :

Démystifier les principes de l'informatique quantique

Avant d'aller plus loin, regardons le concept calculs réversibles, ce qui implique simplement que pour assurer la réversibilité d'une opération ou d'un élément logique, il est nécessaire de déterminer une liste de valeurs de signaux d'entrée en fonction des signaux de sortie et des noms des opérations utilisées. Ainsi, on peut conclure que la transformation identitaire et la négation sont réversibles, mais les opérations de calcul des constantes « 1 » et « 0 » ne le sont pas. Grâce à unitarité En mécanique quantique, les ordinateurs quantiques utilisent exclusivement des opérations réversibles, c'est donc sur cela que nous allons nous concentrer. Ensuite, nous convertissons les éléments irréversibles en éléments réversibles pour permettre leur utilisation par un ordinateur quantique.

Avec produit tenseur les bits individuels peuvent être représentés par plusieurs bits :
Démystifier les principes de l'informatique quantique
Maintenant que nous disposons de presque tous les concepts mathématiques nécessaires, passons à notre première porte logique quantique. C'est l'opérateur CNO, ou Non contrôlé (NOT), qui revêt une grande importance en informatique réversible et quantique. L'élément CNOT s'applique à deux bits et renvoie deux bits. Le premier bit est désigné comme bit « de contrôle » et le second comme bit de « contrôle ». Si le bit de contrôle est mis à "1", le bit de contrôle change de valeur ; Si le bit de contrôle est mis à "0", le bit de contrôle n'est pas modifié.
Démystifier les principes de l'informatique quantique
Cet opérateur peut être représenté par le vecteur de transformation suivant :
Démystifier les principes de l'informatique quantique
Pour démontrer tout ce que nous avons couvert jusqu'à présent, je vais vous montrer comment utiliser l'élément CNOT sur plusieurs bits :
Démystifier les principes de l'informatique quantique
Pour résumer ce qui a déjà été dit : dans le premier exemple nous décomposons |10⟩ en parties de son produit tensoriel et utilisons la matrice CNOT pour obtenir un nouvel état correspondant du produit ; nous le factorisons ensuite à |11⟩ selon le tableau des valeurs CNOT donné précédemment.

Ainsi, nous avons mémorisé toutes les règles mathématiques qui nous aideront à comprendre l’informatique traditionnelle et les bits ordinaires, et nous pouvons enfin passer à l’informatique quantique moderne et aux qubits.

Si vous avez lu jusqu'ici, j'ai une bonne nouvelle pour vous : les qubits peuvent être facilement exprimés mathématiquement. En général, si un bit classique (cbit) peut être réglé à |1⟩ ou |0⟩, le qubit est simplement en superposition et peut être à la fois |0⟩ et |1⟩ avant la mesure. Après la mesure, il s'effondre en |0⟩ ou |1⟩. En d'autres termes, un qubit peut être représenté comme une combinaison linéaire de |0⟩ et |1⟩ selon la formule ci-dessous :
Démystifier les principes de l'informatique quantique
a₀ и une₁ représentent respectivement les amplitudes |0⟩ et |1⟩. Celles-ci peuvent être considérées comme des « probabilités quantiques », qui représentent la probabilité qu'un qubit s'effondre dans l'un des états après avoir été mesuré, car en mécanique quantique, un objet en superposition s'effondre dans l'un des états après avoir été fixé. Développons cette expression et obtenons ce qui suit :
Démystifier les principes de l'informatique quantique
Pour simplifier mon explication, c'est la représentation que j'utiliserai dans cet article.

Pour ce qubit, la chance de s'effondrer à la valeur a₀ après mesure est égal à |a₀|², et le risque d'effondrement à la valeur a₁ est égal à |a₁|². Par exemple, pour le qubit suivant :
Démystifier les principes de l'informatique quantique
la chance de s'effondrer en « 1 » est égale à |1/ √2|², soit ½, soit 50/50.

Puisque dans le système classique toutes les probabilités doivent totaliser un (pour une distribution de probabilité complète), nous pouvons conclure que les carrés des valeurs absolues des amplitudes |0⟩ et |1⟩ doivent totaliser un. Sur la base de ces informations, nous pouvons formuler l’équation suivante :
Démystifier les principes de l'informatique quantique
Si vous êtes familier avec la trigonométrie, vous remarquerez que cette équation correspond au théorème de Pythagore (a²+b²=c²), c'est-à-dire que l'on peut représenter graphiquement les états possibles du qubit sous forme de points sur le cercle unité, à savoir :
Démystifier les principes de l'informatique quantique
Les opérateurs et éléments logiques sont appliqués aux qubits de la même manière que dans le cas des bits classiques - sur la base d'une transformation matricielle. Tous les opérateurs matriciels inversibles que nous avons rappelés jusqu'à présent, notamment CNOT, peuvent être utilisés pour travailler avec des qubits. De tels opérateurs matriciels permettent d'utiliser chacune des amplitudes du qubit sans le mesurer ni le réduire. Laissez-moi vous donner un exemple d'utilisation de l'opérateur de négation sur un qubit :
Démystifier les principes de l'informatique quantique
Avant de continuer, permettez-moi de vous rappeler que les valeurs d'amplitude a₀ et a₁ sont en fait nombres complexes, de sorte que l'état d'un qubit peut être cartographié avec le plus de précision sur une sphère unitaire tridimensionnelle, également connue sous le nom de Sphère aux puces:
Démystifier les principes de l'informatique quantique
Cependant, pour simplifier l’explication, nous nous limiterons ici aux nombres réels.

Il semble temps de discuter de certains éléments logiques qui n’ont de sens que dans le contexte de l’informatique quantique.

L'un des opérateurs les plus importants est « l'élément Hadamard » : il prend un bit dans un état « 0 » ou « 1 » et le met dans la superposition appropriée avec 50 % de chances de se transformer en « 1 » ou « 0 ». après la mesure. 
Démystifier les principes de l'informatique quantique
Notez qu'il y a un nombre négatif dans le coin inférieur droit de l'opérateur Hadamard. Cela est dû au fait que le résultat de l'application de l'opérateur dépend de la valeur du signal d'entrée : - |1⟩ ou |0⟩, et donc le calcul est réversible.

Un autre point important concernant l'élément Hadamard est son inversibilité, ce qui signifie qu'il peut prendre un qubit dans la superposition appropriée et le transformer en |0⟩ ou |1⟩.
Démystifier les principes de l'informatique quantique
Ceci est très important car cela nous donne la possibilité de passer d’un état quantique sans déterminer l’état du qubit – et, par conséquent, sans l’effondrer. Ainsi, nous pouvons structurer l’informatique quantique sur la base d’un principe déterministe plutôt que probabiliste.

Les opérateurs quantiques contenant uniquement des nombres réels sont leur propre opposé, nous pouvons donc représenter le résultat de l'application de l'opérateur à un qubit comme une transformation dans le cercle unité sous la forme d'une machine à états :
Démystifier les principes de l'informatique quantique
Ainsi, le qubit dont l'état est présenté dans le schéma ci-dessus, après application de l'opération Hadamard, se transforme dans l'état indiqué par la flèche correspondante. De même, nous pouvons construire une autre machine à états qui illustrera la transformation d'un qubit à l'aide de l'opérateur de négation comme indiqué ci-dessus (également connu sous le nom d'opérateur de négation de Pauli, ou inversion de bits), comme indiqué ci-dessous :
Démystifier les principes de l'informatique quantique
Pour effectuer des opérations plus complexes sur notre qubit, nous pouvons chaîner plusieurs opérateurs ou appliquer des éléments plusieurs fois. Exemple de transformation série basée sur représentations de circuits quantiques est comme suit:
Démystifier les principes de l'informatique quantique
Autrement dit, si nous commençons par le bit |0⟩, appliquons une inversion de bit, puis une opération Hadamard, puis une autre inversion de bit, et encore une opération Hadamard, suivie d'une inversion de bit finale, nous nous retrouvons avec le vecteur donné par on le côté droit de la chaîne. En superposant différentes machines à états les unes sur les autres, nous pouvons commencer à |0⟩ et tracer les flèches colorées correspondant à chacune des transformations pour comprendre comment tout cela fonctionne.
Démystifier les principes de l'informatique quantique
Puisque nous sommes arrivés jusqu’ici, il est temps de considérer l’un des types d’algorithmes quantiques, à savoir : Algorithme Deutsch-Jozsa, et montre son avantage sur un ordinateur classique. Il convient de noter que l’algorithme de Deutsch-Jozsa est totalement déterministe, c’est-à-dire qu’il renvoie la bonne réponse dans 100 % des cas (contrairement à de nombreux autres algorithmes quantiques basés sur la définition probabiliste des qubits).

Imaginons que vous ayez une boîte noire contenant une fonction/opérateur sur un bit (rappelez-vous - avec un bit, seules quatre opérations peuvent être effectuées : conversion d'identité, négation, évaluation de la constante "0" et évaluation de la constante "1". "). Quelle est exactement la fonction remplie dans la boîte ? Vous ne savez pas laquelle, mais vous pouvez parcourir autant de variantes de valeurs d'entrée que vous le souhaitez et évaluer les résultats de sortie.

Démystifier les principes de l'informatique quantique
Combien d’entrées et de sorties faudrait-il parcourir dans la boîte noire pour déterminer quelle fonction est utilisée ? Pensez-y une seconde.

Dans le cas d’un ordinateur classique, il vous faudra réaliser 2 requêtes pour déterminer la fonction à utiliser. Par exemple, si l'entrée "1" produit une sortie "0", il devient clair que soit la fonction de calcul de la constante "0", soit la fonction de négation est utilisée, après quoi vous devrez modifier la valeur du signal d'entrée à "0" et voyez ce qui se passe à la sortie.

Dans le cas d'un ordinateur quantique, deux requêtes seront également nécessaires, puisqu'il faut quand même deux valeurs de sortie différentes pour définir précisément la fonction à appliquer à la valeur d'entrée. Cependant, si l’on reformule un peu la question, il s’avère que les ordinateurs quantiques ont quand même un sérieux avantage : si l’on voulait savoir si la fonction utilisée est constante ou variable, les ordinateurs quantiques auraient l’avantage.

La fonction utilisée dans la boîte est variable si différentes valeurs du signal d'entrée produisent des résultats différents en sortie (par exemple, conversion d'identité et inversion de bits), et si la valeur de sortie ne change pas quelle que soit la valeur d'entrée, alors la la fonction est constante (par exemple, calculer une constante « 1 » ou calculer la constante « 0 »).

À l’aide d’un algorithme quantique, vous pouvez déterminer si une fonction dans une boîte noire est constante ou variable en fonction d’une seule requête. Mais avant d’examiner comment procéder en détail, nous devons trouver un moyen de structurer chacune de ces fonctions sur un ordinateur quantique. Puisque tout opérateur quantique doit être inversible, nous sommes immédiatement confrontés à un problème : les fonctions de calcul des constantes « 1 » et « 0 » ne le sont pas.

Une solution courante utilisée en informatique quantique consiste à ajouter un qubit de sortie supplémentaire qui renvoie la valeur d'entrée reçue par la fonction. 

Avant: Après:
Démystifier les principes de l'informatique quantique Démystifier les principes de l'informatique quantique

De cette façon, nous pouvons déterminer les valeurs d'entrée uniquement sur la base de la valeur de sortie, et la fonction devient inversible. La structure des circuits quantiques crée le besoin d’un bit d’entrée supplémentaire. Dans un souci de développement des opérateurs correspondants, nous supposerons que le qubit d'entrée supplémentaire est défini sur |0⟩.

En utilisant la même représentation de circuit quantique que celle utilisée précédemment, voyons comment chacun des quatre éléments (transformation d'identité, négation, évaluation de la constante « 0 » et évaluation de la constante « 1 ») peut être implémenté à l'aide d'opérateurs quantiques. 

Par exemple, voici comment implémenter la fonction de calcul de la constante « 0 » :

Calcul de la constante « 0 » :
Démystifier les principes de l'informatique quantique
Ici, nous n'avons pas du tout besoin d'opérateurs. Le premier qubit d'entrée (que nous avons supposé être |0⟩) renvoie avec la même valeur, et la deuxième valeur d'entrée se renvoie d'elle-même - comme d'habitude.

Avec la fonction de calcul de la constante « 1 » la situation est un peu différente :

Calcul de la constante « 1 » :
Démystifier les principes de l'informatique quantique
Puisque nous avons supposé que le premier qubit d'entrée est toujours défini sur |0⟩, le résultat de l'application de l'opérateur d'inversion de bits est qu'il produit toujours un un en sortie. Et comme d’habitude, le deuxième qubit donne sa propre valeur en sortie.

Lors de la cartographie de l'opérateur de transformation d'identité, la tâche commence à devenir plus compliquée. Voici comment procéder :

Transformation identique :
Démystifier les principes de l'informatique quantique
Le symbole utilisé ici désigne l'élément CNOT : la ligne supérieure désigne le bit de contrôle et la ligne inférieure désigne le bit de contrôle. Je vous rappelle que lors de l'utilisation de l'opérateur CNOT, la valeur du bit de contrôle change si le bit de contrôle est égal à |1⟩, mais reste inchangée si le bit de contrôle est égal à |0⟩. Puisque nous avons supposé que la valeur de la ligne supérieure est toujours égale à |0⟩, sa valeur est toujours attribuée à la ligne inférieure.

On procède de la même manière avec l’opérateur de négation :

Négation:
Démystifier les principes de l'informatique quantique
Nous inversons simplement le bit à la fin de la ligne de sortie.

Maintenant que nous avons réglé cette compréhension préliminaire, examinons les avantages spécifiques d'un ordinateur quantique par rapport à un ordinateur traditionnel lorsqu'il s'agit de déterminer la constance ou la variabilité d'une fonction cachée dans une boîte noire à l'aide d'une seule requête.

Pour résoudre ce problème en utilisant l'informatique quantique en une seule requête, il est nécessaire de superposer les qubits d'entrée avant de les transmettre à la fonction, comme indiqué ci-dessous :
Démystifier les principes de l'informatique quantique
L'élément Hadamard est réappliqué au résultat de la fonction pour sortir les qubits de la superposition et rendre l'algorithme déterministe. Nous démarrons le système dans l'état |00⟩ et, pour des raisons que j'expliquerai bientôt, obtenons le résultat |11⟩ si la fonction appliquée est constante. Si la fonction à l'intérieur de la boîte noire est variable, alors après la mesure, le système renvoie le résultat |01⟩.

Pour comprendre la suite de l'article, regardons l'illustration que j'ai montrée plus tôt :
Démystifier les principes de l'informatique quantique
En utilisant l'opérateur d'inversion de bits puis en appliquant l'élément Hadamard aux deux valeurs d'entrée égales à |0⟩, nous nous assurons qu'elles sont traduites dans la même superposition de |0⟩ et |1⟩, comme suit :
Démystifier les principes de l'informatique quantique
En utilisant l'exemple du passage de cette valeur à une fonction boîte noire, il est facile de démontrer que les deux fonctions à valeur constante génèrent |11⟩.

Calcul de la constante « 0 » :
Démystifier les principes de l'informatique quantique
De même, on voit que la fonction de calcul de la constante « 1 » produit également |11⟩ en sortie, soit :

Calcul de la constante « 1 » :
Démystifier les principes de l'informatique quantique
Notez que la sortie sera |1⟩, puisque -1² = 1.

Par le même principe, nous pouvons prouver qu'en utilisant les deux fonctions variables, nous obtiendrons toujours |01⟩ en sortie (à condition d'utiliser la même méthode), même si tout est un peu plus compliqué.

Transformation identique :
Démystifier les principes de l'informatique quantique
Puisque CNOT est un opérateur à deux qubits, il ne peut pas être représenté comme une simple machine à états, et il est donc nécessaire de définir deux signaux de sortie basés sur le produit tensoriel des deux qubits d'entrée et la multiplication par la matrice CNOT comme décrit précédemment :
Démystifier les principes de l'informatique quantique
Avec cette méthode, nous pouvons également confirmer que la valeur de sortie |01⟩ est reçue si la fonction de négation est masquée dans la boîte noire :

Négation:
Démystifier les principes de l'informatique quantique
Ainsi, nous venons de démontrer une situation dans laquelle un ordinateur quantique est nettement plus performant qu’un ordinateur classique.

Et ensuite?

Je suggère que nous terminions ici. Nous avons déjà fait un excellent travail. Si vous avez compris tout ce que j'ai abordé, je pense que vous comprenez désormais bien les bases de l'informatique quantique et de la logique quantique, et pourquoi les algorithmes quantiques peuvent être plus efficaces que l'informatique traditionnelle dans certaines situations.

Ma description peut difficilement être qualifiée de guide complet sur l'informatique quantique et les algorithmes - il s'agit plutôt d'une brève introduction aux mathématiques et à la notation, conçue pour dissiper les idées des lecteurs sur le sujet imposées par les sources scientifiques populaires (sérieusement, beaucoup ne peuvent vraiment pas comprendre la situation!). Je n'ai pas eu le temps d'aborder de nombreux sujets importants, comme intrication quantique des qubits, complexité des valeurs d'amplitude |0⟩ et |1⟩ et fonctionnement de divers éléments de logique quantique lors de la transformation par la sphère de Bloch.

Si vous souhaitez systématiser et structurer vos connaissances sur les ordinateurs quantiques, fortement je vous recommande de lire "Une introduction aux algorithmes quantiques" Emma Strubel : malgré l'abondance de formules mathématiques, ce livre aborde les algorithmes quantiques de manière beaucoup plus détaillée.

Source: habr.com

Ajouter un commentaire