martes, 21 de diciembre de 2010

SIMULADOR CUANTICO

EXPLICACION COMPUTACION CUANTICA

Identificado el obstaculo en la computacion cuantica

Los nanocientíficos sueñan con desarrollar una computadora cuántica, un dispositivo del tamaño de un grano de arena que podría ser más rápido y potente que los PCs modernos. Ya han identificado a los diminutos átomos artificiales llamados "puntos cuánticos" como los materiales más probables para construir estas máquinas, pero se han visto desconcertados por la conducta impredecible de estos puntos a escala nanométrica.

Un equipo de físicos de la Universidad de Ohio cree haber encontrado el problema y ha realizado una propuesta técnica para construir mejores puntos cuánticos. Los investigadores señalan que los defectos formados durante su creación operan como una barrera a la experimentación científica, pero que el obstáculo podría solventarse.

Científicos experimentales en Alemania habían bombardeado puntos cuánticos con luz para crear el estado mecánico cuántico necesario para hacer funcionar una computadora cuántica, pero no pudieron controlar ese estado de forma consistente. Sergio Ulloa, profesor de física y astronomía de la Universidad de Ohio, su colega José Villas-Boas, y el profesor adjunto Alexander Govorov desarrollaron modelos teóricos para averiguar la causa del problema.

Éste se origina durante la creación de los puntos del tipo estudiado. Usando una cámara de epitaxia por haces moleculares (MBE), los científicos rocían una superficie con átomos a altas temperaturas, creando una capa atómica. A medida que se agregan más capas, los puntos cuánticos afloran en la superficie como gotitas de agua. Pero un residuo delgado dejado en la superficie que Ulloa llama la "capa húmeda" puede causar los problemas durante los experimentos. Cuando los científicos bombardearon los puntos cuánticos con un haz de luz en los estudios anteriores, la capa húmeda causó interferencia, en lugar de permitir a la luz entrar en el punto y activar el estado cuántico.

Computación cuántica
Un punto cuántico -en azul- es excitado por un rayo láser (Foto: Ohio University )
El estudio sugiere que los científicos podrían perfeccionar el proceso reenfocando el haz de luz o cambiando la duración de los pulsos lumínicos para anular los efectos de la capa húmeda. De hecho, ya se ha utilizado el descubrimiento teórico en el laboratorio para manipular un punto cuántico con éxito.

El nuevo hallazgo podría conducir finalmente a mejorar los puntos cuánticos, y a la vez ayudar a los científicos a comprender mejor los estados cuánticos. Es un paso más para encontrar un mejor bit cuántico, que debiera conducirnos a una computadora de este tipo.

Los científicos están creando puntos cuánticos de muchas maneras para usarlos en diferentes aplicaciones. El tipo autoensamblado podría utilizarse en la electrónica óptica y las computadoras cuánticas. Otros tipos, como los puntos cultivados en una solución, podrían emplearse para aplicaciones relativas a la energía solar.

El estudio también ayudará al equipo de la Universidad de Ohio a comprender mejor cómo controlar el espín de los electrones, una propiedad que podría ser el mecanismo subyacente de dispositivos electrónicos más rápidos y eficaces.

La Computación Cuántica y sus consecuencias en la Criptografía actual

En el año de 1982 aparecen las primeras ideas de lo que hoy se conoce como computación cuántica, Feyman observa que ciertos efectos de la mecánica cuántica (leyes de la física a nivel de particular elementales) no pueden ser simulados por una computadora digital, e insinúa que la computación en general puede ser eficientemente mejorada aprovechando esos efectos de la mecánica cuántica. No es hasta 1985 cuando Deutsch describe un modelo de una computadora cuántica, de alguna manera similar como en 1936 fue propuesto el modelo de la máquina de Turing que sirvió como preámbulo de las actuales computadoras.

Un principio de la máquina de Turing es afirmar que puede simular cualquier dispositivo físico, cosa que parece no ser cierta cuando se considera fenómenos de la física cuántica. Sin embargo los modelos de computación cuántica que se han propuesto deben de tener como un caso particular el modelo de la computación actual. Una computadora cuántica es hipotéticamente una máquina que usa los principios de la mecánica cuántica para realizar sus operaciones básicas.

A partir de Deutsch ha existido una gran cantidad de aportaciones a sus ideas, una nueva aportación que puede aparecer en la computación cuántica es una forma diferente de realizar los algoritmos como lo muestra el propuesto por Shor en 1994 para resolver el problema del Logaritmo Discreto y el Problema de Factorización.

En términos básicos la computación tradicional se basa en el manejo de bits, es decir la unidad de información más básica con lo que construye los puente lógicos y así un lenguaje formal con lo que operan todas las computadoras, en el caso de la computación cuántica se considera el qubits que se basa en una propiedad cuántica de la superposición, es decir que un mismo registro almacena al mismo tiempo el valor binario 0 y el 1. Esto permite que un registro de 2 qubits almacena los valores 00, 01, 10 y 11, así también un registro con 3 qubits almacena entonces los valores 000. 001, 010, 011, 100, 101, 110 y 111, en general un registro de n qubits almacena al mismo tiempo 2n valores.

Esto quiere decir de forma general que las operaciones que requieren tiempo exponencial se pueden reducir a un tiempo completamente lineal n, lo que naturalmente tendría un impacto en la criptografía actual como lo mostró Shor. Una forma de construir un qupuente es usar la transformada de Hadamard, se puede ver que las entradas a la transformada de Hadamard (|0>, | 0>,... |0>) de un registro de un n-qubits se transforman en cualquier estado del tipo (|a1>, |a2>,..., |an>) donde la |ai> es cualquier suposición del 0 o 1, esto constituye una qu-función booleana y así poder construir el qu-XOR, qu-AND, etc., lo que permitiría efectuar al menos las mismas operaciones de una computadora digital.

