-
Notifications
You must be signed in to change notification settings - Fork 2.6k
Fix build filter coupling map with mix ideal/physical targets #11009
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
Merged
Conversation
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This commit fixes a small issue in the Target.build_coupling_map method with filter_idle_qubits=True. Previously the internal method used to filter the idle qubits from the coupling map's creation was not accounting for the case that an instruction in the target could be ideal. This was never caught because normally if you have an ideal fixed width instruction in the target that is modelling a simulator which doesn't have any connectivity constraints and the function would never be called. But in targets that have a mix of both ideal globally defined and physical gates the filter code couldn't handle the None used to represent an ideal globally available gate. This commit fixes that handling to just ignore the global gate like the normal coupling map construction does.
taalexander
previously approved these changes
Oct 12, 2023
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM
jakelishman
approved these changes
Oct 19, 2023
mergify bot
pushed a commit
that referenced
this pull request
Oct 19, 2023
* Fix build filter coupling map with mix ideal/physical targets This commit fixes a small issue in the Target.build_coupling_map method with filter_idle_qubits=True. Previously the internal method used to filter the idle qubits from the coupling map's creation was not accounting for the case that an instruction in the target could be ideal. This was never caught because normally if you have an ideal fixed width instruction in the target that is modelling a simulator which doesn't have any connectivity constraints and the function would never be called. But in targets that have a mix of both ideal globally defined and physical gates the filter code couldn't handle the None used to represent an ideal globally available gate. This commit fixes that handling to just ignore the global gate like the normal coupling map construction does. * Fix lint (cherry picked from commit 4dfcba2)
github-merge-queue bot
pushed a commit
that referenced
this pull request
Oct 24, 2023
#11049) * Fix build filter coupling map with mix ideal/physical targets This commit fixes a small issue in the Target.build_coupling_map method with filter_idle_qubits=True. Previously the internal method used to filter the idle qubits from the coupling map's creation was not accounting for the case that an instruction in the target could be ideal. This was never caught because normally if you have an ideal fixed width instruction in the target that is modelling a simulator which doesn't have any connectivity constraints and the function would never be called. But in targets that have a mix of both ideal globally defined and physical gates the filter code couldn't handle the None used to represent an ideal globally available gate. This commit fixes that handling to just ignore the global gate like the normal coupling map construction does. * Fix lint (cherry picked from commit 4dfcba2) Co-authored-by: Matthew Treinish <mtreinish@kortar.org>
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Labels
Changelog: Bugfix
Include in the "Fixed" section of the changelog
stable backport potential
The bug might be minimal and/or import enough to be port to stable
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Summary
This commit fixes a small issue in the Target.build_coupling_map method with filter_idle_qubits=True. Previously the internal method used to filter the idle qubits from the coupling map's creation was not accounting for the case that an instruction in the target could be ideal. This was never caught because normally if you have an ideal fixed width instruction in the target that is modelling a simulator which doesn't have any connectivity constraints and the function would never be called. But in targets that have a mix of both ideal globally defined and physical gates the filter code couldn't handle the None used to represent an ideal globally available gate. This commit fixes that handling to just ignore the global gate like the normal coupling map construction does.
Details and comments