Releases: Classiq/classiq-library
0.71.0
Released on 2025-03-10.
Upgrade Instructions
- Python SDK
- The IDE upgrades automatically.
IDE Updates
- Models page is now open to non-signed-up users.
Classiq Studio Updates
- Trust Classiq Library workspace by default.
Classiq 0.70.0
Released on 2025-02-26.
Upgrade Instructions
- Python SDK
- The IDE upgrades automatically.
Enhancements
- Improve depth and gate count for transpilation options "intensive" and
"custom". - Improve the synthesis of the
suzuki_trotterfunction for small hamiltonians.
Bug Fixes
- Fixed a bug where arithmetic expressions that classically evaluate to constant boolean values could not be used.
- Fixed a bug where using the
showfunction in the Python SDK would open the IDE with a "Not Authorized" error. - Fixed a bug where certain operations in the Quantum Program visualization are displayed with very long name that describes the operation's hierarchy.
Classiq 0.69.0
Released on 2025-02-17.
Upgrade Instructions
- Python SDK
- The IDE upgrades automatically.
Enhancements
- Improve the synthesis of the
molecule_uccfunction for small molecules. - Introduce a new QMOD core-library function
commuting_paulis_exponent.
Support
- Error messages now include a link to our support system for reporting bugs or opening support tickets. You can also reach us on our Slack community channel.
Classiq 0.68.0
Released on 2025-02-11.
Upgrade Instructions
- Python SDK
- The IDE upgrades automatically.
Enhancements
- Arithmetic assignments and control conditions now support quantum subscript
expressions.
A quantum subscript expression comprises a classical list accessed by a quantum
subscript, e.g.,x |= subscript([1, 2, 3, 4], y)
(in Native Qmod:x = [1, 2, 3, 4][y];). - Report an indicative error when not releasing local variables inside
control,
invert and
power statements. - When estimating using the
ClassiqSimulatorBackendNames.SIMULATOR_STATEVECTORbackend,
compute the expectation value directly from the state vector instead of running shots.
This is especially helpful when running VQE. - In the Python SDK, arguments of type
CArraycan now be NumPy arrays, tuples, and
similar sequential objects. For example, the following statements are
equivalent:
prepare_state([0.25, 0.25, 0.25, 0.25], 0, q)and
prepare_state(np.ones(4) / 4, 0, q).
Interface Changes
- The
synthesizeandwrite_qmodfunctions now accept a
quantum entry point.
Instead ofsynthesize(create_model(main)), writesynthesize(main).
Classiq 0.67.0
Released on 2025-02-02.
Upgrade Instructions
- Python SDK
- The IDE upgrades automatically.
Enhancements
- Unreleased local variables of a function are now un-computed
and released when calling the function under a compute block of a
Within-apply
statement.
Bug Fixes
- Fix control optimization for constant equality conditions
(e.g.,control(x == 1, ...)) producing wrong circuits under certain
conditions. - Fix in-place XOR optimization for classical values (e.g.,
x ^= -0.5)
producing wrong circuits under certain conditions. - Fix in-place XOR optimization for Boolean expressions
(e.g.,x ^= (y > 0) & (z > 0)) producing wrong circuits under certain
conditions. - Fix a bug causing an internal error in arithmetic expression that use comparison,
subtraction, or negation (e.g.x > 0.3,0.2 - x,-x) when synthesizing
models with the machine precision set to higher than 8.
Classiq 0.66.1
Released on 2025-01-27.
Upgrade Instructions
- Python SDK
- The IDE upgrades automatically.
Library Additions
- Add the functions
amplitude_amplificationandexact_amplitude_amplificationto the function library.
Classiq 0.66.0
Released on 2025-01-20.
Upgrade Instructions
- Python SDK
- The IDE upgrades automatically.
Enhancements
-
The
num_qubitsargument of functionallocateis now optional. If it is
not specified, it is inferred automatically according to the quantum type
of the allocated variable. Example:q = QBit() allocate(q) # allocates one qubit for variable 'q'
-
The
executeparameter of theQLayerobject is now optional. Example:QLayer(quantum_program, post_process)
Deprecations
The simulator name "nvidia_state_vector_simulator" has been removed. Please use
ClassiqNvidiaBackendNames.SIMULATOR or "nvidia_simulator" instead.
IDE Changes
- The Application Configuration Panel used for editing examples in the Built-in Apps folder has been removed.
- Patched dependencies: Katex.
Classiq 0.65.1
Released on 2025-01-06.
Upgrade Instructions
- Python SDK
- The IDE upgrades automatically.
Enhancements
- The name argument of local quantum variables
is now optional. If a name is not specified, it is inferred automatically from
the Python code. For example, it is now possible to writeq = QBit()
instead ofq = QBit("q"). - Improve the performance of executing multiple primitives inside one
ExecutionSession, such as inexecute_qaoa.
Deprecations
Function prepare_int and inplace_prepare_int are now deprecated. Use Qmod out-of-place
and in-place numeric assignment statements instead. For example, instead of prepare_int(5, my_qnum),
write my_qnum |= 5.
See more under numeric assignments.
Classiq 0.64.0
Released on 2024-12-29.
Upgrade Instructions
- Python SDK
- The IDE upgrades automatically.
Enhancements
- Improve error messages.
Bug Fixes
- Fix quantum bits raising an error when used in in-place assignments
(^=and+=). - Fix quantum struct field access raising an error in lambdas.
IDE Improvements
- Classiq Thumbnail: Updated the Classiq thumbnail image!
- Links on the IDE model page now directing to Classiq Library.
- Modify the Quantum Programs URL so that the circuit ID is embedded in its path
New Visualization:
Compact View:
- Clean up variable names in engine blocks.
- Corrected the spacing miscalculation for junction dots.
- Refined padding before allocation
- Hide labels in open functional blocks to create a more space-efficient
display. - Removed unnecessary dots and labels for low-level QC elements.