En 1997 se ha mostrado que la Resonancia Magnética Nuclear puede ser adaptada para lograr los requerimientos de una computadora cuántica.

En agosto pasado se dio la noticia que en los laboratorios de la IBM se había podido construir una computadora cuántica con 3 qubits, sin embargo es necesario primero construir computadoras de cientos o miles de qubits para que se considere una buena computadora cuántica además de resolver las dificultades de poder construirla.

Recientemente el equipo de Chaung ha podido construir una computadora cuántica de 5 qubits, generalizando el algoritmo de Shor para generar el orden de una permutación, el corazón de esto es usar la transformada de Furier cuántica que permite determinar más eficientemente la periodicidad desconocida de una función que no se sabe nada de ella.

En el experimento se usa una molécula con 5 spins sujeto a un campo magnético estático, que funciona como un qubits. Estos qubits fueron manipulados usando resonancia magnética nuclear. En este caso se resolvió el problema de "orden-finding" que simplemente significa encontrar un número mínimo de aplicaciones de una función f, hasta regresar a su estado inicial, algo similar a encontrar el orden de un elemento en un grupo finito. Cuando se colocan en un campo magnético estático cada spin tiene dos valores propios de energía discreta spin-up |0> y spin-down |1>, descritos por un Hamiltoniano. Todo esto constituye un 5-qubits en donde se pudo construir el puente lógico que efectúa eficientemente el algoritmo que resuelve el problema de "orden-finding" controlando en este caso el problema de "coherent" o de múltiple correspondencia, que es uno de los problemas más complicados para poder construir computadoras cuánticas de varios qubits.

Obviamente existen tanto tendencias pesimistas que afirman que las computadoras cuánticas nunca se podrán construir, como afirmaciones que predicen que es solo cuestión de años, es naturalmente difícil predecir cuándo se podrá tener una computadora cuántica, pero conforme pasa el tiempo se ve más claramente cual es el siguiente escalón en el desarrollo de la tecnología, desde el proceso manual, el mecánico, el electrónico, el digital y ahora el cuántico. Quizá sean entre 20 y 30 años los que tengan que pasar para ver materializada una computadora cuántica.

IBM logra una nueva meta histórica con su computadora cuántica

Científicos del Laboratorio de Investigación de IBM en Almaden, San José, California, llevaron a cabo el cálculo más complicado que se haya completado hasta la fecha en una computadora cuántica. En el experimento, los científicos hicieron que un trillón de moléculas diseñadas a la medida y contenidas en una probeta se transformaran en una computadora cuántica de siete qubits para resolver una versión sencilla del problema matemático que se encuentra en el corazón de muchos de los sistemas criptográficos actuales destinados a la seguridad de datos.

"Este resultado refuerza la conciencia creciente de que las computadoras cuánticas pueden resolver algún día problemas tan complejos que incluso las supercomputadoras más poderosas son incapaces de responder así trabajaran durante millones de años", manifestó Nabil Amer, gerente y estratega del grupo de física de la información del Departamento de Investigación de IBM. En la revista científica Nature, un grupo integrado por científicos de IBM y por estudiantes de segundo ciclo de la Universidad de Stanford informan la primera demostración del "Algoritmo de Shor", un método desarrollado en 1994 por Peter Shor, científico de AT and T, para que una computadora cuántica futurista encontrara los factores de un número, es decir, los números que multiplicados entre sí dan el número original. Hoy, descomponer en factores un número grande es un problema tan difícil para las computadoras convencionales (aunque sea algo tan sencillo de verificar) que la descomposición en factores es un elemento utilizado en muchos métodos criptográficos para proteger los datos.

Una computadora cuántica deriva su potencia de ciertas propiedades cuánticas de los átomos o núcleos que les permiten funcionar como bits cuánticos, o "qubits", y servir simultáneamente de procesador y memoria en la computadora. Dirigiendo interacciones entre qubits aisladas del entorno externo, los científicos pueden hacer que una computadora cuántica realice ciertos cálculos (por ejemplo factorizar) en forma exponencialmente más rápida que las computadoras convencionales. Cuando en una computadora convencional se factorizan números grandes, cada dígito añadido duplica aproximadamente el tiempo requerido para encontrar los factores. En una computadora cuántica, en cambio, el tiempo de factorización es un incremento constante con cada dígito adicional.

El ejemplo significativo más sencillo del Algoritmo de Shor es el de encontrar los factores del número 15, una operación que requiere una computadora cuántica de siete qubits. Los químicos de IBM diseñaron y elaboraron una nueva molécula que tiene siete spins nucleares -los núcleos de cinco átomos de flúor y de dos de carbono- que pueden interactuar como qubits, programarse mediante pulsos de radio frecuencias y detectarse con instrumentos de resonancia magnética nuclear (Nuclear Magnetic Resonance--NMR) similares a los actualmente utilizados en hospitales y laboratorios químicos.

En un tubo, los científicos de IBM controlaron un trillón de esas moléculas para ejecutar el algoritmo de Shor, e identificaron correctamente 3 y 5 como los factores de 15. "Aunque la respuesta puede parecer trivial, el control sin precedentes de los siete spins durante el cálculo hizo de éste el cómputo cuántico más complejo realizado a la fecha", señaló Amer.

