Sequential Quantum Gate Decomposer  v1.9.6
Powerful decomposition of general unitarias into one- and two-qubit gates gates
performance_evidence/bundle.py
Go to the documentation of this file.
1 from __future__ import annotations
2 
3 from copy import deepcopy
4 from functools import lru_cache
5 
6 from benchmarks.density_matrix.correctness_evidence.bundle import (
7  build_correctness_evidence_correctness_package_payload,
8 )
9 from benchmarks.density_matrix.correctness_evidence.common import build_selected_candidate
10 from benchmarks.density_matrix.performance_evidence.common import (
11  PERFORMANCE_EVIDENCE_BENCHMARK_PACKAGE_SCHEMA_VERSION,
12  build_boundary_evidence,
13 )
14 from benchmarks.density_matrix.performance_evidence.records import (
15  build_performance_evidence_benchmark_records,
16 )
17 from benchmarks.density_matrix.planner_calibration.bundle import (
18  build_planner_calibration_calibration_bundle_payload,
19 )
20 
21 
22 @lru_cache(maxsize=1)
24  planner_calibration_bundle = build_planner_calibration_calibration_bundle_payload()
25  correctness_evidence_bundle = build_correctness_evidence_correctness_package_payload()
27  negative_cases = list(build_boundary_evidence())
28  return {
29  "schema_version": PERFORMANCE_EVIDENCE_BENCHMARK_PACKAGE_SCHEMA_VERSION,
30  "selected_candidate": build_selected_candidate(),
31  "cases": cases,
32  "negative_cases": negative_cases,
33  "required_artifacts": [
34  {
35  "artifact_id": "planner_calibration_calibration_bundle",
36  "schema_version": planner_calibration_bundle["schema_version"],
37  "selected_candidate_id": planner_calibration_bundle["selected_candidate"]["candidate_id"],
38  },
39  {
40  "artifact_id": "correctness_evidence_correctness_package",
41  "schema_version": correctness_evidence_bundle["schema_version"],
42  "counted_supported_cases": correctness_evidence_bundle["summary"]["counted_supported_cases"],
43  },
44  ],
45  "summary": {
46  "total_cases": len(cases),
47  "counted_supported_cases": sum(
48  case["counted_supported_benchmark_case"] for case in cases
49  ),
50  "diagnosis_only_cases": sum(case["diagnosis_only_case"] for case in cases),
51  "excluded_cases": sum(case["benchmark_status"] == "excluded" for case in cases),
52  "representative_review_cases": sum(
53  case["representative_review_case"] for case in cases
54  ),
55  "positive_threshold_pass_cases": sum(
56  case["positive_threshold_pass"] for case in cases
57  ),
58  "correctness_evidence_reference_available": sum(
59  case["correctness_evidence_reference_available"] for case in cases
60  ),
61  "correctness_evidence_boundary_cases": len(negative_cases),
62  },
63  }
64 
65 
def build_correctness_evidence_correctness_package_payload()
def _build_performance_evidence_benchmark_package_payload_cached()
def build_planner_calibration_calibration_bundle_payload()
def build_performance_evidence_benchmark_records()
def build_performance_evidence_benchmark_package_payload()