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 MCRX, MCRY and MCRZ gates to the circuit library #12289
base: main
Are you sure you want to change the base?
Add MCRX, MCRY and MCRZ gates to the circuit library #12289
Conversation
Thank you for opening a new pull request. Before your PR can be merged it will first need to pass continuous integration tests and be reviewed. Sometimes the review process can be slow, so please be patient. While you're waiting, please feel free to review other open PRs. While only a subset of people are authorized to approve pull requests for merging, everyone is encouraged to review open pull requests. Doing reviews helps reduce the burden on the core team and helps make the project's code better for everyone. One or more of the the following people are requested to review this:
|
Pull Request Test Coverage Report for Build 9011841055Details
💛 - Coveralls |
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.
Thanks for your contribution @king-p3nguin.
I have a few preliminary questions and comments.
-
I don't understand why there are so many new classes.
MCRXGate, MCRXPUCXBasis, MCRYGate, MCRYPUCXBasis, MCRYVChain, MCRZGate, MCRZPUCXBasis
?
Isn't it enough to have one class for each rotation direction? see the code ofMCPhaseGate
. -
There are several copypasting misprints in the classes docstrings that are a bit confusing.
-
I'm not sure if the imports through
qiskit/circuit/library/standard_gates/multi_control_rotation_gates.py
should be deprecated, since the way that these are used today are viaQuantumCircuit.mcrx
,QuantumCircuit.mcry
andQuantumCircuit.mcrz
. -
Instead of changing the logic of
_mcsu2_real_diagonal
to solve Controlled UGate with a parameterized angle fails with 4 or more controls #12135, perhaps you can handle the two cases ofParameterValueType
andfloat
separately as a preliminary solution?
see the code ofMCPhaseGate
.
Summary
Resolve #12048
Details and comments
_mcsu2_real_diagonal
for Controlled UGate with a parameterized angle fails with 4 or more controls #12135 (maybe in other PR)mcrx
,mcry
andmcrz
fromqiskit/circuit/library/standard_gates/multi_control_rotation_gates.py