Q Sharp

Q# (Q Sharp) — предметно-ориентированный язык, используемый для выражения квантовых алгоритмов. Впервые был представлен в составе Quantum Development Kit[4][5].

Q#
Класс языка язык квантового программирования[d], язык функционального программирования и императивный язык программирования
Появился в 11 декабря 2017[1]
Автор Microsoft Research
Разработчик Microsoft Quantum Architectures and Computation group[d] и Майкрософт
Расширение файлов .qs
Выпуск
Система типов статическая, сильная
Испытал влияние C# и F#
Лицензия лицензия MIT[3]
Сайт docs.microsoft.com/en-us…
Платформа Common Language Infrastructure

История

Во время конференции Microsoft Ignite 26 сентября 2017, Microsoft анонсировала релиз нового языка программирования, направленного на квантовые технологии.[4] 11 декабря язык был представлен официально в составе Quantum Development Kit. В марте 2018 появилась научная статья, в которой описывается применение языка к решению проблемы скрытого шифта.[6]

Использование

Q# возможен для использования только как отдельно загружаемое расширение для Visual Studio.[7] Quantum Development Kit поставляется вместе с квантовым симулятором, на котором может запуститься Q#.

Для вызова квантового симулятора используется другой .NET Framework, который отдаёт входные (классические) данные в симулятор и забирает выходные (классические) данные из него.

Возможности

Базовая возможность языка: создание и использование кубитов для алгоритмов. Как следствие — одна из наиболее характерных особенностей Q# — возможность запутываться и создавать квантовую суперпозицию между кубитами через вентили CNOT и Адамара (H), соответственно.

В Q# кубиты создаются топологически.

В пакет Quantum Development Kit входит квантовый симулятор, способный обрабатывать до 30 кубитов локально и от 32 до 40 кубитов в облаке Azure.

Синтаксис

Q# синтаксически похож на C# и F#, с некоторыми отличиями.

  • функции определяются словом function;
  • операторы для работы над квантами определяются словом operation;
  • отсутствуют многострочные комментарии;
  • использование проверок вместо обработки ошибок;
  • документация пишется в Markdown.

Примечания

  1. The future is quantum: Microsoft releases free preview of Quantum Development Kit — 2017.
  2. Release 99045 — 2019.
  3. https://api.github.com/repos/Microsoft/Quantum
  4. Announcing the Microsoft Quantum Development Kit (англ.), Microsoft Quantum (11 December 2017). Дата обращения 27 декабря 2017.
  5. Microsoft readies dev kit, Q# language for quantum computing (англ.), InfoWorld (15 December 2017). Дата обращения 28 декабря 2017.
  6. Mathias Soeken, Thomas Häner, Martin Roetteler. Programming Quantum Computers Using Design Automation (англ.). arXiv.org (2 марта 2018). Дата обращения: 19 июня 2018. Архивировано 19 июня 2018 года.
  7. Installing and Validating the Q# Development Environment (англ.). Microsoft Docs (11 декабря 2017). Дата обращения: 27 декабря 2017.

Ссылки

This article is issued from Wikipedia. The text is licensed under Creative Commons - Attribution - Sharealike. Additional terms may apply for the media files.