Compatibility¶
Platforms¶
MicroQuantum is pure Python + NumPy and is platform-independent at the package level. It is designed for Windows, Linux, macOS and BSD; see Platform Support for the per-platform verification status. CI runs the full test matrix on GitHub-hosted Ubuntu Linux, Windows and macOS for Python 3.10 - 3.13:
Python |
Status |
|---|---|
3.10 |
Supported |
3.11 |
Supported |
3.12 |
Supported (primary development version) |
3.13 |
Supported |
BSD is supported by design (pure Python wheels, no platform-specific binary dependencies) but is not currently covered by native CI runners; the BSD report in Platform Support documents that distinction.
Dependencies¶
Package |
Notes |
|---|---|
|
The only hard runtime dependency. |
CuPy ( |
Optional; activates a GPU-backed array engine via
|
Sphinx / furo / sphinx-autoapi ( |
Optional; only needed to rebuild the reference documentation. |
Hard interop¶
There is no runtime dependency on Qiskit, Cirq, PennyLane or OpenQASM. Interchange is achieved through serialization, not imports:
JSON (
to_dict/to_jsonon every result, plan, circuit and problem).OpenQASM 2.x import/export on circuits.
Because the SDK never imports a competing framework, it installs cleanly alongside any other quantum stack in the same environment.
Large-state limits¶
Statevector / density-matrix backends allocate O(2**n) complex numbers:
10 qubits ~ 16 KiB per statevector
20 qubits ~ 16 MiB
30 qubits ~ 16 GiB
For shallow, wide circuits at 20+ qubits prefer the MPS / tree-tensor-network
simulators. Sampling backends trade memory for shots and are the most scalable
option for large n.
Versioning contract¶
The public API is stable since 1.0.0 (General Availability) under Semantic Versioning.
Backward-compatible additions land as minor versions; breaking changes as major releases.
Serialized result schemas are versioned; new fields are additive.