Qualtran icon indicating copy to clipboard operation
Qualtran copied to clipboard

Use QROAMClean in Chemistry Sparse Prepare bloq

Open fdmalone opened this issue 6 months ago • 3 comments

Uses the new QROAMClean bloq which allows the costs to match more closely. Some issues:

  1. ~Delegating the sparse indices output from QROAM as junk registers causes an issue with building block encodings as they are no longer selection registers (xref: #549) so will not match SELECTs signature. This was a hack at the time but is a blocker now.~
  2. I went back and forth on how to implement the adjoint with the current implementation functional but not pleasant and error prone (cc @mpharrigan for why I was asking those questions in the chat). I think #1315 maybe would allow use to use the Adjoint wrapper here by delegating the register wrangling logic to QROAM but not 100% sure.
  3. There's an off by 2 Toffoli count difference between openfermion and qualtran's QROAM which I haven't tracked down yet.

flyby bug fix for QROAMClean wire symbols and includes #1302 which should be merged first.

fdmalone avatar Aug 20 '24 21:08 fdmalone