Skip to main content

arvak-lite

Qiskit Ecosystem

Lightweight quantum circuit compiler wrapping Arvak. Takes circuits from any major framework, compiles them, and returns the same type.

from arvak_lite import transpile

compiled = transpile(circuit)

Also registers as a Qiskit transpiler plugin:

from qiskit.compiler import transpile

compiled = transpile(circuit, optimization_method="arvak")

Installation

pip install arvak-lite

With framework extras:

pip install arvak-lite[qiskit]      # Qiskit + transpiler plugin
pip install arvak-lite[cirq]        # Cirq
pip install arvak-lite[pennylane]   # PennyLane
pip install arvak-lite[pulser]      # Pulser (Pasqal)
pip install arvak-lite[qrisp]       # Qrisp
pip install arvak-lite[qbraid]      # qBraid multi-backend
pip install arvak-lite[all]         # Everything

Usage

Any framework

from arvak_lite import transpile

compiled = transpile(circuit)  # Qiskit in → Qiskit out, Cirq in → Cirq out, etc.

Qiskit transpiler plugin

Once installed, arvak is available as a named plugin in Qiskit's transpile():

from qiskit.compiler import transpile

# Use Arvak for optimization
compiled = transpile(circuit, optimization_method="arvak")

# Use Arvak for routing
compiled = transpile(circuit, coupling_map=coupling, routing_method="arvak")

# Or via pass manager
from qiskit.transpiler.preset_passmanagers import generate_preset_pass_manager
pm = generate_preset_pass_manager(optimization_level=3, optimization_method="arvak")
compiled = pm.run(circuit)

With metrics

compiled, metrics = transpile(circuit, return_metrics=True)
print(f"{metrics['time_ms']:.2f}ms, {metrics['gate_count']} gates")

Parameters

transpile(
    circuit,                          # Any supported circuit type
    optimization_level=3,             # 0=parse, 1=basic, 2=standard, 3=aggressive
    coupling_map=[[0,1], [1,2]],      # Device connectivity (None = all-to-all)
    basis_gates=["cx", "rz", "sx"],   # Target gate set
    return_metrics=True,              # Return (circuit, metrics) tuple
)

Supported frameworks

Framework Type Round-trip
Qiskit QuantumCircuit Yes
Cirq cirq.Circuit Yes
PennyLane QNode / tape Yes
Pulser Sequence (digital) QASM output
Qrisp QuantumCircuit / QuantumSession Yes
OpenQASM str (2.0 / 3.0) Yes
Arvak arvak.Circuit Yes

How it works

arvak-lite is a thin Python wrapper (~12 KB). The actual compilation happens in Arvak, a Rust-native compiler exposed via PyO3. The full compiler fits in a ~600 KB wheel — no LLVM, no JVM, no heavy runtime. The speed comes from Rust, not from skipping optimization passes.

  1. Detect the input framework from the circuit's type
  2. Convert to arvak.Circuit
  3. Compile in Rust (gate decomposition, routing, optimization)
  4. Convert back to the original framework type

License

LGPL-3.0-or-later. See LICENSE.

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

arvak_lite-0.1.2.tar.gz (16.2 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

arvak_lite-0.1.2-py3-none-any.whl (12.4 kB view details)

Uploaded Python 3

File details

Details for the file arvak_lite-0.1.2.tar.gz.

File metadata

  • Download URL: arvak_lite-0.1.2.tar.gz
  • Upload date:
  • Size: 16.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for arvak_lite-0.1.2.tar.gz
Algorithm Hash digest
SHA256 e4b12e2af280391d364240eb7d0961847d4b193b2b2e2baa53ea8fcf3c016128
MD5 51b6c6e240708b1b88fb666fb1a63b13
BLAKE2b-256 2f2264777ecb0d59645e20e17dc1847d9a95cdb23c70ba747bbbe2179606fdc2

See more details on using hashes here.

Provenance

The following attestation bundles were made for arvak_lite-0.1.2.tar.gz:

Publisher: publish.yml on hiq-lab/arvak-lite

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file arvak_lite-0.1.2-py3-none-any.whl.

File metadata

  • Download URL: arvak_lite-0.1.2-py3-none-any.whl
  • Upload date:
  • Size: 12.4 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for arvak_lite-0.1.2-py3-none-any.whl
Algorithm Hash digest
SHA256 f18e5e082ee9f98a8762fb335d338a35e915fd3df83c116194d2f220d40091f1
MD5 077b9b0142b4ce01c71451703204564f
BLAKE2b-256 2054f33be948bec8a0c0a45f04fb7560c14a60717e5a447eda4538e7425c0959

See more details on using hashes here.

Provenance

The following attestation bundles were made for arvak_lite-0.1.2-py3-none-any.whl:

Publisher: publish.yml on hiq-lab/arvak-lite

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Release history Release notifications | RSS feed

This release

0.1.2 This release

2 files

0.1.1

2 files

0.1.0

2 files

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page