Skip to main contentIBM Quantum Documentation Preview
This is a preview build of IBM Quantum® documentation. Refer to quantum.cloud.ibm.com/docs for the official documentation.

Shaded lightcones (SLC)

_images/lightcones.png

qiskit-addon-slc is a package for computing the shaded lightcone (SLC) [1] of an observable with respect to a quantum circuit. In the context of probabilistic error cancellation (PEC), shaded lightcones are similar to conventional binary lightcones in that not mitigating errors outside the lightcone can reduce the variance (i.e. sampling cost). Lightcone shading allows this strategy to be pushed further by assigning scales to Pauli error generators within the causal lightcone. Errors that are assigned smaller scales have less effect on the observable; truncating them from the noise model can reduce variance (i.e. sampling cost) at the cost of some bias. The qiskit-addon-slc package gives users the ability to do lightcone shading and control the tradeoff between sampling cost and bias.


Getting started

A simple guide to help you get started quickly with this package is available in the quickstart guide.


Use case examples

This technique has been used to improve the sampling cost of PEC on a 20-qubit mirrored Ising circuit [tutorial].


Technical discussion

Method overview

Shaded lightcones are calculated and used in 5 steps:

  1. Compute a bound on the effect of each Pauli error term on the observable at the end of the circuit (forward bound)
  2. Compute a bound on the effect of each Pauli error term on the initial state at the beginning of the circuit (backward bound)
_images/bounds.png
  1. Approximate a bias contribution for each Pauli error term using the forward/backward bounds and the term’s error rate
_images/merge_bounds.png
  1. Prioritize error terms based on their error rate and bounds. Truncate terms from the noise model which have the least effect on the observable expectation value until the user-specified bias tolerance is hit. Alternatively, one can add the most impactful error terms to a noise model until the user-specified sampling cost budget is filled.
_images/prioritize_and_truncate.png
  1. Mitigate the truncated noise model. Using the directed execution model from Qiskit Runtime, specifying error terms to ignore during PEC sampling is straightforward. See the tutorial for details.
_images/reduced_pec.png

Software features

  • Parallel asynchronous bound computation
  • Rust-accelerated propagation
  • Permits ahead-of-time bound computation (i.e. prior to the actual noise learning)

Known issues

  • Windows not supported
  • InjectNoise(site=”before”) not supported
  • Does not support fine-grained bound merging

Future work

  • Rust-accelerated eigenvalue computation for computing forward bounds
  • Additional guides coming soon

Contributing

The source code is available on GitHub.

The developer guide is located at CONTRIBUTING.md in the root of this project’s repository. By participating, you are expected to uphold Qiskit’s code of conduct.

We use GitHub issues for tracking requests and bugs.


Citing this package

If you use this package in your research, use the CITATION.bib file in this project’s repository to cite the appropriate reference(s).


License

Apache License 2.0


Deprecation Policy

We follow semantic versioning. We may occasionally make breaking changes in order to improve the user experience. When possible, we will keep old interfaces and mark them as deprecated, as long as they can co-exist with the new ones. Each substantial improvement, breaking change, or deprecation will be documented in the release notes.


Contributing

The source code is available on GitHub.

The developer guide is located at CONTRIBUTING.md. By participating, you are expected to uphold Qiskit’s code of conduct.

We use GitHub issues for tracking requests and bugs.


References

  1. Andrew Eddins, et al., Lightcone shading for classically accelerated quantum error mitigation, arXiv:2409.04401v1 [quant-ph].