0.15.0
Upgrade Instructions¶
- Python SDK
- VS Code Extension - deprecated. Use IDE instead.
Interface Changes¶
- Change the method
classiq.quantum_functions.function_library.FunctionLibrary.add_function
to returnNone
(instead ofCustomFunction
). If you need access to theCustomFunction
, retrieve it with theget_function
method. - When specifying the backend provider
IBM Quantum
, you now need to set the backend provider name field toIBM Quantum
instead ofIBMQ
. - Rename methods in CombinatorialOptimization class:
generate
method changed tosynthesize
, and changeget_model
method toget_ansatz_model
. - Parametrized functions (such as rotation gates) can now get an arithmetic expression as well as a single parameter.
Expressions and parameters are now provided to the function using
str
orsympy
. See the Parameters section of the user guide.
New Features¶
- Add support for parametric functions and storing function definitions in
.qfunc
files. See Parametric functions and the.qfunc
extension. -
Analyzer SDK:
- Add an option to select devices in the analyzer SDK. You can explicitly choose the devices to transpile the analyzed circuit to create the comparison table.
- Display the cloud provider of the devices in the comparison table.
- Add the
hardware_aware_resynthesize
method to the analyzer SDK, which receives the device and provider. It then performs resynthesis, taking into account the properties of the hardware. - After you select devices with the best fit to a given comparison property, you can now resynthesize from the analyzer SDK to those devices.
-
Add new configuration to the
show_interactive
method. You can now access the analyzer web app usingshow_interactive(web_app=True)
. -
Improve hardware-aware synthesis:
- Add support for synthesizing circuits optimized for a specified backend.
- Add support for providing the connectivity map of custom hardware.
-
Access the analyzer heatmap graph (from the dashboard) via the SDK.
- When using the Python SDK, access the documentation by invoking the
classiq.open_help()
command. - Add the option to invert functions. See Inversion.
- Add the option to control functions. See Control.
- See the resulting model of the ansatz and set a user-defined
model or circuit as the ansatz using the
CombinatorialOptimization
module. - Add support for OpenQASM 3.0 as an output format.
- Use the
CombinatorialOptimization
module to convert inequality constraints to a penalty term using slack variables.