-
-
Notifications
You must be signed in to change notification settings - Fork 166
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
Complete first section of Pauli Twirling user guide #2454
Conversation
Updates the requirements on [cirq-core](https://github.com/quantumlib/cirq) to permit the latest version. - [Release notes](https://github.com/quantumlib/cirq/releases) - [Changelog](https://github.com/quantumlib/Cirq/blob/main/release.md) - [Commits](quantumlib/Cirq@v1.0.0...v1.4.0) --- updated-dependencies: - dependency-name: cirq-core dependency-type: direct:production ... Signed-off-by: dependabot[bot] <[email protected]>
Codecov ReportAll modified and coverable lines are covered by tests ✅
Additional details and impacted files@@ Coverage Diff @@
## main #2454 +/- ##
=======================================
Coverage 98.70% 98.70%
=======================================
Files 88 88
Lines 4083 4083
=======================================
Hits 4030 4030
Misses 53 53 ☔ View full report in Codecov by Sentry. |
docs/source/guide/pt-1-intro.md
Outdated
return CircuitOperation( | ||
Circuit( | ||
op.gate.on(*op.qubits), | ||
depolarize(p=noise_level, n_qubits=2).on_each(op.qubits) |
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.
What if you change depolarize
to a coherent noise channel? As we can describe a depolarizing channel using paulis, I don't think pauli twirling is going to do anything to tailor the noise of the input circuit.
See section 2.1.3 of https://arxiv.org/pdf/1509.02921 If a Pauli Transfer Matrix of some noise channel has off-diagonal terms, we expect the noise to be tailored after twirling.
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.
I have now changed the noise to a coherent one, please take a look.
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! Made some minor suggestions on the wording.
I am fine with the change. It's consistent with the pattern of how we named benchmarking circuits functions. Thanks for catching the docstring leftovers! |
Co-authored-by: Purva Thakre <[email protected]>
@purva-thakre Addressed your comments and made further improvements to the docstring. PTAL |
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.
Good clean/elucidation! A few minor things from me.
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.
MWR!
Merging, as the failing test |
Description
Fullfills acceptance criteria of #2435.
Still a draft PR to discuss the noise model that should be used to highlight the effect of Pauli Twirling.The noise model of choice is a coherent error introduced by applying a Rx(theta) gate on the output of each 2-qubit gate.
Imho this is a strict improvement on the current state of the guide, where the final and arguably the most important notebook cell was commented out and not working correctly.
pauli_twirl_circuit
in themitiq.pt.pt
module togenerate_pauli_twirl_variants
, because it wasn't clear from the old name that it generate a list of twirled circuits (in fact the docstring itself was wrong on describing the output of the function.) Since the Pauli Twirling module is still under construction, I wouldn't consider this a breaking change. However, if you have objections, I can revert this renaming back.License
Before opening the PR, please ensure you have completed the following where appropriate.