Skip to content
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

Improve noisy tomography bases #997

Merged
merged 12 commits into from
Feb 6, 2023

Conversation

chriseclectic
Copy link
Collaborator

Summary

  • Improves LocalMeasurementBasis and LocalPreparationBasis tomography basis classes support for initializing a noisy basis for performing state preparation and measurement error mitigated StateTomography and ProcessTomography experiments. For preparation bases reset noise in a specific qubit, or subset of qubits, can now be input as a quantum channel, and the noisy prepared states are generated by applying the ideal instructions to the noisy initial state. For measurement basis a noisy POVM or quantum channel can be supplied for the 0-index basis (typically the Z-basis), and other bases index POVMs will be generated by applying the ideal inverse instructions to the noisy POVMS.

  • Adds an optional mitigator kwarg to PauliMeasurementBasis which can be used to initialize the basis with a LocalReadoutMitigator to construct a readout error mitigated basis for use with StateTomography and ProcessTomography experiments. The LocalReadoutError experiment can be run to obtain the LocalReadoutMitigator from its analysis results.

Details and comments

@chriseclectic chriseclectic added this to the Release 0.5 milestone Dec 14, 2022
@chriseclectic chriseclectic force-pushed the update-local-basis branch 2 times, most recently from 2fd01a5 to 9b9b6ba Compare January 19, 2023 15:42
@chriseclectic chriseclectic added the Changelog: New Feature Include in the "Added" section of the changelog label Jan 19, 2023
@chriseclectic chriseclectic force-pushed the update-local-basis branch 3 times, most recently from 203e130 to a6e7569 Compare January 23, 2023 21:04
This supports caching regular methods of class instances with optionally support for including hashable arg values in cache key.
Adds ability to initialize local preparation and measurement bases with custom noisy states, povms, or instructions for generating the noisy basis matrices.
* Use lru_cache internally for method_cache
* remove cache kwarg from method cache and use fixed cache name based on the instances type
@chriseclectic chriseclectic merged commit f02d623 into qiskit-community:main Feb 6, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Changelog: New Feature Include in the "Added" section of the changelog
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants