Skip to content

Gate-to-pulse calibration reference implementation for neutral-atom devices #350

@hiq-lab

Description

@hiq-lab

Context

We maintain the Arvak quantum compilation platform, which includes a gate-to-pulse integration for Pasqal neutral-atom hardware via Pulser. As part of this work, we developed:

  1. A verified gate-to-pulse mapping for all standard single-qubit gates (H, X, Y, Z, S, T, SX, RX, RY, RZ) targeting the raman_local channel, and a CZ entangling gate via Rydberg blockade (rydberg_local).

  2. An empirical calibration pipeline that validates pulse parameters by comparing measurement distributions from a gate-model simulator against Pulser's QutipEmulator, using Bhattacharyya coefficient as fidelity metric.

  3. Pre-calibrated pulse parameters with verified fidelities (e.g., CZ via Jaksch/Lukin pi-2pi-pi protocol at 99.96% Bell fidelity, 4µm atom spacing).

Relation to PR #182 and Issue #173

This directly complements the pulse representation types proposed in #173 / #182 (QDMI_PULSE_PARAMETER, QDMI_PULSE_SHAPE, QDMI_PULSE_OPERATION_IMPLEMENTATION). Our implementation provides concrete values for what those types would contain in a real neutral-atom device:

QDMI type Our concrete data
QDMI_PULSE_PARAMETER area (Rabi rotation angle), phase (XY-plane axis), post_phase_shift (virtual Z), detuning
QDMI_PULSE_SHAPE BlackmanWaveform with duration auto-selected to respect channel amplitude limits
QDMI_PULSE_OPERATION_IMPLEMENTATION Full gate decompositions, e.g. H = Ry(π/2) + Rz(π) via (area=π/2, phase=π/2, post_phase_shift=π)

CZ protocol detail

The two-qubit entangling gate uses a pi-2pi-pi Rydberg blockade sequence on rydberg_local:

  1. π pulse on control qubit (|g⟩→|r⟩)
  2. 2π pulse on target qubit (blocked if control in |r⟩, free rotation if in |h⟩)
  3. π pulse on control qubit (|r⟩→|g⟩, restores state)

The conditional 2π geometric phase (-1) in SU(2) creates the CZ entanglement. CNOT is then (I⊗H)·CZ·(I⊗H).

What we'd like to contribute

We'd be happy to contribute:

  1. A reference QDMI device implementation for neutral-atom hardware using the pulse types from ✨ Pulse representation specifications #182, populated with our calibrated parameters.
  2. The calibration pipeline as a testing/validation tool — it could serve as a template for how device vendors verify their QDMI_PULSE_OPERATION_IMPLEMENTATION values.

The full implementation is Apache-2.0 licensed and available at:
https://github.com/hiq-lab/arvak/tree/main/crates/arvak-python/python/arvak/integrations/pulser

We're opening this issue to discuss how this would best fit into QDMI's architecture before submitting a PR.

Calibrated parameters (excerpt)

{
  "single_qubit": {
    "h": {"area": 1.5708, "phase": 1.5708, "post_phase_shift": 3.1416},
    "x": {"area": 3.1416, "phase": 0.0, "post_phase_shift": 0.0},
    "y": {"area": 3.1416, "phase": 1.5708, "post_phase_shift": 0.0},
    "z": {"area": 0.0, "phase": 0.0, "post_phase_shift": 3.1416}
  },
  "entangling": {
    "cz": {
      "protocol": "pi-2pi-pi",
      "channel": "rydberg_local",
      "fidelity_at_4um": 0.9996
    }
  }
}

/cc @mnfarooqi (PR #182 author)

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions