qmlkit 0.2.0__tar.gz → 0.3.0__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.
Files changed (221) hide show
  1. {qmlkit-0.2.0 → qmlkit-0.3.0}/.github/workflows/ci.yml +8 -6
  2. {qmlkit-0.2.0 → qmlkit-0.3.0}/AGENTS.md +4 -4
  3. {qmlkit-0.2.0 → qmlkit-0.3.0}/CHANGELOG.md +887 -0
  4. {qmlkit-0.2.0 → qmlkit-0.3.0}/HANDOFF.md +31 -2
  5. {qmlkit-0.2.0 → qmlkit-0.3.0}/PKG-INFO +112 -340
  6. {qmlkit-0.2.0 → qmlkit-0.3.0}/README.md +109 -339
  7. qmlkit-0.3.0/docs/about/index.md +17 -0
  8. {qmlkit-0.2.0 → qmlkit-0.3.0}/docs/about/validation.md +46 -29
  9. qmlkit-0.3.0/docs/guides/backends.md +317 -0
  10. {qmlkit-0.2.0 → qmlkit-0.3.0}/docs/guides/choosing-a-gradient.md +26 -2
  11. qmlkit-0.3.0/docs/guides/extending.md +498 -0
  12. {qmlkit-0.2.0 → qmlkit-0.3.0}/docs/guides/from-pennylane.md +55 -7
  13. {qmlkit-0.2.0 → qmlkit-0.3.0}/docs/guides/index.md +1 -0
  14. qmlkit-0.3.0/docs/guides/openqarp.md +296 -0
  15. {qmlkit-0.2.0 → qmlkit-0.3.0}/docs/guides/watching-a-run.md +9 -3
  16. {qmlkit-0.2.0 → qmlkit-0.3.0}/docs/index.md +3 -3
  17. {qmlkit-0.2.0 → qmlkit-0.3.0}/docs/install.md +14 -0
  18. {qmlkit-0.2.0 → qmlkit-0.3.0}/docs/llms-full.txt +1555 -110
  19. {qmlkit-0.2.0 → qmlkit-0.3.0}/docs/llms.txt +8 -5
  20. qmlkit-0.3.0/docs/reference/algorithms.md +130 -0
  21. qmlkit-0.3.0/docs/reference/analysis.md +108 -0
  22. qmlkit-0.3.0/docs/reference/backends.md +110 -0
  23. qmlkit-0.3.0/docs/reference/core.md +31 -0
  24. {qmlkit-0.2.0 → qmlkit-0.3.0}/docs/reference/encoding.md +6 -0
  25. {qmlkit-0.2.0 → qmlkit-0.3.0}/docs/reference/evaluation.md +16 -0
  26. qmlkit-0.3.0/docs/reference/kernels.md +41 -0
  27. {qmlkit-0.2.0 → qmlkit-0.3.0}/docs/tutorials/02-encoding-data.md +62 -0
  28. {qmlkit-0.2.0 → qmlkit-0.3.0}/docs/tutorials/03-gradients.md +1 -1
  29. {qmlkit-0.2.0 → qmlkit-0.3.0}/docs/tutorials/06-quantum-kernels.md +125 -4
  30. {qmlkit-0.2.0 → qmlkit-0.3.0}/docs/tutorials/08-trainability.md +54 -7
  31. {qmlkit-0.2.0 → qmlkit-0.3.0}/examples/accelerate_pennylane.py +32 -11
  32. {qmlkit-0.2.0 → qmlkit-0.3.0}/examples/benchmark_pennylane.py +46 -20
  33. qmlkit-0.3.0/examples/landscape_walkthrough.py +130 -0
  34. {qmlkit-0.2.0 → qmlkit-0.3.0}/mkdocs.yml +4 -0
  35. {qmlkit-0.2.0 → qmlkit-0.3.0}/pyproject.toml +9 -1
  36. qmlkit-0.3.0/scripts/check_doc_numbers.py +131 -0
  37. {qmlkit-0.2.0 → qmlkit-0.3.0}/scripts/generate_llms_txt.py +2 -2
  38. qmlkit-0.3.0/scripts/probe_openqarp.py +184 -0
  39. {qmlkit-0.2.0 → qmlkit-0.3.0}/scripts/verify_install.py +3 -1
  40. {qmlkit-0.2.0 → qmlkit-0.3.0}/src/qmlkit/__init__.py +43 -1
  41. {qmlkit-0.2.0 → qmlkit-0.3.0}/src/qmlkit/_aliases.py +11 -2
  42. {qmlkit-0.2.0 → qmlkit-0.3.0}/src/qmlkit/algorithms/adapt.py +40 -0
  43. {qmlkit-0.2.0 → qmlkit-0.3.0}/src/qmlkit/algorithms/autoencoder.py +25 -0
  44. {qmlkit-0.2.0 → qmlkit-0.3.0}/src/qmlkit/algorithms/clustering.py +21 -5
  45. {qmlkit-0.2.0 → qmlkit-0.3.0}/src/qmlkit/algorithms/qaoa.py +30 -2
  46. {qmlkit-0.2.0 → qmlkit-0.3.0}/src/qmlkit/algorithms/rl.py +27 -1
  47. {qmlkit-0.2.0 → qmlkit-0.3.0}/src/qmlkit/algorithms/vqe.py +10 -1
  48. {qmlkit-0.2.0 → qmlkit-0.3.0}/src/qmlkit/ansatz/library.py +15 -0
  49. qmlkit-0.3.0/src/qmlkit/core/backends/aer_backend.py +151 -0
  50. {qmlkit-0.2.0 → qmlkit-0.3.0}/src/qmlkit/core/backends/base.py +12 -3
  51. {qmlkit-0.2.0 → qmlkit-0.3.0}/src/qmlkit/core/backends/cirq_backend.py +20 -7
  52. qmlkit-0.3.0/src/qmlkit/core/backends/mps_backend.py +186 -0
  53. {qmlkit-0.2.0 → qmlkit-0.3.0}/src/qmlkit/core/backends/numpy_backend.py +123 -35
  54. qmlkit-0.3.0/src/qmlkit/core/backends/openqarp_backend.py +320 -0
  55. {qmlkit-0.2.0 → qmlkit-0.3.0}/src/qmlkit/core/backends/qiskit_backend.py +33 -7
  56. {qmlkit-0.2.0 → qmlkit-0.3.0}/src/qmlkit/core/backends/registry.py +13 -0
  57. {qmlkit-0.2.0 → qmlkit-0.3.0}/src/qmlkit/core/backends/spinqit_backend.py +5 -1
  58. {qmlkit-0.2.0 → qmlkit-0.3.0}/src/qmlkit/core/backends/torch_backend.py +8 -1
  59. {qmlkit-0.2.0 → qmlkit-0.3.0}/src/qmlkit/encoding/__init__.py +17 -0
  60. qmlkit-0.3.0/src/qmlkit/encoding/amplitude.py +411 -0
  61. {qmlkit-0.2.0 → qmlkit-0.3.0}/src/qmlkit/encoding/feature_maps.py +266 -3
  62. {qmlkit-0.2.0 → qmlkit-0.3.0}/src/qmlkit/encoding/hamiltonian.py +11 -3
  63. qmlkit-0.3.0/src/qmlkit/encoding/loading.py +256 -0
  64. {qmlkit-0.2.0 → qmlkit-0.3.0}/src/qmlkit/evaluate.py +2 -1
  65. {qmlkit-0.2.0 → qmlkit-0.3.0}/src/qmlkit/gradients/dispatch.py +20 -7
  66. {qmlkit-0.2.0 → qmlkit-0.3.0}/src/qmlkit/gradients/hadamard.py +6 -2
  67. {qmlkit-0.2.0 → qmlkit-0.3.0}/src/qmlkit/kernels/matrix.py +176 -5
  68. {qmlkit-0.2.0 → qmlkit-0.3.0}/src/qmlkit/kernels/models.py +27 -13
  69. qmlkit-0.3.0/src/qmlkit/landscape.py +1051 -0
  70. {qmlkit-0.2.0 → qmlkit-0.3.0}/src/qmlkit/metrics.py +36 -9
  71. {qmlkit-0.2.0 → qmlkit-0.3.0}/src/qmlkit/nn/layer.py +18 -3
  72. {qmlkit-0.2.0 → qmlkit-0.3.0}/src/qmlkit/nn/models.py +53 -17
  73. {qmlkit-0.2.0 → qmlkit-0.3.0}/src/qmlkit/optim.py +4 -1
  74. qmlkit-0.3.0/src/qmlkit/parallel.py +94 -0
  75. {qmlkit-0.2.0 → qmlkit-0.3.0}/src/qmlkit/progress.py +8 -0
  76. {qmlkit-0.2.0 → qmlkit-0.3.0}/src/qmlkit/provenance.py +6 -1
  77. qmlkit-0.3.0/src/qmlkit/recommend.py +332 -0
  78. {qmlkit-0.2.0 → qmlkit-0.3.0}/src/qmlkit/report.py +12 -2
  79. {qmlkit-0.2.0 → qmlkit-0.3.0}/src/qmlkit/search.py +16 -5
  80. {qmlkit-0.2.0 → qmlkit-0.3.0}/tests/test_agent_api.py +8 -1
  81. {qmlkit-0.2.0 → qmlkit-0.3.0}/tests/test_algorithms.py +17 -4
  82. qmlkit-0.3.0/tests/test_audit_regressions.py +314 -0
  83. {qmlkit-0.2.0 → qmlkit-0.3.0}/tests/test_batch.py +70 -7
  84. {qmlkit-0.2.0 → qmlkit-0.3.0}/tests/test_cross_backend.py +86 -6
  85. {qmlkit-0.2.0 → qmlkit-0.3.0}/tests/test_encoding.py +131 -0
  86. qmlkit-0.3.0/tests/test_fusion.py +248 -0
  87. {qmlkit-0.2.0 → qmlkit-0.3.0}/tests/test_kernels.py +132 -1
  88. qmlkit-0.3.0/tests/test_landscape.py +459 -0
  89. qmlkit-0.3.0/tests/test_loading_cost.py +109 -0
  90. {qmlkit-0.2.0 → qmlkit-0.3.0}/tests/test_nn.py +25 -0
  91. qmlkit-0.3.0/tests/test_openqarp_backend.py +221 -0
  92. qmlkit-0.3.0/tests/test_parallel.py +111 -0
  93. {qmlkit-0.2.0 → qmlkit-0.3.0}/tests/test_progress.py +56 -0
  94. {qmlkit-0.2.0 → qmlkit-0.3.0}/tests/test_provenance.py +1 -1
  95. qmlkit-0.2.0/docs/guides/backends.md +0 -182
  96. qmlkit-0.2.0/docs/guides/extending.md +0 -248
  97. qmlkit-0.2.0/docs/reference/algorithms.md +0 -78
  98. qmlkit-0.2.0/docs/reference/analysis.md +0 -45
  99. qmlkit-0.2.0/docs/reference/core.md +0 -40
  100. qmlkit-0.2.0/docs/reference/kernels.md +0 -15
  101. qmlkit-0.2.0/src/qmlkit/encoding/amplitude.py +0 -178
  102. {qmlkit-0.2.0 → qmlkit-0.3.0}/.gitattributes +0 -0
  103. {qmlkit-0.2.0 → qmlkit-0.3.0}/.github/workflows/docs.yml +0 -0
  104. {qmlkit-0.2.0 → qmlkit-0.3.0}/.github/workflows/release.yml +0 -0
  105. {qmlkit-0.2.0 → qmlkit-0.3.0}/.gitignore +0 -0
  106. {qmlkit-0.2.0 → qmlkit-0.3.0}/LICENSE +0 -0
  107. {qmlkit-0.2.0 → qmlkit-0.3.0}/NOTICE +0 -0
  108. {qmlkit-0.2.0 → qmlkit-0.3.0}/RELEASING.md +0 -0
  109. {qmlkit-0.2.0 → qmlkit-0.3.0}/docs/about/changelog.md +0 -0
  110. {qmlkit-0.2.0 → qmlkit-0.3.0}/docs/about/releasing.md +0 -0
  111. {qmlkit-0.2.0 → qmlkit-0.3.0}/docs/about/stability.md +0 -0
  112. {qmlkit-0.2.0 → qmlkit-0.3.0}/docs/guides/agents.md +0 -0
  113. {qmlkit-0.2.0 → qmlkit-0.3.0}/docs/guides/evaluation.md +0 -0
  114. {qmlkit-0.2.0 → qmlkit-0.3.0}/docs/guides/noise.md +0 -0
  115. {qmlkit-0.2.0 → qmlkit-0.3.0}/docs/guides/parameter-shift.md +0 -0
  116. {qmlkit-0.2.0 → qmlkit-0.3.0}/docs/javascripts/mathjax.js +0 -0
  117. {qmlkit-0.2.0 → qmlkit-0.3.0}/docs/reference/ansatz.md +0 -0
  118. {qmlkit-0.2.0 → qmlkit-0.3.0}/docs/reference/gradients.md +0 -0
  119. {qmlkit-0.2.0 → qmlkit-0.3.0}/docs/reference/index.md +0 -0
  120. {qmlkit-0.2.0 → qmlkit-0.3.0}/docs/reference/nn.md +0 -0
  121. {qmlkit-0.2.0 → qmlkit-0.3.0}/docs/studies/01-imbalanced-classification.md +0 -0
  122. {qmlkit-0.2.0 → qmlkit-0.3.0}/docs/studies/02-quantum-kernels.md +0 -0
  123. {qmlkit-0.2.0 → qmlkit-0.3.0}/docs/studies/03-regression.md +0 -0
  124. {qmlkit-0.2.0 → qmlkit-0.3.0}/docs/studies/04-chemistry.md +0 -0
  125. {qmlkit-0.2.0 → qmlkit-0.3.0}/docs/studies/05-beyond-classification.md +0 -0
  126. {qmlkit-0.2.0 → qmlkit-0.3.0}/docs/studies/06-clinical.md +0 -0
  127. {qmlkit-0.2.0 → qmlkit-0.3.0}/docs/studies/07-images-and-structure.md +0 -0
  128. {qmlkit-0.2.0 → qmlkit-0.3.0}/docs/studies/08-selective-classification.md +0 -0
  129. {qmlkit-0.2.0 → qmlkit-0.3.0}/docs/studies/index.md +0 -0
  130. {qmlkit-0.2.0 → qmlkit-0.3.0}/docs/tutorials/01-first-circuit.md +0 -0
  131. {qmlkit-0.2.0 → qmlkit-0.3.0}/docs/tutorials/04-ansatz-design.md +0 -0
  132. {qmlkit-0.2.0 → qmlkit-0.3.0}/docs/tutorials/05-training-torch.md +0 -0
  133. {qmlkit-0.2.0 → qmlkit-0.3.0}/docs/tutorials/07-reuploading.md +0 -0
  134. {qmlkit-0.2.0 → qmlkit-0.3.0}/docs/tutorials/index.md +0 -0
  135. {qmlkit-0.2.0 → qmlkit-0.3.0}/examples/compare_pennylane.py +0 -0
  136. {qmlkit-0.2.0 → qmlkit-0.3.0}/examples/credit_data.py +0 -0
  137. {qmlkit-0.2.0 → qmlkit-0.3.0}/examples/credit_risk.py +0 -0
  138. {qmlkit-0.2.0 → qmlkit-0.3.0}/examples/experiments.py +0 -0
  139. {qmlkit-0.2.0 → qmlkit-0.3.0}/examples/head_to_head.py +0 -0
  140. {qmlkit-0.2.0 → qmlkit-0.3.0}/examples/quickstart.py +0 -0
  141. {qmlkit-0.2.0 → qmlkit-0.3.0}/examples/toward_hardware.py +0 -0
  142. {qmlkit-0.2.0 → qmlkit-0.3.0}/scripts/probe_dispatch.py +0 -0
  143. {qmlkit-0.2.0 → qmlkit-0.3.0}/scripts/probe_fusion.py +0 -0
  144. {qmlkit-0.2.0 → qmlkit-0.3.0}/scripts/probe_qrack.py +0 -0
  145. {qmlkit-0.2.0 → qmlkit-0.3.0}/scripts/probe_threads.py +0 -0
  146. {qmlkit-0.2.0 → qmlkit-0.3.0}/scripts/proto_fusion.py +0 -0
  147. {qmlkit-0.2.0 → qmlkit-0.3.0}/scripts/proto_fusion2.py +0 -0
  148. {qmlkit-0.2.0 → qmlkit-0.3.0}/scripts/proto_fusion3.py +0 -0
  149. {qmlkit-0.2.0 → qmlkit-0.3.0}/src/qmlkit/algorithms/__init__.py +0 -0
  150. {qmlkit-0.2.0 → qmlkit-0.3.0}/src/qmlkit/algorithms/chemistry.py +0 -0
  151. {qmlkit-0.2.0 → qmlkit-0.3.0}/src/qmlkit/algorithms/hamiltonians.py +0 -0
  152. {qmlkit-0.2.0 → qmlkit-0.3.0}/src/qmlkit/algorithms/molecule.py +0 -0
  153. {qmlkit-0.2.0 → qmlkit-0.3.0}/src/qmlkit/ansatz/__init__.py +0 -0
  154. {qmlkit-0.2.0 → qmlkit-0.3.0}/src/qmlkit/ansatz/blocks.py +0 -0
  155. {qmlkit-0.2.0 → qmlkit-0.3.0}/src/qmlkit/ansatz/reupload.py +0 -0
  156. {qmlkit-0.2.0 → qmlkit-0.3.0}/src/qmlkit/baselines.py +0 -0
  157. {qmlkit-0.2.0 → qmlkit-0.3.0}/src/qmlkit/budget.py +0 -0
  158. {qmlkit-0.2.0 → qmlkit-0.3.0}/src/qmlkit/core/__init__.py +0 -0
  159. {qmlkit-0.2.0 → qmlkit-0.3.0}/src/qmlkit/core/backends/__init__.py +0 -0
  160. {qmlkit-0.2.0 → qmlkit-0.3.0}/src/qmlkit/core/backends/_sampling.py +0 -0
  161. {qmlkit-0.2.0 → qmlkit-0.3.0}/src/qmlkit/core/backends/cirq_density_backend.py +0 -0
  162. {qmlkit-0.2.0 → qmlkit-0.3.0}/src/qmlkit/core/backends/noisy.py +0 -0
  163. {qmlkit-0.2.0 → qmlkit-0.3.0}/src/qmlkit/core/backends/qiskit_aer_backend.py +0 -0
  164. {qmlkit-0.2.0 → qmlkit-0.3.0}/src/qmlkit/core/builder.py +0 -0
  165. {qmlkit-0.2.0 → qmlkit-0.3.0}/src/qmlkit/core/execute.py +0 -0
  166. {qmlkit-0.2.0 → qmlkit-0.3.0}/src/qmlkit/core/gates.py +0 -0
  167. {qmlkit-0.2.0 → qmlkit-0.3.0}/src/qmlkit/core/ir.py +0 -0
  168. {qmlkit-0.2.0 → qmlkit-0.3.0}/src/qmlkit/core/observables.py +0 -0
  169. {qmlkit-0.2.0 → qmlkit-0.3.0}/src/qmlkit/datasets.py +0 -0
  170. {qmlkit-0.2.0 → qmlkit-0.3.0}/src/qmlkit/diagnostics.py +0 -0
  171. {qmlkit-0.2.0 → qmlkit-0.3.0}/src/qmlkit/draw.py +0 -0
  172. {qmlkit-0.2.0 → qmlkit-0.3.0}/src/qmlkit/encoding/angle.py +0 -0
  173. {qmlkit-0.2.0 → qmlkit-0.3.0}/src/qmlkit/encoding/pipeline.py +0 -0
  174. {qmlkit-0.2.0 → qmlkit-0.3.0}/src/qmlkit/encoding/scaling.py +0 -0
  175. {qmlkit-0.2.0 → qmlkit-0.3.0}/src/qmlkit/fourier.py +0 -0
  176. {qmlkit-0.2.0 → qmlkit-0.3.0}/src/qmlkit/generative.py +0 -0
  177. {qmlkit-0.2.0 → qmlkit-0.3.0}/src/qmlkit/gradients/__init__.py +0 -0
  178. {qmlkit-0.2.0 → qmlkit-0.3.0}/src/qmlkit/gradients/adjoint.py +0 -0
  179. {qmlkit-0.2.0 → qmlkit-0.3.0}/src/qmlkit/gradients/batch.py +0 -0
  180. {qmlkit-0.2.0 → qmlkit-0.3.0}/src/qmlkit/gradients/parameter_shift.py +0 -0
  181. {qmlkit-0.2.0 → qmlkit-0.3.0}/src/qmlkit/gradients/rules.py +0 -0
  182. {qmlkit-0.2.0 → qmlkit-0.3.0}/src/qmlkit/gradients/spsa.py +0 -0
  183. {qmlkit-0.2.0 → qmlkit-0.3.0}/src/qmlkit/imbalance.py +0 -0
  184. {qmlkit-0.2.0 → qmlkit-0.3.0}/src/qmlkit/info.py +0 -0
  185. {qmlkit-0.2.0 → qmlkit-0.3.0}/src/qmlkit/interop.py +0 -0
  186. {qmlkit-0.2.0 → qmlkit-0.3.0}/src/qmlkit/kernels/__init__.py +0 -0
  187. {qmlkit-0.2.0 → qmlkit-0.3.0}/src/qmlkit/kernels/estimators.py +0 -0
  188. {qmlkit-0.2.0 → qmlkit-0.3.0}/src/qmlkit/nn/__init__.py +0 -0
  189. {qmlkit-0.2.0 → qmlkit-0.3.0}/src/qmlkit/nn/advanced.py +0 -0
  190. {qmlkit-0.2.0 → qmlkit-0.3.0}/src/qmlkit/nn/losses.py +0 -0
  191. {qmlkit-0.2.0 → qmlkit-0.3.0}/src/qmlkit/py.typed +0 -0
  192. {qmlkit-0.2.0 → qmlkit-0.3.0}/src/qmlkit/shadows.py +0 -0
  193. {qmlkit-0.2.0 → qmlkit-0.3.0}/src/qmlkit/utils/__init__.py +0 -0
  194. {qmlkit-0.2.0 → qmlkit-0.3.0}/src/qmlkit/utils/errors.py +0 -0
  195. {qmlkit-0.2.0 → qmlkit-0.3.0}/src/qmlkit/utils/shots.py +0 -0
  196. {qmlkit-0.2.0 → qmlkit-0.3.0}/tests/densesim.py +0 -0
  197. {qmlkit-0.2.0 → qmlkit-0.3.0}/tests/test_advanced.py +0 -0
  198. {qmlkit-0.2.0 → qmlkit-0.3.0}/tests/test_analysis.py +0 -0
  199. {qmlkit-0.2.0 → qmlkit-0.3.0}/tests/test_ansatz.py +0 -0
  200. {qmlkit-0.2.0 → qmlkit-0.3.0}/tests/test_baseline.py +0 -0
  201. {qmlkit-0.2.0 → qmlkit-0.3.0}/tests/test_budget.py +0 -0
  202. {qmlkit-0.2.0 → qmlkit-0.3.0}/tests/test_builder.py +0 -0
  203. {qmlkit-0.2.0 → qmlkit-0.3.0}/tests/test_contribution.py +0 -0
  204. {qmlkit-0.2.0 → qmlkit-0.3.0}/tests/test_core.py +0 -0
  205. {qmlkit-0.2.0 → qmlkit-0.3.0}/tests/test_docs.py +0 -0
  206. {qmlkit-0.2.0 → qmlkit-0.3.0}/tests/test_evaluate.py +0 -0
  207. {qmlkit-0.2.0 → qmlkit-0.3.0}/tests/test_grad_batch.py +0 -0
  208. {qmlkit-0.2.0 → qmlkit-0.3.0}/tests/test_gradient_methods.py +0 -0
  209. {qmlkit-0.2.0 → qmlkit-0.3.0}/tests/test_gradients.py +0 -0
  210. {qmlkit-0.2.0 → qmlkit-0.3.0}/tests/test_imbalance.py +0 -0
  211. {qmlkit-0.2.0 → qmlkit-0.3.0}/tests/test_import.py +0 -0
  212. {qmlkit-0.2.0 → qmlkit-0.3.0}/tests/test_injection.py +0 -0
  213. {qmlkit-0.2.0 → qmlkit-0.3.0}/tests/test_interop.py +0 -0
  214. {qmlkit-0.2.0 → qmlkit-0.3.0}/tests/test_noisy_backends.py +0 -0
  215. {qmlkit-0.2.0 → qmlkit-0.3.0}/tests/test_observables.py +0 -0
  216. {qmlkit-0.2.0 → qmlkit-0.3.0}/tests/test_optimizer_wiring.py +0 -0
  217. {qmlkit-0.2.0 → qmlkit-0.3.0}/tests/test_pennylane_parity.py +0 -0
  218. {qmlkit-0.2.0 → qmlkit-0.3.0}/tests/test_report.py +0 -0
  219. {qmlkit-0.2.0 → qmlkit-0.3.0}/tests/test_search.py +0 -0
  220. {qmlkit-0.2.0 → qmlkit-0.3.0}/tests/test_spinqit_backend.py +0 -0
  221. {qmlkit-0.2.0 → qmlkit-0.3.0}/tests/test_torture.py +0 -0
@@ -98,13 +98,15 @@ jobs:
98
98
  with:
99
99
  python-version: "3.12"
100
100
  cache: pip
101
- - run: pip install -e ".[dev,torch,qiskit,cirq,aer,sklearn,pennylane,viz]"
102
- # aer is here and not in the matrix above because its distribution and its
103
- # import name differ, and because it is the only way the qiskit-aer noisy
104
- # backend gets exercised at all: without it every test in
105
- # tests/test_noisy_backends.py skips itself and the job still goes green.
101
+ - run: pip install -e ".[dev,torch,qiskit,cirq,aer,openqarp,sklearn,pennylane,viz]"
102
+ # aer and openqarp are here and not in the matrix above because that job
103
+ # installs `[<sdk>]` and then imports `<sdk>`, and for these two the
104
+ # distribution and the module are different words (qiskit-aer/qiskit_aer,
105
+ # openqarp/qarp). aer is also the only way the qiskit-aer noisy backend gets
106
+ # exercised at all: without it every test in tests/test_noisy_backends.py
107
+ # skips itself and the job still goes green.
106
108
  - name: Confirm every extra actually imported
107
- run: python -c "import torch, qiskit, qiskit_aer, cirq, sklearn, pennylane, matplotlib"
109
+ run: python -c "import torch, qiskit, qiskit_aer, cirq, qarp, sklearn, pennylane, matplotlib"
108
110
  - name: Whole suite, no marker filter
