Integration layer joining quantum-circuit-optimizer and QubitPulseOpt to measure fidelity loss across the compilation pipeline. arXiv:2601.20871.
  • Python 51.8%
  • TeX 47.4%
  • HTML 0.7%
  • Shell 0.1%
Find a file
Repository files (latest commit first)
Filename Latest commit message Latest commit date
2026-06-19 10:18:18 -06:00
docs Final revision: validated Lindblad model + honest hardware error budget 2026-06-19 09:19:08 -06:00
experiments Final revision: validated Lindblad model + honest hardware error budget 2026-06-19 09:19:08 -06:00
paper Paper: correct test count (252 -> 281, matches the suite) 2026-06-19 10:18:18 -06:00
results feat: Add end-to-end quantum circuit optimization framework with real C++ optimizer and Lindblad pulse simulation 2026-01-16 19:17:02 -05:00
src Final revision: validated Lindblad model + honest hardware error budget 2026-06-19 09:19:08 -06:00
tests Final revision: validated Lindblad model + honest hardware error budget 2026-06-19 09:19:08 -06:00
.env.example ACM TQC experiments: full campaign, compiler comparison, ablation study, figures 2026-02-07 19:58:50 -05:00
.gitignore feat: add statistical analysis, LaTeX tables, and ACM TQC paper draft 2026-02-07 20:38:56 -05:00
AGENTS.md Final revision: validated Lindblad model + honest hardware error budget 2026-06-19 09:19:08 -06:00
opencode.json ACM TQC experiments: full campaign, compiler comparison, ablation study, figures 2026-02-07 19:58:50 -05:00
pyproject.toml Final revision: validated Lindblad model + honest hardware error budget 2026-06-19 09:19:08 -06:00
README.md Final revision: validated Lindblad model + honest hardware error budget 2026-06-19 09:19:08 -06:00
setup_iqm.sh feat: Add comprehensive hardware validation framework with multi-device support and analysis tools 2026-01-16 19:27:26 -05:00

qco-integration

Integration layer connecting quantum-circuit-optimizer (C++17) with QubitPulseOpt (Python) for end-to-end quantum compilation fidelity analysis.

Overview

This project provides an orchestration layer for analyzing fidelity degradation across the quantum compilation pipeline, from high-level circuit optimization through pulse-level control. The goal is to produce an arXiv preprint with systematic experimental analysis.

Project Status

Active revision. An earlier version was submitted to ACM Transactions on Quantum Computing (manuscript TQC-2026-0027) and rejected; preprint arXiv:2601.20871. The current work replaces the original simulation model with a validated one and rewrites the manuscript around what that model actually supports (see docs/bakeoff_evidence.md and the revised paper/acm_tqc/main.tex).

What changed in this revision

  • Real fidelity model. The original "Lindblad" fidelities were a closed-form exponential-decay heuristic. They are replaced by a per-gate Lindblad master-equation solve (relaxation + dephasing + a calibrated depolarizing channel, plus idle decoherence on an ASAP schedule), cross-validated against qiskit-dynamics to <1e-7. An optional non-Markovian 1/f filter-function model is included.
  • Provenanced hardware run. Eight circuits executed on IQM Resonance Garnet (10,000 shots each, job IDs recorded). The validated model is a consistent upper bound on measured fidelity (mean sim$-$hw gap 0.49); it preserves relative circuit ordering but omits crosstalk, leakage, and readout error.
  • Honest framing. No "hardware-validated" claim for absolute fidelity; the hardware run quantifies the model's error budget instead.

Key results (validated model, 371-circuit campaign)

  • Mean process fidelity 0.537 (median 0.603); mean gate reduction 9.1% (max 40.0%)
  • Cancellation is the dominant pass (Cohen's d = 1.66); other passes negligible in isolation
  • Strongest fidelity predictors: input gate count (r = 0.78) and pulse duration (r = 0.73)
  • Two-qubit gate count, not total gate count, is the hardware-relevant compiler metric (QCO 17.7% 2Q reduction vs Qiskit-L2/L3 9.3%)
  • 281 passing tests (3 are qiskit-dynamics cross-validation); ruff and mypy --strict clean
  • Hardware validation fits the IQM free tier (~0.9 of 30 credits/month)

Installation

# Create and activate virtual environment
python3 -m venv .venv
source .venv/bin/activate

# Install in development mode
pip install -e ".[dev]"

# Copy environment configuration
cp .env.example .env
# Edit .env with paths to your binaries

Project Structure

qco-integration/
├── src/                  # Source code
│   ├── bridge.py         # CircuitOptimizerBridge (C++ subprocess)
│   ├── pipeline.py       # EndToEndPipeline (orchestration)
│   ├── pulse.py          # Per-gate Lindblad fidelity model
│   ├── noise_spectrum.py # Non-Markovian 1/f filter-function dephasing
│   ├── hardware.py       # IQMHardwareExecutor (IQM Resonance)
│   ├── corpus.py         # CircuitCorpus (benchmarks)
│   ├── metrics.py        # Dataclasses for metrics
│   ├── runner.py         # BenchmarkRunner
│   ├── analysis.py       # Statistical analysis
│   ├── qasm.py           # QASM utilities
│   └── visualization.py  # Plotting utilities
├── experiments/          # Experiment + figure/table scripts
│   ├── run_campaign.py        # Full experimental campaign
│   ├── run_ablation.py        # Ablation study
│   ├── statistical_analysis.py # LaTeX tables + summary
│   ├── hardware_dryrun.py     # Credit estimation (no credentials needed)
│   └── hardware_validate.py   # Hardware execution
├── results/              # Output data (gitignored)
├── docs/                 # bakeoff_evidence.md (thesis decision record)
├── paper/acm_tqc/        # LaTeX manuscript (main.tex) + figures
├── tests/                # pytest suite (281 tests; run `pytest`)
└── README.md

Dependencies

External projects (not pip-installed)

  • quantum-circuit-optimizer: C++ circuit optimizer binary
    • Location: set QCO_OPTIMIZER_BINARY (defaults to the sibling quantum-circuit-optimizer/build/ checkout)
    • Required for: circuit optimization and routing

The pulse-level fidelity model is implemented natively in src/pulse.py (per-gate Lindblad). qiskit / qiskit-dynamics are dev dependencies used by the hardware executor and the cross-validation tests; install with pip install -e '.[dev]'.

Quick Start: Hardware Validation

Test the full pipeline on real quantum hardware (IQM Resonance - FREE):

# 1. Estimate credits needed (no credentials required!)
python experiments/hardware_dryrun.py --num-circuits 10

# Output:
# Estimated total cost:  0.9 credits
# Within free tier:      YES

# 2. Sign up for free tier: https://resonance.meetiqm.com/signup

# 3. Set credentials
export IQM_CLIENT_ID='your-client-id'
export IQM_CLIENT_SECRET='your-client-secret'

# 4. Run hardware validation on real Garnet (records job IDs)
python experiments/hardware_validate.py --quantum-computer garnet --num-circuits 8 --shots 10000

Development

pytest                 # full suite (281 tests)
pytest -m crossval     # qiskit-dynamics cross-validation of the noise model
ruff check .           # lint
mypy src/              # strict type check

License

MIT