Skip to content

Develop hierarchical space-time circuits, device mapping, and timed scheduling #514

Description

@qciaran

Summary

Connect QEC-aware artifacts to physical-qubit mapping, target-native lowering, and timed scheduling while preserving QEC provenance and dependencies.

Parent: #509
Architectural discussion: #508

Motivation

PECOS already contains platform/QIS lowering and runtime timing support, including explicit idles. The QEC stack needs a well-defined bridge into that infrastructure so placement, routing, decomposition, measurement latency, and feedback scheduling do not erase code/protocol semantics.

Scope

  • Define target capability inputs:
    • physical-qubit topology and resource constraints;
    • native gate/measurement/reset operations;
    • durations and concurrency restrictions;
    • classical-feedback and decoder latency;
    • optional calibration/noise metadata.
  • Define where logical/code geometry ends and device placement begins.
  • Map data, ancilla, flag, and temporary qubits to physical resources.
  • Route and lower hardware-independent operations to the native gate set.
  • Produce a timed schedule with explicit idles and classical dependencies.
  • Preserve source/provenance links back to protocol phases, checks, and logical operations.
  • Validate connectivity, resource conflicts, timing, and feedback constraints.

Non-goals

  • Replacing existing QIS/HUGR/platform lowering.
  • Defining pulse-level control in the first iteration.
  • Baking one vendor's topology or calibration schema into QEC core types.

Acceptance criteria

  • One synthesized QEC circuit can be placed and lowered through an existing PECOS target/runtime path.
  • The result includes native operations, timing/idles, and a complete source map back to QEC semantic entities.
  • Invalid connectivity or overlapping resource use fails with actionable diagnostics.
  • Measurement and decoder-feedback dependencies are represented explicitly.
  • The boundary between reusable QEC implementation and target-specific mapping is documented.

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions