Introducción al modelo circuito cuántico

Aquí se verá una introducción a un modelo computacional para una computadora cuántica, es decir una descripción matemática sin importarnos la parte del Hardware. Este modelo se llama Quantum circuit model.

¿Qué es un qubit?

Definición.Sean a,bC tales que |a|2+|b|2=1, |0,|1C2, entonces un qubit, se define por: a|0+b|1.

También llamado quantum bit, qbit,Qbit o q-bit. Notemos que |0 y |1 son simplemente vectores, pero es popular usar la notación de Dirac, ya que es práctica para hacer operaciones.

Definición. Sea A:CnCn lineal, definimos la adjunta de A por: A=AT. Es decir, A es la transpuesta conjugada de A.

Tenemos que |0=(10)|1=(01)

Consideremos la siguiente notación: 0|=|0=(10) y 1|=|1=(01).

Además el producto interno es el siguiente: 0|0=(10)(10)=11|1=(01)(01)=10|1=(10)(01)=01|0=(01)(10)=0

Notemos que |0,|1 es una base ortonormal del espacio de Hilbert C2. A la que llamaremos base computacional.

Así podemos calcular el producto interno de dos estados: |ψ1=a|0+b|1 y |ψ2=c|0+d|1, entonces ψ1|ψ2=(a|0+b|1)(c|0+d|1)=ac0|0+ad0|1+bc1|0+bd1|1=ad+bc

En física cuántica las mediciones no son deterministas, sino probabilísticas. En particular, dado cualquier qubit a|0+b|1, la probabilidad de obtener 0 es |a|2 y de obtener 1 es |b|2. Naturalmente, estas dos probabildades deben sumar 1, de ahí la necesidad de la condición de normalización. Una vez medido decimos que el qubit ha colapsado al estado. Como obtenemos los resultados que corresponden a |0 y |1, decimos que son medidos en la base computacional.

Notemos que si ψ=a|φ+b|ω es un qubit, y {φ,ω} es una base ortonormal de C2, entonces la probabilidad de medir el resultado asociado a un elemento |φ de una base ortonormal dada es exactamente |φ|ψ|2.

Puertas cuánticas de 1 qbit

Para desarrollar algoritmos útiles, necesitamos una manera de manipular los estados de qubits para hacer cálculos. Para ello usamos las puertas cuánticas así, como en la computanción clásica usamos puertas lógicas para construir circuitos.

Definición. Una matriz unitaria U es una matriz tal que UU=UU=I.

Proposición.Si U es una matiz unitaria, entonces Ux=x.

Definición. Una puerta cuántica para un solo qubit es una matriz A:C2C2 que es unitaria.

Una puerta es la identidad I=(1001)

Una puerta más interesante es la siguiente: X=(0110) Observemos que pasa con la base X|0=(0110)(10)=|1 X|1=(0110)(01)=|0 A esta puerta se le llama puerta NOT.

La puerta Hadamard es H=12(1111) H|0=12(|0+|1) a este estado se le llama plus y se denota |+ H|1=12(|0|1) a este estado se le llama minus y se denota |

Además consideremos estas puertas: Z=(1001)=HXH,Y=(0ii0)

Al conjunto de matrices {I,X,Y,Z} se le conoce como matrices de Pauli.

Otras dos puertas importantes son: S=(100eiπ/2)T=(100eiπ/4) Observemos que T2=S y S2=Z.

La esfera de Bloch

Como estamos tomando vectores en C2 podríamos pensar que necesitamos una representación en cuatro dimensiones para visualizarlo, pero es posible representar a un qubit en la superficie de una esfera, el cual es un objeto de dos dimensiones.

Sea |ψ=a|0+b|1. Primero vemos que a=r1eiα1b=r2eiα2 con 0r1,r21 y α1,α2[0,π]

Entonces existe θ[0,π] tal que cos(θ2)=r1 y sin(θ2)=r2, tenemos entonces |ψ=cos(θ2)eiα1|0+sin(θ2)eiα2|1.

