цифровая электроника
вычислительная техника
встраиваемые системы

 
» » Язык программирования для квантовых компьютеров Q# от Microsoft

Язык программирования для квантовых компьютеров Q# от Microsoft

Автор: Mike(admin) от 20-12-2017, 19:35

Недавно Microsoft выпустила превью нового языка программирования Q# (Q-шарп), который будет использоваться специально для программирования квантовых вычислений.


Язык программирования для квантовых компьютеров Q# от Microsoft

Цель компании состоит в том, чтобы в конечном итоге создать полный стек программного обеспечения, который даст заинтересованным разработчикам возможность узнать о программировании квантовых вычислений, прежде чем технология станет более доступной.


Q-шарп представляет собой высокоуровневый язык программирования, предназначенный для написания скриптов, которые будут выполнять свои подпрограммы на квантовом процессоре, связанном с классическим хост-компьютером, который в конечном итоге будет получать результаты. Это не похоже на гибридные типы компьютерной архитектуры, такие как процессоры и графические процессоры, или процессоры и ПЛИС.


Разработчики, использующие язык, могут не иметь глубоких знаний о квантовой физике. Для заинтересованных, Microsoft предоставляет учебник по основным концепциям квантовых вычислений, охватывающий векторную и матричную математику, кубиты, обозначение Дирака, измерения Паули и квантовые схемы. Комплект разработки доступен бесплатно с подробными инструкциями по его установке и вводным учебным программам. Q-шарп компилируется на квантовом симуляторе Visual Studio, имитируя квантовый процессор на 32 кубита. Версия Azure симулятора может имитировать до 40 кубитов.


Microsoft ожидает, что стек квантовых вычислений будет содержать несколько разных уровней программного и аппаратного обеспечения, работающих под разными температурами. Например, криогенные процессоры или ПЛИС, скорее всего, потребуются для обработки ошибок в квантовых компьютерах, а классический хост-компьютер также будет работать в тандеме с квантовым компьютером, поскольку кубиты нестабильны. Q-шарп предназначен для абстрагирования от требований управления всеми этими уровнями, так что фокус может оставаться на разработке алгоритмов и решении проблем, используя знакомый язык.


Язык программирования Q# выглядит не так, как большинство других языков программирования, но, тем не менее, очень похож на C#. Самый первый пример, предоставленный Microsoft, включает создание сценария состояния Q# Bell State – четырех запутанных состояний из двух кубитов. Конечный результат приводит к наблюдению за запутыванием в двух измеренных битах на выходе программы. В более поздних учебных курсах пользователь прорабатывает скрипт для моделирования квантовой телепортации. Microsoft надеется, что введение такой новой концепции поможет заинтересовать потенциальных разработчиков и начать разработку в области квантовые вычисления.


Q-шарп содержит несколько интересных примитивных типов. В дополнение к стандартным типам, таким как int, double, bool и string, есть также типы Pauli, Range, Result и Qubit. В языке также много интересных особенностей, включая функции, называемые операциями, и так далее. Ниже показан пример телепортации кубитов в сценарии Teleportation.qs, взятом из учебника по данному языку программирования.



operation Teleport(msg : Qubit, there : Qubit) : () {
    body {
        using (register = Qubit[1]) {
            let here = register[0];
            H(here);
            CNOT(here, there);
            CNOT(msg, here);
            H(msg);
            // Measure out the entanglement. 
           if (M(msg) == One) { Z(there); } 
           if (M(here) == One) { X(there); }

           }
       } 
   }



© digitrode.ru


Теги: квантовый компьютер




Уважаемый посетитель, Вы зашли на сайт как незарегистрированный пользователь.
Мы рекомендуем Вам зарегистрироваться либо войти на сайт под своим именем.

Комментарии:

Оставить комментарий