"Ahora tenemos el desafío de convertir la computación cuántica en una realidad de la ingeniería", indicó Isaac Chuang, líder del grupo de investigación y ahora profesor adjunto en MIT. "Si podemos realizar este cálculo en escalas mucho mayores -digamos miles de qubits para factorizar números muy grandes- se necesitarían hacer cambios fundamentales en las implementaciones criptográficas".

Aún cuando el potencial de la computación cuántica es enorme y los progresos alcanzados recientemente son alentadores, las computadoras cuánticas comerciales están a muchos años de distancia. Las computadoras cuánticas basadas en NMR son todavía experimentos de laboratorio y las primeras aplicaciones de la computación cuántica tomarían probablemente la forma de coprocesadores para llevar a cabo funciones específicas, por ejemplo resolver problemas matemáticos difíciles, sistemas de modelaje cuántico y búsquedas no estructuradas. Los procesadores de texto o las tareas que requieren resolver problemas sencillos se manejan más fácilmente con ayuda de las computadoras actuales.

La demostración de IBM del algoritmo de Shor muestra también el valor de los experimentos en la computación cuántica usando NMR, un enfoque introducido independientemente a mediados de la década de 1990 por Chuang y Neil Gershenfeld de MIT, y por David Cory y colegas, también de MIT. "Nuestros experimentos con NMR nos estimularon a desarrollar herramientas fundamentales para tipos futuros de computadora cuántica", comentó Chuang. "La más importante de esas herramientas fue una manera de simular y predecir la degradación de la señal causada por la des coherencia -fluctuaciones cuánticas no deliberadas. Esta herramienta nos permitió minimizar los errores de des coherencia en nuestro experimento de 7 qubits".

Y aún cuando NMR seguirá siendo un banco de pruebas para desarrollar herramientas y técnicas de computación cuántica, será difícil desarrollar y sintetizar moléculas dotadas de más de siete qubits. En consecuencia, nuevos experimentos de IBM y de otros se proponen desarrollar nuevos sistemas de cómputo cuántico capaces de aumentar de escala más fácilmente para alcanzar el número grande de qubits requerido en las aplicaciones prácticas. Entre los candidatos principales se cuentan hoy los spins electrónicos confinados en nanoestructuras de semiconductores (llamados a menudo puntos cuánticos), spins nucleares asociados con impurezas de un solo átomo en un semiconductor, y el flujo electrónico o magnético por superconductores. Se están evaluando también implementaciones atómicas y ópticas.

CIRCUITOS PARA LA COMPUTACION CUANTICA

El próximo sistema radicalmente distinto para el procesamiento de información será la computación cuántica.

Los investigadores afirman que en ella se usarán los principios de la mecánica cuántica, para realizar cálculos complejos en una fracción del tiempo necesario hoy en día en los superordenadores más veloces.


A medida que avanza la teoría al respecto, los expertos van proponiendo avances que permitirán que esta idea se haga realidad. Un reciente artículo publicado en Physical Review Letters, por ejemplo, propone un circuito realizable de forma experimental y una manera eficiente de implementar una computación cuántica escalable.
Es precisamente la habilidad de aumentar la escala de la tecnología, de aquella que permite realizar experimentos de 1 ó 2 qubits, habituales en el laboratorio, a la que nos proporcionará sistemas en los que participarán muchos qubits, lo que hará posible construir un ordenador cuántico. Franco Nori, de la University of Michigan, y sus colegas, han escrito un artículo en este sentido, titulado "Scalable quantum computing with Josephson charge qubits".

Para implementar esta tecnología, será necesario preparar, manipular y medir el frágil estado cuántico de un sistema. Esto no es fácil, y es por eso que hasta ahora nos hemos centrado en qubits individuales. Pero para disponer de un ordenador cuántico serán necesarios muchos qubits, y controlar la conectividad entre ellos. Estas son las principales dificultades a las que nos enfrentamos, que el método de Nori trata de solventar.

COMPUTADORA CUANTICA

Una definición acerca de las computadoras cuánticas ampliamente aceptada por los investigadores, es la expuesta por Beth [Beth00]. El la concibe como un sistema de circuitos cuánticos, actuando en un espacio de estados, que es un espacio complejo 2n-dimensional de Hilbert. El circuito es una secuencia de transformaciones unitarias Ut  SU(2n) seguido por una medición. Esas transformaciones, son llamadas compuertas cuánticas, y son controladas por una computadora clásica. El espacio de estados de una computadora cuántica tiene la estructura de un espacio de un vector Hermitian. Así esto permite la superposición simultanea de estados básicos ortogonales (correspondientes a estados clásicos "0" y "1") con la posibilidad de interferencia constructiva y destructiva entre las diferentes rutas de computación. Este principio permite el uso de los estados confusos (entangled states).

Requerimientos de implementación

Para la implementación de una computadora cuántica, se deben cumplir al menos cinco requisitos. Primero, se necesita un sistema de qubits. Segundo, los qubits deben ser individualmente direccionables y deben interactuar con otros para conformar compuertas lógicas de propósito general. Tercero, debe ser posible la inicialización de las compuertas. Cuarto, se debe tener la posibilidad de extraer los resultados computacionales. Y Quinto, es la necesidad de un tiempo de coherencia duradero.

ARQUITECTURA DE UNA COMPUTADORA CUANTICA

La arquitectura de una computadora cuántica es similar a la de las computadoras tradicionales, con ciertos elementos propios de la computación cuántica.

Oskin et al [Oskin02] propone una arquitectura de una computadora quántica que esta conformada por una ALU cuántica, memoria cuántica, y un planificador dinámico, tal como puede observarse en la figura 2.

La corrección de errores es un aspecto que debe ser tomado muy en cuenta en el diseño de una arquitectura cuántica.

Figura 2. Arquitectura cuántica.

