iqm-benchmarks 1.5__tar.gz → 1.7__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.

Potentially problematic release.


This version of iqm-benchmarks might be problematic. Click here for more details.

Files changed (74) hide show
  1. {iqm_benchmarks-1.5 → iqm_benchmarks-1.7}/CHANGELOG.rst +8 -0
  2. {iqm_benchmarks-1.5 → iqm_benchmarks-1.7}/PKG-INFO +7 -8
  3. {iqm_benchmarks-1.5 → iqm_benchmarks-1.7}/pyproject.toml +6 -7
  4. {iqm_benchmarks-1.5 → iqm_benchmarks-1.7}/src/iqm/benchmarks/entanglement/ghz.py +4 -3
  5. iqm_benchmarks-1.7/src/iqm/benchmarks/randomized_benchmarking/clifford_1q.pkl +0 -0
  6. iqm_benchmarks-1.7/src/iqm/benchmarks/randomized_benchmarking/clifford_2q.pkl +0 -0
  7. {iqm_benchmarks-1.5 → iqm_benchmarks-1.7}/src/iqm/benchmarks/randomized_benchmarking/randomized_benchmarking_common.py +6 -4
  8. {iqm_benchmarks-1.5 → iqm_benchmarks-1.7}/src/iqm/benchmarks/readout_mitigation.py +3 -8
  9. {iqm_benchmarks-1.5 → iqm_benchmarks-1.7}/src/iqm_benchmarks.egg-info/PKG-INFO +7 -8
  10. {iqm_benchmarks-1.5 → iqm_benchmarks-1.7}/src/iqm_benchmarks.egg-info/requires.txt +6 -7
  11. iqm_benchmarks-1.5/src/iqm/benchmarks/randomized_benchmarking/clifford_1q.pkl +0 -0
  12. iqm_benchmarks-1.5/src/iqm/benchmarks/randomized_benchmarking/clifford_2q.pkl +0 -0
  13. {iqm_benchmarks-1.5 → iqm_benchmarks-1.7}/.github/workflows/main.yml +0 -0
  14. {iqm_benchmarks-1.5 → iqm_benchmarks-1.7}/.github/workflows/publish.yml +0 -0
  15. {iqm_benchmarks-1.5 → iqm_benchmarks-1.7}/.github/workflows/tag_and_release.yml +0 -0
  16. {iqm_benchmarks-1.5 → iqm_benchmarks-1.7}/.gitignore +0 -0
  17. {iqm_benchmarks-1.5 → iqm_benchmarks-1.7}/LICENSE +0 -0
  18. {iqm_benchmarks-1.5 → iqm_benchmarks-1.7}/README.md +0 -0
  19. {iqm_benchmarks-1.5 → iqm_benchmarks-1.7}/benchmark_runner.py +0 -0
  20. {iqm_benchmarks-1.5 → iqm_benchmarks-1.7}/examples/example_clifford_rb.ipynb +0 -0
  21. {iqm_benchmarks-1.5 → iqm_benchmarks-1.7}/examples/example_clops.ipynb +0 -0
  22. {iqm_benchmarks-1.5 → iqm_benchmarks-1.7}/examples/example_experiment_all.ipynb +0 -0
  23. {iqm_benchmarks-1.5 → iqm_benchmarks-1.7}/examples/example_gst.ipynb +0 -0
  24. {iqm_benchmarks-1.5 → iqm_benchmarks-1.7}/examples/example_interleaved_rb.ipynb +0 -0
  25. {iqm_benchmarks-1.5 → iqm_benchmarks-1.7}/examples/example_mirror_rb.ipynb +0 -0
  26. {iqm_benchmarks-1.5 → iqm_benchmarks-1.7}/examples/example_qscore.ipynb +0 -0
  27. {iqm_benchmarks-1.5 → iqm_benchmarks-1.7}/examples/example_quantum_volume.ipynb +0 -0
  28. {iqm_benchmarks-1.5 → iqm_benchmarks-1.7}/examples/generate_2qubit_cliffords.ipynb +0 -0
  29. {iqm_benchmarks-1.5 → iqm_benchmarks-1.7}/examples/how_to_make_your_own_benchmark.ipynb +0 -0
  30. {iqm_benchmarks-1.5 → iqm_benchmarks-1.7}/scheduled_experiments/adonis/__init__.py +0 -0
  31. {iqm_benchmarks-1.5 → iqm_benchmarks-1.7}/scheduled_experiments/adonis/weekly.py +0 -0
  32. {iqm_benchmarks-1.5 → iqm_benchmarks-1.7}/setup.cfg +0 -0
  33. {iqm_benchmarks-1.5 → iqm_benchmarks-1.7}/src/iqm/benchmarks/__init__.py +0 -0
  34. {iqm_benchmarks-1.5 → iqm_benchmarks-1.7}/src/iqm/benchmarks/benchmark.py +0 -0
  35. {iqm_benchmarks-1.5 → iqm_benchmarks-1.7}/src/iqm/benchmarks/benchmark_definition.py +0 -0
  36. {iqm_benchmarks-1.5 → iqm_benchmarks-1.7}/src/iqm/benchmarks/benchmark_experiment.py +0 -0
  37. {iqm_benchmarks-1.5 → iqm_benchmarks-1.7}/src/iqm/benchmarks/compressive_gst/__init__.py +0 -0
  38. {iqm_benchmarks-1.5 → iqm_benchmarks-1.7}/src/iqm/benchmarks/compressive_gst/compressive_gst.py +0 -0
  39. {iqm_benchmarks-1.5 → iqm_benchmarks-1.7}/src/iqm/benchmarks/entanglement/__init__.py +0 -0
  40. {iqm_benchmarks-1.5 → iqm_benchmarks-1.7}/src/iqm/benchmarks/logging_config.py +0 -0
  41. {iqm_benchmarks-1.5 → iqm_benchmarks-1.7}/src/iqm/benchmarks/optimization/__init__.py +0 -0
  42. {iqm_benchmarks-1.5 → iqm_benchmarks-1.7}/src/iqm/benchmarks/optimization/qscore.py +0 -0
  43. {iqm_benchmarks-1.5 → iqm_benchmarks-1.7}/src/iqm/benchmarks/quantum_volume/__init__.py +0 -0
  44. {iqm_benchmarks-1.5 → iqm_benchmarks-1.7}/src/iqm/benchmarks/quantum_volume/clops.py +0 -0
  45. {iqm_benchmarks-1.5 → iqm_benchmarks-1.7}/src/iqm/benchmarks/quantum_volume/quantum_volume.py +0 -0
  46. {iqm_benchmarks-1.5 → iqm_benchmarks-1.7}/src/iqm/benchmarks/randomized_benchmarking/__init__.py +0 -0
  47. {iqm_benchmarks-1.5 → iqm_benchmarks-1.7}/src/iqm/benchmarks/randomized_benchmarking/clifford_rb/__init__.py +0 -0
  48. {iqm_benchmarks-1.5 → iqm_benchmarks-1.7}/src/iqm/benchmarks/randomized_benchmarking/clifford_rb/clifford_rb.py +0 -0
  49. {iqm_benchmarks-1.5 → iqm_benchmarks-1.7}/src/iqm/benchmarks/randomized_benchmarking/interleaved_rb/__init__.py +0 -0
  50. {iqm_benchmarks-1.5 → iqm_benchmarks-1.7}/src/iqm/benchmarks/randomized_benchmarking/interleaved_rb/interleaved_rb.py +0 -0
  51. {iqm_benchmarks-1.5 → iqm_benchmarks-1.7}/src/iqm/benchmarks/randomized_benchmarking/mirror_rb/__init__.py +0 -0
  52. {iqm_benchmarks-1.5 → iqm_benchmarks-1.7}/src/iqm/benchmarks/randomized_benchmarking/mirror_rb/mirror_rb.py +0 -0
  53. {iqm_benchmarks-1.5 → iqm_benchmarks-1.7}/src/iqm/benchmarks/randomized_benchmarking/multi_lmfit.py +0 -0
  54. {iqm_benchmarks-1.5 → iqm_benchmarks-1.7}/src/iqm/benchmarks/utils.py +0 -0
  55. {iqm_benchmarks-1.5 → iqm_benchmarks-1.7}/src/iqm_benchmarks.egg-info/SOURCES.txt +0 -0
  56. {iqm_benchmarks-1.5 → iqm_benchmarks-1.7}/src/iqm_benchmarks.egg-info/dependency_links.txt +0 -0
  57. {iqm_benchmarks-1.5 → iqm_benchmarks-1.7}/src/iqm_benchmarks.egg-info/top_level.txt +0 -0
  58. {iqm_benchmarks-1.5 → iqm_benchmarks-1.7}/src/mGST/LICENSE +0 -0
  59. {iqm_benchmarks-1.5 → iqm_benchmarks-1.7}/src/mGST/README.md +0 -0
  60. {iqm_benchmarks-1.5 → iqm_benchmarks-1.7}/src/mGST/additional_fns.py +0 -0
  61. {iqm_benchmarks-1.5 → iqm_benchmarks-1.7}/src/mGST/algorithm.py +0 -0
  62. {iqm_benchmarks-1.5 → iqm_benchmarks-1.7}/src/mGST/compatibility.py +0 -0
  63. {iqm_benchmarks-1.5 → iqm_benchmarks-1.7}/src/mGST/low_level_jit.py +0 -0
  64. {iqm_benchmarks-1.5 → iqm_benchmarks-1.7}/src/mGST/optimization.py +0 -0
  65. {iqm_benchmarks-1.5 → iqm_benchmarks-1.7}/src/mGST/qiskit_interface.py +0 -0
  66. {iqm_benchmarks-1.5 → iqm_benchmarks-1.7}/src/mGST/reporting/figure_gen.py +0 -0
  67. {iqm_benchmarks-1.5 → iqm_benchmarks-1.7}/src/mGST/reporting/reporting.py +0 -0
  68. {iqm_benchmarks-1.5 → iqm_benchmarks-1.7}/tag-from-pipeline.sh +0 -0
  69. {iqm_benchmarks-1.5 → iqm_benchmarks-1.7}/tests/test_ghz.py +0 -0
  70. {iqm_benchmarks-1.5 → iqm_benchmarks-1.7}/tests/test_gst.py +0 -0
  71. {iqm_benchmarks-1.5 → iqm_benchmarks-1.7}/tests/test_qscore.py +0 -0
  72. {iqm_benchmarks-1.5 → iqm_benchmarks-1.7}/tests/test_qv.py +0 -0
  73. {iqm_benchmarks-1.5 → iqm_benchmarks-1.7}/tests/test_rb.py +0 -0
  74. {iqm_benchmarks-1.5 → iqm_benchmarks-1.7}/tox.ini +0 -0
@@ -2,6 +2,14 @@
2
2
  Changelog
3
3
  =========
4
4
 
5
+ Version 1.7
6
+ ===========
7
+ * Remove explicit dependency on qiskit, instead taking it from qiskit-on-iqm.
8
+
9
+ Version 1.6
10
+ ===========
11
+ * Minor change in dependencies for compatibility.
12
+
5
13
  Version 1.5
6
14
  ===========
7
15
  * fit results are no longer `BenchmarkObservation`, and instead are moved into the datasets.
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: iqm-benchmarks
3
- Version: 1.5
3
+ Version: 1.7
4
4
  Summary: A package for implementation of Quantum Characterization, Verification and Validation (QCVV) techniques on IQM's hardware at gate level abstraction
5
5
  Author-email: IQM Finland Oy <developers@meetiqm.com>, Aniket Rath <aniket.rath@meetiqm.com>, Jami Rönkkö <jami@meetiqm.com>, Pedro Figueroa Romero <pedro.romero@meetiqm.com>, Vicente Pina Canelles <vicente.pina@meetiqm.com>, Raphael Brieger <raphael.brieger@meetiqm.com>, Stefan Seegerer <stefan.seegerer@meetiqm.com>
6
6
  Project-URL: Homepage, https://github.com/iqm-finland/iqm-benchmarks
