unitaryfund / mitiq

Mitiq is an open source toolkit for implementing error mitigation techniques on most current intermediate-scale quantum computers.
https://mitiq.readthedocs.io
GNU General Public License v3.0
363 stars 160 forks source link

New Error Mitigation Techniques #2046

Closed purva-thakre closed 5 months ago

purva-thakre commented 1 year ago

This issue will be used to keep track of error mitigation techniques that could be added to Mitiq or could build on-top of techniques already in Mitiq.

https://arxiv.org/abs/2310.03071

The technique uses Classical Shadows (especially Robust Shadows) to exploit the global symmetries inherent to a quantum system. It does not work if gate-dependent errors are considered at each circuit layer as the errors in the full quantum circuit are accounted for at once in post-processing.

Testing this new module with other mitigation techniques would be interesting as combining Classical Shadows with PEC led to better results. https://arxiv.org/abs/2305.04956

The technique uses PEC and relies on Pauli Twirling the measurement output or Pauli Twirling the inverse of the noise channel. https://arxiv.org/abs/2310.07825

https://arxiv.org/abs/2309.14171

kozhukalov commented 1 year ago

@purva-thakre From the description it is not quite clear what exactly this issue is about. Did you mean to add all these techniques mentioned in the description? Or maybe it is more about having a technique catalog (with dependencies)?

Is there a RFC draft for the issue?

purva-thakre commented 1 year ago

@kozhukalov I think all of these could be added as new techniques in Mitiq. I created the issue to have all the arxiv links for potential new techniques in one place. I don't think I will be able to add all of these on my own! Otherwise, I would have assigned the issue to myself.

If you would like to work on these and attempt an RFC, go ahead! In the past, I know we discussed a proposed RFC in Community Calls.

  1. Classical Shadows exists as a technique in mitiq. Symmetry Adjusted Classical Shadows (SACS) could be built on top of the existing module as an addition in mitiq/shadows.
  2. Edit2: There has been some discussion of cleaning up the documentation of Classical Shadows. It might be better to work on the cleanup before attempting an RFC for a new technique using Classical Shadows.
  3. After 1 and 2 are completed, combining SACS with other existing techniques could lead to additional tutorials (or a possible research path) as combining PEC and Classical Shadows led to better results in the linked paper.
  4. PEC in measurement based circuits will require more in-depth discussion before attempting an RFC for a new addition in mitiq/pec. PEC already exists as a technique in mitiq and as far as I know, we don't allow mid-circuit measurements in mitiq but the linked paper seems to allow these. I am working on finishing up some things in Pauli Twirling though, just an FYI.
  5. Quantum Subspace Expansion also exists as a technique in mitiq. The linked paper appears to generalize the technique with a lower overhead which would be nice to have in mitiq/qse.

Hopefully this helps!

Edit: Forgot to add, there is a RFC template in the documentation along with links to accepted RFCs. https://mitiq.readthedocs.io/en/stable/contributing.html#proposing-a-new-feature-to-mitiq

kozhukalov commented 1 year ago

Thanks for the detailed explanation. I would definitely like to help with this.

Also there is yet another feature-request for the new technique https://github.com/unitaryfund/mitiq/issues/1955 that is not directly related but still it sounds interesting.

purva-thakre commented 1 year ago

Great! Feel free to message me on discord if you want to work on a RFC together. My username is purvathakre.

Another technique not mentioned in this issue's description does have an issue (#1971). I haven't started on this RFC yet because I have been working on other things.

purva-thakre commented 7 months ago

Partitioned Quantum Subspace Expansion: https://arxiv.org/abs/2403.08868

jordandsullivan commented 6 months ago

@purva-thakre I noticed there are several open issues (https://github.com/unitaryfund/mitiq/issues?q=is%3Aopen+is%3Aissue+label%3A%22new+technique%22) not included in this one which seem to be new technique proposals as well. I feel like it might be better to keep "new technique" as a tag (or included in the title) and use individual issues for each different technique.

What do you think?

purva-thakre commented 6 months ago

@jordandsullivan Fine by me. I'll work on closing this issue over the next few days.

purva-thakre commented 5 months ago

Superseded by #2375, #2376, #2377 and #2378