Observación. Sean c un número complejo con modulo 1 y ω un elemento de una base ortonormal. Notemos que |ω|cψ|=|cω|ψ|=|c||ω|ψ|=|ω|ψ|. Entonces la c no afecta la probabilidad de obtener 0, análogamente con 1. Al hacer la medición respecto a la base computacional. Y por linealidad, al aplicar una puerta cuántica U(c|ψ)=cU|ψ. Entonces no hay ninguna transformación lineal que nos ayude a distinguir |ψ y c|ψ. Llamamos a c una fase global. Mientras que a,b son fases relativas.

Multiplicando a |ψ por eα1i |ψ=cos(θ2)|0+sin(θ2)eiϕ|1 donde ϕ=α2α1.

De esta manera podemos describir el estado de cualquier qubit con solo dos números θ[0,π] y ϕ[0,2π] que podemos interpretar como un ángulo polar y un ángulo azimutal, respectivamente. Es decir, usando coordenadas esféricas tenemos un punto en el espacio tridimensional (sinθcosϕ,sinθsinϕ,cosθ) que localiza cada estado del qubit en la suerficie de la esfera, llamada esfera de Bloch.

De hecho, esto significa que la compuerta X actúa como una rotación de π radianes alrededor del eje x de la esfera de Bloch... ¡así que ahora sabes por qué usamos ese nombre para la compuerta! De la misma manera, Z y Y son rotaciones de π radianes alrededor de los ejes z y y, respectivamente.

Podemos generalizar este comportamiento para obtener rotaciones de cualquier ángulo alrededor de cualquier eje de la esfera de Bloch. Sea P{X,Y,Z}, entonces podemos definir RP(θ)=eiθ2P=cosθ2Iisenθ2P=(cosθ200cosθ2)isenθ2(p1,1p1,2p2,1p2,2) Notemos que RX(π)=X, RY(π)=Y, RZ(π)=Z, RZ(π/2)=S, y RZ(π/4)=T.

Propocisión. Para cualquier puerta cuática U de un qbit, existe un vector unitario r=(rx,ry,rz) y un angulo θ tal que U=cosθ2Iisinθ2(rxX+ryY+rzZ).

Propocisión. Para cualquier puerta U de un qbit, existen angulos α,β,γ tales que U=RZ(α)RY(β)RZ(γ).

Es algunas arquitecturas es común usar un puerta universal de un qbit que depende de tres angulos y es capaz de generar cualquier otra puerta, su matriz es U(θ,ϕ,λ)=(cosθ2eiλsenθ2eiϕsenθ2ei(ϕ+λ)cosθ2)

Hola, mundo cuántico!

Un circuto se vería asi un circuito cuántico El estado inicial del qubit es |0, después de aplicar la puerta H, entonces el estado cambia a 1/2|0+1/2|1. El simbolo de medidor es justo cuando medidos y el estado del qubit colapsa, en este caso la probabilidad de obtener 0 es |1/2|2=1/2 y de obtener 1 será 1/2. Tenemos un circuito que en teoría genera bits de forma aleatoria siguiendo una distribución uniforme perfectamente.

Podemos modificar el circuito anterior para obtener cualquier distribución sobre 0 y 1 que queramos. Si queremos que la probabilidad de medir 0 sea p[0,1], sólo tenemos que considerar θ=2arccosp y el siguiente circuito: un circuito cuántico

Estados de dos qubits

Por supuesto, en un sistema de dos cúbits, cada uno de los cúbits puede estar en el estado |0 o en el estado |1. Así, para los dos cúbits, tenemos cuatro combinaciones posibles: ambos están en el estado |0, el primero está en el estado |0 y el segundo en el estado |1, el primero está en el estado |1 y el segundo en el estado |0, o ambos están en el estado |1. Estas cuatro posibilidades forman una base (llamada base computacional) de un espacio de 4 dimensiones y las denotamos, respectivamente, por |0|0,|0|1,|1|0,|1|1. donde es el producto tensorial. El cual se define de esta manera (a1a2an)(b1b2bm)=(a1(b1b2bm)a2(b1b2bm)an(b1b2bm))=(a1b1a1b2a1bma2b1a2b2a2bmanb1anb2anbm)