109
111
  run: coverage run --parallel-mode --source=qmlkit -m pytest -q
110
112
  - uses: actions/upload-artifact@v4
@@ -11,17 +11,17 @@ wrong.
11
11
 
12
12
  ## The map
13
13
 
14
- 19,000 lines over 79 modules, 196 names in the top-level `__all__`. Two halves:
14
+ 21,000 lines over 86 modules, 217 names in the top-level `__all__`. Two halves:
15
15
 
16
16
  ```
17
17
  src/qmlkit/
18
18
  core/ the IR, and only the IR: ir · builder · gates · observables · execute
19
- core/backends/ seven of them. base.py supplies the semantics; a backend supplies
19
+ core/backends/ ten of them. base.py supplies the semantics; a backend supplies
20
20
  statevector() and inherits sampling, grouping, expectation, batching
21
21
  ansatz/ encoding/ gradients/ kernels/ nn/ the ML layer
22
22
  algorithms/ VQE · ADAPT · QAOA · chemistry · autoencoder · clustering · rl
23
- *.py the honesty layer — diagnostics · baselines · budget · evaluate ·
24
- imbalance · provenance · search · progress · report · metrics
23
+ *.py the honesty layer — diagnostics · landscape · baselines · budget ·
24
+ evaluate · imbalance · provenance · search · progress · report · metrics
25
25
  utils/errors.py how every "unknown X" error in the library is built
26
26
  _aliases.py PennyLane and Qiskit names, answered with the qmlkit one
27
27
  ```