babbush / HistoricalFermiLib

This is repo where we developed FermiLib, which then became OpenFermion
Apache License 2.0
1 stars 0 forks source link

Simple Trotter / PEA demonstration #56

Closed babbush closed 7 years ago

babbush commented 7 years ago

I think that it is essential for us to have at least a very basic demonstration of the Trotter PEA algorithm in FermiLib / ProjectQ prior for release. Ideally we would be able to both compile it and emulate it but I would settle for just emulating it.

At least the PEA part can be written in ProjectQ right now. In fact, since PEA is part of Shor's algorithm, I think @damiansteiger might have already implemented it. We do need the QubitOperator class implemented in ProjectQ before we can really do much with the Trotterization. However, it would also be nice to have the ability to compute Trotter error. For instance, from using the BCH expansion for the second order formula. Evaluation of the triangle inequality upper-bound on the error like this can be computed in FermiLib using functionality that is available now. Ian, is this something you can do? That is, make a module for computing the bound on the Trotter error?

If you look in scratch/commutators.py, you will find a super old code I used in 2014 to compute Trotter errors. The idea would basically be to write that into FermiLib. What do you think?

babbush commented 7 years ago

@damiansteiger Please make a nice module and an example to Trotter a small molecule.

damiansteiger commented 7 years ago

I don't think I will find time for this. The other issues assigned to me are kind of urgent. Depending when I am done with them I might be able to help out or not...

babbush commented 7 years ago

That is fine. I will do this. But please do finish the HDF5 thing!