Quantum Execution Blueprint
- Quantum Execution Blueprint is a design framework that defines typed data (QDT) and operator (QOD) descriptors to decouple algorithm intent from hardware specifics.
- Its methodology utilizes QDT, QOD, and context (CTX) descriptors to map high-level quantum operations onto both gate-model and annealing backends.
- The blueprint offers backend neutrality and portability, enabling seamless transitions between different quantum architectures in applications like Max-Cut.
A quantum middle layer is an abstraction and design approach that decouples “quantum program intent” from backend-specific execution details, enabling portability, composability, and backend neutrality across diverse quantum platforms. Inspired directly by HPC middleware concepts such as MPI datatypes, PETSc shell matrices, and FFTW “plans,” this blueprint structures all application semantics as backend-agnostic descriptors, with hardware-specific realization delegated to a minimal context/configuration layer. This architecture supports seamless re-targeting between paradigms such as gate-based simulation and quantum annealing, demonstrated in the context of Max-Cut via QAOA and Ising formulations, and is designed to evolve as quantum hardware matures (Markidis et al., 8 Oct 2025).
1. Core Architectural Concepts
The quantum middle layer is underpinned by a strict separation of four core artifacts:
- Typed Data Descriptors (QDTs): Define all register-related metadata, including width, encoding kind (e.g., ISING_SPIN, integer), endianness, and measurement semantics. Every backend and library uses the same QDT to ensure semantic consistency.
- Operator Descriptors (QODs): Encapsulate logical transformations — for example, QAOA ansatz or Ising problem statements — as named operations with declared input/output QDTs, parameters, and cost hints. No hardware or circuit-level details are permitted here.
- Context Descriptors (CTXs): Specify all backend-specific choices, such as engine kind (e.g., “gate.aer_simulator”, “anneal.simulated_annealer”), shot count, coupling map, and optimization levels. Swapping backend platforms requires only a change in CTX, not in QDT/QOD.
- Minimal Core Engine: Mediates between QDT/QOD/CTX, compiles or maps the operator onto the relevant backend, manages job submission, and decodes results according to operator result schemas.
The overall data flow is:
1 2 3 4 5 6 7 8 |
Application Front End
│
▼
[QDTs]───▶ [Middle Layer Core] ───▶ [QODs]
│ │ │
│ [CTXs] │
▼ │ ▼
Backend / Runtime (Qiskit-Aer, D-Wave, ...) |
2. Abstraction of Intent and Backend Separation
Intent specification is conducted exclusively via QDT and QOD, with no reference to underlying gate sets, pulse control, or anneal schedules. All execution specifics, such as gate set or coupling map (for Qiskit Aer) and annealing parameters (for D-Wave Ocean), are injected later via the CTX descriptor. This separation permits rapid re-targeting; e.g., a Max-Cut instance may be realized as QAOA or Ising Hamiltonian by simply providing a different operator in the same descriptor slot, with no modification to the QDT.
Example:
- QDT JSON for 4 ISING spins:
1 2 3 4 5 6 7 8 9
{ "$schema": "qdt-core.schema.json", "id": "ising_vars", "name": "s", "width": 4, "encoding_kind": "ISING_SPIN", "bit_order": "LSB_0", "measurement_semantics": "AS_BOOL" } - QOD JSON for QAOA operator:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23
{ "$schema": "qod.schema.json", "name": "MaxCut_QAOA", "rep_kind": "QAOA_TEMPLATE", "domain_qdt": "ising_vars", "codomain_qdt": "ising_vars", "params": { "p": 1, "gammas": [0.7], "betas": [1.2] }, "graph": { "edges": [[0,1],[1,2],[2,3],[3,0]], "weights": [1,1,1,1] }, "cost_hint": { "twoq": 4, "depth": 8 }, "result_schema": { "basis": "Z", "datatype": "AS_BOOL", "bit_significance": "LSB_0", "clbit_order": ["s[0]","s[1]","s[2]","s[3]"] } } - CTX for Qiskit Aer:
1 2 3 4 5 6 7 8 9 10 11 12 13
{ "$schema": "ctx.schema.json", "exec": { "engine": "gate.aer_simulator", "shots": 1024, "seed": 42, "target": { "basis_gates": ["sx","rz","cx"], "coupling_map": [[0,1],[1,2],[2,3],[3,0]] }, "options": { "optimization_level": 2 } } }
3. Middle Layer Engine Workflow
Given user input (QDT, QOD, CTX), the engine operates as follows:
- Intent ingestion: Receives QDT/QOD (algorithmic meaning) and CTX (backend policy).
- Realization selection: Based on
ctx["exec"] ["engine"], selects appropriate compilation/lowering path.- If gate-model, compiles the QOD into a circuit as per context.
- If annealing, translates QOD into a BQM and maps as per context.
- Job submission: Executes the compiled/mapped job on the targeted backend.
- Result decoding: Interprets backend results according to
result_schemain the QOD. - Portability guarantee: No QDT/QOD change is required when CTX or QOD kind is swapped for technologically distinct backends (e.g., Qiskit vs. D-Wave).
Python API sketch:
1 2 3 4 5 6 7 8 9 |
qdt = load_json("ising_vars.json") qod = load_json("MaxCut_QAOA.json") ctx = load_json("gate_context.json") # or annealer_context.json from qm_layer import MiddleLayer ml = MiddleLayer() job = ml.create_job(data_types=[qdt], operators=[qod], context=ctx) result = ml.submit(job).wait() print("Decoded bitstring distribution:", result.decoded_counts) |
4. Mathematical Formulations for Quantum Algorithms
The blueprint represents logical quantum algorithms as operator descriptors with precise mathematical definitions:
- Ising Problem (for Annealer):
- QAOA Ansatz (for Gate-model):
The p-layer QAOA state:
where and .
Intent-to-implementation mapping is always determined by the QOD + CTX combination, keeping user algorithms decoupled from hardware realization.
5. Portability, Composability, and Minimalism Principles
The blueprint enforces key HPC-style design properties:
- Portability: QDTs/QODs are hardware-agnostic; changing backend or technology requires only CTX replacement.
- Composability: Encapsulation of types/ops ensures interoperability between libraries (QFT, QAOA, arithmetic, etc.) with no endianness or register semantic conflicts.
- Backend neutrality: All hardware specialization (gates, pulses, anneal paths, QEC details) is confined to CTX/engine realization.
- Minimalism: Only three descriptor types (QDT, QOD, CTX) plus a minimal core engine are needed. Future extensions (pulse control, mid-circuit feedback, continuous-variable modes) are handled orthogonally, without inflating logical intent descriptors.
6. Application Scenarios and Backend Switching
The technology-agnostic middle layer supports a single intent (e.g., Max-Cut on a cycle graph with QDT/QOD) to be executed on:
- A gate-model backend (e.g., Qiskit Aer) by setting “engine”: “gate.aer_simulator” in CTX, QOD rep_kind: “QAOA_TEMPLATE.”
- An annealer (e.g., D-Wave Ocean) by setting “engine”: “anneal.simulated_annealer” in CTX, QOD rep_kind: “ISING_PROBLEM.”
No change to QDT is needed; only QOD kind and backend context are swapped.
7. Summary Table: Blueprint Artifacts
| Artifact | Role | Typical Contents |
|---|---|---|
| QDT | Typed data descriptors | width, encoding kind, measurement semantics |
| QOD | Operator descriptors | name, rep_kind, QDT refs, params, result_schema |
| CTX | Context descriptors | engine name, backend tunables, embedding policy |
| Core Engine | Realization, translation | invoke compilers, submit jobs, decode results |
Porting or scaling quantum software across platforms thus becomes a matter of context and operator instantiation, not of algorithmic redesign. This blueprint extends the architectural separation of intent and realization, long native to HPC middleware, into the quantum computing domain, providing a scalable and future-proof approach as quantum hardware ecosystems diversify (Markidis et al., 8 Oct 2025).