-
Notifications
You must be signed in to change notification settings - Fork 29
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
Align definition of scale factor with Zero-Noise Extrapolation literature #983
Comments
Implementation in non-catalyst pennylane, for reference: https://github.com/PennyLaneAI/pennylane/blob/1d220cf6d69cbf60c99c5318b5137b69f7d6d30d/pennylane/transforms/mitigate.py#L214-L217 |
I will tackle that in the upcoming days 👍 |
Nice, thanks @rmoyard. Please keep me in the review loop of the design and PRs. |
Yes I think that is the best, I will either add some restrictions because we don't support the fraction scale or just just ignore the fraction scale.
|
|
The
mitigate_with_zne
API in Catalyst accepts ascale_factors
argument, which represents a range of scalar factors by which the circuit is scaled.In the literature of Zero-Noise Extrapolation 12, a scale factor value$\lambda$ is the ratio between the number of gates of the scaled circuit and the number of gates of the original circuit. However, in the Catalyst implementation, the term scale factor is used to denote the number $n$ of foldings of the circuit.
The relation between the two definitions is$\lambda = 1 + 2n$ .
For example,$\lambda=1$ , $n=0$ ) means that the circuit is not folded.$\lambda=3$ , $n=1$ ), we have that the circuit is folded once
scale_factor = 1
(i.e.,For
scale_factor = 3
(and the number of gates in the scaled circuit is three times the number of gates in the original circuit.
(See 2 for a discussion on odd/even/non-integer scale factors.)
This issue is about aligning the definition of scale factor in Catalyst with the literature as above, by either renaming the
scale_factors
argument in the API, or assigning a new meaning to it.Footnotes
https://arxiv.org/abs/2005.10921 ↩
https://mitiq.readthedocs.io/en/v0.38.0/guide/zne-3-options.html#what-additional-options-are-available-when-using-zne ↩ ↩2
The text was updated successfully, but these errors were encountered: