QuAIRKit 0.2.0 Release Note
Feature Rollout
- Qudit computation: QuAIRKit now support qudit systems in state evolution, circuit measurement, database generation and training. These covered functionals accept
num_systems
andsystem_dim
as inputs.- argument
num_systems
is aliased withnum_qubits
- argument
system_dim
accepts both interger or a list of integers, representing the dimensions of all systems. Defaults to 2, i.e., all systems are qubits.
- argument
- Quantum information functions: Advanced the quairkit.qinfo module with the following changes:
partial_trace
&partial_transpose
: The interfaces of these two functions are aligned with PartialTrace and PartialTranspose in QETLAB. Moreover, these functions support qudit computations.transpose_2
is now removed from quairkit.partial_trace_discontiguous
remains unchanged, but only supports qubit systems.
is_povm
&is_pvm
: Check whether the input set of matrices form a POVM or PVM.mana_state
&mana_channel
: Compute the mana of input state/channel.stab_nullity
&stab_renyi
: Compute the stabilizer nullity/Renyi entropy of input state- Almost all functions in quairkit.qinfo support batched array inputs.
- Training: Add training net
PQCombNet
for quantum circuit architectural search, can be imported byquairkit.ansatz.comb
. - State features: Add the following properties & methods for flexible usage
system_dim
: User now can change the system dimensions of aState
instance.trace
,transpose
&permute
: same aspartial_trace
,transpose
&permute_systems
, except there is no need to input data or specify system dimensions.sqrt
&log
: same assqrtm
&logm
Stability Update
- Import regulation: Add
__init__
to all top-level modules, so that the following commands
from quairkit.database import *
from quairkit.loss import *
from quairkit.qinfo import *
would not import some unexpected variables.
- GPU speedup: Significantly improve GPU performances on batch computations.
- Add
quairkit.print_info
function that can print all packages and hardware information for sanity check. - Add bug fixes and API improvements.
Tutorials
- Rewrite 4 old tutorials to improve readability.
- Add 4 new introduction tutorials, including:
- Add 2 new feature tutorials, including:
End of Release Notes