9 votos

Algoritmo de Shor: ¿por qué el colapso final de los qubits auxiliares paraliza el cálculo?

Veamos cuántica subrutina de Shor del algoritmo:

enter image description here

  1. Hadamard puertas crear superposición de todos (número exponencial) los valores de entrada de qubits.
  2. A continuación realizamos un clásico de la función de ellos, que está aquí: $f(a) = y^a \textrm{ mod } N$ donde $N$ es el número que queremos factorizar, $y$ es algunos elegido (generalmente aleatoria) número menor que $N$.
  3. A continuación realizamos la medición del valor de esta función $f(a)=m$ (al azar). Esta medida restringe el conjunto inicial de sólo los valores de entrada de $a$, de tal manera que $f(a)=m$.
  4. La matemática dice que esta restringido el conjunto tiene que ser periódica, este período puede ser la conclusión a la que el valor de (quantum) la transformada de Fourier, y permite concluir que los factores.

Sin embargo, las computadoras cuánticas requieren reversible/operaciones unitarias, por ejemplo, no podemos simplemente del uso O de la puerta: $(x,y) \to x\ \mathrm{or}\ y$, y en su lugar debemos utilizar por ejemplo,$(x, y, z) \to (x, y, z\ \mathrm{xor}\ (x\ \mathrm{or}\ y))$, lo que es propio inverso $-$, pero que requiere una auxiliares adicionales qubit inicializado como $z=0$. Por lo que su número es comparable con el número de puertas de la clásica función - puede ser bastante grande.

Pero, ¿qué pasa con todos estos auxiliar de qubits en la final de la computación, y después de la computación?

La medición de la clásica función ha llevado a la crucial de la restricción del conjunto inicial - podemos asegurar que la auxiliar de qubits no son, finalmente, también medido/derrumbó, también restringir el conjunto?

¿Hay algún intervalo de tiempo cuando tal medida restringe el conjunto? (De forma análoga: se requiere un orden de tiempo entre QFT y la medición de la clásica función?)

Si no, podemos asegurar que la restricción de la (inevitable?) el colapso de la auxiliar de qubits no paralizar nuestro cálculo?

12voto

titanous Puntos 1601

En el algoritmo de factorización, hay tres tipos de qubits. En el OP de la notación, hay de entrada "qubits", que comienzan en una superposición de todos los valores posibles, y que, finalmente, tomar la transformada de Fourier. Hay "valor " qubits", en la que calcular la función de $y^a \pmod{N}$ donde $a$ es el valor en la entrada de qubits. Y hay "auxiliar de qubits", que se utiliza como espacio de trabajo para ayudar a hacer este tipo de cálculos.

Con el fin de hacer la factorización algoritmo funciona correctamente, usted necesita para restablecer todos los auxiliares de qubits, que comenzó como $|0\rangle$ a principios de la computación, a $|0\rangle$ al final de la computación. Esto se llama "uncomputing" estos qubits. (En realidad, usted puede establecer para cualquier cosa que usted por favor, el tiempo es una constante independiente del funcionamiento del algoritmo.) Teoremas sobre reversible clásicos de cálculo de asegurarse de que es posible hacerlo.

Si restablece el auxiliar de qubits a $|0\rangle$, entonces si el medio ambiente, o a alguien, las medidas de ellos, nada es revelado acerca de la computación, y el cálculo no está "paralizado". Si usted se olvide de reiniciar a $|0\rangle$, usted probablemente no va a obtener la respuesta correcta, o si no nadie medidas.

6voto

FryGuy Puntos 231

Actualización: originalmente se pensó que la pregunta se refiere al "valor" qubits cuando el autor de la pregunta, dijo "auxiliar". Esta respuesta se explica por qué usted no necesita para medir el valor de qubits. Para el actual auxiliar de qubits, que se utilizan como espacio de trabajo mientras que el cálculo del valor de qubits, también debe ser de acuerdo a la medida de ellos después, pero sólo porque un circuito adecuado uncomputes de nuevo a 0.


Después de que el valor de qubits son calculadas (el almacenamiento de $B^k \text{ mod } R$, no los ha utilizado como ayudantes mientras que el cálculo de ese valor!), usted puede simplemente tirar de ellos hacia fuera. No es necesario medir o para proteger o cuidar de ellos. Acaba de caer en el suelo. Nada que nadie les hace puede dañar la parte restante de la computación. Ver este tutorial de el algoritmo de Shor.

Vamos a hacer un ejemplo sencillo a través de mi simulador de Capricho. Vamos a inicializar un uniforme de la superposición de qubits, y luego calcular su paridad en un auxiliar qubit (haga clic en la imagen para manipular el circuito en el simulador):

density matrix before/after parity onto ancilla

Los dos cuadros verdes se muestra una representación de la matriz de densidad de la parte superior de tres qubits. Podemos mostrarle la información sin perturbar el sistema, porque este es un simulador.

Antes de la paridad de la computación, los qubits son totalmente coherentes. Posteriormente, algunos de fuera de la diagonal indicadores han desaparecido (llega a ser cero). Esto indica una pérdida parcial de la coherencia. Los estados con un número par de unos han sido decohered de los estados que tienen un número impar de unos.

Ahora vamos a intentar utilizar el auxiliar qubit a "meterse con" la parte superior de tres qubits. Si tenemos éxito, la matriz de densidad de la pantalla va a mostrar algo diferente. La primera cosa a intentar es la medición:

density matrix before/after parity onto measured ancilla

Nada diferente.

Tal vez se midió a lo largo del eje del mal? Vamos a rotar el qubit antes de la medición:

density matrix before/after parity onto rotate-measured ancilla

Todavía no hay cambio!

De hecho, no importa lo que hagamos a la parte inferior qubit, no podemos cambiar la densidad de la matriz de la parte superior de tres qubits. No sin algún tipo de operación de que los cruces entre ellos, o algún tipo de condicionamiento (por ejemplo, considerar sólo el subconjunto de los estados donde la medida de la parte inferior qubit devuelve un resultado en particular).

Si usted encuentra esto difícil de creer, recomiendo simplemente jugar en el Capricho de un rato, tratando de hacer que las densidades de las tres qubits cambio en funcionamiento sólo en la parte inferior qubit.


Otra forma de confirmar que no importa si se mide la auxiliar de qubits es simplemente hacer el álgebra y de verificación.

El estado inicial es:

$$|\psi_0\rangle = |0\rangle_{\text{main}} \otimes |0\rangle_{\text{aux}} = |0\rangle_{\text{all}}$$

Luego nos Hadamard transformar el registro principal:

$$|\psi_1\rangle = H_{\text{main}} |\psi_0\rangle = \sum_{k=0}^{2^n-1} |k\rangle_{\text{main}} \otimes |0\rangle_{\text{aux}}$$

Tenga en cuenta que estoy ignorando la normalización de los factores. En el final de mi argumento va a ser basado en el tamaño proporcional de los diversos casos, en lugar de tamaño absoluto, así que esto está bien.

Entonces volvemos al azar de la base de $B$ aplicar la exponenciación modular de operación, lo que añade B^k mod R en el auxiliar de registro donde k es el cómputo de valor de la base del registro principal. En una máquina real tendríamos que usar algo de espacio de trabajo temporal para implementar esta operación, pero todo eso se limpian por lo que aquí nos preocupan sólo por el efecto sobre el principal y el auxiliar de registros:

$$M = \Big[ \text{aux} \text{ += } B^{\text{main}} \text{ mod } R \Big]$$

$$|\psi_2\rangle = M \cdot |\psi_1\rangle = \sum_{k=0}^{2^n-1} |k\rangle_{\text{main}} \otimes |B^k \text{ mod } R\rangle_{\text{aux}}$$

Ahora podemos reescribir $k$, en términos de lo desconocido período de $B^k \text{ mod } R$. Utilizaremos $k = l \cdot m + s$ donde $l$ es el período, $s$ es una variable de iteración para el desplazamiento entre 0 y $l$, e $m$ es una variable de iteración. Con esto en mente, podemos reescribir $|\psi_2\rangle$ como:

$$|\psi_2\rangle = \sum_{m=0}^{\;\;\lceil 2^n / l \rceil-1\;\;} \sum_{s=0}^{\text{min}(l, 2^n-lm)-1} |lm+s\rangle_{\text{main}} \otimes |B^{lm+s} \text{ mod } R\rangle_{\text{aux}}$$

Tenga en cuenta que $B^{lm+s} = B^{s} \pmod{R}$. También tenga en cuenta que las complicadas condiciones de contorno en $s$ puede ser simplificado mediante la aproximación de nuestros suma real, con una suma que asciende hasta el primer múltiplo de $l$ después $2^n$. Esta es una buena aproximación tan largo como $2^n >> l$, lo cual es cierto ya que $n$ elegido es tal que $2^n > R^2$ y sabemos que $R > l$. De todos modos, después de aplicar que la simplificación y la aproximación, se obtiene:

$$|\psi_2\rangle \approx \sum_{m=0}^{\;\;\lceil 2^n / l \rceil-1\;\;} \sum_{s=0}^{l-1} |lm+s\rangle_{\text{main}} \otimes |B^{s} \text{ mod } R\rangle_{\text{aux}}$$

Debido a que la condición de contorno de $s$ no dependen $m$ más, podemos cambiar el orden de las sumas. Lo que nos da:

$$|\psi_2\rangle \approx \sum_{s=0}^{l-1} \left( |B^{s} \text{ mod } R\rangle_{\text{aux}} \otimes \sum_{m=0}^{\lceil 2^n / l \rceil-1} |lm+s\rangle_{\text{main}} \right)$$

Ahora aplicamos la inversa de la transformada de Fourier de la operación en el registro principal. Aviso que puede ser movido desde el exterior de la suma para el interior:

$$\begin{align} |\psi_3\rangle &= \text{QFT}^{\dagger}_{\text{main}} \cdot |\psi_2\rangle \\ &\approx \text{QFT}^{\dagger}_{\text{main}} \cdot \sum_{s=0}^{l-1} \left( |B^{s} \text{ mod } R\rangle_{\text{aux}} \otimes \sum_{m=0}^{\lceil 2^n / l \rceil-1} |lm+s\rangle_{\text{main}} \right) \\ &= \sum_{s=0}^{l-1} \left( |B^{s} \text{ mod } R\rangle_{\text{aux}} \otimes \sum_{m=0}^{\lceil 2^n / l \rceil-1} \text{QFT}^{\dagger}_{\text{main}} \cdot |lm+s\rangle_{\text{main}} \right) \end{align}$$

A continuación, ampliar la definición de la QFT en una suma de más de una variable $j$, y proponer que se suma hacia afuera:

$$\begin{align} |\psi_3\rangle &\approx \sum_{s=0}^{l-1} \left( |B^{s} \text{ mod } R\rangle_{\text{aux}} \otimes \sum_{m=0}^{\lceil 2^n / l \rceil-1} \;\; \sum_{j=0}^{2^n-1} |j\rangle_{\text{main}} \cdot \text{exp}(i\tau \cdot 2^{-n} \cdot j \cdot (lm+s)) \right) \\ &= \sum_{s=0}^{l-1} \left( |B^{s} \text{ mod } R\rangle_{\text{aux}} \otimes \sum_{j=0}^{2^n-1} |j\rangle_{\text{main}} \sum_{m=0}^{\lceil 2^n / l \rceil-1} \text{exp}(i\tau \cdot 2^{-n} \cdot j \cdot (lm+s)) \right) \\ &= \sum_{s=0}^{l-1} \sum_{j=0}^{2^n-1} \left( |B^{s} \text{ mod } R\rangle_{\text{aux}} \otimes |j\rangle_{\text{main}} \sum_{m=0}^{\lceil 2^n / l \rceil-1} \text{exp}(i\tau \cdot 2^{-n} \cdot j \cdot (lm+s)) \right) \end{align}$$

Ahora vamos a medir el registro principal. La probabilidad de obtener el resultado $r$ es el total del cuadrado de la magnitud de los estados donde el primer registro es $r$. Algebraicamente:

$$\begin{align} P(r) &= \sum_{a,b | a=r} \Big| (\langle a |_{\text{main}} \otimes \langle b |_{\text{aux}}) \cdot | \psi_3 \rangle \Big|^2 \\ &= \sum_{b} \Big| (\langle r |_{\text{main}} \otimes \langle b |_{\text{aux}}) \cdot | \psi_3 \rangle \Big|^2 \\ &\approx \sum_{b} \left| \langle r |_{\text{main}} \langle b |_{\text{aux}} \cdot \sum_{s=0}^{l-1} \sum_{j=0}^{2^n-1} |B^{s} \text{ mod } R\rangle_{\text{aux}} |j\rangle_{\text{main}} \sum_{m=0}^{\lceil 2^n / l \rceil-1} \text{exp}(i\tau \cdot 2^{-n} \cdot j \cdot (lm+s)) \right|^2 \end{align}$$

Porque todos los de nuestra base de tfe son perpendiculares, cualquier sumandos que no logran satisfacer $b=B^s \pmod{R}$ $r=lm+s$ será cero d. El resto de los términos se han bras y tfe que coincidan exactamente, dando un producto interior de 1. Voy a hacer esto durante un par de pasos, ya que simplifica la suma considerablemente:

$$\begin{align} P(r) &\approx \sum_{b} \left| \langle r |_{\text{main}} \langle b |_{\text{aux}} \cdot \sum_{s=0}^{l-1} \sum_{j=0}^{2^n-1} |B^{s} \text{ mod } R\rangle_{\text{aux}} |j\rangle_{\text{main}} \sum_{m=0}^{\lceil 2^n / l \rceil-1} \text{exp}(i\tau \cdot 2^{-n} \cdot j \cdot (lm+s)) \right|^2 \\ &= \sum_{b} \left| \sum_{s=0}^{l-1} \sum_{j=0}^{2^n-1} \langle r |_{\text{main}} \langle b |_{\text{aux}} \cdot |B^{s} \text{ mod } R\rangle_{\text{aux}} |j\rangle_{\text{main}} \sum_{m=0}^{\lceil 2^n / l \rceil-1} \text{exp}(i\tau \cdot 2^{-n} \cdot j \cdot (lm+s)) \right|^2 \\ &= \sum_{b} \left| \sum_{s=0}^{l-1} \sum_{j=0}^{2^n-1} \langle r | j\rangle_{\text{main}} \langle b | B^{s} \text{ mod } R\rangle_{\text{aux}} \sum_{m=0}^{\lceil 2^n / l \rceil-1} \exp(i\tau \cdot 2^{-n} \cdot j \cdot (lm+s)) \right|^2 \\ &= \sum_{s=0}^{l-1} \left| \sum_{j=0}^{2^n-1} \langle r | j\rangle_{\text{main}} \sum_{m=0}^{\lceil 2^n / l \rceil-1} \exp(i\tau \cdot 2^{-n} \cdot j \cdot (lm+s)) \right|^2 \\ &= \sum_{s=0}^{l-1} \left| \sum_{m=0}^{\lceil 2^n / l \rceil-1} \exp(i\tau \cdot 2^{-n} \cdot r \cdot (lm+s)) \right|^2 \end{align}$$

Ahora estamos llegando a alguna parte. La siguiente cosa a hacer es deshacerse de ese molesto $s$. El Factor de la $s$ componente del interior de la suma, que le permite factor fuera del cuadrado de la magnitud, momento en el que te das cuenta de que no aporta nada y la suma se puede convertir en una multiplicación por $l$:

$$\begin{align} P(r) &\approx \sum_{s=0}^{l-1} \left| \sum_{m=0}^{\lceil 2^n / l \rceil-1} \exp(i\tau \cdot 2^{-n} \cdot r \cdot (lm+s)) \right|^2 \\ &= \sum_{s=0}^{l-1} \left| \sum_{m=0}^{\lceil 2^n / l \rceil-1} \exp(i\tau \cdot 2^{-n} \cdot r \cdot lm) \cdot \exp(i\tau \cdot 2^{-n} \cdot r \cdot s) \right|^2 \\ &= \sum_{s=0}^{l-1} \left| \exp(i\tau \cdot 2^{-n} \cdot r \cdot s) \sum_{m=0}^{\lceil 2^n / l \rceil-1} \exp(i\tau \cdot 2^{-n} \cdot r \cdot lm) \right|^2 \\ &= \sum_{s=0}^{l-1} \big| \exp(i\tau \cdot 2^{-n} \cdot r \cdot s) \big|^2 \left| \sum_{m=0}^{\lceil 2^n / l \rceil-1} \exp(i\tau \cdot 2^{-n} \cdot r \cdot lm) \right|^2 \\ &= \sum_{s=0}^{l-1} \left| \sum_{m=0}^{\lceil 2^n / l \rceil-1} \exp(i\tau \cdot 2^{-n} \cdot r \cdot lm) \right|^2 \\ &= l \cdot \left| \sum_{m=0}^{\lceil 2^n / l \rceil-1} \exp(i\tau \cdot 2^{-n} \cdot rl \cdot m) \right|^2 \end{align}$$

Cerca de allí. Para hacer la estructura de la suma flagrante, se extrae de una variable $\omega = \exp(i\tau rl / 2^{n})$:

$$\begin{align} P(r) &\approx l \cdot \left| \sum_{m=0}^{\lceil 2^n / l \rceil-1} \exp(i\tau \cdot 2^{-n} \cdot rl \cdot m) \right|^2 \\ &= l \cdot \left| \sum_{m=0}^{\lceil 2^n / l \rceil-1} \omega^{m} \right|^2 \text{ where } \omega = \exp(i\tau r l / 2^{n}) \end{align}$$

El interior de la suma será más grande cuando todos sus términos apuntan en la misma dirección, es decir, cuando se $\omega \approx 1$. Lo que significa que $\exp(i\tau rl / 2^{n}) \approx 1$, lo que significa que $2^{-n} r l$ es casi un entero $d$. Reescribir $2^{-n} r l \approx d$ y tienes:

$$r \approx 2^n \cdot \frac{d}{l}$$

En otras palabras, si el período es$l$, entonces los valores que son más propensos a medir se coloca cerca de los múltiplos de $2^n / l$. En la práctica de recuperarse $l$ por problemas "que posibles múltiples fue mi medición más cercano?".

Dejo como ejercicio para el lector para trabajar exactamente cuánto más probable es que se para medir los valores de $r$ que dan los valores de $\omega$ cerca de 1.

i-Ciencias.com

I-Ciencias es una comunidad de estudiantes y amantes de la ciencia en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X