-
Notifications
You must be signed in to change notification settings - Fork 2.6k
Description
Currently there is a small set of expectation objects in opflow to handle matrix and pauli expectations, with a custom version to leverage Aer specifics for performance. Given we want to be able to easily add new types allowing different techniques, now and in the future, and ensure it scales to larger operators, we should consider whether what is there best suits these needs going forwards. This includes appropriate interface(s) to allow this flexibility and scalability; also grouping and related techniques such as basis changes of the operator, to allow alternate/better groupings that domains like chemistry can leverage. Also we should investigate use of expectation objects as part of the Runtime so expectations can be run remotely close to the device for performance, or run locally the traditional way - locally also facilitating debugging and detailed investigation.
Here are some other issues related to expectation to consider in this context
- VQE: more shots on last iteration; stop iteration on-demand #5709
- Transpile for VQE application #6432
A first step would be to gather together a set of requirements. Then evaluate these and see how/if they fit to opflow to come up with some initial plan on how to move forwards with this.