El lenguaje de programación Q#

por | diciembre 12, 2017

El lenguaje de programación Q#

En este modelo, hay tres niveles de computación:

  • Computación clásica que lee datos de entrada, configura el cálculo cuántico, activa el cálculo cuántico, procesa los resultados del cálculo y presenta los resultados al usuario.
  • Computación cuántica que ocurre directamente en el dispositivo cuántico e implementa un algoritmo cuántico.
  • Computación clásica requerida por el algoritmo cuántico durante su ejecución.

No existe un requisito intrínseco de que estos tres niveles estén escritos en el mismo idioma. De hecho, la computación cuántica tiene unas estructuras de control y unas necesidades de gestión de recursos algo diferentes que la computación clásica, por lo que el uso de un lenguaje de programación personalizado permite que los patrones comunes en los algoritmos cuánticos se expresen de forma más natural.

Mantener separados los cálculos clásicos significa que el lenguaje de programación cuántica puede ser muy limitado. Estas restricciones pueden permitir una mejor optimización o una ejecución más rápida del algoritmo cuántico.

Q# (Q-sharp) es un lenguaje de programación específico de dominio utilizado para expresar algoritmos cuánticos. Se utilizará para escribir subprogramas que se ejecutan en un procesador cuántico adjunto, bajo el control de un programa de host clásico y una computadora.

Q# proporciona un pequeño conjunto de tipos primitivos, junto con dos formas (matrices y tuplas) para crear nuevos tipos estructurados. Es compatible con un modelo de procedimiento básico para escribir programas, con bucles y declaraciones de if/ then. Las construcciones de nivel superior en Q# son tipos, operaciones y funciones definidas por el usuario.

Fuente oficial

https://docs.microsoft.com/en-us/quantum/quantum-qr-intro?view=qsharp-preview

kit de desarrollo de Microsoft Quantum

Para la implementaciòn de Q# microsoft a implementado el kit de desarrollo de microsoft Quantum

A continuacion los componentes del kit de desarrollo.

Componente Función
Lenguaje y compilador de Q # Q # es un lenguaje de programación específico de dominio utilizado para expresar algoritmos cuánticos. Se utiliza para escribir subprogramas que se ejecutan en un procesador cuántico adjunto bajo el control de un programa de host clásico y una computadora.
Biblioteca estándar Q # La biblioteca contiene operaciones y funciones que admiten el requisito de control del lenguaje clásico y los algoritmos cuánticos Q #.
Simulador de máquina cuántica local Un simulador vectorial de estado completo optimizado para una simulación y velocidad vectorial precisas.
Simulador de seguimiento de computadora Quantum El simulador de trazas no simula el entorno cuántico como el simulador cuántico local. Se usa para estimar los recursos necesarios para ejecutar un programa cuántico y también para permitir una depuración más rápida del código de control que no es Q #.
Extensión de Visual Studio La extensión contiene plantillas para archivos y proyectos Q #, así como resaltado de sintaxis. La extensión también instala y crea enganches automáticos para el compilador.

 

Instalación y validación del entorno de desarrollo Q #

Requisitos previos

Si tiene instalado Visual Studio 2017, está listo para instalar el Kit de desarrollo Quantum de Microsoft.

Si no tiene instalado Visual Studio, puede descargar Visual Studio 2017 Community Edition de forma gratuita.

  1. Vaya a la página de descarga de Visual Studio .
  2. Haga clic en el botón de descarga gratuita de Visual Studio Community .
  3. Navega a la carpeta de descarga de tu navegador y haz doble clic en el archivo ejecutable cuyo nombre comienza con vs_community . El nombre del archivo contendrá una secuencia de números que varía.
  4. ¡Importante!  Cuando se le presente la opción de seleccionar las herramientas para cargas de trabajo específicas, marque las casillas para el desarrollo de la plataforma universal de Windows y el desarrollo de escritorio .NET
  5. Después de seleccionar sus cargas de trabajo, haga clic en Instalar para completar la instalación.

Creando el entorno de desarrollo de Q #

  1. Instale el Kit de desarrollo Quantum de Microsoft
    1. Busque la página de Microsoft Quantum y haga clic en el botón Descargar ahora en la esquina superior izquierda.
    2. En la página del Kit de desarrollo Quantum de Visual Studio Marketplace , haga clic en Descargar .
    3. Su navegador le preguntará si desea Abrir o Guardar la descarga, haga clic en Abrir .
    4. Su software de seguridad puede presentar un panel de confirmación. Haga clic en Permitir , o el término comparable utilizado por su navegador.
    5. La extensión Quantum Development Kit se instalará en Visual Studio 2017.

Validar su entorno

En esta sección, clonará las muestras y bibliotecas cuánticas, y ejecutará una aplicación de muestra para verificar que su entorno Q # está correctamente instalado y configurado.

  1. Clonar el repositorio GitHub de Muestras y Bibliotecas del Kit de desarrollador de Microsoft Quantum .
    1. Abra Visual Studio.
    2. Abra la vista Conectar en Team Explorer ( TeamManage Connections)
    3. Seleccione Clon en Repositorios locales de Git e ingresehttps://github.com/Microsoft/Quantum.git
    4. Haga clic en Clonar para clonar el repositorio.
    5. El repositorio se clonará en su computadora local y Visual Studio cambiará a Solution Explorer a la derecha con las bibliotecas y ejemplos.
  2. Abra la QsharpLibraries.slnsolución.
    • Si se lo solicita el panel Instalar características faltantes , haga clic en Instalar para permitir la instalación de las funciones necesarias. A menudo, esto es F # y las herramientas utilizadas por algunas de las muestras.
  3. Valide su entorno Q # ejecutando el programa de ejemplo de teletransporte:
    1. Haga clic con el botón derecho en el TeleportationSampleproyecto en Samples0.Introductioncarpeta de QsharpLibrariessolución, y haga clic en “Establecer como proyecto de inicio”.
    2. Ejecute la solución (F5). Si se teletransporta y la salida es similar a la siguiente (tiene 8 rondas de teletransportación exitosa con valores variables True / False enviados cada ronda), su entorno Q # está listo para soportar el desarrollo de Q#.

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *