QuantumSymbolics.jl
QuantumSymbolics.jl copied to clipboard
A backend for QuantumCumulants.jl [$200]
A backend for QuantumCumulants.jl [$200]
The QuantumCumulants library (part of the QuantumOptics organization) provides for an elegant way to solve truncated differential equations for expectation values of quantum observables. To claim this bounty you need to create an express interface for converting symbolic objects from QuantumSymbolics into objects QuantumCumulants can work with.
Required skills: Knowledge of the QuantumCumulants library
Reviewer: Stefan Krastanov and/or @david-pl
Duration: 2 months
Payout procedure:
The Funding for these bounties comes from the National Science Foundation and from the NSF Center for Quantum Networks. The payouts are managed by the NumFOCUS foundation and processed in bulk once every two months. If you live in a country in which NumFOCUS can make payments, you can participate in this bounty program.
Click here for more details about the bug bounty program.
Bug bounty logistic details (click to expand)
To claim exclusive time to work on this bounty either post a comment here or message [email protected] with:
- your name
- github username
- (optional) a brief list of previous pertinent projects you have engaged in
Currently the project is claimed by no one until ....
If you want to, you can work on this project without making a claim, however claims are encouraged to give you and other contributors peace of mind. Whoever has made a claim takes precedence when solutions are considered.
You can always propose your own funded project, if you would like to contribute something of value that is not yet covered by an official bounty.
I request assignment to work on this bounty
Hi there! Thanks for your interest! Could you elaborate a bit on your experience with quantum information science or quantum mechanics? This will be a bit difficult to tackle without that background.
Let's also discuss what capabilities should be included in the scope of the bounty.
Hi again! @Krastanov I don't have experience with quantum stuff. I mostly want to take this to learn about it actually. I think it's a good opportunity and I think I could get it done.
What specific capabilities do you think should be included in the bounty?
Happy to assign it if you are still interested. A good starting point would be:
- being able to create QuantumCumulants Hamiltonians from QuantumSavory
- being able to convert QuantumCumulants expressions to other backends
- being able to convert from other backends to QuantumCumulants
A word of warning though, this is probably a bit too niche of a project to serve as a good introduction to the field.
Hello @Krastanov , I would love to take this project this week.
I have not heard from @jdiaz97 about whether he is interested. Given what we discussed over email, @limitless-100 , please feel free proceed with this bounty. We need to make sure that this is actually useful, not just a pro-forma exercise, so do not hesitate to post here if it is unclear how to structure things or what capabilities are needed. I am marking this as reserved.
Is working on those three tasks you listed 16 days ago enough?
Yes, but it will take some effort to define them fully and have them tested, so if something is unclear just let me know (and expect some back and forth during the review stage of the proposal)
Hi, @limitless-100. Are you still working on this? If not, I would like to open it up again.
Hello @Krastanov , I have resumed working on it recently. I had to take a pause because of my mid-term and final examinations which I just finished a few days ago. I will give you weekly progress updates (on Saturdays) starting from next week. Thank you.
@Krastanov Please, I need some clarifications: 1] Am I focusing only on the basic symbolic quantum objects: SBra, SKet, SOperator, SSuperOperator? Or just general compatibility with any expression under QuantumSymbolics.jl
2] I discovered that the express interface is already being supported by QuantumOptics.jl and Quantum Clifford.jl. Should I use similar (consistent) backend architectures for QuantumCumulants.jl?
Yes, the goal is to use the express interface to be able to convert symbolic objects from QuantumSymbolics.jl to objects in QuantumCummulants.jl. All features of QuantumCummulants.jl should be supported, which might need making improvements to QuantumSymbolics.jl, but there are plenty of things in QuantumSymbolics.jl that do not have a counterpart in QuantumCummulants.jl -- none of them need to be touched.
Notice that these days QuantumCumalants.jl has moved its interface to SecondQuantizedAlgebra.jl.