2025-11-23T08:19:15.914309

HUGR: A Quantum-Classical Intermediate Representation

Koch, Borgna, Sivarajah et al.
We introduce the Hierarchical Unified Graph Representation (HUGR): a novel graph based intermediate representation for mixed quantum-classical programs. HUGR's design features high expressivity and extensibility to capture the capabilities of near-term and forthcoming quantum computing devices, as well as new and evolving abstractions from novel quantum programming paradigms. The graph based structure is machine-friendly and supports powerful pattern matching based compilation techniques. Inspired by MLIR, HUGR's extensibility further allows compilation tooling to reason about programs at multiple levels of abstraction, lowering smoothly between them. Safety guarantees in the structure including strict, static typing and linear quantum types allow rapid development of compilation tooling without fear of program invalidation. A full specification of HUGR and reference implementation are open-source and available online.
academic

HUGR: Квантово-классическое промежуточное представление

Основная информация

  • ID статьи: 2510.11420
  • Название: HUGR: A Quantum-Classical Intermediate Representation
  • Авторы: Mark Koch, Agustín Borgna, Seyon Sivarajah, Alan Lawrence, Alec Edgington, Douglas Wilson, Craig Roy, Luca Mondada, Lukas Heidemann, Ross Duncan (Quantinuum)
  • Классификация: cs.PL (Языки программирования), quant-ph (Квантовая физика)
  • Дата публикации: 13 октября 2025 г. (препринт arXiv)
  • Ссылка на статью: https://arxiv.org/abs/2510.11420

Аннотация

В данной статье представляется иерархическое унифицированное графическое представление (HUGR) — новое графическое промежуточное представление на основе графов для гибридных квантово-классических программ. HUGR разработан с высокой выразительностью и масштабируемостью, способен захватывать возможности современных и будущих устройств квантовых вычислений, а также новые абстракции из развивающихся парадигм квантового программирования. Графическая структура удобна для машин и поддерживает мощные методы компиляции на основе сопоставления с образцом. Вдохновленный MLIR, HUGR обеспечивает дополнительную масштабируемость, позволяя инструментам компиляции рассуждать о программах на нескольких уровнях абстракции с плавным понижением между ними. Гарантии безопасности в структуре включают строгую статическую типизацию и линейные квантовые типы, позволяющие быстро разрабатывать инструменты компиляции без беспокойства о сбое программы. Полная спецификация HUGR и эталонная реализация доступны с открытым исходным кодом в Интернете.

Исследовательский контекст и мотивация

Определение проблемы

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

  1. Протоколы повторения до успеха: классический поток управления на основе результатов промежуточных измерений для определения следующей квантовой операции
  2. Алгоритмы квантовой коррекции ошибок: требуют сложной классической логики для декодирования ошибок в реальном времени и применения исправлений
  3. Гибридная квантово-классическая оптимизация: тесная интеграция между квантовой и классической обработкой

Важность проблемы

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

Ограничения существующих подходов

  1. Традиционные платформы (Cirq, Qiskit, TKET и др.): в основном представляют квантовые схемы как списки или графы вентилей с ограниченной поддержкой динамических квантово-классических программ
  2. QIR: основан на LLVM IR, рассматривает кубиты как непрозрачные указатели, требует глобального анализа потока данных для отслеживания кубитов, не обладает масштабируемостью
  3. OpenQASM 3: больше похож на высокоуровневый язык программирования, чем на промежуточное представление

Исследовательская мотивация

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

Основные вклады

  1. Предложение платформы HUGR: первое унифицированное графическое представление для гибридных квантово-классических программ
  2. Иерархическая графическая структура: поддержка произвольно вложенных потоков управления и многоуровневых абстракций
  3. Гарантии типобезопасности: строгая система статической типизации и линейные квантовые типы обеспечивают корректность программ
  4. Масштабируемый дизайн: модульная система определения операций и типов данных, аналогичная системе диалектов MLIR
  5. Поддержка эффективной оптимизации: методы оптимизации на основе сопоставления с образцом, поддерживающие параллелизацию и эффективную композицию
  6. Открытая реализация: полная спецификация и эталонная реализация на Rust

Подробное описание методов

Определение задачи

HUGR предназначен для предоставления промежуточного представления, способного:

  • Входные данные: высокоуровневое описание гибридных квантово-классических программ
  • Выходные данные: оптимизируемое, анализируемое графическое представление
  • Ограничения: сохранение типобезопасности, ограничений линейных квантовых типов и семантики программ

Архитектура модели

1. Основа графа потока данных

HUGR представляет программы как графы потока данных, соединяющие входные и выходные узлы:

  • Узлы: квантовые или классические операции
  • Ребра: направленные соединения, переносящие кубиты или классические данные
  • Порты: явно пронумерованные интерфейсы входа/выхода на узлах
In → Addf64 → Rz → Out
      ↓      ↗
     f64   Rx

2. Система типов

  • Статическая типизация: все ребра имеют статические типы, операции узлов имеют статические сигнатуры
  • Линейные квантовые типы: порты кубитов могут иметь только одно соединительное ребро, предотвращая копирование кубитов
  • Копирование классических значений: классические значения могут копироваться и использоваться многократно

3. Иерархическая структура

Узлы могут содержать вложенные подграфы, поддерживающие:

  • Условные операции: ветвление между несколькими графами выполнения на основе управляющего входа
  • Операции TailLoop: подграфы потока данных для структурированных циклов
  • Узлы CFG: неструктурированные графы потока управления, содержащие узлы BasicBlock

4. Функции и высокоуровневые типы

  • FuncDef: функции, определенные как графы потока данных
  • FuncDecl: объявления внешних функций
  • Постоянные ребра: представляют статические значения времени компиляции (пунктирные линии)
  • LoadFunction: преобразование статических значений функций в динамические значения времени выполнения
  • Полиморфные сигнатуры: поддержка определений функций с переменными типов

Технические инновации

1. Унифицированное квантово-классическое представление

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

2. Ограничения линейного типа

Путем принудительного применения ограничения единственного соединения для портов кубитов предотвращается копирование кубитов и другие физически невозможные операции на этапе компиляции.

3. Модульная система расширения

Ядро HUGR отделено от конкретных операций, позволяя пользователям определять операции и типы данных для конкретных областей без изменения основной реализации.

4. Поддержка иерархических абстракций

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

Экспериментальная установка

Детали реализации

  • Эталонная реализация: реализация на языке Rust, использующая функции безопасности памяти
  • Открытый исходный код: полная спецификация и реализация на github.com/CQCL/hugr
  • Совместимость с MLIR: прототип реализации диалекта MLIR (github.com/CQCL/hugr-mlir)

Примеры программ

Статья предоставляет несколько примеров программ для проверки выразительности HUGR:

1. Динамическое вращение угла

In → Add → Rz → Rx → Out
     ↓    ↗    ↗
    f64  f64  qubit

2. Условный квантовый вентиль

Программа, условно выполняющая вентиль H или X на основе результата измерения

3. Протокол повторения до успеха

Полный пример реализации операции (I+i2X)/3(I + i\sqrt{2}X)/\sqrt{3}

Результаты экспериментов

Проверка выразительности

Статья проверяет через конкретные примеры, что HUGR способен выражать:

  1. Традиционные квантовые схемы: статические и параметризованные схемы
  2. Гибридные циклы оптимизации: гибридные квантово-классические алгоритмы
  3. Логика квантово-классических вычислений в реальном времени: динамическое управление на основе промежуточных измерений
  4. Структурированные потоки управления: условные ветвления и циклы
  5. Неструктурированные потоки управления: произвольные графы потока управления

Производительность оптимизации

Оптимизация на основе сопоставления с образцом графа имеет следующие преимущества:

  • Эффективное сопоставление: метки портов обеспечивают дополнительную структуру, более эффективную, чем проверка общего изоморфизма подграфов
  • Поддержка параллелизации: сопоставление с образцом позволяет эффективную композицию правил переписывания
  • Масштабируемость: способность одновременно искать десятки тысяч образцов

Гарантии типобезопасности

  • Проверка на этапе компиляции: система статической типизации перехватывает ошибки типов на этапе компиляции
  • Линейные ограничения: предотвращение копирования кубитов и других физически невозможных операций
  • Целостность программы: постоянное применение ограничений во время оптимизации, предотвращение сбоев программы

Связанные работы

Сравнение с традиционными платформами квантовых вычислений

ПлатформаСпособ представленияПоддержка динамикиМасштабируемость
Cirq/QiskitСписок/граф вентилейОграниченнаяНизкая
TKETГраф схемыРазвертывание потока управленияСредняя
OpenQASM 3Текстовый языкПоддерживаетсяНизкая

