Changelog
For detailed release notes with code examples and feature walkthroughs, see the Release Notes section.
Version 2.0.0
See What’s New in Version 2.0 for full details and migration guidance.
Symmetry-blocked storage unifying restricted and unrestricted orbital, integral, and index data
Consolidated wavefunction containers (
StateVectorContainer,AmplitudeContainer)Nuclear gradients and finite-difference Hessians
Stabilized SCF and ROHF geometric direct minimization
Block-encoding/LCU qubitization, Hadamard test, and Zassenhaus product formulas
Real-time dynamics for driven, time-dependent Hamiltonians
Fermion-to-qubit mapping carried as data (
MajoranaMapping), including a Verstraete-Cirac encodingExplicit Pauli term grouping and generalized expectation estimation
Composable standard and iterative phase-estimation circuit builders
QDK Quantum Resource Estimator integration for generated circuits (
Circuit.estimate/get_qre_application)Algorithm result caching and data-file migration tooling
Windows build support with CI
Breaking changes:
Wavefunction containers consolidated from five classes into two:
SlaterDeterminantContainer,CasWavefunctionContainer, andSciWavefunctionContainer(structurally identical apart from a type tag) merge intoStateVectorContainer, distinguished by a stored sector;MP2ContainerandCoupledClusterContainermerge intoAmplitudeContainer, distinguished by anAmplitudeTypetag.Wavefunction.get_container_type()now returns"state_vector"/"amplitude"(old names remain as deprecated aliases)Serialization schema bumped from
0.1.0to0.2.0for theOrbitals/ModelOrbitals,CanonicalFourCenterHamiltonianContainer/SparseHamiltonianContainer/CholeskyHamiltonianContainer,Wavefunction/StateVectorContainer, andUnitaryRepresentationdata classes;AmplitudeContainerand the top-levelHamiltonianare unchanged. Upgrade affected files withpython -m qdk_chemistry.migrateExpectation estimator no longer auto-groups terms
Qubit mapper takes a
MajoranaMappinginstead of anencodingstringSilent semantic change: the
Wavefunctionaccessorget_active_two_rdm_spin_dependent()now returns blocks as(aaaa, aabb, bbbb)(was(aabb, aaaa, bbbb)), with theaabbblock in alpha-alpha-beta-beta index order (was alpha-beta-alpha-beta), to match the two-electron integral block order inHamiltonian; theWavefunctionconstructor takes the same new order. Positional unpacking reads incorrect data until updatedConfigurationstring and bitset constructors replaced by explicit factoriesRenames (deprecated aliases retained):
QubitHamiltoniantoQubitOperator,EnergyEstimatortoExpectationEstimator,TimeEvolutionUnitarytoUnitaryRepresentation, andTimeEvolutionUnitaryContainertoUnitaryContainerv1
Orbitalsdense accessors deprecated in favor of the symmetry-blocked accessorsC++ only: FCIDUMP writer, Cholesky container, and
ModelOrbitalsconstructor changes
Version 1.1.0
See What’s New in Version 1.1 for full details.
Q#-native circuit architecture with lazy QIR compilation
Model Hamiltonians (Hückel, Hubbard, PPP, Ising, Heisenberg)
Arbitrary-order Trotter-Suzuki product formulas
Native ROHF with DIIS acceleration
Cholesky-based AO→MO integral transformation
OpenFermion qubit-mapping plugin
MACIS active-space expansion to 2048 orbitals
One-shot VVHV orbital localization
Version 1.0.2
Make qiskit-aer and qiskit-nature optional dependencies
Loosen matplotlib version requirement to >=3.10.0
Fixed installation instructions for Ubuntu compatibility
Improved iQPE demo notebook
Version 1.0.1
Added support for Python 3.10
Enhanced INSTALL.md with clearer installation steps
Version 1.0.0
Initial release of QDK/Chemistry