This repository was archived by the owner on Dec 7, 2021. It is now read-only.
-
Notifications
You must be signed in to change notification settings - Fork 376
Refactor QAE using the Grover operator #1234
Merged
Merged
Conversation
This file contains 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
2815e44
to
b5fdb37
Compare
jlapeyre
reviewed
Sep 11, 2020
woodsp-ibm
reviewed
Sep 11, 2020
Given the various changes to the Grover and AE algos at what point is a reno release note relevant. It could be done for here to note the changes on how these are built out. |
Co-authored-by: Steve Wood <40241007+woodsp-ibm@users.noreply.github.com>
if circuits are used as A/Q operators in QAE, the PEC form the circuit library is used instead
I added a reno 👍 Also I removed the deprecation warnings if a |
woodsp-ibm
approved these changes
Sep 14, 2020
pbark
pushed a commit
to pbark/qiskit-aqua
that referenced
this pull request
Sep 16, 2020
* make AE work on circuits * rename a_operator to state_in * make use of library PEC and AncillaRegister * simplify iqae, dont ask for num_ancilla anymore * add new signature to AE and loads of deprecation warnings * ignore warnings add post processing * move to new test file * all AE variants running * split is_good_state in objective qubits and callable * fix docstrings and unused imports * cleanup, remove _append * mv to using bitstr oracle * fix qubit caching, rm BitOracle * adapt to updates in GroverOperator * rm trailing IQFT type * update docstrings, remove global invalid name * delete temporary bit oracle & grover op * update docstrings * fix missing value_to_estimation, filter depr. warn * rm callable as objective_qubits * use math for ratio Ki+1/Ki * improve docstrings and error messages * Update test/aqua/test_amplitude_estimation_circuitfactory.py Co-authored-by: Steve Wood <40241007+woodsp-ibm@users.noreply.github.com> * add type hints to PEC * remove support for circuits in PEC component if circuits are used as A/Q operators in QAE, the PEC form the circuit library is used instead * don't deprecte circuit factories yet * add reno * fix a/q_factory = None * try to fix RST in reno Co-authored-by: Manoel Marques <Manoel.Marques@ibm.com> Co-authored-by: Steve Wood <40241007+woodsp-ibm@users.noreply.github.com>
manoelmarques
added a commit
to qiskit-community/qiskit-finance
that referenced
this pull request
Jan 19, 2021
…1234) * make AE work on circuits * rename a_operator to state_in * make use of library PEC and AncillaRegister * simplify iqae, dont ask for num_ancilla anymore * add new signature to AE and loads of deprecation warnings * ignore warnings add post processing * move to new test file * all AE variants running * split is_good_state in objective qubits and callable * fix docstrings and unused imports * cleanup, remove _append * mv to using bitstr oracle * fix qubit caching, rm BitOracle * adapt to updates in GroverOperator * rm trailing IQFT type * update docstrings, remove global invalid name * delete temporary bit oracle & grover op * update docstrings * fix missing value_to_estimation, filter depr. warn * rm callable as objective_qubits * use math for ratio Ki+1/Ki * improve docstrings and error messages * Update test/aqua/test_amplitude_estimation_circuitfactory.py Co-authored-by: Steve Wood <40241007+woodsp-ibm@users.noreply.github.com> * add type hints to PEC * remove support for circuits in PEC component if circuits are used as A/Q operators in QAE, the PEC form the circuit library is used instead * don't deprecte circuit factories yet * add reno * fix a/q_factory = None * try to fix RST in reno Co-authored-by: Manoel Marques <Manoel.Marques@ibm.com> Co-authored-by: Steve Wood <40241007+woodsp-ibm@users.noreply.github.com>
mtreinish
added a commit
to Qiskit/qiskit-bot
that referenced
this pull request
Mar 22, 2021
In the upcoming qiskit-terra release a large chunk of qiskit-aqua's history was migrated into qiskit-terra. These commit messages use qiskit-aqua's commit summary line in the form of "qiskit-community/qiskit-aqua#1234" which breaks PR lookup because the regex match returns that full string which raises a Value error when later we try to convert the match string into an int. This commit avoids that error by catching the value error and just skipping that PR lookup, since it isn't relevant for the changelog anyway.
Sign up for free
to subscribe to this conversation on GitHub.
Already have an account?
Sign in.
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
Part of the Finance refactor, where the
GroverOperator
is used in both Grover's algorithm and all Amplitude Estimation algorithms.Details and comments
Updates the signature to comply with the
GroverOperator
names and the plan for Grover's algorithm and uses theGroverOperator
internally where possibly. The old tests are maintained intest_amplitude_estimation_circuitfactory
until the circuit factories are deleted.The tests should also be refactored at some point to test less standard cases (to be faster) and more corner cases (to test more precisely). But this is part of a later PR.
Draft because the
docstrings need to be double-checkedthe tests aren't completely ready yetthe Git history must be cleaned up