2 """Runtime output validation: exact-output schema and comparison-ready payloads. 4 Emits supported runtime outputs in the shared comparison-ready shape used by 5 later exact-baseline checks. Small cases include the explicit density matrix in 6 the emitted exact-output record; larger cases keep the same schema but omit the 10 python benchmarks/density_matrix/partitioned_runtime/runtime_output_validation.py 13 from __future__
import annotations
18 from pathlib
import Path
20 REPO_ROOT = Path(__file__).resolve().parents[3]
21 if str(REPO_ROOT)
not in sys.path:
22 sys.path.insert(0, str(REPO_ROOT))
24 from benchmarks.density_matrix.partitioned_runtime.common
import (
25 PHASE3_RUNTIME_ENERGY_TOL,
26 build_initial_parameters,
28 execute_partitioned_with_reference,
30 from benchmarks.density_matrix.planner_surface.common
import (
31 build_phase2_continuity_vqe,
32 build_software_metadata,
34 from benchmarks.density_matrix.planner_surface.workloads
import (
35 build_microcase_descriptor_set,
36 build_structured_descriptor_set,
38 from squander.partitioning.noisy_planner
import build_phase3_continuity_partition_descriptor_set
40 SUITE_NAME =
"phase3_partitioned_runtime_runtime_output" 41 ARTIFACT_FILENAME =
"runtime_output_bundle.json" 42 DEFAULT_OUTPUT_DIR = (
47 /
"partitioned_runtime" 50 ARTIFACT_CORE_FIELDS = (
69 continuity_energy_real: float |
None =
None,
73 runtime_payload = runtime_result.to_dict(
77 "case_name": case_name,
78 "case_kind": case_kind,
80 "workload_id": runtime_payload[
"workload_id"],
81 "qbit_num": runtime_payload[
"qbit_num"],
82 "runtime_path": runtime_payload[
"runtime_path"],
83 "exact_output_present": runtime_payload[
"summary"][
"exact_output_present"],
84 "matrix_included": runtime_payload[
"exact_output"][
"matrix_included"],
85 "exact_output": runtime_payload[
"exact_output"],
86 "result_output_pass": (
87 runtime_payload[
"summary"][
"exact_output_present"]
is True 88 and "shape" in runtime_payload[
"exact_output"]
89 and "trace_real" in runtime_payload[
"exact_output"]
90 and "trace_imag" in runtime_payload[
"exact_output"]
91 and "rho_is_valid" in runtime_payload[
"exact_output"]
94 if hamiltonian
is not None:
96 hamiltonian, runtime_result.density_matrix_numpy()
100 "partitioned_energy_real": partitioned_energy_real,
101 "partitioned_energy_imag": partitioned_energy_imag,
102 "continuity_energy_real": continuity_energy_real,
103 "absolute_energy_error": float(
104 abs(partitioned_energy_real - continuity_energy_real)
106 "continuity_output_pass": (
107 float(abs(partitioned_energy_real - continuity_energy_real))
108 <= PHASE3_RUNTIME_ENERGY_TOL
119 case_name=
"phase2_xxz_hea_q4_continuity",
120 case_kind=
"continuity",
122 hamiltonian=hamiltonian,
123 continuity_energy_real=float(continuity_vqe.Optimization_Problem(continuity_parameters)),
126 case_name=
"microcase_4q_partition_boundary_triplet",
127 case_kind=
"microcase",
129 "microcase_4q_partition_boundary_triplet" 133 case_name=
"layered_nearest_neighbor_q8_sparse_seed20260318",
134 case_kind=
"structured_family",
136 "layered_nearest_neighbor",
138 noise_pattern=
"sparse",
141 return [continuity_case, microcase_case, structured_case]
145 output_passes = sum(case[
"result_output_pass"]
for case
in cases)
146 continuity_output_passes = sum(
147 case.get(
"continuity_output_pass",
False)
for case
in cases
149 exact_output_key_sets = {frozenset(case[
"exact_output"].
keys())
for case
in cases}
151 "suite_name": SUITE_NAME,
153 if output_passes == len(cases)
154 and continuity_output_passes == 1
155 and len(exact_output_key_sets) == 1
159 "total_cases": len(cases),
160 "result_output_passes": output_passes,
161 "continuity_output_passes": continuity_output_passes,
162 "matrix_payload_cases": sum(case[
"matrix_included"]
for case
in cases),
163 "exact_output_schema_count": len(exact_output_key_sets),
167 missing = [field
for field
in ARTIFACT_CORE_FIELDS
if field
not in bundle]
170 "Runtime output bundle missing required fields: {}".format(
178 output_dir.mkdir(parents=
True, exist_ok=
True)
179 output_path = output_dir / ARTIFACT_FILENAME
180 output_path.write_text(json.dumps(bundle, indent=2, sort_keys=
True) +
"\n")
184 def main(argv: list[str] |
None =
None) -> int:
185 parser = argparse.ArgumentParser(description=__doc__)
189 default=DEFAULT_OUTPUT_DIR,
190 help=
"Directory to write the runtime output bundle into.",
195 help=
"Suppress per-case console output.",
197 args = parser.parse_args(argv)
206 "{case_name}: matrix_included={matrix_included}, output_pass={result_output_pass}".format(
210 print(
"Wrote {}".format(output_path))
212 return 0
if bundle[
"status"] ==
"pass" else 1
215 if __name__ ==
"__main__":
216 raise SystemExit(
main())
def build_artifact_bundle
def write_artifact_bundle
def build_microcase_descriptor_set
def build_phase2_continuity_vqe
def build_initial_parameters
def build_phase3_continuity_partition_descriptor_set
def build_software_metadata()
def execute_partitioned_with_reference
def _include_density_matrix
def build_structured_descriptor_set