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

Add C API for SparseObservable #13445

Open
mtreinish opened this issue Nov 15, 2024 · 1 comment
Open

Add C API for SparseObservable #13445

mtreinish opened this issue Nov 15, 2024 · 1 comment
Assignees
Labels
type: feature request New feature or request
Milestone

Comments

@mtreinish
Copy link
Member

What should we add?

The recently added SparseObservable class was added as a Rust native object in #12671 . To facilitate different use cases for generating and interacting with this new structure from compiled languages including other Python libraries' compiled extensions we should add a lower level C API around the structure. This will likely involve splitting the current SparseObservable structure into a pure rust struct and a wrapping python interface struct. Then we can add a new C FFI wrapper for it, likely should be put in a new crate c_ext crate or something like that to define the C API to qiskit. This sparse observable interface will likely be a good way to PoC the packaging and structure for other C API's that have a longer on-ramp, mainly: #13276.

@mtreinish mtreinish added the type: feature request New feature or request label Nov 15, 2024
@mtreinish mtreinish added this to the 2.0.0 milestone Nov 15, 2024
@jakelishman
Copy link
Member

jakelishman commented Nov 15, 2024

There's a decent amount of comment in #13391 about how this could/should be done to make the clean Rust/Python split, and the C FFI would follow on from that.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
type: feature request New feature or request
Projects
None yet
Development

No branches or pull requests

4 participants