Skip to main content

FlagQuantum Compiler QSteed

flagquantum-compiler-qsteed is an independently installed circuit compiler plugin for FlagQuantum. It translates FlagQuantum CircuitIR to a PyQuafu QuantumCircuit, invokes QSteed's real transpiler, and translates the compiled circuit back to CircuitIR.

The first release deliberately supports one closed, testable slice:

  • static h, x, rx, ry, rz, and cx instructions with numeric angles;
  • basis lowering to a selected subset of those gates, with topology routing on the fixed six-gate basis;
  • an optional undirected coupling map over the circuit's existing wires;
  • deterministic QSteed basis lowering and SABRE routing;
  • restoration of QSteed's final physical layout to FlagQuantum's logical wire order.
  • Quafu calibration targets with automatic or explicitly ordered physical subgraph selection and a target_qubits result; physical identifiers never replace logical QASM wires.

Measurements, observables, symbolic parameters, custom matrices, dynamic operations, additional target fields, and larger physical topologies are rejected. There is no compiler substitution or fallback. Omitting coupling_map explicitly requests basis compilation without topology routing. For a Quafu chip_info target, omitting target_qubits lets QSteed choose the subgraph. Supplying it locks the logical-to-physical order after existence, uniqueness, and connectivity validation; the plugin never substitutes another mapping.

Installation

This release candidate requires FlagQuantum >=0.2,<0.3 and the verified QSteed build 0.2.3+quafu.sqc. It is not yet a one-command PyPI installation: FlagQuantum 0.2 and this QSteed build must be installed first. PyPI QSteed 0.2.2 is not a supported substitute. Python 3.12 was used for the release checks; the declared Python 3.10–3.12 range still needs a full compatibility matrix.

From this repository, after installing a compatible FlagQuantum checkout:

python -m pip install -r requirements-qsteed.txt
python -m pip install -e ".[test]"
python -m pytest -q

The dependency file pins the verified upstream commit. The wheel declares its exact package version without embedding a Git URL. Once the plugin is published, users with both prerequisites already installed can use python -m pip install flagquantum-compiler-qsteed==0.1.0.

Compile a circuit

This offline example needs no provider credentials and submits no hardware job:

import flagquantum as fq

circuit = fq.Circuit(3).h(0).cx(0, 2)
compiled = fq.compile(
    circuit,
    compiler="qsteed",
    target={
        "basis_gates": ("h", "x", "rx", "ry", "rz", "cx"),
        "coupling_map": ((0, 1), (1, 2)),
    },
)
print(compiled.instructions)

See release preparation for publication prerequisites and artifact checks.

Advanced extension lifecycle

from flagquantum.ecosystem.extensions import (
    CapabilityRequest,
    ExtensionConfig,
    discover_extensions,
)

import flagquantum as fq

source_ir = fq.Circuit(3).h(0).cx(0, 2).to_ir()
registry = discover_extensions("compiler")
handle = registry.negotiate(
    "compiler",
    "qsteed",
    CapabilityRequest(required=frozenset({"circuit_ir"})),
)
handle.start(ExtensionConfig())
try:
    compiled = handle.invoke(
        "compile",
        source_ir,
        target={
            "basis_gates": ("h", "x", "rx", "ry", "rz", "cx"),
            "coupling_map": ((0, 1), (1, 2)),
        },
    )
finally:
    handle.close()

QSteed treats the coupling graph as bidirectional in this compiler path. The plugin therefore validates two-wire instructions against undirected edges.

Download files

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

Source Distribution

flagquantum_compiler_qsteed-0.1.0.tar.gz (16.6 kB view details)

Uploaded Source

Built Distribution

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

flagquantum_compiler_qsteed-0.1.0-py3-none-any.whl (13.0 kB view details)

Uploaded Python 3

File details

Details for the file flagquantum_compiler_qsteed-0.1.0.tar.gz.

File metadata

File hashes

Hashes for flagquantum_compiler_qsteed-0.1.0.tar.gz
Algorithm Hash digest
SHA256 d24089cfcd5e1356f072ccf1a2a00c53ecfba093dcde5cf40ed4afe9242a5000
MD5 de1d6344fcbaeab8696ed6885bba622a
BLAKE2b-256 516b42bcf43ec84e1c4493eaf7f6b11a55e7ab262c044308f96054657db85df4

See more details on using hashes here.

File details

Details for the file flagquantum_compiler_qsteed-0.1.0-py3-none-any.whl.

File metadata

File hashes

Hashes for flagquantum_compiler_qsteed-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 129ca10b7e1fa9924aaa37040d138518ed5c82ae71cef1f4e8ecacb8f4dc15a1
MD5 2f9e6245098b2cdf8ccf6ef5bf84f85b
BLAKE2b-256 f42439e672c612858462f9fab4fd21b1ac4a35f802087ef8953bc2a2371edec0

See more details on using hashes here.

Release history Release notifications | RSS feed

0.1.1

2 files

This release

0.1.0 This release

2 files

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