Сравнение с QIR

  • Преимущества QIR: основан на зрелой инфраструктуре LLVM
  • Ограничения QIR:
    • Кубиты как непрозрачные указатели, требуют глобального анализа
    • Отсутствие масштабируемости, сложность добавления высокоуровневых абстракций
    • Модель операций на основе побочных эффектов усложняет оптимизацию

Связь с MLIR

  • Сходства: оба используют систему диалектов для поддержки специфичных для области абстракций
  • Преимущества HUGR:
    • Дизайн, специализированный для квантовой области
    • Линейные типы как концепция первого класса
    • Реализация на Rust обеспечивает безопасность памяти
    • Независимость от быстро меняющегося MLIR

Заключение и обсуждение

Основные выводы

  1. HUGR успешно унифицирует представление квантово-классических программ, поддерживая полный спектр выразительности от традиционных схем до сложных гибридных алгоритмов
  2. Иерархическая графическая структура и строгая система типов обеспечивают прочную основу для разработки инструментов компиляции
  3. Масштабируемый дизайн поддерживает быстрое развитие области квантовых вычислений и интеграцию новых абстракций
  4. Платформа оптимизации на основе сопоставления с образцом открывает новые возможности для эффективной оптимизации программ

Ограничения

  1. Кривая обучения: сложность HUGR по сравнению с традиционным представлением схем может увеличить затраты на обучение разработчиков
  2. Экосистема инструментов: как новая платформа, требует времени для построения полной цепочки инструментов и поддержки сообщества
  3. Оценка производительности: статья не содержит количественного сравнения производительности с существующими платформами
  4. Практическое развертывание: еще не продемонстрировано применение на крупномасштабных квантовых программах

Направления будущих исследований

  1. Совершенствование цепочки инструментов: разработка поддержки большего количества интерфейсов на входе и целевых платформ на выходе
  2. Алгоритмы оптимизации: изучение дополнительных методов оптимизации, специфичных для квантовых вычислений
  3. Формальная верификация: предоставление поддержки формальной верификации для программ HUGR
  4. Интеграция с оборудованием: глубокая интеграция с конкретными платформами квантового оборудования

Глубокая оценка

Преимущества

  1. Высокая инновационность: впервые предложено унифицированное квантово-классическое графическое представление, решающее важную техническую проблему
  2. Полнота дизайна: всеобъемлющий дизайн от системы типов до платформы оптимизации, тщательно продуманный
  3. Высокая практическая ценность: непосредственно ориентирован на практические потребности квантовых вычислений, способен продвинуть развитие области
  4. Вклад в открытый исходный код: полная реализация с открытым исходным кодом снижает барьеры для внедрения

Недостатки

  1. Ограниченная экспериментальная проверка: в основном проверка выразительности через примеры, отсутствует оценка производительности в крупном масштабе
  2. Отсутствие количественного сравнения: отсутствует количественное сравнение эффектов оптимизации и времени компиляции с существующими платформами
  3. Удобство использования: оценка удобства использования как промежуточного представления недостаточна
  4. Построение экосистемы: построение цепочки инструментов и сообщества новой платформы требует времени

Влияние

  1. Академическая ценность: предоставляет новую теоретическую основу для исследований языков квантового программирования и компиляторов
  2. Промышленное применение: промышленный фон Quantinuum увеличивает вероятность практического применения
  3. Потенциал стандартизации: может стать стандартным представлением для гибридных квантово-классических программ
  4. Стимулирование развития: может催生 новые парадигмы квантового программирования и методы оптимизации

Применимые сценарии

  1. Исследование квантовых алгоритмов: поддержка представления и оптимизации сложных квантовых алгоритмов
  2. Разработка квантовых компиляторов: предоставление унифицированного промежуточного представления для разработки квантовых компиляторов
  3. Приложения гибридных вычислений: особенно подходит для приложений, требующих тесного взаимодействия квантово-классических систем
  4. Инженерия квантового программного обеспечения: предоставление инфраструктуры для разработки крупномасштабного квантового программного обеспечения

Список литературы

Статья цитирует 25 связанных работ, охватывающих:

  • Квантовые алгоритмы и протоколы (повторение до успеха, квантовая коррекция ошибок и т.д.)
  • Существующие платформы квантового программирования (Cirq, Qiskit, TKET, PennyLane и др.)
  • Инфраструктура компиляторов (LLVM, MLIR)
  • Теория систем типов (линейные типы)
  • Методы оптимизации графов и сопоставления с образцами

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