Mesures Pauli à qubit unique et multi-qubit
À mesure que vous travaillez avec Q#, vous constatez que les mesures Pauli sont un type commun de mesure. Les mesures Pauli généralisent les mesures de base de calcul afin d’inclure des mesures dans d’autres bases et de parité entre différents qubits. Dans de tels cas, il est courant de discuter de la mesure d’un opérateur Pauli, qui est un opérateur tel que $X,Y, Z$ ou $Z\otimes , X\otimes X, X\otimes Y$, etc. Pour connaître les principes de base de la mesure quantique, consultez les qubits et les qubits multiples.
La discussion de la mesure en termes d’opérateurs Pauli est courante dans le sous-champ de correction d’erreur quantique.
Le guide Q# suit une convention similaire. Cet article explique cette autre vision des mesures.
Conseil
Dans Q#, les opérateurs Pauli multi-qubit sont généralement représentés par des tableaux de type Pauli[]
.
Par exemple, pour représenter $X \otimes Z \otimes Y$, vous pouvez utiliser le tableau [PauliX, PauliZ, PauliY]
.
Avant d’examiner en détail comment considérer une mesure de Pauli, il est utile de réfléchir à l’effet que produit sur l’état quantique le fait de mesurer un qubit unique dans un ordinateur quantique. Prenons un état quantique à $n$ qubits. Mesurer un qubit exclut immédiatement la moitié des $2^n$ possibilités de l’état. En d’autres termes, la mesure projette l’état quantique sur un demi-espace. Vous pouvez généraliser la façon dont vous réfléchissez à la mesure pour refléter cette intuition.
Pour identifier ces sous-espaces de manière concise, il nous faut un langage permettant de les décrire. Nous pouvons par exemple spécifier les deux sous-espaces à l’aide d’une matrice possédant seulement deux valeurs propres uniques, par convention $\pm 1$. Prenons un exemple simple pour décrire les sous-espaces de cette manière avec $Z$ :
$$\begin{\begin{align} Z & ; =\begin{bmatrix} 1 & ; 0 \\ 0 & ; -1 \end{bmatrix}. \end{align} $$
En lisant les éléments en diagonale de la matrice $Z$ de Pauli, nous voyons que $Z$ a deux vecteurs propres, $\ket{0}$ et $\ket{1}$, avec les valeurs propres $\pm 1$ correspondantes.
Ainsi, si une mesure du qubit aboutit Zero
(correspondant à l’état $\ket{0}$), il est connu que l’état du qubit est un $état propre +1$ de l’opérateur $Z$ .
De même, si le résultat est One
, il est connu que l’état du qubit est un $état propre -1$ de $Z$.
Ce processus, appelé dans le langage des mesures de Pauli "mesure de Pauli $Z$", est parfaitement équivalent à une mesure de base computationnelle.
Toute matrice $2\times 2$ qui est une transformation unitaire de $Z$ respecte également ce critère. Autrement dit, nous pourrions aussi utiliser une matrice $A=U^\dagger Z U$, où $U$ est une autre matrice unitaire, pour fournir une matrice qui définit les deux résultats d’une mesure dans ses vecteurs propres $\pm 1$. La notation des mesures de Pauli fait référence à cette équivalence unitaire en identifiant les mesures $X,Y,Z$ comme des mesures équivalentes qu’il est possible d’effectuer pour obtenir des informations à partir d’un qubit. Ces mesures sont fournies ici pour des raisons pratiques.
Mesures de Pauli | Transformation unitaire |
---|---|
$Z$ | $\mathbf{1}$ |
$X$ | $H$ |
$Y$ | $HS^{\dagger}$ |
Autrement dit, en utilisant cette langue, &entre guillemets ; mesure $Y$" ; équivaut à appliquer $HS^\dagger$ puis à mesurer dans la base de calcul, où S
est une opération quantique intrinsèque parfois appelée quot & ; porte de phase,& quot ; et peut être simulé à l’aide de la matrice unitaire
$$\begin{\begin{align}S =1 amp ; 0 \\ 0 & ; i \end{bmatrix}.&\begin{bmatrix} \end{align} $$
Cela équivaut également à appliquer $HS^\dagger$ au vecteur d’état quantique, puis à mesurer $Z$. Ainsi, l’opération suivante est équivalente à Measure([PauliY], [q])
:
operation MeasureY(qubit : Qubit) : Result {
mutable result = Zero;
within {
Adjoint S(q);
H(q);
} apply {
set result = M(q);
}
return result;
}
L’état correct est ensuite trouvé en revenant à la base de calcul, qui équivaut à appliquer $sh$ au vecteur d’état quantique ; dans l’extrait de code, la transformation vers la base de calcul est gérée automatiquement avec l’utilisation du within … apply
bloc.
Dans Q#, le résultat---that est que les informations classiques extraites de l’interaction avec l’état---is donnés à l’aide d’une Result
valeur $j \in \{\texttt{Zero}, \texttt{One}\}$ indiquant si le résultat se trouve dans l’espace $propre (-1)^j$ propre de l’opérateur Pauli mesuré.
Mesures à plusieurs qubits
Les mesures des opérateurs Pauli à plusieurs qubits sont définies de la même manière, comme le montre l’exemple suivant :
$$Z Z\otimes =\begin{bmatrix}1 & ; 0 & ; 0& ; 0 0\\& amp ;-1& ; 0& ; 0\\ 0& ; 0& ;-1& ; 0\\ 0& ; 0& ; 0& ; 1\end{bmatrix}. $$
Ainsi, le produit tensoriel de deux opérateurs Pauli$Z$ forme une matrice composée de deux espaces contenant des valeurs propres $+1$ et $-1$. Comme dans le cas à un qubit, les deux constituent un demi-espace, ce qui signifie que la moitié de l’espace vectoriel accessible appartient à l’espace propre $+1$ et l’autre à l’espace propre $-1$. En général, il est facile de voir, à partir de la définition du produit tensoriel, que tout produit tensoriel d’opérateurs Pauli$Z$ et l’identité obéissent également à cette règle. Par exemple,
$$\begin{align}Z \otimes\begin{bmatrix}={1}\mathbf{1 & ; 0 & ; 0 & ; 0 \\ & ; 1 & ; 0 amp ; \\ 0 & ; 0 amp ; 0 && ; -1 & ; 0 \\ 0 & ; 0 amp ; 0 && ; -1 .\end{bmatrix} \end{align} $$
Comme précédemment, toute transformation unitaire de ces matrices décrit également deux demi-espaces étiquetés avec $des valeurs propres \pm 1$ . par exemple, $X\otimes X = H\otimes H(Z\otimes Z)H\otimes H$ à partir de l’identité $Z=HXH$. Comme pour le cas un qubit, toutes les mesures pauli-à-deux qubits peuvent être écrites sous la forme $U^\dagger (Z\otimes 1) U$ pour $4\times$ matrices unitaires $U$. Les transformations sont énumérées dans le tableau suivant.
Remarque
Dans cette table, $\operatorname{SWAP est utilisé pour indiquer la matrice $$\operatorname{\begin{align}SWAP}}$& amp ; =\left(matrice 1 amp ; 0 & ; 0 & ; 0 \\ amp ; 0 && ; 1 & ; 0 0 \\ & ; 1 amp ; 1 & ; 0 & ; 0 & ; \\ 0 amp ; 0 && ; 1 \end{matrice}\right)$$ \end{align}utilisée pour simuler l’opération SWAP
intrinsèque .&}\begin{
Mesures de Pauli | Transformation unitaire |
---|---|
$Z\otimes\mathbf{1}$ | $\mathbf{1}\otimes \mathbf{1}$ |
$X\otimes\mathbf{1}$ | $H\otimes\mathbf{1}$ |
$Y\otimes\mathbf{1}$ | $HS^\dagger\otimes\mathbf{1}$ |
$\mathbf{1}\otimes Z$ | $\operatorname{SWAP}$ |
$\mathbf{1}\otimes X$ | $(H\otimes\mathbf{1})\operatorname{SWAP}$ |
$\mathbf{1}\otimes Y$ | $(HS^\dagger\otimes\mathbf{1})\operatorname{SWAP}$ |
$Z\otimes Z$ | $\operatorname{CNOT}_{10}$ |
$X\otimes Z$ | $\operatorname{CNOT}_{10}(H\otimes\mathbf{1})$ |
$Y\otimes Z$ | $\operatorname{CNOT}_{10}(HS^\dagger\otimes\mathbf{1})$ |
$Z\otimes X$ | $\operatorname{CNOT}_{10}(\mathbf{1}\otimes H)$ |
$X\otimes X$ | $\operatorname{CNOT}_{10}(H\otimes H)$ |
$Y\otimes X$ | $\operatorname{CNOT}_{10}(HS^\dagger\otimes H)$ |
$Z\otimes Y$ | $\operatorname{CNOT}_{10}(\mathbf{1}\otimes HS^\dagger)$ |
$X\otimes Y$ | $\operatorname{CNOT}_{10}(H\otimes HS^\dagger)$ |
$Y\otimes Y$ | $\operatorname{CNOT}_{10}(HS^\dagger\otimes HS^\dagger)$ |
Ici, l’opération CNOT
apparaît pour la raison suivante.
Chaque mesure Pauli qui n’inclut pas la $\mathbf{1}$ matrice équivaut à une unité à $Z\otimes Z$ par le raisonnement précédent.
Les valeurs propres de $Z\otimes Z$ dépendent uniquement de la parité des qubits qui composent chaque vecteur de base computationnelle. Les opérations CNOT servent à calculer cette parité et à la stocker dans le premier bit.
Une fois le premier bit mesuré, nous pouvons récupérer l’identité du demi-espace résultant, ce qui équivaut à mesurer l’opérateur Pauli.
En outre, même s’il peut être tentant de supposer que la mesure $de Z\otimes Z$ est identique à la mesure $séquentielle de Z\otimes{1}$\mathbb{, puis $\mathbb{1}\otimes Z$, cette hypothèse serait fausse. En effet, mesurer $Z\otimes Z$ projette l’état quantique dans l’état propre $+1$ ou $-1$ de ces opérateurs. Mesurer $Z\otimes\mathbb{1}$ puis $\mathbb{1}\otimes Z$ projette d’abord le vecteur d’état quantique sur un demi-espace de $Z\otimes\mathbb{{1}$ puis sur un demi-espace de $\mathbb{{1}\otimes Z$. Étant donné qu’il y a quatre vecteurs de base computationnelle, les deux mesures permettent de réduire l’état à un quart d’espace et, par conséquent, à un seul vecteur de base computationnelle.
Corrélations entre qubits
Une autre façon d’examiner la mesure des produits tensoriels de matrices de Pauli (par exemple $X\otimes X$ ou $Z\otimes Z$) consiste à considérer que ces mesures permettent de consulter les informations stockées dans les corrélations entre les deux qubits. La mesure $de X\otimes 1$ vous permet d’examiner les informations stockées localement dans le premier qubit. Si les deux types de mesures sont tout aussi utiles en informatique quantique, c’est le premier qui met en évidence toute sa puissance. Il révèle que, dans ce domaine, les informations que l’on souhaite connaître ne sont pas stockées dans un qubit unique, mais plutôt stockées non localement dans toutes les qubits en même temps. Par conséquent, elles ne se manifestent que si on les examine par une mesure conjointe (par exemple $Z\otimes Z$).
Des opérateurs Pauli arbitraires tels que $X\otimes Y \otimes Z \otimes\mathbf{1}$ peuvent également être mesurés. Les produits tensoriels des opérateurs Pauli n’ont que deux valeurs propres $\pm 1$. Les deux espaces propres constituent des demi-espaces de l’ensemble de l’espace vectoriel. Ainsi, ils coïncident avec les exigences indiquées précédemment.
En Q#, ces mesures retournent $j$ si la mesure produit un résultat dans l’espace propre du signe $(-1)^j$. L’utilisation de mesures Pauli en tant que caractéristique Q# intégrée est utile, car la mesure de ces opérateurs nécessite de longues chaînes de portes contrôlées et de transformations de base pour décrire la porte U$ diagonale $nécessaire pour exprimer l’opération en tant que produit tensoriel de $Z$ et $1$. Vous pouvez ainsi spécifier que vous souhaitez effectuer l’une de ces mesures prédéfinies, ce qui vous évite d’avoir à chercher comment transformer votre base de sorte qu’une mesure de base computationnelle fournisse les informations nécessaires. Q# gère automatiquement toutes les transformations de la base nécessaires.
Le théorème d’impossibilité du clonage quantique
Les informations quantiques sont puissantes. Il vous permet d’effectuer des choses étonnantes telles que les nombres de facteurs exponentiellement plus rapidement que les algorithmes classiques les plus connus, ou de simuler efficacement des systèmes d’électrons corrélés qui nécessitent classiquement un coût exponentiel pour simuler avec précision. Toutefois, la puissance de l’informatique quantique présente quelques limitations, parmi lesquelles figure le théorème d’impossibilité du clonage quantique.
Le théorème d’impossibilité du clonage quantique porte bien son nom. Il interdit le clonage d’états quantiques génériques par un ordinateur quantique. La preuve du théorème est remarquablement simple. Bien qu’une preuve complète du théorème sans clonage soit trop technique pour cet article, la preuve dans le cas d’aucun qubits auxiliaire supplémentaire n’est dans la portée.
Pour un tel ordinateur quantique, l’opération de clonage doit être décrite avec une matrice unitaire. La mesure quantique n’est pas autorisée, car elle entraînerait la corruption de l’état quantique à cloner. Pour simuler l’opération de clonage, la matrice unitaire utilisée doit avoir la propriété selon laquelle $$ U \ket{\psi}\ket{{0}=\ket{\psi}\ket{\psi}$$ pour n’importe quel état $\ket{\psi}$. La propriété de linéarité de la multiplication de matrices implique alors que, pour n’importe quel autre état quantique $\ket{\phi}$,
$$\begin{\begin{align}U \left[ \frac{{1}{\sqrt{{2}}\left(\ket{\phi}+\ket{\psi}\right) \right] \ket{{0}& ; =\frac{1}{\sqrt{2}} U\ket{\phi}\ket{{0} + \frac{1}{\sqrt{{2}} U\ket{\psi}\ket{0}\\& ; =\frac{1}{\sqrt{2}}\left( \ket{\phi}\ket{\phi} + \ket{\psi}\ket{\psi}\right) \\& ; \ne\left( \frac{{2}}\left{1}{\sqrt{(\ket{\phi}+\ket{\psi}\right) ) \otimes\left\right( \frac{1}{\sqrt{{2}}\left(\ket{\phi}+\ket{\psi}\right) \right). \end{align} $$
Cela nous donne l’intuition fondamentale qui sous-tend le principe d’impossibilité du clonage : tout appareil qui copie un état quantique inconnu doit provoquer des erreurs dans au moins une partie des états qu’il copie. L’hypothèse clé selon laquelle le cloneur agit de manière linéaire sur l’état d’entrée peut être violée par l’ajout et la mesure des qubits auxiliaires. Cependant, ces interactions révèlent également des informations sur le système dans les statistiques de mesure et empêchent le clonage exact dans ces cas aussi.
Le théorème d’impossibilité du clonage quantique est important pour une compréhension qualitative de l’informatique quantique. Si l’on pouvait cloner des états quantiques sans coût, cela donnerait le pouvoir quasiment magique d’apprendre des états quantiques. Il serait en effet possible de violer le fameux principe d’incertitude de Heisenberg. Vous pourriez également utiliser un cloneur optimal pour découvrir un maximum de choses sur une distribution quantique complexe à partir d’un seul exemple. C’est comme si vous retournez une pièce et observez les têtes, puis en disant à un ami le résultat de leur réponse &entre guillemets ; Ah la distribution de cette pièce doit être Bernoulli avec $p=0,512643\ldots$ !&Quot; Une telle déclaration ne serait pas absurde, car un peu d’informations (résultat des têtes) ne peut simplement pas fournir les nombreux bits d’informations nécessaires pour encoder la distribution sans informations préalables substantielles. De même que nous ne pouvons pas préparer un ensemble de ces pièces sans connaître $p$, nous ne pouvons pas cloner parfaitement un état quantique sans informations préalables.
En informatique quantique, les informations ne sont pas gratuites. Chaque qubit mesuré fournit une seule information. Le principe d’impossibilité du clonage indique qu’il n’existe pas de porte dérobée permettant de contourner le compromis fondamental entre les informations acquises sur le système et la perturbation provoquée.