0 97 0
Released on 2025-11-03.
Upgrade Instructions
- Python SDK
- The IDE upgrades automatically.
Enhancements
-
Qmod now supports automatic uncomputation of local variables and enforces rules that guarantee their correct uncomputation. Similar rules are enforced on variables initialized inside a within-apply statement.
For more details, see Uncomputation.
Currently, violations of uncomputation rules are issued as warnings for backward compatibility. These will become compilation errors no earlier than 2025-12-03.
-
Add the
assign_amplitude_tableandassign_amplitude_poly_sinopen-library functions, to replace the*=operator and theassign_amplitudefunction. - Add
unscheduled_suzuki_trotter, a variant ofmulti_suzuki_trotterthat doesn't re-order the Pauli terms. - Improve synthesis of controlled phase with theta=pi.
- This release includes initial support of classical local variables, assignment of mid-circuit measurements, and runtime if statements. Currently, only variables of type QBit can be measured, and only the classical bool type is supported for local variable declaration and assignment. This enables simple algorithms such as the quantum teleportation protocol. These constructs have the corresponding dedicated graphics in the quantum program visualization. See more details under Classical variables) and Mid-circuit measurement.
Interface Changes
- The
*=operator and theassign_amplitudefunction are deprecated and will no longer be supported starting on 2025-12-03 at the earliest. Useassign_amplitude_tableinstead. - Function
qdriftnow receives a sparse Hamiltonian (SparsePauliOp) instead of a list of non-sparse Pauli terms (CArray[PauliTerm]). Non-sparse pauli terms inqdriftwill no longer be supported starting on 2025-12-03 at the earliest.
Bug Fixes
- Fix
multi_suzuki_trottersynthesis with symbolic evolution coefficients raising an internal error. - Fix a bug where an internal error is raised when synthesizing with a maximum width constraint a model that contains control on a function, or a statement block, that allocates and frees qubits.
Security
- Internal dependencies have been upgraded to address security vulnerabilities.