1. ALU cuántica

La ALU cuántica tiene como funciones fundamentales la ejecución de operaciones cuánticas y la corrección de errores.

La ALU prepara los datos cuánticos, antes de ejecutar cualquier compuerta lógica, aplicando una secuencia de transformaciones cuánticas básicas, que incluyen:

  • Hadamard (raíz cuadrada, transformada de Fourier de 1 qubit),
  • I, Identidad (I, NOP cuántico),
  • X, NOT cuántico,
  • Z, cambia los signos de las amplitudes),
  • Y = XZ,
  • rotación por p /4 (S),
  • rotación por p /8 (T), y
  • NOT controlado (CNOT).

La ALU aplica esta secuencia de operaciones elementales para la corrección de errores, indispensable en la computación cuántica. Este procedimiento consume estados auxiliares adicionales, para la verificación de paridad. La ALU hace uso de hardware especializado estándar, que provee estados elementales estándares, para producir los estados auxiliares adicionales.

2. Memoria cuántica

Al igual que en las arquitecturas actuales en la arquitectura cuántica, la memoria cuántica es un elemento arquitectural muy importante. La memoria cuántica debe ser confiable, con el propósito de dotarla de tal característica Oskin et al [Oskin02] incluyen una unidad especializada de "actualización" en cada banco de memoria, cuya representación pictórica se puede apreciar en la figura 2. Una unidad especializada actualiza periódicamente los qubits lógicos individuales, ejecutando algoritmos de detección y corrección de errores.

3. Tele transportadora de código

La tele transportadora de código desde la memoria cuántica a la ALU, añade alguna funcionalidad adicional a la tele transportación cuántica convencional, proveyendo un mecanismo general para simultáneamente ejecutar operaciones mientras transporta los datos cuánticos.

Figura 3. Tele transportadora de código. [Oskin02]

Este mecanismo se usa para la corrección de errores en el codificador de código origen y en el codificador de código destino, como puede observarse en la figura 3. El emisor y el receptor entonces ejecutan qubits lógicos equivalentes en la operación de tele transportación en cada terminal del par "enredado" (entangled).

4. Planificador dinámico

Oskin et al proponen un procesador clásico de alto desempeño como parte principal del planificador dinámico. Este procesador ejecuta un algoritmo de planificación dinámico que toma operaciones cuánticas lógicas, intercaladas con construcciones clásicas de control de flujo, y dinámicamente las traduce en operaciones individuales de qubits físicos.

ELEMENTOS BASICOS DE LA COMPUTACION CUANTICA

1. El bit cuántico "qubit"

El elemento básico de la computación cuántica es el bit cuántico o qubit (quantum bit por sus siglas en inglés), un qubit representa ambos estados simultáneamente, un "0" y un "1" lógico, dos estados ortogonales de una sub partícula atómica, como es representada en la figura 1. El estado de un qubit se puede escribir como { ½ 0ñ , ½ 1ñ } , describiendo su múltiple estado simultaneo.

Un vector de dos qubits, representa simultáneamente, los estados 00, 01, 10 y 11; un vector de tres qubits, representa simultáneamente, los estados 000, 001, 010, 011, 100, 101, 110, y 111; y así sucesivamente. Es decir un vector de n qubits, representa a la vez 2n estados.

Figura 1. Representación de cuatro estados diferentes de un qubit. [Steffen01]

Cualquier sistema cuántico con dos estados discretos distintos puede servir como qubit, un espín de electrón que apunta arriba o abajo, o un espín de fotón con polarización horizontal o vertical. En la figura 1 se tiene una representación pictórica de cuatro diferentes estados basado en el espín de un núcleo atómico, por lo que puede ser usado como un qubit. Un qubit no puede ser clonado, no puede ser copiado, y no puede ser enviado de un lugar a otro.

2. Compuertas cuánticas

Las compuertas lógicas son operaciones unarias sobre qubits. La compuerta puede ser escrita como P(q )=½ 0ñ á 0½ + exp( i q ) + ½ 1ñ á 1½ , donde q = w t. Aquí algunas compuertas cuánticas elementales: [Steane97]

I º ½ 0ñ á 0½ + ½ 1ñ á 1½ = identidad

X º ½ 0ñ á 1½ + ½ 1ñ á 0½ = NOT

Z º P(p )

Y º XZ

H º

Donde I es la identidad, X es el análogo al clásico NOT, Z cambia el signo a la amplitud, y H es la transformación de Hadamard.

Esas compuertas forman uno de los más pequeños grupos de la computación cuántica. La tecnología de la física cuántica puede implementar esas compuertas eficientemente. Todos excepto el CNOT operan en un simple qubit; la compuerta CNOT opera en dos qubits.

Una compuerta de dos qubits en especial interesante, es la conocida como "U controlada", [Steane97] ½ 0ñ á 0½ Ä I +½ 1ñ á 1½ Ä U son operadores actuando sobre dos qubits, donde I es la operación de identidad sobre un qubit, y U es una compuerta. El estado del qubit U es controlado mediante el estado del qubit I. Por ejemplo el NOT controlado (CNOT) es:

½ 00ñ à ½ 00ñ ; ½ 01ñ à ½ 01ñ ; ½ 10ñ à ½ 11ñ ; ½ 11ñ à ½ 10ñ

3. "Entanglement"

La capacidad computacional de procesamiento paralelo de la computación cuántica, es enormemente incrementada por el procesamiento masivamente en paralelo, debido a una interacción que ocurre durante algunas millonésimas de segundo. Este fenómeno de la mecánica cuántica es llamado "entanglement".

Debido al "entanglement", dos partículas subatómicas, permanecen indefectiblemente relacionadas entre si, si han sido generadas en un mismo proceso. Por ejemplo la desintegración en un positrón y un electrón. Estas partículas forman subsistemas que no pueden describirse separadamente. Cuando una de las dos partículas sufre un cambio de estado, repercute en la otra. Esta característica se desencadena cuando se realiza una medición sobre una de las partículas. [White00]

4. Tele transportación cuántica

La tele transportación cuántica es descrita por Stean [Steane97] como la posibilidad de "transmitir qubits sin enviar qubits". En la computación tradicional para transmitir bits, estos son clonados o copiados y luego enviados a través de diferentes medios como el cobre, fibra óptica, ondas de radio y otros. En la computación cuántica no es posible clonar, copiar, o enviar qubits de un lugar a otro como se hacen con los bits.

Si enviamos un qubit ½ Æ ñ donde Æ es un estado desconocido, el receptor no podrá leer su estado con certidumbre, cualquier intento de medida podría modificar el estado del qubit, por lo tanto se perdería su estado, imposibilitando su recuperación. La tele transportación cuántica, resuelve este problema, esta se basa en el "entanglement" para poder transmitir un qubit sin necesidad de enviarlo. El emisor y el receptor poseen un par de qubits "enredados" (entangled). Entonces el qubit es transmitido desde el emisor, desaparece del emisor y el receptor tiene el qubit tele transportado. Este fenómeno es posible debido a un mecanismo conocido como el efecto EPR. En la tele transportación cuántica primero dos qubits E y R son "enredados" y luego separados (entangled), el qubit R es ubicado en el receptor y el qubit E es ubicado en el emisor junto al qubit original Q a ser transmitido, al realizar la lectura del estado de los dos qubits Q y E, estos cambian su estado a uno aleatorio debido a la interacción. La información leída es enviada al receptor, donde esta información es utilizada para un tratamiento que es aplicado al qubit R, siendo ahora R una réplica exacta del qubit Q.

5. El paralelismo cuántico

La superposición cuántica permite un paralelismo exponencial o paralelismo cuántico en el cálculo, mediante el uso de las compuertas lógicas de qubits. [Steffen01] Los qubits, a diferencia de los bits, pueden existir en un estado de superposición, representado por a½ 0ñ + b½ 1ñ , donde a y b son números complejos que satisfacen la relación ½ a½ 2 + ½ b½ 2 = 1.

Dada una compuerta lógica de un qubit f, que transforma el estado ½ a½ en el estado ½ f(x)½ , cuando el qubit de entrada tiene en el estado [Steffen01] una superposición igual de ½ 0ñ y ½ 1ñ .

Por linealidad de los mecánica cuántica, la compuerta lógica f transforma el estado del qubit a . [Steffen01]

El estado resultante es la superposición de los 2 valores de salida, siendo f evaluado para los 2 valores de entrada en paralelo.

Para una compuerta lógica g de 2 qubits, que tienen dos qubits de entrada en superposición de ½ 0ñ y ½ 1ñ , tendríamos una superposición de 4 estados . [Steffen01]

La compuerta lógica g transforma el estado de entrada a [Steffen01] así g es evaluado en un solo paso para 4 valores de entrada.

En una compuerta lógica h de 3 qubits, se tienen 3 qubits de entrada en superposición de ½ 0ñ y ½ 1ñ , juntos hacen una superposición de 8 estados, que son evaluados en paralelo. Por cada qubits adicional la cantidad de estados se duplica.

6. Criptografía cuántica

Criptografía, es la ciencia matemática de las comunicaciones secretas, tiene una larga y distinguida historia de uso militar y diplomático que se remonta a los antiguos Griegos. Fue un elemento importante y decisivo durante la segunda guerra mundial. Hoy en día su uso es muy común y necesario, para brindar seguridad en las transacciones comerciales, comunicaciones, y privacidad; que se llevan a cabo mediante Internet. [Bennett98]

Dado M y f, donde M es un mensaje y f una función de encriptación, tenemos C = f(M), C entonces es el mensaje encriptado. C es enviado al receptor mediante un canal público, este obtiene el mensaje original con f-1, haciendo M = f-1(C). Si f-1 es conocido y C es interceptado en el canal público, entonces se puede obtener M. La seguridad de f depende de la dificultad con que pueda obtenerse f-1.

El factorizar es un aspecto muy importante en la criptografía moderna, debido a que, la seguridad del mecanismo de criptografía RSA de clave pública, se basa en la dificultad de factorizar número grandes. El mejor algoritmo para hallar los factores aún sigue siendo el de las divisiones sucesivas.

Dado M, R1 y R2, mediante el mecanismo de RSA se define una función p, tal que C1 = p(Q1, P1, M1) y C2 = p(Q2, P2, M2), donde P1 y P2 son claves públicas generadas en base a Q1 y Q2 que son claves privadas pertenecientes a A y B respectivamente. A y B comparten sus respectivas claves públicas P1 y P2, y ambos pueden obtener y descifrar sus mensajes mediante p-1, de tal modo que M1 = p-1(Q1, P1, M1) y M2 = p-1(Q2, P2, M2).

El tiempo que requeriría el realizar la factorización se estima en aproximadamente 4x1016 años. Sin embargo en 1994 se logró desarrollar un algoritmo, usando recursos en redes, donde la factorización únicamente tomo 8 meses, el equivalente a 4,000 MIPS-años. [Hughes94]. Los algoritmos cuánticos de factorización, se estima que realizarían este cálculo en segundos.

