Is your feature request related to a problem? Please describe.
QDK/Chemistry currently ships only Jordan-Wigner, Bravyi-Kitaev, parity, and SCBK fermion-to-qubit encodings. For 2D-local fermionic problems -- Fermi-Hubbard, lattice gauge theories, fermionic tensor-network ansatze, real-space-grid chemistry -- every nearest-neighbor hop maps to a long Pauli string under these encodings, which inflates Trotter circuit depth and measurement cost.
Describe the solution you'd like
A working Verstraete-Cirac encoding exposed as a new MajoranaMapping factory and consumable through QubitMapper, with the resulting QubitHamiltonian correctly representing the original fermionic Hamiltonian on the physical subspace. Mapper consumers (energy estimation, state preparation, Trotterization) should be able to use it without special-casing.
Describe alternatives you've considered
Other redundant encodings (Derby-Klassen compact, Bravyi-Kitaev superfast, Setia-Whitfield) would address the same locality problem with different qubit-overhead and stabilizer-structure trade-offs. Verstraete-Cirac is requested first asthe historically canonical choice; the others are natural follow-ups.
Circuit-level Pauli grouping helps measurement cost under JW/BK but does not reduce Trotter depth.
Acceptance criteria
- A new
MajoranaMapping factory for Verstraete-Cirac accepts a general 2D lattice of at least sizes 2x2, 2x3, 3x3, and 4x4 (single spin species) and returns a mapping that QubitMapper consumes without error.
- For the Fermi-Hubbard model on a 2x2 lattice with open boundaries, t=1, U=4, at half-filling, the four lowest eigenvalues of the resulting
QubitHamiltonian restricted to the codespace match the Jordan-Wigner result to within 1e-10 absolute error.
- For Fermi-Hubbard on open LxL lattices with L in {2, 3, 4}, the maximum Pauli weight over all nearest-neighbor hopping terms produced by the mapper is the same finite integer for all three L (i.e. independent of system size).
- The constructed mapping survives JSON and HDF5 round-trips, and the round-tripped mapping produces a
QubitHamiltonian whose terms equal the original's term-by-term (Pauli string and coefficient).
- A new pytest module under
python/tests/ covers all of the above; the full existing test suite continues to pass; pre-commit succeeds on the diff.
- The encoding is listed in
docs/source/user/comprehensive/algorithms/qubit_mapper.rst under "Supported encodings" in the same format as the other entries, and citations for the three references below are added todocs/source/references.bib.
Additional context
- F. Verstraete and J. I. Cirac, Mapping local Hamiltonians of fermions to local Hamiltonians of spins, J. Stat. Mech. (2005) P09012.
- J. D. Whitfield, V. Havlicek, and M. Troyer, Local spin operators for fermion simulations, Phys. Rev. A 94, 030301(R) (2016) [arXiv:1605.09789].
- V. Havlicek, M. Troyer, and J. D. Whitfield, Operator locality in the quantum simulation of fermionic models, Phys. Rev. A 95, 032332 (2017) [arXiv:1701.07072].
Is your feature request related to a problem? Please describe.
QDK/Chemistry currently ships only Jordan-Wigner, Bravyi-Kitaev, parity, and SCBK fermion-to-qubit encodings. For 2D-local fermionic problems -- Fermi-Hubbard, lattice gauge theories, fermionic tensor-network ansatze, real-space-grid chemistry -- every nearest-neighbor hop maps to a long Pauli string under these encodings, which inflates Trotter circuit depth and measurement cost.
Describe the solution you'd like
A working Verstraete-Cirac encoding exposed as a new
MajoranaMappingfactory and consumable throughQubitMapper, with the resultingQubitHamiltoniancorrectly representing the original fermionic Hamiltonian on the physical subspace. Mapper consumers (energy estimation, state preparation, Trotterization) should be able to use it without special-casing.Describe alternatives you've considered
Other redundant encodings (Derby-Klassen compact, Bravyi-Kitaev superfast, Setia-Whitfield) would address the same locality problem with different qubit-overhead and stabilizer-structure trade-offs. Verstraete-Cirac is requested first asthe historically canonical choice; the others are natural follow-ups.
Circuit-level Pauli grouping helps measurement cost under JW/BK but does not reduce Trotter depth.
Acceptance criteria
MajoranaMappingfactory for Verstraete-Cirac accepts a general 2D lattice of at least sizes 2x2, 2x3, 3x3, and 4x4 (single spin species) and returns a mapping thatQubitMapperconsumes without error.QubitHamiltonianrestricted to the codespace match the Jordan-Wigner result to within1e-10absolute error.QubitHamiltonianwhose terms equal the original's term-by-term (Pauli string and coefficient).python/tests/covers all of the above; the full existing test suite continues to pass;pre-commitsucceeds on the diff.docs/source/user/comprehensive/algorithms/qubit_mapper.rstunder "Supported encodings" in the same format as the other entries, and citations for the three references below are added todocs/source/references.bib.Additional context