-
Notifications
You must be signed in to change notification settings - Fork 586
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
Raise an error when we return sample()
or counts()
with observables that are not diagonal!
#3199
Closed
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
* Update PennyLane Logo * remove wordmark from readme * update citation * et al * Update the logo * replace with svg
* docs * docs
* move rotation simplify into op method * add additional example Co-authored-by: Romain Moyard <rmoyard@gmail.com>
…le (#2913) * First commit * Added PR link * More accurate description in changelog * Test PS rule against backprop * Fixed error with test Co-authored-by: Josh Izaac <josh146@gmail.com>
* Update phase decomp test (#2697) * Update interfaces.rst (#2698) * Allow templates to be decomposed (#2704) * Allow templates to be decomposed * Add TODO to clean * Update changelog * Fix pylint error Co-authored-by: Edward Jiang <edward.jiang@resident.xanadu.ai> * Deprecate `qml.ExpvalCost` (#2571) * Add UserWarning to ExpvalCost and catch said warning in all tests containing ExpvalCost * added warning in doc string * added to the changelog in 0.23.1 * Update pennylane/vqe/vqe.py Co-authored-by: Josh Izaac <josh146@gmail.com> * Update pennylane/vqe/vqe.py Co-authored-by: Josh Izaac <josh146@gmail.com> * Update pennylane/vqe/vqe.py Co-authored-by: Josh Izaac <josh146@gmail.com> * Update pennylane/vqe/vqe.py Co-authored-by: Josh Izaac <josh146@gmail.com> * Update tests/optimize/test_qng.py Co-authored-by: Josh Izaac <josh146@gmail.com> * Update tests/qchem/of_tests/test_convert.py Co-authored-by: Josh Izaac <josh146@gmail.com> * Update tests/test_qaoa.py Co-authored-by: Josh Izaac <josh146@gmail.com> * Update tests/test_vqe.py Co-authored-by: Josh Izaac <josh146@gmail.com> * Update tests/transforms/test_adjoint_metric_tensor.py Co-authored-by: Josh Izaac <josh146@gmail.com> * Update tests/optimize/test_optimize_shot_adapative.py Co-authored-by: Josh Izaac <josh146@gmail.com> * overlooked to catch the new warning in test_dipole_of * switched to the right changelog Co-authored-by: Qottmann <qottmann@LT0290.ad.icfo.net> Co-authored-by: Josh Izaac <josh146@gmail.com> Co-authored-by: Romain Moyard <rmoyard@gmail.com> * Update JAX jit forward mode forward evaluation (#2700) * update logic * update logic * test case * test assertion Co-authored-by: Romain Moyard <rmoyard@gmail.com> * Improve ising gates documentation (#2711) * Update doc * Update * Update pennylane/ops/qubit/parametric_ops.py Co-authored-by: antalszava <antalszava@gmail.com> * Apply suggestions from code review * CHange * Typo Co-authored-by: antalszava <antalszava@gmail.com> * Support classical fisher gradients when using Autograd (#2688) * Support classical fisher gradients when using Autograd * Update doc/releases/changelog-dev.md * added test for jax and autograd * black * added xfail tests * added comment in doc string about torch and tf not diffable Co-authored-by: Qottmann <korbinian.kottmann@gmail.com> Co-authored-by: Romain Moyard <rmoyard@gmail.com> * Support classical Fisher gradients when using TF and torch (#2710) * Support classical fisher gradients when using Autograd * Update doc/releases/changelog-dev.md * added test for jax and autograd * black * added xfail tests * added comment in doc string about torch and tf not diffable * Fix differentiability for tensorflow and torch * Remove warning * Fix TF not iterable error * Trigger CI * added example in doc-string about diffability * close-block becomes code-block lol * Update pennylane/qinfo/transforms.py Co-authored-by: Josh Izaac <josh146@gmail.com> * Change pytest mark Co-authored-by: Josh Izaac <josh146@gmail.com> Co-authored-by: Qottmann <korbinian.kottmann@gmail.com> Co-authored-by: Romain Moyard <rmoyard@gmail.com> * Remove `hardware` argument in `qml.qinfo.quantum_fisher` (#2695) * removed hardware argument, adapted doc string * updated tests * black * Update pennylane/qinfo/transforms.py Co-authored-by: Josh Izaac <josh146@gmail.com> * Update pennylane/qinfo/transforms.py Co-authored-by: Josh Izaac <josh146@gmail.com> * add default.qubit condition and change doc string Co-authored-by: Josh Izaac <josh146@gmail.com> Co-authored-by: Romain Moyard <rmoyard@gmail.com> * Add `qinfo` measurements in supported configurations docs (#2712) * Add documentation for new qinfo measurements * Add docs for finite diff * Fix JAX tests * Change param shift to red * Move entropy param shift tests Co-authored-by: Romain Moyard <rmoyard@gmail.com> * Use access_state (#2719) Co-authored-by: Romain Moyard <rmoyard@gmail.com> * Update docs v0.24 (#2724) * private func has no indices arg * update the circuit name in the example * reduced_dm doc update * correct Hamiltonian creation for classical Fisher * Delete exactly one space from reduced_dm docstring to correct rendering * Update outputting quantum_fisher example * Move summary to start (#2727) * add ops module section * only include functions and op_math * added weights initialization example (#2735) * Wires not updated for a hamiltonian with in-place addition (#2738) * fixed hamiltonian wire bug * changelog * try other way * Cleanup docs (#2736) * Documentation changes for `batch_partial` (#2737) * Update docs * Add double backticks * Add other backtick :xd: Co-authored-by: Christina Lee <christina@xanadu.ai> * Fix sphinx class/method links (#2729) Co-authored-by: Jay Soni <jbsoni@uwaterloo.ca> * trying something else * Fix rendering of matrix rep of ECR (#2741) * fix rendering of matrix rep of ECR * lint * trigger ci Co-authored-by: Romain Moyard <rmoyard@gmail.com> * Fix doc quantum information and ising (#2732) * Ising doc * Move entropy test * Math doc * Measurement doc * qinfo doc * Update pennylane/qinfo/transforms.py Co-authored-by: Edward Jiang <34989448+eddddddy@users.noreply.github.com> * Apply suggestions from code review Co-authored-by: Edward Jiang <34989448+eddddddy@users.noreply.github.com> * Update pennylane/math/quantum.py * Update * Fix kwargs for fidelity (#2740) * update * Typo * Update pennylane/qinfo/transforms.py Co-authored-by: Christina Lee <christina@xanadu.ai> Co-authored-by: Christina Lee <christina@xanadu.ai> * Reduced dm * Apply suggestions from code review Co-authored-by: Edward Jiang <34989448+eddddddy@users.noreply.github.com> * remove reduce dm Co-authored-by: Edward Jiang <34989448+eddddddy@users.noreply.github.com> Co-authored-by: Christina Lee <christina@xanadu.ai> * hope * Add quantum info measurements to introduction doc page (#2734) * add quantum info measurements to introduction page * minor doc fixes * more minor fixes * revert kwargs change * Apply suggestions from code review Co-authored-by: Romain Moyard <rmoyard@gmail.com> * maybe this time * probably not going to work but worth a try * Apply suggestions from code review Co-authored-by: Jay Soni <jbsoni@uwaterloo.ca> * update with master * updates * merge something * update docstring * line length problem * fix controlled signature * fix s_prod * add control class notes * update docs for Sprod and Sum * typo * small fix * fixing docs * added pragma no-cover to signature property * Apply suggestions from code review * clean up * fix sprod demo * add info to quick start operations guide * typo * added example * re-link top level imports to prevent duplication of docstring pages generated by sphinx * typo * change constructor imports to toplevel * Apply suggestions from code review * add equal to ops.functions docstring * Update doc/introduction/operations.rst Co-authored-by: antalszava <antalszava@gmail.com> * Update pennylane/ops/op_math/controlled_class.py Co-authored-by: antalszava <antalszava@gmail.com> * Update pennylane/ops/op_math/sum.py Co-authored-by: antalszava <antalszava@gmail.com> * lint Co-authored-by: antalszava <antalszava@gmail.com> Co-authored-by: Edward Jiang <34989448+eddddddy@users.noreply.github.com> Co-authored-by: Edward Jiang <edward.jiang@resident.xanadu.ai> Co-authored-by: Korbinian Kottmann <43949391+Qottmann@users.noreply.github.com> Co-authored-by: Qottmann <qottmann@LT0290.ad.icfo.net> Co-authored-by: Josh Izaac <josh146@gmail.com> Co-authored-by: Romain Moyard <rmoyard@gmail.com> Co-authored-by: Qottmann <korbinian.kottmann@gmail.com> Co-authored-by: Jay Soni <jbsoni@uwaterloo.ca> Co-authored-by: David Ittah <dime10@users.noreply.github.com>
* check batching only if batching supported * Update doc/releases/changelog-0.25.0.md * just change op arithmetic properties * just raise errors * Update pennylane/operation.py * modify has_matrix and matrix * remove test * Update tests/ops/op_math/test_controlled_op.py * Update tests/ops/op_math/test_sprod.py Co-authored-by: David Wierichs <davidwierichs@gmail.com> * prod tests, controlled name * more interface tests Co-authored-by: David Wierichs <davidwierichs@gmail.com>
Co-authored-by: antalszava <antalszava@gmail.com>
* update developer docs to reflect default qubit change * typo * Update doc/development/adding_operators.rst * add code examples
* return types * Update test * Typo
* first draft to gauge test failures * skip config tests when finite shots and state based return * skip tape shape test cases * device test * updated device test * new return types tests * remove errors, catch the warnings * changelog * run tests Co-authored-by: Albert Mitjans <a.mitjanscoma@gmail.com>
antalszava
changed the title
Sample no obs bug
Raise an error when we return Oct 21, 2022
sample()
or counts()
with observables that are not diagonal!
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
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.
Context:
sample and counts are measurement processes which admit a special syntax:
sample()
,counts()
. We interpret this syntax to mean "return computational basis samples or counts". However, this measurement is not commutative with other measurements which are not diagonal in the computational basis. Thus they are not allowed to be performed simultaneously.We now raise an error when the user tries to measure these simultaneously with other non-commuting measurements.
Description of the Change:
Add check in
execute()
to determine if there are any diagonalizing gates and if we are also asking for computational basis samples.Related GitHub Issues:
#2863