Skip to content

✨ MLIR - Conversion from/to CUDA-Q's quake dialect #6

Open
@WingCode

Description

@WingCode

Copied from munich-quantum-toolkit/core #924

What's the problem this feature will solve?

Our efforts in adopting MLIR within the MQT have been steadily progressing.
munich-quantum-toolkit#880 is the first PR that adds interoperability with an external framework, namely Xanadu's Catalyst and their Quantum dialect.
To connect the ecosystem further and to extend the compatibility of the MQT, this issue aims to add support for NVIDIA's quake dialect that is used within CUDA-Q. See https://github.com/NVIDIA/cuda-quantum/blob/main/Overview.md for a brief overview.

Describe the solution you'd like

Similarly to the solution currently being pursued in munich-quantum-toolkit#880, it should be possible to translate MLIR programs using the Quake dialect to our internal mqtopt or mqtdyn (see comment below for more details) dialect and back.
The conversion itself can probably borrow quite a few of the implementation details from munich-quantum-toolkit#880.
The intriguing aspect is the packaging aspect in the sense that it is still an open question how to best add these translations without adding an unconditional dependency on cuda-q. Ideally, the integration is set up similar to how we currently handle Qiskit as an optional plugin of the mqt-core Python package: https://github.com/munich-quantum-toolkit/core/tree/main/src/mqt/core/plugins/qiskit

Metadata

Metadata

Assignees

No one assigned

    Labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions