Sliq — первый интуитивный язык программирования квантовых компьютеров

17 июнь, 2020 - 10:05

Sliq — первый интуитивный язык программирования квантовых компьютеров

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

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

Цель решить эту задачу два года назад поставила перед собой группа из четырёх специалистов по квантовой физике и разработке алгоритмических языков из Высшей технической школы Цюриха (ETH Zurich).

На этой неделе руководитель данной работы, профессор компьютерных наук Мартин Вечев (Martin Vechev) из Лаборатории безопасных, надёжных и интеллектуальных систем (SRI ETH), представит на конференции PLDI 2020 первый высокоуровневый язык программирования для квантовых компьютеров — Sliq.

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

Одним из важнейших преимуществ Sliq является устранение серьёзного источника ошибок в квантовых вычислениях, посредством автоматизации удаления из памяти ненужных временных переменных и результатов промежуточных вычислений, то, что в классических компьютерах известно как «уборка мусора»

Квантовые эффекты, такие как перепутывание ранее вычисленных значений с текущими, делают «уборку мусора» весьма непростой задачей, требующей применения продвинутой техники так называемых «невычислений» (uncomputation). Предложенный группой Вечева автоматический метод невычисления использует лишь те инструкции, которые свободны от каких-либо специальных квантовых операций (qfree).

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