Nicholas Rubin
Nicholas Rubin
Improve the documentation of optional arguments and required arguments with examples. Also correct the disp_fun doc string (currently it says the variable should be a boolean when it should be...
estimate routines rotate program the user passes with the post rotations dictated by the Pauli operators being measured. This should not happen.
optimize_for_sycamore returns sqrt(iswap)^{-1}. Is this a supported gate or is QuantumEngine secretly converting this to Rz sqrt(iswap) Rz without telling the user? considering we have Physical Rz and virtual Rz...
It would be really nice to have orbital optimization routines in OpenFermion. A basic one can be made with the Hartree-Fock gradient code.
It looks like InteractionRDM.rotate_basis calls the same PolynomialTensor routine as rotate_basis on InteractionOperator. RDM rotation should be ``` opdm = of.general_basis_change(opdm, v, (0, 1)) tpdm = of.general_basis_change(tpdm, v, (0, 0,...
RDMs returned from pyscf are spin summed. Use https://sunqm.github.io/pyscf/_modules/pyscf/fci/direct_spin1.html#FCISolver.make_rdm12s to return non-spin summed versions. Recombine spin-separated RDMs like run_psi4 to get spin-orbital rdms before returning to OpenFermion.
https://journals.aps.org/prxquantum/pdf/10.1103/PRXQuantum.2.030305 Fig 17.
Leaving as a placeholder for when I have time to add commits and tests. ``` from pyscf.fci.cistring import make_strings def pyscf_to_fqe_wf(pyscf_cimat, pyscf_mf=None, norbs=None, nelec=None): if pyscf_mf is None: assert norbs...
Given the sparsity of lattice Hamiltonians should we have custom evolution routines? Or does `DiagonalCoulomb` cover enough of these uses?