Utilizando claves privadas, es posible – al menos en teoría – tener un algoritmo de encriptación imposible de romper. El emisor cada vez que envía un mensaje M, genera aleatoria mente una diferente clave privada P, mediante una función de encriptación E se codifica el mensaje de tal modo que C = E( P, M ). El receptor necesita la clave privada P para poder realizar el proceso inverso M = E-1( P, C ). Actualmente este mecanismo es utópico, debido a la gran dificultad que surge en la distribución de la clave privada P, debido a que necesita un canal muy seguro para su entrega.

La criptografía cuántica hace posible la distribución de la clave privada P. P es transmitida mediante un canal cuántico. Cualquier intento de medir P será notado, debido a que es imposible observar un qubit sin dejar rastro. [Bennett98] La distribución cuántica de claves es posible con la tecnología existente. En 1997 Zbinden et al [Zbinden98] lograron distribuir cuánticamente una clave a través de 23 Km. de fibra bajo el lago Génova.

FUNDAMENTOS DE LA COMPUTACION CUANTICA

Este, definitivamente es uno de los métodos que se deberían desarrollar más (a mi punto de vista), pues son de los que ofrecen una gama de prestaciones enormes; imaginarse que los dispositivos de almacenamiento más avanzados hasta ahora se duplicaran, suena bastante interesante, pues los qubits pueden representar cuatro números a la vez, siendo que la lógica binaria sólo permite un 1 ó un 0 para un solo bit. Esto definitivamente implica una duplicación, por así decirlo de la capacidad de procesamiento no sólo de las memorias o dispositivos de almacenamiento secundario; sino además en todos los demás componentes de un sistema informático como pueden ser: microprocesadores, tarjetas de video, de sonido, etc.

Además, lógicamente estos descubrimientos aumentarían notablemente la velocidad de los micros y de todos sus demás componentes.

Bueno, empezaré entonces con la explicación del principio de la computación cuántica. En la computación tradicional, un bit es la mínima unidad de información pero, para representarlo, se utiliza la ausencia o la presencia de miles de millones de electrones en un diminuto transistor de silicio.

La computación cuántica pretende utilizar un principio básico de la mecánica cuántica por el cual todas las partículas subatómicas (protones, neutrones, electrones, etc.) tienen una propiedad asociada llamada spin. El spin se asocia con el movimiento de rotación de la partícula alrededor de un eje. Esta rotación puede ser realizada en un sentido, o el opuesto. Si por ejemplo tomamos como bit al spin de un protón, podemos usar una dirección como 1 y otra como 0. Estos bits, tomados a partir del spin de las partículas han recibido el nombre de qubits.

Sin embargo, en mecánica cuántica el estado de una partícula se determina a través de la asignación de una probabilidad, no podemos hablar de un estado 1 ó 0 claramente determinado. Esta aparente ambigüedad tiene una ventaja que convierte a la computación cuántica en un desarrollo revolucionario: La lógica de un bit es uno u otro , mientras que un qubit (nombre dado al bit cuántico) entraña el concepto ambos a la vez. Si tomamos por ejemplo dos bits, sus estados posibles son cuatro: 00, 01, 10, 11. Son necesario cuatro pares de bits para representar la misma información que un solo par de qubits con comportamiento ambiguo.

Los qubits pueden representar en este caso cuatro números a la vez, cuatro respuestas posibles a la vez. Procesamiento paralelo real, la Meca de la computación. Sus aplicaciones principales entran en el campo de la criptografía y teoría de numero, y en el análisis de gigantescos volúmenes de información.

No todos los problemas pueden ser resueltos por este tipo de lógica. Sin embargo, una computadora cuántica podría resolver los que sí pueden, a una velocidad varias veces superior a la de los microprocesadores conocidos hasta hoy, esta también se considera una tecnología hipotética, pues aún sólo se ha quedado en la investigación sin llegar a desarrollar un sistema completo utilizando esta lógica, pero aún así, si se logra implantar algún día será definitivamente demasiado cara debido a las características necesarias para su buen funcionamiento.

Señalan en la Universidaed de Michigan que se esta a punto de entrar a la nueva era de la computación puesto que se elevará la velocidad en el procesamineto de la información de manera sorprendente ¿cómo, bueno indican que mediante la utilización de Circuitos que combinan la mecánica cuántica con los principios de la computación.

Señalan los investigadores que los nuevos ordenadores realizaran los cálculos más complejos en mucho menor tiempo. En un artículo publicado en Physical Review Letters, se realiza una propuesta de un circuito realizable de forma experimental contemplando de esta manera una forma de implementar una computación cuántica escalable.

Se cree que esta tecnología proporcionará sistemas en los que participarán muchos qubits, lo que hará posible construir un ordenador cuántico. Bajo esta linease ha escrito en la Universidad de Michigan el artículo titulado "Scalable quantum computing with Josephson charge qubits". La información se procesará mediante átomos individuales o partículas subatómicas llamadas qubits. Pero la tarea no resulta nada sencilla puesto que para poder utilizar esta tecnología será estrictamente necesario manipular preparar, y medir el frágil estado cuántico de un sistema. Asimismo dentro de las mayores dificultades que se presentan son que es necesario manejar muchos qubits, y controlar la conectividad entre ellos.

La computación cuántica esta basada en las propiedades de la interacción cuántica entre las partículas subatómicas, como la superposición simultanea de dos estados en una sola partícula subatómica. La superposición cuántica, propiedad fundamental de la interacción cuántica, es ampliamente aprovechada para el desarrollo teórico de los algoritmos cuánticos, logrando una capacidad de procesamiento exponencial.

La superposición cuántica permite mantener simultáneamente múltiples estados en un bit cuántico, es decir "0" y "1" a la vez; a diferencia del bit – elemento fundamental en la computación actual – que únicamente es capaz de mantener un estado discreto, alternativo, a la vez, el "0" o "1" lógico. La computación cuántica, aprovecha la superposición cuántica, para lograr el paralelismo cuántico y el paralelismo cuántico masivo.

Cualquier interacción con el mundo subatómico, producirá un cambio en este, es decir, cualquier medición o lectura traerá indefectiblemente un cambio. Este fenómeno cuántico es aprovechado en la tele transportación cuántica para la transmisión de qubits, y asimismo es utilizada como mecanismo de seguridad en la criptografía cuántica.

COMPUTACION CUANTICA

En la computación cuántica, a diferencia de la computación actual donde cada bit puede estar en un estado discreto y alternativo a la vez, la unidad fundamental de almacenamiento es el bit cuántico, donde cada bit cuántico puede tener múltiples estados simultáneamente en un instante determinado, así reduciendo el tiempo de ejecución de algunos algoritmos de miles de años a segundos.

La computación cuántica está basada en las interacciones del mundo atómico, y tiene elementos como el bit cuántico, las compuertas cuánticas, los estados confusos, la tele transportación cuántica, el paralelismo cuántico, y la criptografía cuántica. Una arquitectura cuántica, muy aceptada entre los investigadores y orientada a ser compatible con las actuales arquitecturas, cuenta con memoria y una unidad de procesamiento aritmético/lógico, y con elementos cuánticos como la tele transportadora de código y el planificador dinámico. Su avance teórico ha sido muy exitoso, aún así, su realización depende de la futura implementación de una computadora cuántica, sin embargo ya se está desarrollando tecnología comercial basada en esta teoría.

En este trabajo se desarrollan los fundamentos y los elementos básicos que conforman la computación cuántica. También se presenta una arquitectura cuántica muy aceptada entre los investigadores que desde un principio han orientado sus investigaciones hacia lograr una arquitectura compatible con las actuales, de ahí que esta tiene muchas semejanza con las arquitecturas existentes, con elementos propios de la computación cuántica.

La comunidad científica dedicada a investigar tópicos en el ámbito de la computación cuántica, ha logrado enormes avances teóricos, al demostrar que es posible reducir drásticamente los recursos computacionales requeridos en la ejecución de algoritmos. Algunos de esos algoritmos requieren un inmenso poder de cómputo aún en las computadoras más avanzadas de la actualidad. Algunos algoritmos matemáticos como la búsqueda de los factores de números primos, algoritmos de manejo de información como la búsqueda en bases de datos no ordenadas; han sido teóricamente desarrollados con mucho éxito, utilizando los fundamentos de la computación cuántica.

La teoría de la computación cuántica esta basada en las interacciones del mundo atómico y en futuras implementaciones de las computadoras cuánticas. Estas aún están en los laboratorios de investigación pero ya se tienen resultados alentadores, como el desarrollo de la computadora cuántica de cinco qubits desarrollado por Steffen.

HISTORIA DE LA COMPUTACION CUANTICA

Cuando teóricos tales como Richard Feynmann, del California Institute of Technology, de Pasadena (California); Paul Benioff, de Argonne National Laboratory, en Illinois; David Deutsch, de la Universidad de Oxford, en Inglaterra, y Charles Bennett, del T.J. Watson Research Center de IBM en Yorktown Heights (Nueva York), propusieron por primera vez el concepto de las computadoras cuánticas en las décadas de 1970 y 1980, muchos científicos dudaron que alguna vez ese tipo de computadora pudiera resultar práctica. Pero en 1994, Peter Shor, de AT and T Research, describió un algoritmo cuántico específicamente diseñado para factorizar números grandes y exponencialmente más rápido que las computadoras convencionales, lo suficientemente rápido como para birlar la seguridad de muchos criptosistemas de clave pública. El potencial del algoritmo de Shor alentó a muchos científicos a tratar de explotar las capacidades de las computadoras cuánticas. En los últimos años, varios grupos de investigación de todo el mundo han alcanzado progresos significativos en este campo.

Mientras estuvo en IBM, Chuang amplió su reputación como uno de los experimentalistas en computación cuántica más importantes del mundo. Dirigió el grupo que demostró la primera computadora cuántica de 1 qubit (en 1998 en la Universidad de California en Berkeley). En IBM Almaden, Chuang y sus colegas fueron los primeros en demostrar los importantes algoritmos cuánticos, el algoritmo de Grover concebido en 1999 para hacer búsquedas en bases de datos con ayuda de una computadora cuántica de 3 qubits, y la búsqueda de pedidos ideada el año pasado (agosto del 2000) con una computadora cuántica de 5 qubits. La factorización con el algoritmo de Shor anunciada hoy es el algoritmo más complejo que se haya demostrado hasta ahora usando una computadora cuántica.

Además de su ambicioso programa experimental, la División de Investigación de IBM Research es conocida también por sus muchas contribuciones teóricas en el emergente campo de la información cuántica. Los científicos de IBM fueron pioneros en criptografía cuántica, en comunicaciones cuánticas (incluso el concepto de teleporte cuántico) y en metodologías eficientes para corregir errores. David DiVincenzo, miembro del cuerpo de investigadores del laboratorio Watson de IBM, ha promulgado los cinco criterios necesarios para construir una computadora cuántica práctica: 1) un sistema físico de escala flexible con qubits bien caracterizados; 2) capacidad de inicializar el estado de un qubit; 3) tiempos de descoherencia más largos que el tiempo de operación de la puerta cuántica; 4) un conjunto universal de puertas cuánticas; y 5) la capacidad de medir qubits específicos.