@@ -11,15 +11,14 @@ Classifier: Intended Audience :: Science/Research
11
11
  Requires-Python: >=3.11
12
12
  Description-Content-Type: text/markdown
13
13
  License-File: LICENSE
14
- Requires-Dist: lmfit==1.3.1
15
- Requires-Dist: matplotlib==3.9.0
14
+ Requires-Dist: lmfit>=1.2
15
+ Requires-Dist: matplotlib<4,>=3.6.3
16
16
  Requires-Dist: more-itertools==10.1.0
17
- Requires-Dist: mthree==2.6.3
17
+ Requires-Dist: mthree<2.7,>=2.6
18
18
  Requires-Dist: networkx==3.3
19
- Requires-Dist: numpy>=1.25.2
20
- Requires-Dist: qiskit==0.45.3
21
- Requires-Dist: qiskit-aer==0.13.3
22
- Requires-Dist: qiskit-iqm==15.1
19
+ Requires-Dist: numpy<2.0,>=1.25.2
20
+ Requires-Dist: qiskit>=1.0
21
+ Requires-Dist: qiskit-iqm>=15.1
23
22
  Requires-Dist: scikit-optimize==0.10.2
24
23
  Requires-Dist: tabulate==0.9.0
25
24
  Requires-Dist: uncertainties==3.2.2
