Seguimos desvelando las novedades que llegan desde el Microsoft Ignite, en esta ocasión, es una visión de futuro. La computación cuántica dejará atrás la informática de los ceros y los unos y, Microsoft nos cuenta su visión de futuro.
Microsoft se prepara para la computación cuántica
Este mismo año Microsoft quiere sacar un lenguaje de programación para la computación cuántica, con integración con Visual Studio y un simulador de un ordenador cuántico. Con esto, los desarrolladores dispondrán de las herramientas para desarrollar y comprobar programas cuánticos que implementen algoritmos cuánticos.
La computación cuántica hace uso de la superposición y el mallado para realizar los cálculos. Donde los ordenadores tradicionales disponen de bits, donde cada bit representa un cero o un uno, los ordenadores cuánticos están hechos de qubits (quantum bits). Estos representan de alguna manera cero y uno de manera simultánea (una superposición de cero y uno). Esta capacidad de los qubits de representar múltiples valores ofrece a los ordenadores cuánticos una capacidad exponencial de cálculo frente a los ordenadores tradicionales.
Los ordenadores tradicionales están diseñados en base a puertas lógicas, grupos de transistores que combinan los bits de varias maneras para realizar operaciones. Esta construcción es invisible para la gente que escribe los programas. Los programas o los algoritmos no se escriben según las puertas lógicas, se hace uso de la aritmética y de las funciones de objetos y mucho más.
Esto no es lo mismo con los algoritmos cuánticos. Estos han sido desarrollados en un modo más relacionado con la ingeniería electrónica en lugar de la ingeniería de software, donde los algoritmos son circuitos cuánticos en lugar de los conceptos de programación típicos.
El lenguaje de programación cuántico de Microsoft, todavía sin nombre, ofrece una aproximación más sencilla a la programación cuántica, tomando elementos de C#, Python, y F#. Los desarrolladores todavía tendrán que comprender las puertas lógicas cuánticas y sus operaciones, pero serán capaces de usarlas para escribir funciones, con variables y ramas de otras construcciones típicas. Como ejemplo podemos ver el primer programa que todo desarrollador escribe en código cuántico.
Como ya hemos indicado, este lenguaje se integra en Visual Studio. Esto supone no solo que nuestro código dispondra de color, también dispondrá de otras funciones de Visual Studio como Debug. Para poder simular el funcionamiento, Microsoft ofrecerá dos simuladores, uno que funcionará de manera local y otro mediante Azure. Esto permitirá a los desarrolladores examinar el código mientras se ejecuta.
Para poder disponer de una emulación local necesitaremos unos requisitos muy altos. Ofrecerá hasta 32 qubits, que requerirá de 32GB de RAM. Cada salto adicional requerirá doblar la cantidad de memoria requerida. En Azure dispondremos de una máquina de 40 qubits.
En el largo plazo, la ambición es que pueda realizarse el trabajo sobre un ordenador cuántico. Microsoft no dispone de uno pero está trabajando en uno. Para ello está trabajando en un qubit topológico. El mayor problema que se presenta respecto a los ordenadores cuánticos es la manera de organizar la información.
De momento, IBM ha sido capaz de conseguir crear un ordenador de tan solo 5 qubit. Microsoft espera que con el diseño que nos indica se puedan construir ordenadores cuánticos con los que se pueda trabajar. El problema será que la encriptación como la conocemos ya no será elevada sino un juego de niños. Toda la computación hasta la fecha no será segura.
De momento, es un problema para el largo plazo. Con el nivel de encriptación actual necesitaríamos ordenadores de 2n qubits para romper los encriptados actuales. Serían necesarios ordenadores de 4000 u 8000 qubits.
En Microsoft no quieren esperar a esa situación y están trabajando en algoritmos con resistencia cuántica. Estos algoritmos, están diseñados para funcionar en ordenadores tradicionales para mantenerse seguros en un mundo con grandes ordenadores cuánticos. Eso si, esto le llevará unos cuantos años a Microsoft.
El futuro de la computación cuántica está todavía muy lejos. En Redmond no quieren perder la oportunidad de ofrecer las herramientas y el simulador para programar. Este será lanzado al final del año y dispondrá de tutoriales y librerías para facilitar a los desarrolladores a familiarizarse con la computación cuántica.