-
-
Notifications
You must be signed in to change notification settings - Fork 166
This issue was moved to a discussion.
You can continue the conversation there. Go to discussion →
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
Modularize error mitigation techniques #2253
Comments
Sharing a few ideas here which I have come across in working on other issues:
|
Thanks for the very nice comments @natestemen @jordandsullivan. We should gauge how to fold this approach in a way that doesn't make categorization in the way of usability. If there was a way to implement this more as "tagging" rather than re-classifying functions, maybe I would like it more. That said, really happy to see this move forward as it's important also for composing techniques, #2288. |
Another example that I think wouldn't risk breaking compatibility would be these serial_executor and batched_executor which live in test_pec, but are used in many tests elsewhere and appear to be useful in calling using PEC and DDD more generally. These functions could be taken out of tests and put in a utilities module, or added as perhaps even added as class methods onto |
Possibility of taking extrapolate functions out into their own module. |
Converting this to a discussion. We will create a new issue for a proof of concept of this modularization on one of the techniques (e.g. ZNE) with specific use cases in mind. |
This issue was moved to a discussion.
You can continue the conversation there. Go to discussion →
Idea
Many quantum error mitigation (QEM) techniques take place in two general phases.
Ideally, each technique in Mitiq should have a function available for each of these steps that authors can then use to both better understand what's happening, and hack on these techniques.
Example
Here's what this could look like. Ideally all techniques will have the same interface so it's easy to hot swap techniques. function names subject to change, just brainstorming.
The text was updated successfully, but these errors were encountered: