Is your feature request related to a problem? Please describe.
QDK/Chemistry's HamiltonianUnitaryBuilder currently offers only Trotter-Suzuki product formulas for constructing exp(-iHt). For a target accuracy epsilon, Trotter-Suzuki of order p requires a step count whose leading error term scales as O(t^(p+1)/N^p); the prefactor is governed by nested commutators of the Hamiltonian summands but is not made explicit in the formula -- those commutators are absorbed into the step count rather than cancelled directly. For Hamiltonians whose dominant commutators are sparse or analytically tractable (lattice models with limited geometric coupling, chemistry Hamiltonians under term partitions with small inter-group commutators), this wastes steps.
Describe the solution you'd like
A new HamiltonianUnitaryBuilder implementation that uses a Zassenhaus expansion -- the dual of the Baker-Campbell-Hausdorff formula -- to construct exp(-iHt) as a product of exponentials in which low-order commutator corrections appear as explicit factors, rather than being controlled implicitly by the step count.
The output must remain a UnitaryRepresentation consumable by existing downstream algorithms (e.g. PhaseEstimation) without changes to their interfaces.
Describe alternatives you've considered
- Higher-order Trotter-Suzuki. Already available; the recursive Suzuki construction has an exponentially growing step cost in the order, and its error prefactor is implicit.
- qDRIFT / randomized compilation. Solves a different problem (scaling with the L1 norm of coefficients rather than with commutator structure); useful for very long Hamiltonians but does not exploit commutator sparsity.
Acceptance criteria
- A new factory registered under
HamiltonianUnitaryBuilder (discoverable via the standard registry mechanism) accepts any QubitHamiltonian that the existing "trotter" factory accepts and returns a UnitaryRepresentation of the same shape (a PauliProductFormulaContainer with a repetition count).
- For the 4-site open Heisenberg chain (J=1) and for the H2/STO-3G qubit Hamiltonian (Jordan-Wigner), the operator-norm error
|| U_exact - U_builder || evaluated at t=1.0 with a single time division decreases as O(t^(p+1)) when the configured expansion order p is varied over at least p in {2, 3, 4} -- i.e. the empirically fitted slope of log(error) vs log(t) over t in [1e-3, 1e-1] matches p+1 to within 0.1.
- The result is consumable by
PhaseEstimation end-to-end: estimating the ground-state energy of H2/STO-3G to within 1.6e-3 Hartree (chemical accuracy) using the new builder as the unitary source succeeds in the existing phase-estimation test harness.
- A new pytest module under
python/tests/ covers all of the above; the full existing test suite continues to pass.
- The new implementation is documented under "Available implementations" in
docs/source/user/comprehensive/algorithms/hamiltonian_unitary_builder.rst in the same format as the existing "trotter" entry, and citations for the references below are added to docs/source/references.bib.
Additional context
- R. M. Wilcox, Exponential operators and parameter differentiation in quantum physics, J. Math. Phys. 8, 962 (1967).
- F. Casas, A. Murua, and M. Nadinic, Efficient computation of the Zassenhaus formula, Comput. Phys. Commun. 183, 2386 (2012) [arXiv:1204.0389].
- A. M. Childs, Y. Su, M. C. Tran, N. Wiebe, and S. Zhu, Theory of Trotter error with commutator scaling, Phys. Rev. X 11, 011020 (2021) [arXiv:1912.08854].
Is your feature request related to a problem? Please describe.
QDK/Chemistry's
HamiltonianUnitaryBuildercurrently offers only Trotter-Suzuki product formulas for constructing exp(-iHt). For a target accuracy epsilon, Trotter-Suzuki of order p requires a step count whose leading error term scales as O(t^(p+1)/N^p); the prefactor is governed by nested commutators of the Hamiltonian summands but is not made explicit in the formula -- those commutators are absorbed into the step count rather than cancelled directly. For Hamiltonians whose dominant commutators are sparse or analytically tractable (lattice models with limited geometric coupling, chemistry Hamiltonians under term partitions with small inter-group commutators), this wastes steps.Describe the solution you'd like
A new
HamiltonianUnitaryBuilderimplementation that uses a Zassenhaus expansion -- the dual of the Baker-Campbell-Hausdorff formula -- to construct exp(-iHt) as a product of exponentials in which low-order commutator corrections appear as explicit factors, rather than being controlled implicitly by the step count.The output must remain a
UnitaryRepresentationconsumable by existing downstream algorithms (e.g.PhaseEstimation) without changes to their interfaces.Describe alternatives you've considered
Acceptance criteria
HamiltonianUnitaryBuilder(discoverable via the standard registry mechanism) accepts anyQubitHamiltonianthat the existing"trotter"factory accepts and returns aUnitaryRepresentationof the same shape (aPauliProductFormulaContainerwith a repetition count).|| U_exact - U_builder ||evaluated at t=1.0 with a single time division decreases as O(t^(p+1)) when the configured expansion order p is varied over at least p in {2, 3, 4} -- i.e. the empirically fitted slope of log(error) vs log(t) over t in [1e-3, 1e-1] matches p+1 to within 0.1.PhaseEstimationend-to-end: estimating the ground-state energy of H2/STO-3G to within 1.6e-3 Hartree (chemical accuracy) using the new builder as the unitary source succeeds in the existing phase-estimation test harness.python/tests/covers all of the above; the full existing test suite continues to pass.docs/source/user/comprehensive/algorithms/hamiltonian_unitary_builder.rstin the same format as the existing"trotter"entry, and citations for the references below are added todocs/source/references.bib.Additional context