Skip to main content

westquant-qiskit

Wave 1 deterministic representation search for Qiskit.

westquant-qiskit searches the compilation representation, not only compiler parameters. A logical circuit is compiled through a reproducible grid of Qiskit pipeline choices and every success, failure, metric delta, and verification outcome is written to RepGraph/WQT-ready records.

v0.1 search space

The first deterministic engine searches the Cartesian product of:

  • optimization level: 0, 1, 2, 3
  • layout: trivial, dense, sabre
  • routing: basic, lookahead, sabre
  • translation: translator, synthesis
  • fixed transpiler seeds
  • approximation degree

The default training grid with three seeds contains 216 pipeline representations per circuit. This is intentionally deterministic: the same circuit, target, search-space version, and seeds reproduce the candidate set.

Run a smoke suite

pip install -e ../westquant-core
pip install -e .
python -m westquant_qiskit.cli --suite smoke --output results/qiskit-smoke

A larger local data-generation suite:

python -m westquant_qiskit.cli \
  --suite train \
  --seed-count 3 \
  --output results/qiskit-train

Each challenge writes:

summary.json
repgraph.json
training.jsonl

training.jsonl is the primary WQT20 precursor format. Each row contains the logical baseline metrics, one pipeline choice, compilation success/failure, conservative equivalence verification, resulting metrics, metric deltas, compile cost, Pareto membership, and rank.

Verification policy

WestQuant does not silently call a candidate equivalent. For small unitary circuits of equal width, v0.1 uses qiskit.quantum_info.Operator.from_circuit(...).equiv(...), which accounts for stored transpiler layouts. Circuits that cannot be checked under that regime are labeled UNKNOWN, not EXACT.

Current objective vector

Candidates are Pareto-compared by minimizing:

  1. two-qubit gate count
  2. SWAP count
  3. depth
  4. circuit size
  5. compile time

The lexicographic best is used only as a transparent deterministic default; the full Pareto front and all losing candidates remain in the dataset.

Qiskit integration

The package also exposes alpha stage entry points for Qiskit's native transpiler-plugin mechanism. The plugin stages still delegate to Qiskit baselines in this Wave 1 build. The deterministic search engine is the first real WestQuant search implementation and will be wired into stage plugins after benchmarking and recursion guards are complete.

Wave 1 now also includes a policy-style sequential search mode. Instead of choosing a complete compiler pipeline in one Cartesian-grid action, WestQuant chooses an ordered sequence:

layout -> routing -> translation -> optimization

Each partial prefix is evaluated through an end-to-end rollout with unchosen later stages set to Qiskit's explicit defaults. A beam retains the strongest states under the deterministic objective vector. This intentionally uses only public Qiskit APIs while producing WQT-ready state/action/reward trajectories.

westquant-qiskit-search \
  --suite smoke \
  --search sequential \
  --beam-width 3 \
  --output results/qiskit-sequential

Each challenge writes trajectory.jsonl in addition to summary.json and repgraph.json. A row contains state_id, stage, action, prefix before and after the action, rollout pipeline, verification, metrics, reward vector, baseline delta, and whether the state survived the beam.

Sequential 1000 dataset generator

Generate a frozen balanced manifest:

westquant-qiskit-1000 --output results/wq-qiskit-sequential-1000 --manifest-only

Pilot 25 challenges:

westquant-qiskit-1000 --output results/wq-qiskit-sequential-1000 --beam-width 3 --limit 25

Run/resume the full 1000:

westquant-qiskit-1000 --output results/wq-qiskit-sequential-1000 --beam-width 3

Regenerate statistics from raw saved outputs only:

westquant-qiskit-1000 --output results/wq-qiskit-sequential-1000 --stats-only

See docs/SEQUENTIAL-1000.md for the frozen design and failure-retention policy.

Release files for westquant-qiskit 0.1.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for westquant-qiskit 0.1.0
File Size Uploaded
westquant_qiskit-0.1.0.tar.gz 36.8 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for westquant-qiskit 0.1.0
File Interpreter ABI Platform
westquant_qiskit-0.1.0-py3-none-any.whl Python 3 none any Details

Total release size: 75.2 kB

Release files / westquant_qiskit-0.1.0.tar.gz

Download URL westquant_qiskit-0.1.0.tar.gz
Size 36.8 kB
Tags Source
SHA-256 checksum
How to use checksums
aacac87d1c42ee531aaa91258bb1a8365cd05dd11f62ba6a7cc2d69c36197b61
BLAKE2b-256 checksum
How to use checksums
2dec9363ea4480c76742eb6ed89f33fee91de72e5fad05441d3601b37c3faadd
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.10.12

Release files / westquant_qiskit-0.1.0-py3-none-any.whl

Download URL westquant_qiskit-0.1.0-py3-none-any.whl
Size 38.4 kB
Tags Python 3
SHA-256 checksum
How to use checksums
9ad9165d67b5bec03ba2bfe08c6085a438cc509f40206e90e871f0d8335b97bc
BLAKE2b-256 checksum
How to use checksums
bffee83c8918786b52cff43acc47b49814fb995651d8eddc58dbefd0240b0d17
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.10.12
Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page