Add support for JIT when using DiagonalQubitUnitary
#2445
Merged
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: Due to a unitarity check,
qml.DiagonalQubitUnitary
did not work with@jax.jit
and@tf.function
.Description of the Change: Uses
qml.math.is_abstract
to avoid the unitarity check if a JIT is detected.Benefits: The operation now works with JIT compilation.
Possible Drawbacks: TensorFlow is very slow to compile, so the test added to ensure that
@tf.function
works takes 12 seconds :( Should we remove it?Related GitHub Issues: n/a