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

Add frontend API functions for disentangle-SWAP/CNOT passes #1419

Open
paul0403 opened this issue Jan 7, 2025 · 3 comments
Open

Add frontend API functions for disentangle-SWAP/CNOT passes #1419

paul0403 opened this issue Jan 7, 2025 · 3 comments

Comments

@paul0403
Copy link
Contributor

paul0403 commented Jan 7, 2025

Two more circuit transformation passes, disentangle-SWAP/CNOT, were added in #1154 , but the frontend APIs (aka their parallel of catalyst.passes.cancel_inverse/merge_rotations) were not created (due to lack of time: it was end-of-year and people were going off to vacations 😅 ).

@josh146
Copy link
Member

josh146 commented Jan 8, 2025

@paul0403 how much work is involved here if we wanted to get this included in the 0.10 release?

@dime10
Copy link
Contributor

dime10 commented Jan 8, 2025

@paul0403 how much work is involved here if we wanted to get this included in the 0.10 release?

I believe @erick-xanadu actually has a PR that allows the passes to be invoked from the frontend (#1407)

@paul0403
Copy link
Contributor Author

paul0403 commented Jan 8, 2025

@paul0403 how much work is involved here if we wanted to get this included in the 0.10 release?

I would actually like to clean up these frontend pass applications when I get back. Now with Erick's Pass class and apply_pass function all the specific APIs can just call that, instead of manually binding primitives. Of course I'm also happy if @erick-xanadu wants to do this now : )

For the release, a quick workaround is just copy-pasting what cancel_inverses and merge_rotations did, which is quite minimal work.

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

No branches or pull requests

3 participants