INTRODUCCION

A través de la historia el ser humano ha usado diversos materiales y utilizado múltiples mecanismos en el diseño, construcción y operación de máquinas que agilicen y automaticen la realización de cálculos y el procesamiento de información. Antiguamente, los primeros modelos fueron manuales, estos se remontan aproximadamente hasta 500 A. C., cuando los/las egipcios/as inventaron un artefacto que consistía en una serie de esferas atravesadas por varillas; este artefacto fue cambiado y perfeccionado por los chinos; y posteriormente en el siglo XIII D. C. Es cuando toma la forma clásica que conocemos; el ÁBACO está compuesto por 10 líneas con 7 esferas cada una, una línea corta todas las líneas en dos partes una más grande que la otra, ubicándose 2 esferas en la parte superior y cinco en la parte inferior.

Mucho tiempo después, se desarrollaron modelos mecánicos y eléctricos, es así que, Blaise Pascal, en 1649, fabricó la PASCALINA, una máquina que hacía operaciones de 8 dígitos. En 1820, Charles Babbage con la ayuda de la Condesa Ada Byron, construyó dos equipos totalmente mecánicos, usaban ejes, engranajes y poleas para realizar cálculos. Konraz Suze, ingeniero alemán, en 1942, construyó la primera computadora digital (electromecánica binaria) programable. Entre 1937 y 1942 Atanasoff y Berry, construyeron un prototipo compuesto de tubos al vacío, capacitores y un tambor de rotatorio para el manejo de los elementos de la memoria. En 1941 Turing construyó la COLLOSUS, una computadora que usaba miles de válvulas, 2400 bombas de vidrio al vacío, y un escáner con capacidad de leer 5000 caracteres por cinta de papel. En 1944 IBM (International Business Machines) construye la MARK I en cooperación con la Universidad de Harvard, media 15 metros de largo, 2.40 metros de altura y pesaba cinco toneladas. La ENIAC contaba con 17468 tubos de vidrio al vacío, fue construida en 1946.

No hace mucho tiempo, se inició la era digital, con modelos electrónicos basados inicialmente en tubos de vacío y luego en transistores. La EDVAC fue la primera computadora electrónica digital, su memoria consistía en líneas de mercurio dentro de un tubo de vidrio al vacío, donde se podía almacenar ceros y unos. El transistor, es el invento que más ha influenciado en la evolución de las computadoras, este fue concebido en 1948, por tres científicos en los laboratorios de Bell. Este contiene un material semiconductor que funciona como un interruptor. En 1958 Kilby y Noycea, de la Texas Instrument, inventaron los circuitos integrados, haciendo que las computadoras fuesen cada vez más pequeñas. En Intel, en 1971, Hoff desarrollo un microprocesador de 4 bits que contenía 23000 transistores que procesaban 108 kHz o 0.06 MIPS, tenía 46 instrucciones y 4 kilobytes de espacio de almacenamiento. En 1974 Intel presentó una CPU compuesto por el microchip 8080, este contenía 4500 transistores y podía almacenar 64 kilobytes de memoria RAM, tenía un bus de datos de 8 bits. A comienzos de la década de los 80 IBM empezó a desarrollar las computadoras personales con PC-DOS como sistema operativo, empezando así una nueva era, donde las computadoras estaban al alcance de todos. Las computadoras portátiles, las computadoras vestibles, y los modelos no comerciales que son tan pequeños como una moneda de un centavo. Actualmente, las computadoras portátiles, los asistentes personales digitales PDA (Personal Digital Assistant por sus siglas en inglés) y los teléfonos celulares, se caracterizan por su reducido tamaño y portabilidad; y. En el futuro, las computadoras usables ("Body wearable computers" en inglés), integradas en el espacio personal del usuario o de la usuaria, reemplazarán a todos los dispositivos mencionados en el párrafo anterior, y serán tan o aún mas populares. Estas computadoras requieren componentes aún más pequeños que los actuales.

La constante miniaturización de los componentes de hardware ha logrado la realización de nano circuitos. Pronto no será posible reducir más los circuitos, debido a que muy pronto la miniaturización será tal que las leyes de la física clásica ya no sean validas, entonces se entrará en los dominios del mundo subatómico, donde las leyes de la física de la mecánica cuántica tienen validez. El cambio en los componentes fundamentales de las computadoras, hace necesario redefinir muchos elementos de la computación actual, la arquitectura, los algoritmos, y los componentes de hardware. Es así como nace la computación cuántica y con ella los algoritmos cuánticos.

La aplicabilidad de la computación cuántica depende de la posibilidad de desarrollar una computadora cuántica. Un ejemplo del inmenso poder de las computadoras cuánticas es el algoritmo cuántico para determinar si un número es primo. Una computadora actual se tardaría miles a millones de años (dependiendo de cuan grande sea el número) en ejecutar tal algoritmo; a diferencia de una computadora cuántica le tomaría tan solo unos cuantos segundos el completar la tarea.

Este trabajo esta organizado de tal manera que en la segunda sección se desarrollan los fundamentos y los elementos básicos que conforman la computación cuántica; se han utilizado sencillas expresiones matemáticas para mostrar la representación de los estados de un BIT cuántico y el mecanismo del paralelismo cuántico. En la tercera sección se presenta una arquitectura cuántica muy aceptada entre los investigadores que desde un principio han orientado sus investigaciones hacia lograr una arquitectura compatible con las actuales, de ahí que esta tiene muchas semejanza con las arquitecturas existentes, con elementos propios de la computación cuántica. En la cuarta y última sección se relata brevemente los lineamientos que debe seguir el diseño de una computadora cuántica