В популярные редакторы кода добавили поддержку языка программирования для квантовых компьютеров – Q#

В популярные редакторы кода добавили поддержку языка программирования для квантовых компьютеров – Q#
30.07.2019
17583

Компания Microsoft расширила набор инструментов Quantum Development Kit и открыла код дополнений для редакторов Visual Studio и VS Code. Теперь в этих редакторах можно комфортно программировать на Q# – языке для квантовых компьютеров.

Что вошло в обновление

Свежая версия Quantum Development Kit (QDK) включает все необходимое для старта разработки на Q#:

  • инструмент командной строки;
  • компилятор для уникального языка программирования;
  • обработчик LanguageServer.

В набор включили дополнения для Visual Studio и VS Code. Если их загрузить и активировать, то разрабатывать приложения для квантовых вычислений вы сможете непосредственно в популярных редакторах кода Microsoft. Первая версия QDK вышла в конце 2017 года. Работать с ней можно было только из Windows. Позднее создатели добавили поддержку Linux и macOS. 

Чем интересен Q#

Q# – предметно-ориентированный язык программирования. Он создан для квантовых вычислений, одно из первых применений Q# – решение задачи скрытого шифра. В командах Q# можно выразить квантовые алгоритмы. Квантовые алгоритмы выполняются на квантовых компьютерах, существующих лишь в виде экспериментов, а Q# позволяет симулировать эти вычисления. 

Симулятор вычислений на квантовом компьютере – основа QDK. Таким образом, Q# делает квантовое программирование доступным всем желающим. Чтобы вызвать квантовый симулятор в QDK, используется .NET Framework. Он передает классические входные данные и забирает из него результат (также в классической форме). 

Синтаксис Q# похож на C# и F#. Для функций есть ключевое слово function, для операторов работы с кубитами – operation. При этом многострочные комментарии создавать нельзя, а вместо обработки ошибок следует использовать проверку. Документировать код можно в Markdown.

Как происходят квантовые вычисления

Квантовый алгоритм задает последовательность гейтов или вентилей. Это унитарные операции, которые нужно совершить над определенными кубитами. Кубит – это минимальная ячейка памяти квантового компьютера. Бит, только квантовый. У кубита есть два собственных состояния – 0 и 1, как у традиционного бита. Есть и третье состояние – суперпозиция первых двух. Ее выражают как А(0) + В(1), причем А и В – комплексные числа, а сумма их квадратов равна 1. 

В результате выполнения квантовых вычислений нельзя получить точный и конкретный ответ – только вероятность. Но если немного увеличить число операций в квантовом алгоритме, можно максимально приблизить вероятность правильного ответа к 1. Правильно составленный квантовый алгоритм и квантовый компьютер, для которого он создан, ускоряют выполнение классических вычислений. Это потенциальный прорыв для науки и техники.

Квантовый симулятор в QDK может обрабатывать до 30 кубитов на локальном ПК и 32-40 кубитов в облаке Azure. Кубиты могут запутываться, а квантовая суперпозиция создается через вентили Адамара. 

Исходный код набора доступен на GitHub. Разработчики опубликовали его под свободной лицензией MIT. 

Автор:
Обозреватель

См. также

Журнал Института инженеров электротехники и электроники IEEE Spectrum подготовил рейтинг самых популярных языков программирования в 2023 году. Статистика разделена на три категории.

01.09.2023    1920    VKuser24342747    4       

2

С помощью библиотек и средств визуализации Python можно будет манипулировать данными Excel, а затем использовать полученные результаты в формулах, диаграммах и сводных таблицах.

28.08.2023    1157    VKuser24342747    0       

2

Спустя пять лет разработки вышел релиз компилятора для языков программирования Python и Cython – проект Cython 3.0. Он позволяет транслировать код Python в представление на C/C++.

28.07.2023    1743    VKuser24342747    0       

2

GitLab представила собственную нейросеть Code Suggestions, способную генерировать код по запросу на естественном языке. ИИ-помощник поддерживает работу с 13 языками программирования.

10.07.2023    1752    VKuser24342747    0       

1

Stack Overflow представил рейтинг языков программирования за 2023 год. В исследовании учитывали не только частоту применения языка, но и интерес разработчиков к нему. Также компания составила рейтинг платформ и ИИ-инструментов. 

20.06.2023    2122    VKuser24342747    1       

2

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

14.12.2022    7528    VKuser24342747    0       

3

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

01.12.2022    8929    VKuser24342747    11       

3

Ричард Мэттью Столлман, основатель Фонда свободного программного обеспечения, представил руководство по языку C и расширениям GNU. Пособие доступно всем желающим и предназначено как для опытных, так и начинающих программистов.

19.09.2022    12262    VKuser24342747    0       

4

Комментарии

Инфостарт бот
1. VmvLer 30.07.19 16:10 Сейчас в теме
Создавать эффективные квантовые алгоритмы без глубоких знаний в высшей математике практически не реально.
Посему ход MS вполне логичен - привлечь как можно больше самородков в перспективную реальность.

Думаю, 1С-ки пенсионеры станут осваивать эту нишу.
Во-первых, у них часто хорошее физико-математическое образование.
Во-вторых, они достаточно психологически устойчивы после опыта работы с технологиями 1С.
Астиг; dmurk; acanta; +3 Ответить
2. Darklight 30.07.19 16:50 Сейчас в теме
Дайте посмотреть на программу, написанную на Q#
3. VmvLer 30.07.19 18:14 Сейчас в теме
5. Darklight 31.07.19 13:26 Сейчас в теме
(3)Спасибо за ссылку, уже успел прочесть - увы там слишком примитивные примеры, хоть и дающие базовое представление
4. realchel 30.07.19 22:58 Сейчас в теме
Какой я тупой
SagittariusA; akimych; artbear; +3 Ответить

Оставьте свое сообщение