Q # для квантовых вычислений: новый язык программирования от Microsoft - новости

Q # для квантовых вычислений: новый язык программирования от Microsoft - новости
Q # для квантовых вычислений: новый язык программирования от Microsoft - новости
Anonim

Q # для квантовых вычислений: новый язык программирования от Microsoft

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

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

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

Разработчики, использующие язык, не должны иметь глубоких знаний о квантовой физике. Для заинтересованных, Microsoft действительно представляет собой учебник по основным концепциям квантовых вычислений, охватывающий векторную и матричную математику, кубит, обозначение Дирака, измерения Паули и квантовые схемы.

Комплект разработки Q # доступен бесплатно с подробными инструкциями по его установке и вводным учебным программам. Q # компилируется на квантовом симуляторе Visual Studio, имитируя квантовый процессор на 32 кубита. Лазерное издание симулятора может имитировать до 40 кубитов.

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

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

Что такое Q #

Вначале румянец, язык программирования Q # выглядит не так, как большинство других языков программирования, и очень похож на его аналог на C #.

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

Q # содержит несколько интересных примитивных типов. В дополнение к более типичным типам, таким как int, double, bool и string, есть также тип Pauli, Range, Result и Qubit.

В языке также много Q # quirks, включая функции, называемые операциями, и так далее.

Image
Image

Квантовая цепь для телепортации. Изображение предоставлено Microsoft

(0), H (здесь), CNOT (здесь, там), CNOT (msg:, здесь); H (msg); // Измерить запутывание. if (M (msg) == One) {Z (там); } if (M (здесь) == One) {X (там); }}}}

Сценарий Teleportation.qs из учебника Q #. Учебник доступен здесь

Для более алгоритмически наклонного, возможно, стоит проверить Zum Quantum Algorithm для идей о том, как играть с Q #.

Квантовые вычисления для решения трудных задач

Ожидается, что квантовые вычисления приведут к разрушению многих отраслей и областей, когда они станут доступными и повсеместными. Многие используемые сегодня методы шифрования более не будут эффективны против квантовых вычислений, включая RSA.

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

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

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

Изображение функции предоставлено Microsoft.