@@ -27,15 +27,14 @@ classifiers = [
27
27
  ]
28
28
  requires-python = ">=3.11"
29
29
  dependencies = [
30
- "lmfit == 1.3.1",
31
- "matplotlib == 3.9.0",
30
+ "lmfit >= 1.2",
31
+ "matplotlib >= 3.6.3, < 4",
32
32
  "more-itertools == 10.1.0",
33
- "mthree == 2.6.3",
33
+ "mthree >= 2.6, < 2.7",
34
34
  "networkx==3.3",
35
- "numpy >= 1.25.2",
36
- "qiskit == 0.45.3",
37
- "qiskit-aer == 0.13.3",
38
- "qiskit-iqm == 15.1",
35
+ "numpy >= 1.25.2, < 2.0",
36
+ "qiskit >= 1.0",
37
+ "qiskit-iqm >= 15.1",
39
38
  "scikit-optimize == 0.10.2",
40
39
  "tabulate == 0.9.0",
41
40
  "uncertainties == 3.2.2",
@@ -68,16 +68,17 @@ def append_rms(
68
68
  Returns:
69
69
  List[QuantumCircuit] of the original circuit with 1Q Clifford gates appended to it
70
70
  """
71
- rm_circuits = []
71
+ rm_circuits: list[QuantumCircuit] = []
72
72
  for _ in range(num_rms):
73
73
  rm_circ = circuit.copy()
74
74
  # It shouldn't matter if measurement bits get scrambled
75
75
  rm_circ.remove_final_measurements()
76
76
 
77
77
  active_qubits = set()
78
- for instruction in rm_circ.data:
78
+ data = rm_circ.data
79
+ for instruction in data:
79
80
  for qubit in instruction[1]:
80
- active_qubits.add(qubit.index)
81
+ active_qubits.add(rm_circ.find_bit(qubit)[0])
81
82
 
82
83
  for q in active_qubits:
83
84
  if backend is not None:
@@ -650,7 +650,6 @@ def plot_rb_decay(
650
650
  decay_rate[rb_type] = {
651
651
  str(q): dataset.attrs[q_idx][rb_type]["decay_rate"]["value"] for q_idx, q in enumerate(qubits_array)
652
652
  }
653
- print(dataset.attrs)
654
653
  offset[rb_type] = {
655
654
  str(q): dataset.attrs[q_idx][rb_type]["fit_offset"]["value"] for q_idx, q in enumerate(qubits_array)
656
655
  }
@@ -770,11 +769,14 @@ def plot_rb_decay(
770
769
  fidelity_stderr[key][str(qubits)] = np.nan
771
770
 
772
771
  if identifier == "mrb":
773
- plot_label = fr"$\overline{{F}}_\text{{MRB}} (n={len(qubits)})$ = {100.0 * fidelity_value[key][str(qubits)]:.2f} +/- {100.0 * fidelity_stderr[key][str(qubits)]:.2f} (%)"
772
+ plot_label = fr"$\overline{{F}}_{{MRB}} (n={len(qubits)})$ = {100.0 * fidelity_value[key][str(qubits)]:.2f} +/- {100.0 * fidelity_stderr[key][str(qubits)]:.2f} (%)"
774
773
  elif key == "interleaved":
775
- plot_label = fr"$\overline{{F}}_\text{{{interleaved_gate}}} ({qubits})$ = {100.0 * fidelity_value[key][str(qubits)]:.2f} +/- {100.0 * fidelity_stderr[key][str(qubits)]:.2f} (%)"
774
+ plot_label = fr"$\overline{{F}}_{{interleaved_gate}} ({qubits})$ = {100.0 * fidelity_value[key][str(qubits)]:.2f} +/- {100.0 * fidelity_stderr[key][str(qubits)]:.2f} (%)"
776
775
  else:
777
- plot_label = fr"$\overline{{F}}_\text{{Clifford}} ({qubits})$ = {100.0 * fidelity_value[key][str(qubits)]:.2f} +/- {100.0 * fidelity_stderr[key][str(qubits)]:.2f} (%)"
776
+ print(fidelity_value)
777
+ print(qubits)
778
+ print(key)
779
+ plot_label = fr"$\overline{{F}}_{{CRB}}$ = {100.0 * fidelity_value[key][str(qubits)]:.2f} +/- {100.0 * fidelity_stderr[key][str(qubits)]:.2f} (%)"
778
780
 
779
781
  ax.plot(
780
782
  x_linspace,
@@ -25,7 +25,7 @@ from mthree.classes import QuasiCollection
25
25
  from mthree.exceptions import M3Error
26
26
  from mthree.mitigation import _job_thread
27
27
  from mthree.utils import final_measurement_mapping
28
- from qiskit import QuantumCircuit, execute # pylint: disable = no-name-in-module
28
+ from qiskit import QuantumCircuit, transpile # pylint: disable = no-name-in-module
29
29
  from qiskit.providers import Backend, BackendV1, BackendV2
30
30
 
31
31
  from iqm.benchmarks.utils import get_iqm_backend, timeit
@@ -201,13 +201,8 @@ class M3IQM(mthree.M3Mitigation):
201
201
  jobs = []
202
202
  if not isinstance(self.system, Backend):
203
203
  for circs in circs_list:
204
- _job = execute(
205
- circs,
206
- self.system,
207
- optimization_level=0,
208
- shots=shots,
209
- rep_delay=self.rep_delay,
210
- )
204
+ transpiled_circuit = transpile(circs, self.system, optimization_level=0)
205
+ _job = self.system.run(transpiled_circuit, shots=shots, rep_delay=self.rep_delay)
211
206
  jobs.append(_job)
212
207
 
213
208
  # *****************************************
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: iqm-benchmarks
3
- Version: 1.5
3
+ Version: 1.7
4
4
  Summary: A package for implementation of Quantum Characterization, Verification and Validation (QCVV) techniques on IQM's hardware at gate level abstraction
5
5
  Author-email: IQM Finland Oy <developers@meetiqm.com>, Aniket Rath <aniket.rath@meetiqm.com>, Jami Rönkkö <jami@meetiqm.com>, Pedro Figueroa Romero <pedro.romero@meetiqm.com>, Vicente Pina Canelles <vicente.pina@meetiqm.com>, Raphael Brieger <raphael.brieger@meetiqm.com>, Stefan Seegerer <stefan.seegerer@meetiqm.com>
6
6
  Project-URL: Homepage, https://github.com/iqm-finland/iqm-benchmarks
@@ -11,15 +11,14 @@ Classifier: Intended Audience :: Science/Research
11
11
  Requires-Python: >=3.11
12
12
  Description-Content-Type: text/markdown
13
13
  License-File: LICENSE
14
- Requires-Dist: lmfit==1.3.1
15
- Requires-Dist: matplotlib==3.9.0
14
+ Requires-Dist: lmfit>=1.2
15
+ Requires-Dist: matplotlib<4,>=3.6.3
16
16
  Requires-Dist: more-itertools==10.1.0
17
- Requires-Dist: mthree==2.6.3
17
+ Requires-Dist: mthree<2.7,>=2.6
18
18
  Requires-Dist: networkx==3.3
19
- Requires-Dist: numpy>=1.25.2
20
- Requires-Dist: qiskit==0.45.3
21
- Requires-Dist: qiskit-aer==0.13.3
22
- Requires-Dist: qiskit-iqm==15.1
19
+ Requires-Dist: numpy<2.0,>=1.25.2
20
+ Requires-Dist: qiskit>=1.0
21
+ Requires-Dist: qiskit-iqm>=15.1
23
22
  Requires-Dist: scikit-optimize==0.10.2
24
23
  Requires-Dist: tabulate==0.9.0
25
24
  Requires-Dist: uncertainties==3.2.2
@@ -1,12 +1,11 @@
1
- lmfit==1.3.1
2
- matplotlib==3.9.0
1
+ lmfit>=1.2
2
+ matplotlib<4,>=3.6.3
3
3
  more-itertools==10.1.0
4
- mthree==2.6.3
4
+ mthree<2.7,>=2.6
5
5
  networkx==3.3
6
- numpy>=1.25.2
7
- qiskit==0.45.3
8
- qiskit-aer==0.13.3
9
- qiskit-iqm==15.1
6
+ numpy<2.0,>=1.25.2
7
+ qiskit>=1.0
8
+ qiskit-iqm>=15.1
10
9
  scikit-optimize==0.10.2
11
10
  tabulate==0.9.0
12
11
  uncertainties==3.2.2
File without changes
File without changes
File without changes
File without changes
File without changes