viernes, 27 de abril de 2007

Computación e información cuánticas

Tras n días sin escribir (cuando n tiende a un número muy gordo) vuelvo con un plato fuerte: la computación e información cuánticas. Aún no tengo claro cómo iré estructurando los distintos posts a partir de este momento, espero que seais comprensivos. Por cierto, he vuelto a "relajarme" en la regla aquella que dije sobre la longitud de los posts. Leedlo en dos o tres sesiones, si os satura mucho :)

Cuando uno lleva tanto tiempo sumergido en un tema y tiene que explicarlo es muy difícil hacerlo de forma que el nivel de la explicación se adecué a los lectores. Quizá haya cosas que pueda dar por obvias y no lo sean tanto y otras en las que me exceda con la explicación. Me gustaría que en los comentarios me fuerais guiando (y que nadie se corte de decir "no me he enterado de nada" o "eso que dices es tan obvio que prefiero leer elmundo.es"...).

Se puede decir que el origen de la computación cuántica se encuentra a finales de los años 70 y principios de los 80. En ese momento la miniaturización de la tecnología estaba comenzando. Una de las personas que abrió camino en ese campo (desde el punto de vista teórico) fue Richard Feynman. En sus propuestas no solo planteaba la posibilidad de construir máquinas microscópicas, sino que también teorizaba sobre la miniaturización de los computadores y su límite mínimo, que lo llevaba a proponer la utilización de un átomo por bit.

Pero miniaturizar no es un proceso tan simple como parece, no basta con reducir las dimensiones. Hoy en día todos los circuitos de los ordenadores están compuestos de transistores. Éstos, simplificando, lo único que hacen es enviar flujos de electrones en un sentido o en otro activando así otros transistores. Podría pensarse que una posible reducción de estos transistores, y quizá la mayor, sería aquella en la que los flujos fueran de un solo electron, que se movería entre tres átomos. Esta práctica tendría asociados unos problemas adicionales tremendos. Por ejemplo, la incertidumbre cuántica nos impediría conocer con precisión el movimiento y la localización del electrón, que además podría dar saltos aleatorios entre todas sus localizaciones, haciendo inútil el transistor. Pero no hace falta ir tan lejos. Actualmente los circuitos de silicio tienen serias dificultades de funcionamiento cuando se reduce su tamaño (una de las causas es la electromigración). La conclusión de esto es que para miniaturizar no basta con reducir el tamaño: también hay que resolver nuevos problemas y, a partir de ciertos límites, buscar nuevos paradigmas de funcionamiento. Feynman, con una de sus famosas analogías, equipara esta evolución a la ocurrida en aeronáutica cuando se dieron cuenta de que no se podrían superar ciertas velocidades con la propulsión mediante hélices (Ácido Cínico seguramente tendrá mas que decir en este punto ;). Ese límite no fue superado hasta que se encontró un nuevo paradigma: el reactor, que permitía alcanzar velocidades que hasta entonces parecían imposibles.

En computación cuántica ocurrió algo parecido. Se buscaron nuevos paradigmas para poder miniaturizar hasta el átomo por bit. Esto supuso la mayor revolución que nos ofrece este campo ya que nos permite utilizar una partícula por bit, pero además nos ofrece la posibilidad de utilizar en nuestro beneficio las particularidades de la mecánica cuántica. Nos olvidamos de los transistores y en su lugar utilizamos el estado de partículas individuales para representar los bits (por ejemplo, podríamos utilizar el sentido del spin de un electrón).

(... Perdonadme por los párrafos que vienen a continuación, pero es que no soy capáz de simplificar mas...)

Mientras que en computación convencional tenemos como unidad mínima el bit, en la computación cuántica utilizaremos lo que se conoce como el qubit. En mecánica cuántica, el estado "n" de una partícula se representa mediante un ket . Entonces, aplicando esto al terreno de la computación, definiremos dos estados ortogonales, que serán los equivalentes del "1" y el "0", que estarán representados por y .

La primera ventaja que nos ofrece la computación cuántica es la posibilidad de poder utilizar el principio de superposición cuántica, mediante el cual una partícula puede tener a la vez dos estados distintos. Esto quiere decir que nuestro estado no tiene porqué ser o sino que puede ser algo como

Es decir, tenemos un bit, que es 1 con probabilidad a² y 0 con probabilidad b² (evidentemente, a²+b²=1). Esto (además de liar un poco las cosas) nos permite hacer operaciones con ambos estados a la vez(¡!).

Pero también hay otra propiedad de la mecánica cuántica clave: el entrelazamiento cuántico. Que dos partículas estén entrelazadas se puede entender como que el estado de una depende directamente del estado de la otra. Es decir, dos bits separados podrán tener estados y , por ejemplo, y si los entrelazamos el estado pasa a ser único (pero sigue implicando a las dos partículas) y lo llamamos .

Si combinamos el entrelazamiento con el principio de superposición, tenemos estados compuestos, como por ejemplo:

Este estado contempla tan solo dos posibilidades, que ambos bits valgan 1, con probabilidad a², o que ambos bits valgan 0, con probabilidad b².

Estas dos propiedades de la computación cuántica nos permiten inicializar un registro con todas las opciones posibles al principio y realizar operaciones sobre todas al mismo tiempo. Por ejemplo, inicializamos el registro de tres bits:

Entonces, realizando operaciones sobre el registro podremos modificar las probabilidades (a²,b²,c²..., h²) de forma que el resultado correcto tenga una mayor probabilidad de aparecer cuando al final realicemos una lectura.

Esto deja entrever el primer problema que nos encontramos en la computación cuántica: los resultados son probabilísticos. Podemos hacer que la probabilidad del resultado correcto aumente mucho, pero siempre existirán posibilidades de leer un resultado incorrecto. Además no podemos saber qué probabilidad tenía el estado que hemos leido por lo que no sabremos que no es el correcto. En la práctica esto hace que los circuitos de corrección de errores sean, a falta de un mejor adjetivo, monstruosos; para trabajar con los 64 bits de la computación convencional actual necesitaríamos del orden de las decenas de miles de qubits.

Aquí lo dejo por el momento. Ya hay bastantes conceptos en el post como para pensar un buen rato en ello. Próximamente escribiré sobre algunos algoritmos específicos de computación cuántica que la convierten en un salto cualitativo con respecto a la tradicional. Mas tarde comenzaré con la primera aplicación madura de este campo: la criptografía cuántica.

7 comentarios:

Acido_Cinico dijo...

vaya, me jode no tener tiempo de leerlo, porque me interesa mucho... a la vuelta lo haré y te dejaré más comentarios ;>

Patxi Recaj dijo...

Bastante claro para un fisico o similar. Esta muy bien explicado. Otra cosa es que alguien de humanidades saque algo en claro. tendran que opinar ellos. Yo, con la fisica como algo difuso en la distancia, me he coscado. Evidentemente, los parrafos de probabilidad y matematica cuantica son simplificables, pero a mi no me mires. Pegale un toque al gran Feynman, este donde este.

Acido_Cinico dijo...

ufff.
vale, lo he impreso y me lo he leído dos veces con calma. Muy interesante, pero necesito más cosas para llegar a la criptografía cuántica...
Por lo que respecta a las hélices, lo malo que tienen es cuando se suman (vectorialmente) la velocidad de giro en la punta de la pala con la propia de avance, y eso se acerca a la velocidad del sonido local. En ese momento, a tomar por culo el funcionamiento chupiguay, el vuelo y la hélice...

Anónimo dijo...

Bonjour, bletchley-park.blogspot.com!
[url=http://cialisycin.pun.pl/ ]Achat cialis online[/url] [url=http://viagrappro.pun.pl/ ]Acheter du viagra en ligne[/url] [url=http://cialistyli.pun.pl/ ]Acheter du cialis online[/url] [url=http://viagrantor.pun.pl/ ]Acheter du viagra en ligne[/url] [url=http://cialisesse.pun.pl/ ]Acheter cialis online[/url] [url=http://viagrailli.pun.pl/ ]Acheter viagra en ligne[/url]

Anónimo dijo...

windows 98 cd burner software http://buysoftwareonline.co.uk/it/product-37390/Easy-MP3-to-WAV-Maker-3-0 open source software for police scanners [url=http://buysoftwareonline.co.uk/es/product-30826/Adobe-Creative-Suite-5-Web-Premium]mediaface 5.0 software[/url] math cad software
[url=http://buysoftwareonline.co.uk/category-8/Office-Tools?page=4]Office Tools - Cheap Legal OEM Software, Software Sale, Download OEM[/url] panasonic camcorder software for windows vista
[url=http://buysoftwareonline.co.uk/product-33469/DigitalAnarchy-ToonIt-2-51-for-Photoshop-CS3-x64][img]http://buyoem.co.uk/image/6.gif[/img][/url]

Anónimo dijo...

[url=http://redbrickstore.co.uk/products/diamox.htm][img]http://onlinemedistore.com/3.jpg[/img][/url]
penn presbyterian medical center pharmacy http://redbrickstore.co.uk/products/augmentin.htm pharmacy hydrocodone cheap [url=http://redbrickstore.co.uk/products/serevent.htm]bob fisher boise pharmacy[/url]
sgmc pharmacy http://redbrickstore.co.uk/products/serevent.htm canadian pharmacy lipitor [url=http://redbrickstore.co.uk/products/decadron.htm]decadron[/url]
locations of omnicare pharmacy http://redbrickstore.co.uk/catalogue/j.htm precision care pharmacy latrobe [url=http://redbrickstore.co.uk/products/brahmi.htm]european pharmacy online[/url]
pharmacy schools in louisiana http://redbrickstore.co.uk/catalogue/z.htm nas fort worth pharmacy formulary [url=http://redbrickstore.co.uk/products/zithromax.htm]zithromax[/url]

Anónimo dijo...

crimes linked to internet dating worldwide http://loveepicentre.com/success_stories/ parenting teens that are dating
dating customs in france [url=http://loveepicentre.com/map/]hope wilson dating emmit smith[/url] dating with herpes herpes simplex
aimons dating friendship friendship [url=http://loveepicentre.com/success_stories/]dating count down[/url] c david stubbs al dating [url=http://loveepicentre.com/user/v_ugba/]v_ugba[/url] dating pakistan asian one night