Share via


Conventions encadrant les schémas de circuit quantique

Parfois, les algorithmes quantiques sont plus faciles à comprendre dans un diagramme de circuit que dans la représentation de matrice écrite équivalente. Cet article explique comment lire les diagrammes de circuit quantique et leurs conventions.

Pour plus d’informations, consultez Comment visualiser des diagrammes de circuits quantiques.

Lecture des diagrammes de circuit quantique

Dans un circuit quantique, le temps s’écoule de gauche à droite. Les portes quantiques sont représentées dans l’ordre chronologique, la porte la plus à gauche étant la première appliquée aux qubits.

Prenons le diagramme de circuit quantique suivant comme exemple :

Diagramme d’un circuit quantique avec deux registres, une porte hadamard, une porte contrôlée et une mesure.

  1. Registre de qubits : les registres de qubits sont affichés sous forme de lignes horizontales, chaque ligne représentant un qubit. La ligne supérieure est qubit register étiqueté 0, la deuxième ligne est qubit register étiqueté 1, et ainsi de suite.
  2. Porte quantique : les opérations quantiques sont représentées par des portes quantiques. L’expression « porte quantique » est utilisée par analogie avec les portes logiques classiques. Les portes agissant sur un ou plusieurs registres de qubits sont représentées sous forme de cadres. Dans cet exemple, le symbole représente une opération Hadamard.
  3. Porte contrôlée : les portes contrôlées agissent sur au moins deux qubits. Dans cet exemple, le symbole représente une porte CNOT. Le cercle noir représente le qubit de contrôle, et la croix dans un cercle représente le target qubit.
  4. Opération de mesure : le symbole du compteur représente une opération de mesure. L’opération de mesure prend un registre de qubits comme entrée et génère des informations classiques.

Application de portes quantiques

Étant donné que le temps passe de gauche à droite, la porte la plus à gauche est appliquée en premier. Par exemple, l’action du circuit quantique suivant est l’authentification CBA$ de matrice $unitaire.

Diagramme des portes quantiques appliquées de gauche à droite dans un circuit quantique.

Notes

La multiplication des matrices obéit à la convention opposée : la matrice la plus à droite est appliquée en premier. Toutefois, dans les schémas de circuit quantique, la porte la plus à gauche est appliquée en premier. Cette différence peut parfois prêter à confusion. Il est donc important de noter cette différence majeure entre la notation algébrique linéaire et les schémas de circuit quantique.

Entrées et sorties de circuits quantiques

Dans un diagramme de circuit quantique, les fils entrant dans une porte quantique représentent les qubits qui sont entrés dans la porte quantique, et les fils sortant de la porte quantique représentent les qubits qui sont générés par la porte quantique.

Le nombre d’entrées d’une porte quantique est égal au nombre de sorties d’une porte quantique. Cela est dû au fait que les opérations quantiques sont unitaires et donc réversibles. Si une porte quantique avait plus de sorties que d’entrées, elle ne serait pas réversible et donc pas unitaire, ce qui est une contradiction.

Pour cette raison, pour tout cadre tracé dans un schéma de circuit, le nombre de fils qui entrent et sortent doit être exactement le même.

Opérations multi-qubits

Les schémas de circuit à plusieurs qubits suivent des conventions similaires à ceux basés sur un qubit. Par exemple, une opération $unitaire B$ à deux qubits peut être définie comme ( $HS\otimes X),$ de sorte que le circuit quantique équivalent est le suivant :

Diagramme de circuit d’une opération unitaire à deux qubits.

Vous pouvez également voir $B$ comme ayant une action sur un registre de deux qubits plutôt que sur deux registres d’un qubit en fonction du contexte d’utilisation du circuit.

La propriété la plus utile de schémas de circuit aussi abstraits est peut-être qu’ils permettent de décrire des algorithmes quantiques compliqués à un niveau détaillé sans qu’il soit nécessaire de les compiler en portes fondamentales. Ainsi, vous pouvez avoir une idée intuitive du flux de données d’un grand algorithme quantique sans avoir à comprendre en détail le fonctionnement de chacune des sous-routines de l’algorithme.

Portes contrôlées

Les portes contrôlées quantiques sont des portes à deux qubits qui appliquent une porte à qubit unique à un target qubit si un qubit de contrôle est dans un état spécifique.

Par exemple, prenons une porte contrôlée quantique, notée $\Lambda(G),$ où la valeur d’un qubit unique contrôle l’application de l’opération $G$ . La porte $\Lambdacontrôlée (G)$ peut être comprise en examinant l’exemple suivant d’entrée d’état du produit :