Por lo tanto, los cuatro estados base se pueden representar mediante vectores de columna de cuatro dimensiones dados por |0|0=(1000),|0|1=(0100),|1|0=(0010),|1|1=(0001). Generalmente omitimos el símbolo y simplemente usamos alguna de estas notaciones: |0|0,|0|1,|1|0,|1|1 o |00,|01,|10,|11 o incluso |0,|1,|2,|4. La expresión general para el estado de tal sistema es |ϕ=a00|00+a01|01+a10|10+a11|11 donde a00,a01,a10,a11C tales que x,y=01|axy|2=1.

Si medimos en la base computacional que estamos considerando, entonces la probablidad de obtener 00 es |00|ϕ|2=|a001+a010+a100+a110|2=|a00|2.

Supongamos que solo medimos un qubit, digamos que el primer qubit. Entonces la probabilidad de obtener 0 será |a00|2+|a01|2, que es la suma de las probabilidades de todos los resultados en los que el primer qubit puede ser 0. Si medimos el primer qubit y el resultado resulta ser 0, el sistema no colapsará completamente, sino que permanecerá en el estado a00|00+a01|01|a00|2+|a01|2, La notación de Dirac también es útil para calcular productos internos de estados de dos cúbits. Solo debemos tener en cuenta que (ψ1|ψ2)(φ1|φ2)=ψ1|φ1ψ2|φ2,

Puertas de dos qubits

Las puertas cuánticas de dos cúbits son matrices unitarias de 4×4que actúan sobre vectores columna de 4 dimensiones. La forma más sencilla de construir dichas matrices es tomando el producto tensorial de dos puertas cuánticas de un cúbit. Es decir, si consideramos dos puertas de un qúbit U1 y U2 y dos estados de un qúbit |ψ1 y |ψ1 , podemos formar una puerta de dos cúbits 𝑈1 ⊗ 𝑈2 que actúa sobre |ψ1|ψ2 como (U1U2)(|ψ1|ψ2)=(U1|ψ1)(U2|ψ2) Por linealidad, podemos extender 𝑈1 ⊗ 𝑈2 a cualquier combinación de estados de dos qúbits y podemos asociar una matriz a 𝑈1 ⊗ 𝑈2. De hecho, dicha matriz viene dada por el producto tensorial de las matrices asociadas a U1 y U2.

Los productos tensoriales de las puertas se producen de forma natural cuando tenemos circuitos con dos cúbits y pares de puertas individuales de un cúbit actúan sobre cada uno de ellos. Por ejemplo, en el siguiente circuito, la puerta 𝑋 ⊗ 𝑋 actúa sobre los dos cúbits y luego le sigue la puerta 𝐻 ⊗ 𝐼 , donde 𝐼 es la puerta identidad:

La puerta CNOT

Hay muchas matrices unitarias que no se pueden escribir como el producto tensorial de otras matrices simples. En el caso de dos qúbits, probablemente la más importante sea la compuerta NOT controlada (o X controlada), normalmente llamada compuerta CNOT, dada por la matriz unitaria (1000010000010010) Podemos ver que CNOT|00=|00,CNOT|01=|01,CNOT|10=|11,CNOT|11=|10. Esto significa que el valor del segundo cúbit se invierte si y solo si el valor del primer cúbit es 1. O, para decirlo en otras palabras, la aplicación de una compuerta NOT en el segundo qúbit (al que llamamos objetivo) está controlada por el primer qúbit. En un circuito cuántico, la compuerta CNOT se representa de la siguiente manera: Observe que el qubit de control está indicado por un círculo negro sólido y el qubit de destino está indicado por el símbolo (el símbolo de una puerta X también se puede usar en lugar de ).

Entrelazamiento

Estado producto. Decimos que un estado |ψ es un estado producto si se puede escribir como el producto como el producto tensorial de otros dos estados |ψ1 y |ψ2, cada uno de al menos de un qubit, |ψ=|ψ1|ψ2.

Si |ψ no es un estado producto, decimos que está entrelazado.

Ejemplo. Supongamos que 12(|00+|11)=(a|0+b|1)(c|0+d|1)=ac|00+ad|01+bc|01+bd|11 entonces ad=0. Si a=0 entonces ac=0 o si d=0 entonces bd=0. En cualquier caso es imposible llegar a la igualdad. Así se sigue que es estado está entrelazado.

Cuando se miden, los estados entrelazados pueden mostrar correlaciones que van más allá de lo que se puede explicar con física clásica. Por ejemplo si tenemos el estado 12(|00+|11) y medimos el primer qubit puede dar como resultado 0 o 1, cada uno con una probabilidad de 1/2. Sin embargo, si medimos el segundo qubit después, el resultado estará completamente determinado por el valor obtenido al medir el primer qubit y, de hecho, será exactamente el mismo. Si invertimos el orden y medimos primero el segundo qubit, entonces el resultado será 0 o 1 , con la misma probabilidad. Pero, en este caso, el resultado de una medición posterior del primer qubit estará completamente determinado.

El teorema de no clonación

Otra propiedad peculiar de los sistemas cuánticos es que, en general, no nos permiten copiar información. Por sorprendente que parezca, es simplemente una consecuencia fácil de la linealidad de las puertas cuánticas. Para demostrar por qué, seamos más precisos sobre lo que necesitaríamos para copiar información, por ejemplo con solo dos qubits. Nos gustaría tener una puerta cuántica de dos qubits U que pudiera copiar el primer qubit en el segundo. Es decir, para cualquier estado cuántico dado |ψ), necesitaríamos U|ψ|0=|ψ|ψ. Entonces, U|00=|00 y U|10=|11 y por linealidad U(12(|00+|10))=12(U|00+U|10)=12(|00+|11). Sin embargo, notemos que el estado original se puede factorizar 12(|00+|10)=(|0+|12)|0. Entonces U(12(|00+|10))=U((|0+|12)|0)=|0+|12|0+|12 Llegamos a una contradicción que implica que tal U no existe.

El teorema se aplica a estados desconocidos |ψ. Si sabemos qué es|ψ —es decir, si conocemos un circuito que prepara |ψ a partir de |0— entonces, por supuesto, podemos crear tantas copias independientes de él como queramos. Sin embargo, si nos entregan |ψ sin ninguna información adicional sobre su estado, el teorema de no clonación muestra que no podemos replicar su estado en general.

Puertas controladas

Quizás te preguntes si, además de una puerta controlada-X(o CNOT), también existen puertas controladas-Y , controladas-Z o controladas-H. La respuesta es un rotundo sí y, de hecho, para cualquier puerta cuántica U , es posible definir una puerta controlada-U(o, simplemente, CU ) cuya acción sobre la base computacional sea CU|00=|00,CU|01=|01,CU|10=|1U|0,CU|11=|1U|1 Se tiene que CU=(1000010000u11u1200u21u22) La representación del circuito de una puerta C𝑈 es similar a la que usamos para la puerta CNOT, es decir

¡Hola, mundo entrelazado!

Para finalizar nuestro estudio de los sistemas de dos cúbits, vamos a mostrar cómo crear estados entrelazados con la ayuda de la compuerta CNOT. Consideremos el siguiente circuito:

Inicialmente, el estado del sistema es |00. Después de aplicar la compuerta H, llegamos al estado 1/2(|00+|10). Finalmente, cuando aplicamos la compuerta CNOT, el estado cambia a 1/2(|00+|11), que, como demostramos antes es de hecho un estado entrelazado.

El estado 1/2(|00+|11) es conocido como un estado de Bell, de los cuales son cuatro. Los otros tres son 1/2(|00|11), 1/2(|10+|01), y 1/2(|10|01).

Sistemas multi-qubit

Como ya habrás deducido, si tenemos n qubits, los estados que constituyen la base computacional son

|0|0|0,|0|0|1,|1|1|1. Usualmente se omite el simbolo otimes para escribir |0|0|0,|0|0|1,|1|1|1. o |000,|001,|111, o simplemente |0,|1,,|2n1.

Por supuesto, un estado genérico del sistema tendrá entonces la forma |ψ=a0|0+a1|1++a2n1|2n1 sujeto a la única condición de que las amplitudes ai sean números complejos tales que l=02n1|al|2=1.

Obsérvese que la cantidad de parámetros que describen el estado general de un sistema de cúbits cuánticos es exponencial n. Para estados altamente entrelazados, no sabemos cómo representar toda esta información de una manera más sucinta y se sospecha firmemente que no es posible. Parte del poder de la computación cuántica proviene de la posibilidad de trabajar implicitamente con 2n números complejos al manipular solo n qubits.

Si decidimos medir todos los cúbits del sistema en la base computacional, obtendremos m con probabilidad |am|2. Si ese es el caso, entonces el estado colapsará a |m. Pero si solo medimos uno de los cúbits, digamos el j-ésimo, entonces obtendremos 0 con probabilidad lJ0|al|2, donde J0 es el conjunto de números cuyo bit j-ésimo es 0. En este escenario, el estado del sistema después de medir 0 sería lJ0al|llJ0|ai|2.

Calcular productos internos de sistemas de n-qubits en notación de Dirac es muy similar a hacerlo con sistemas de dos qubits. El procedimiento es análogo al que mostramos al de dos qubits teniendo en cuenta que (ψ1|ψn|)(|φ1|φn)=ψ1|φ1ψn|φn.

Puertas multi-qubit

Dado que los estados de n-qubits se representan mediante vectores columna de 2n-dimensiones, las puertas de n-qubits se pueden identificar con matrices unitarias de 2n×2n. De manera similar al caso de dos qubits, podemos construir puertas de n-qubits tomando el producto tensorial de puertas en un número menor de qubits. Es decir, si U1 es una puerta de n1-qubits y U2 es una puerta de n2-qubits, entonces U1U2 es una puerta de (n1+n2)-qubits y su matriz está dada por el producto tensorial de las matrices U1 y U2.

Sin embargo, hay puertas de n-qubits que no se pueden construir como productos tensoriales de puertas más pequeñas. Un ejemplo de ello es la puerta Toffoli o CCNOT, una puerta de tres qubits que actúa sobre la base computacional como CCNOT|x|y|z=|x|y|z(xy), donde es la función XOR y es el símbolo para la función boolena AND. Así, CCNOT aplica una puerta controlada doble en los primeros dos qubits y NOT en el tercer qubit.

A partir de su acción sobre los estados base, deducimos que la matriz para la compuerta CCNOT es: (1000000001000000001000000001000000001000000001000000000100000010)

La puerta de Toffoli es importante porque, utilizándola y con la ayuda de qubits auxiliares, podemos construir cualquier operador booleano clásico. Por ejemplo, CCNOT|1|1|z=|1|1|¬z(donde ¬z es la negación de z) y CCNOT|𝑥|𝑦|0=|x|y|𝑥𝑦. Esto demuestra que, con circuitos cuánticos, podemos simular el comportamiento de cualquier circuito digital clásico a costa de utilizar algunos qubits auxiliares adicionales, ya que cualquier función booleana se puede construir solo con negaciones y conjunciones. Esto es algo sorprendente, porque sabemos que todas las puertas cuánticas son invertibles, mientras que no todas las funciones booleanas lo son.

Puertas universales en computación cuántica

Las computadoras cuánticas actuales no pueden implementar todas las puertas cuánticas posibles. En cambio, se basan en resultados de universalidad que muestran cómo cualquier operación unitaria puede descomponerse en un circuito que utiliza un conjunto reducido de puertas primitivas.

Para nosotros será importante saber que, para cualquier operación unitaria, podemos construir un circuito que la implemente utilizando únicamente puertas de un cúbit y la puerta CNOT. Por esta razón, decimos que esas puertas son universales, en el mismo sentido que, por ejemplo, la negación y la conjunción son universales para la lógica booleana.

Además de las puertas de un cúbit más CNOT, existen muchos otros conjuntos de puertas universales. Por ejemplo, se puede demostrar que las tres puertas H, T y CNOT se pueden utilizar para aproximar cualquier operación unitaria con cualquier precisión deseada, y son universales en ese sentido.