QuAIRKit 0.1.0 Release Note
QuAIRKit absorbs the features and semantics of Paddle Quantum v2.4.0, while making the following improvements:
Technical Improvements
-
Backend Transition: transitioned the computational backend from Paddle Paddle to PyTorch, improving both stability and compatibility with existing packages.
-
Modular Codebase: refactored the codebase into five discrete modules to streamline the user experience. This modular approach facilitates easier maintenance, scalability, and collaborative development.
-
Batch Computation: internally supported batch computation for
- quantum (noisy) circuit simulation;
- expectations and measurement
Basic broadcasting rule in QuAIRKit:
Batched shape for operations | Batched shape for input states | Batched shape for output results |
---|---|---|
None | None | None |
None | n | n |
n | None | n |
n | n | n |
n | m | Error |
- Pure & Mixed Auto-transition: there is no longer needed to specify the backend
state_vector
ordensity_matrix
. QuAIRKit supports implicit backend transition between pure state and mixed state simulators.
Feature Rollout
-
Random Seed Initialization: introduced
quairkit.set_seed
to initialize a random seed across all random functionals within the platform. -
Quantum computing data: Expanded the quairkit.database module with the following data:
phase
&shift
: phase and shift operators in quantum information.universal_qudit
: a parameterized universal qudit gate, based on parameterization with respect to Gell-Mann matrices.Uf
&Of
: two quantum query models for Boolean functions.- A collection of set-based data, including:
std_basis
&qft_basis
: two quantum state bases for identity & QFT matrices, respectively.bell_basis
: a two-qubit Bell basis.heisenberg_weyl
: a set of Heisenberg-Weyl operators.phase_space_point
: a set of phase-space point operators in discrete phase space.gell_mann
: a set of Gell-Mann matrices.
-
Quantum information functions: Expanded the quairkit.qinfo module with the following functions:
is_linear
: ascertains the linearity of a given function.create_matrix
: constructs the matrix representation of a linear map between two vector spaces.create_choi_repr
: constructs the Choi representation of a linear map between two operator spaces.trace_norm
&p_norm
: Schatten norm functions.trace
: Trace of input tensor along a specified axis.hessian
&gradient
: The Hessian and general gradient of input functions.decomp_1qubit
&decomp_ctrl_1qubit
: Decomposition of (controlled) qubit-unitary operations.
Resolved Issues
- Bug Fix: corrected various typos and inaccuracies previously present in the database.
- Controlled qubit-unitary: controlled qubit-unitary operations now require parameterization from 3 to 4 parameters.
Dependencies Update
- The minimum requirement for the Python environment has been changed to Python 3.8.
- Add
pytest-xdist
for unit tests.
Tutorials
Added four tutorials for feature introductions of QuAIRKit:
- circuit: quantum circuit & basic machine learning
- measure: quantum measurement
- state: quantum state
- batch: batch computation
End of Release Notes