Reading a Compilation Report
A compilation report is a reproducibility record: input hash, compiler and target versions, seed, qubit mapping, and before/after metrics. It is trustworthy when you can trace every added gate to a specific translation or routing step and reconcile the arithmetic — and unauditable when the mapping or provenance is missing.
What is a compilation report?
A compilation report is the record a compiler emits alongside the output circuit. Its job is reproducibility: another engineer, given the report, should be able to rerun the compilation and get bit-identical output, and to check every claim in it. The essential fields:
- Input hash — a fingerprint (checksum) of the exact logical circuit compiled; if the input changes by one gate, the hash changes.
- Compiler version and target version — which software and which topology/native-gate/calibration snapshot were used. Both change over time.
- Seed — the starting value for any randomized heuristic, making its choices repeatable.
- Initial and final mapping — which physical wire held each logical qubit at the start, and where each ended up after routing.
- Metrics — gate counts by type, depth, two-qubit depth, and inserted SWAP count, before and after.
- Assumptions — the objective function and any calibration values the choices relied on, with timestamps.
Metrics without the surrounding provenance are just numbers; you cannot tell whether "depth 6" is good, bad, or even real.
You’ve read the opening of chapter 11 — 6 more sections follow, with worked examples and circuits you can run on the page. A free account unlocks every chapter of every course (paid plans aren’t live yet — early readers get everything free).