-
Notifications
You must be signed in to change notification settings - Fork 2.4k
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
Replace initialization method by Isometry in StatePreparation #12178
Conversation
One or more of the the following people are requested to review this:
|
Pull Request Test Coverage Report for Build 8998409586Warning: This coverage report may be inaccurate.This pull request's base commit is no longer the HEAD commit of its target branch. This means it includes changes from outside the original pull request, including, potentially, unrelated coverage changes.
Details
💛 - Coveralls |
Thanks @ShellyGarion, this looks good. Hopefully all the tests will pass now. Could you please add the release note? And also some data on the number of gates / depth / etc. comparing the old and the new methods, i.e. highlighting improvement in this PR? |
The following code compares the number of CX gates and circuit depth of this branch and the main branch:
this branch:
main branch:
|
Very nice, we see 2x reduction in the number of gates. Not directly related to this PR, but do you think it is worthwhile to track state preparation benchmarks via ASV (in the case that they are not there already)? |
I think it would be nice to add it. I think that |
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! Just one small comment: I am personally in favor of removing internal code that is not likely to be ever used in the future. @ShellyGarion, you don't think that any of the removed methods in statepreparation.py will ever be useful, correct?
A quick run of ASV on the new statepreparation benchmark:
|
…#12178) * replace initializetion method by Isometry in StatePreparation * add names to QuantumRegister and QuantumCircuit * update docs to the new reference * remove old initialization code based on Shende et al * fix reference in docs * add release notes * fix lint errors * fix references in docs * add a benchmark for state preparation * update circuit name following review
Summary
Close #12081
Replace initialization method by
Isometry
inStatePreparation
Details and comments