I am using OpenFermion and Cirq. I would like to define a Hamiltonian with a symbolic parameter and then generate a quantum circuit via Trotterization of its time evolution, which then also contains the symbolic parameter.

Cirq in principle supports sympy symbolic parameters in circuits. I define the Hamiltonian via FermionOperators, which supports symbolic parameters as well (Jordan-Wigner to produce a QubitOperator is supported as well). However all algorithms of of.simulate_trotter require DiagonalCoulombHamiltonian/InteractionOperator, which do not support symbolic operations.

I found these older GitHub issues/pull requests which discuss the particular use case of Trotterization with symbolic parameters as motivation and proceed to implement the symbolic parameter support for FermionOperator.

I am wondering whether I am missing the way this can be done or whether this is not supported? In the latter case, is there any workaround, possibly using code not built in to OpenFermion?



Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge that you have read and understand our privacy policy and code of conduct.

Browse other questions tagged or ask your own question.