Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Basic interop with Qiskit #1899

Merged
merged 46 commits into from
Sep 9, 2024
Merged

Basic interop with Qiskit #1899

merged 46 commits into from
Sep 9, 2024

Conversation

idavis
Copy link
Collaborator

@idavis idavis commented Sep 3, 2024

This PR adds the ability to resource estimate, run, and generate QIR from Qiskit QuantumCircuits.

There are three areas which we can break up the review into:

  • compiler/qsc_qasm3
  • Python user facing API and notebooks. Example usage can be seen in:
    • samples/python_interop/qiskit/interop.ipynb
    • samples/estimation/estimation-qiskit.ipynb
  • /compiler changes (excluding qsc_qasm3)

The QASM parser doesn't have usable semantic validation, so we have to do a lot of our own validation as we compile the QASM generated from the QuantumCircuits.

Closes #1074

@idavis idavis requested a review from ScottCarda-MS September 3, 2024 22:44
Copy link
Member

@msoeken msoeken left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Reviewed the RE related parts. Looks good to me. Thanks @idavis !

idavis and others added 3 commits September 6, 2024 10:11
Co-authored-by: Stefan J. Wernli <swernli@microsoft.com>
Co-authored-by: Stefan J. Wernli <swernli@microsoft.com>
Co-authored-by: Mine Starks <16928427+minestarks@users.noreply.github.com>
idavis and others added 3 commits September 6, 2024 15:04
Copy link
Contributor

@sezna sezna left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

approving with a few final comments -- I've tested it and read the code numerous times times, and I think it is certainly ready to go in and have any future improvements handled as future PRs.

Note that I did not review the .py files outside of documentation and general sensibility, as I'm not deep on modern Python idioms or API standards, so it'd be best if you treat this approval as an approval of everything that isn't *.py.

Copy link
Member

@minestarks minestarks left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Focused on the Python bits, not as much on the compiler internals. Thanks!

Copy link
Contributor

@orpuente-MS orpuente-MS left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Approved. I focused on the compiler/ folder.

Copy link
Collaborator

@swernli swernli left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

One minor nitpick, not critical before merge but up to you if you want to address it. Excited to see this get in!

@idavis idavis added this pull request to the merge queue Sep 9, 2024
Merged via the queue into main with commit 83aa5c2 Sep 9, 2024
18 checks passed
@idavis idavis deleted the iadavis/ast-to-ast branch September 9, 2024 22:43
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

QISKIT support for RE
7 participants