Skip to content

Support phase gates in LitinskiTransformation#15773

Merged
alexanderivrii merged 6 commits intoQiskit:mainfrom
Cryoris:litinski-phase-gates
Mar 23, 2026
Merged

Support phase gates in LitinskiTransformation#15773
alexanderivrii merged 6 commits intoQiskit:mainfrom
Cryoris:litinski-phase-gates

Conversation

@Cryoris
Copy link
Copy Markdown
Collaborator

@Cryoris Cryoris commented Mar 6, 2026

Summary

Supporting phase gates is straightforward and there's no reason we would require the compiler to first map to RZ. This commit does not tackle extensions of the Litinski transformation code to generic rotations, which is something we should add in the soon future.

Supporting phase gates is straightforward and there's no reason
we would require the compiler to first map to RZ. This commit
does not tackle extensions of the Litinski transformation code
to generic rotations, which is something we should add in the soon
future.
@Cryoris Cryoris added this to the 2.5.0 milestone Mar 6, 2026
@Cryoris Cryoris requested a review from a team as a code owner March 6, 2026 15:47
@Cryoris Cryoris added Changelog: Added Add an "Added" entry in the GitHub Release changelog. fault tolerance related to fault tolerance compilation labels Mar 6, 2026
@qiskit-bot
Copy link
Copy Markdown
Collaborator

One or more of the following people are relevant to this code:

  • @Qiskit/terra-core

Copy link
Copy Markdown
Member

@ShellyGarion ShellyGarion left a comment

Choose a reason for hiding this comment

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

Thanks @Cryoris - I think this is a nice addition to the Litinski pass.
I have some minor comments and there is some clippy error.

Comment thread crates/transpiler/src/passes/litinski_transformation.rs Outdated
---
features_transpiler:
- The :class:`.LitinskiTransformation` now also supports circuits with
:class:`.PhaseGate` and :class:`.U1Gate` instructions. Previously, the only
Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

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

should we relate to U1Gate here since it's deprecated?

Copy link
Copy Markdown
Collaborator Author

Choose a reason for hiding this comment

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

Good question - since users could have circuits defined in terms of U1Gate, since it's still part of the official API and supported, I added it here since it doesn't really add any overhead to handle it

Comment thread test/python/transpiler/test_litinski_transformation.py
ShellyGarion
ShellyGarion previously approved these changes Mar 9, 2026
Copy link
Copy Markdown
Member

@ShellyGarion ShellyGarion left a comment

Choose a reason for hiding this comment

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

LGTM. @alexanderivrii - do you have any comments?

@ShellyGarion ShellyGarion added the on hold Can not fix yet label Mar 10, 2026
@ShellyGarion
Copy link
Copy Markdown
Member

putting it on-hold for 2.5

@ShellyGarion ShellyGarion moved this from Ready to Done in Qiskit 2.5 Mar 12, 2026
@ShellyGarion ShellyGarion removed the on hold Can not fix yet label Mar 22, 2026
alexanderivrii
alexanderivrii previously approved these changes Mar 22, 2026
Copy link
Copy Markdown
Member

@alexanderivrii alexanderivrii left a comment

Choose a reason for hiding this comment

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

LGTM!

@ShellyGarion
Copy link
Copy Markdown
Member

any idea why test_p is failing now?

@Cryoris
Copy link
Copy Markdown
Collaborator Author

Cryoris commented Mar 23, 2026

Yeah because in #15764 we added the use_ppr flag which needs to be set to True to produce PPRs. I'll push a commit fixing it in a bit.

@Cryoris Cryoris dismissed stale reviews from alexanderivrii and ShellyGarion via 33669a0 March 23, 2026 09:00
Copy link
Copy Markdown
Member

@ShellyGarion ShellyGarion left a comment

Choose a reason for hiding this comment

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

LGTM, thanks for the fix!

@alexanderivrii alexanderivrii added this pull request to the merge queue Mar 23, 2026
Merged via the queue into Qiskit:main with commit 09af631 Mar 23, 2026
25 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Changelog: Added Add an "Added" entry in the GitHub Release changelog. fault tolerance related to fault tolerance compilation

Projects

Status: Done

Development

Successfully merging this pull request may close these issues.

4 participants