$\Lambda(G) (\alpha\ket{{0} + \beta\ket{1}) \ket{\psi}=\alpha\ket{{0}\ket{\psi} + \beta\ket{{1} G\ket{\psi}$

Autrement dit, la porte contrôlée applique $G$ au registre qui contient $\psi$ si et seulement si le qubit de contrôle prend la valeur $1$. En général, ces opérations contrôlées sont décrites dans les diagrammes de circuit par le symbole suivant :

Diagramme de circuit d’une porte à contrôle unique.

Ici, le cercle noir représente le bit quantique sur lequel la porte est contrôlée, et un fil vertical représente l’unitaire qui est appliqué quand le qubit de contrôle prend la valeur $1$.

Pour les cas spéciaux où $G=X$ et $G=Z$, la notation suivante est utilisée pour décrire la version contrôlée des portes (notez que la porte X contrôlée est la porte CNOT) :

Diagramme de circuit pour les cas spéciaux de portes contrôlées.

Q# offre des méthodes pour générer automatiquement la version contrôlée des opérations, évitant au programmeur d’avoir à les coder manuellement. En voici un exemple :

operation PrepareSuperposition(qubit : Qubit) : Unit
is Ctl { // Auto-generate the controlled specialization of the operation
    H(qubit);
}

Portes contrôlées de manière classique

Les portes quantiques peuvent également être appliquées après une mesure, où le résultat de la mesure agit comme un bit de contrôle classique.

Le symbole suivant représente une porte à contrôle classique, où $G$ est appliqué en fonction de la valeur $1$ du bit de contrôle classique :

Diagramme de circuit représentant une opération contrôlée.

Opérateur de mesure

Les opérations de mesure prennent un registre de qubits, le mesurent et affichent le résultat sous forme d’informations classiques.

Une opération de mesure est représentée par un symbole de compteur. Elle prend toujours comme entrée un registre de qubits (représenté par une ligne pleine) et retourne des informations classiques (représentées par une ligne double). Plus précisément, le symbole de l’opération de mesure ressemble à ceci :

Symbole représentant une opération de mesure.

Dans Q#, l’opérateur Measure implémente l’opération de mesure.

Exemple : Transformation unitaire

Considérez la transformation unitaire $\text{ CNOT}_{01}(H\otimes 1)$. Cette séquence de portes revêt une importance fondamentale en informatique quantique, car elle crée un état à deux qubits intriqué au maximum :

$\mathrm{CNOT}_{01}(H\otimes 1)\left=\ket{00}\frac{1}{\sqrt{2}}({00}\ket{ + ), \ket{11}\right$

Les opérations de cette complexité, voire d’une complexité supérieure, sont omniprésentes dans les algorithmes quantiques et la correction d’erreur quantique.

Le schéma de circuit pour la préparation de cet état quantique intriqué au maximum est le suivant :

Diagramme de circuit pour un état à deux qubits au maximum enchevêtré.

Le symbole derrière la porte Hadamard représente une porte CNOT, où le cercle noir indique le qubit de contrôle et la croix dans un cercle indique le target qubit. Ce circuit quantique est représenté comme agissant sur deux qubits (ou de manière équivalente, deux registres d’un qubit).

Exemple : diagramme de circuit de téléportation

La téléportation quantique est l’un des meilleurs algorithmes quantiques pour illustrer les composants de circuit.

La téléportation quantique est un protocole qui permet de transmettre un état quantique d’un qubit à un autre, à l’aide d’un état enchevêtré partagé entre l’expéditeur et le récepteur, et d’une communication classique entre eux.

À des fins d’apprentissage, l’expéditeur est appelé Alice, le récepteur est appelé Bob et le qubit à téléporter est appelé qubit de message. Alice et Bob détiennent chacun un qubit, et Alice a un qubit supplémentaire qui est le qubit de message.

Le diagramme de circuit suivant illustre le protocole de téléportation :

Diagramme du circuit quantique du protocole de téléportation.

Nous allons décomposer les étapes du protocole de téléportation :

  1. Le registre de qubits étiqueté 0 est le qubit de message, le registre de qubits étiqueté 1 est le qubit d’Alice et le registre de qubits étiqueté 2 est le qubit de Bob. Le qubit de message est dans un état inconnu, et les qubits d’Alice et de Bob sont dans l’état $\ket{0}$ .
  2. Une porte $Hadamard H$ est appliquée au qubit d’Alice. Étant donné que le qubit est dans l’état $\ket{0}$ , l’état résultant est $\frac{1}{\sqrt{{2}}(\ket{{0} + \ket{1})$ .
  3. Une porte CNOT est appliquée aux qubits d’Alice et Bob. Le qubit d’Alice est le qubit de contrôle, et le qubit de Bob est le target qubit. L’état résultant est $\frac{{1}{\sqrt{2}}(\ket{00} + \ket{{11})$. Alice et Bob partagent maintenant un état enchevêtré.
  4. Une porte CNOT est appliquée au qubit de message et au qubit d’Alice. Étant donné que le qubit d’Alice est également enchevêtré avec le qubit de Bob, l’état résultant est un état enchevêtré à trois qubits.
  5. Une porte $Hadamard H$ est appliquée au qubit de message.
  6. Alice mesure ses deux qubits et communique les résultats de mesure à Bob, ce qui n’est pas reflété dans le circuit. Les résultats de mesure sont deux bits classiques, qui peuvent prendre les valeurs 00, 01, 10 ou 1
  7. Deux portes Pauli contrôlées de manière classique sont appliquées au qubit de Bob, en fonction du bit de résultat ayant la valeur $1$. L’état résultant est l’état du qubit de message d’origine.

Étapes suivantes