The RQM Ecosystem¶
RQM is a compiler-first quantum software platform built from focused, composable packages. Each package has a distinct responsibility. They are designed to work together without duplicating logic across boundaries.
Repository Roles¶
rqm-core — Canonical Math Engine¶
rqm-core defines the mathematical foundation of the platform. All quaternion operations, spinor normalizations, Bloch vector conversions, and SU(2) transformations originate here.
- No backend dependency — pure mathematics and linear algebra
- Single source of truth — all other packages import from
rqm-core, not the other way around - Well-typed and testable — designed for reliability and reproducibility
rqm-compiler — Instruction Compiler¶
rqm-compiler sits between the math layer and the execution backends. It accepts backend-agnostic programs and produces a normalized intermediate representation (IR) that any backend can consume.
- Depends on
rqm-corefor gate matrix resolution - Backend-independent — the compiler output is the same regardless of which backend will run the program
- Enables optimization passes that apply once across all backends
rqm-qiskit — Qiskit Execution Backend¶
rqm-qiskit translates the compiler IR into Qiskit circuits and runs them on the Aer simulator or IBM hardware.
- Depends on
rqm-compilerfor the normalized IR - Exposes
QiskitBackendwithrun_local()andrun_device()methods - Returns normalized results compatible with the RQM result contract
rqm-braket — AWS Braket Execution Backend¶
rqm-braket translates the compiler IR into Amazon Braket circuits and runs them locally or on AWS quantum hardware.
- Depends on
rqm-compilerfor the normalized IR - Exposes
BraketBackendwithrun_local()andrun_device()methods - Returns normalized results compatible with the RQM result contract
rqm-notebooks — Demos and Learning¶
rqm-notebooks is a curated collection of Jupyter notebooks that guide users from first principles through practical quantum circuit execution.
- Depends on
rqm-coreand execution backends - Structured as a learning path — notebooks are numbered and build on each other
- Serves as living documentation of how the platform is used in practice
Architecture Diagram¶
rqm-core → canonical math (quaternions, spinors, SU(2))
rqm-compiler → instruction generation and normalization
rqm-qiskit → Qiskit execution backend
rqm-braket → AWS Braket execution backend
┌──────────────────────────────────────────────────────────┐
│ rqm-docs │
│ (documentation, guides, API reference) │
└────────────────────────┬─────────────────────────────────┘
│ references
┌───────────────┼───────────────┐
▼ ▼ ▼
┌─────────────┐ ┌──────────────┐ ┌───────────────┐
│ rqm-core │ │ rqm-compiler │ │ rqm-notebooks │
│ (math/core) │◄│ (compiler) │ │ (learning) │
└─────────────┘ └──────┬───────┘ └───────────────┘
│
┌───────────┴───────────┐
▼ ▼
┌─────────────┐ ┌──────────────┐
│ rqm-qiskit │ │ rqm-braket │
│ (Qiskit) │ │ (Braket) │
└─────────────┘ └──────────────┘
Navigating the Stack¶
| Goal | Where to go |
|---|---|
| Understand the math | rqm-core source + Concepts |
| Understand the compiler | rqm-compiler + Architecture |
| Run on Qiskit | rqm-qiskit + API guide |
| Run on Braket | rqm-braket |
| Learn interactively | rqm-notebooks + Notebooks guide |
| Read architecture rationale | Architecture page |
| Install packages | Installation guide |