quantum-debugger 0.5.0__tar.gz → 0.6.1__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 (228) hide show
  1. quantum_debugger-0.6.1/AUTHORS.md +56 -0
  2. quantum_debugger-0.6.1/CHANGELOG.md +188 -0
  3. quantum_debugger-0.6.1/PKG-INFO +449 -0
  4. quantum_debugger-0.6.1/README.md +374 -0
  5. {quantum_debugger-0.5.0 → quantum_debugger-0.6.1}/quantum_debugger/__init__.py +38 -33
  6. {quantum_debugger-0.5.0 → quantum_debugger-0.6.1}/quantum_debugger/backends/__init__.py +60 -38
  7. quantum_debugger-0.6.1/quantum_debugger/backends/_cuda_dll.py +69 -0
  8. quantum_debugger-0.6.1/quantum_debugger/backends/aws_backend.py +286 -0
  9. {quantum_debugger-0.5.0 → quantum_debugger-0.6.1}/quantum_debugger/backends/base.py +15 -16
  10. quantum_debugger-0.6.1/quantum_debugger/backends/base_backend.py +69 -0
  11. {quantum_debugger-0.5.0 → quantum_debugger-0.6.1}/quantum_debugger/backends/cupy_backend.py +37 -32
  12. {quantum_debugger-0.5.0 → quantum_debugger-0.6.1}/quantum_debugger/backends/gpu_backend.py +71 -71
  13. quantum_debugger-0.6.1/quantum_debugger/backends/ibm_backend.py +205 -0
  14. {quantum_debugger-0.5.0 → quantum_debugger-0.6.1}/quantum_debugger/backends/numba_backend.py +34 -32
  15. {quantum_debugger-0.5.0 → quantum_debugger-0.6.1}/quantum_debugger/backends/numpy_backend.py +13 -13
  16. {quantum_debugger-0.5.0 → quantum_debugger-0.6.1}/quantum_debugger/backends/sparse_backend.py +32 -32
  17. quantum_debugger-0.6.1/quantum_debugger/benchmarks/__init__.py +54 -0
  18. quantum_debugger-0.6.1/quantum_debugger/benchmarks/optimization_benchmarks.py +150 -0
  19. quantum_debugger-0.6.1/quantum_debugger/benchmarks/qml_benchmarks.py +213 -0
  20. quantum_debugger-0.6.1/quantum_debugger/benchmarks/report_generator.py +195 -0
  21. quantum_debugger-0.6.1/quantum_debugger/benchmarks/scalability_benchmarks.py +175 -0
  22. {quantum_debugger-0.5.0 → quantum_debugger-0.6.1}/quantum_debugger/core/circuit.py +222 -133
  23. quantum_debugger-0.6.1/quantum_debugger/core/gates.py +125 -0
  24. {quantum_debugger-0.5.0 → quantum_debugger-0.6.1}/quantum_debugger/core/quantum_state.py +138 -90
  25. {quantum_debugger-0.5.0 → quantum_debugger-0.6.1}/quantum_debugger/debugger/breakpoints.py +35 -29
  26. {quantum_debugger-0.5.0 → quantum_debugger-0.6.1}/quantum_debugger/debugger/debugger.py +86 -71
  27. {quantum_debugger-0.5.0 → quantum_debugger-0.6.1}/quantum_debugger/debugger/inspector.py +82 -76
  28. quantum_debugger-0.6.1/quantum_debugger/gpu/__init__.py +25 -0
  29. quantum_debugger-0.6.1/quantum_debugger/gpu/memory.py +197 -0
  30. quantum_debugger-0.6.1/quantum_debugger/gpu/mixed_precision.py +265 -0
  31. quantum_debugger-0.6.1/quantum_debugger/gpu/multi_gpu.py +265 -0
  32. quantum_debugger-0.6.1/quantum_debugger/integrations/__init__.py +46 -0
  33. quantum_debugger-0.6.1/quantum_debugger/integrations/cirq_adapter.py +288 -0
  34. quantum_debugger-0.6.1/quantum_debugger/integrations/cirq_bridge.py +196 -0
  35. quantum_debugger-0.6.1/quantum_debugger/integrations/pennylane_bridge.py +195 -0
  36. {quantum_debugger-0.5.0 → quantum_debugger-0.6.1}/quantum_debugger/integrations/qiskit_adapter.py +60 -57
  37. quantum_debugger-0.6.1/quantum_debugger/integrations/qiskit_bridge.py +184 -0
  38. {quantum_debugger-0.5.0 → quantum_debugger-0.6.1}/quantum_debugger/mitigation/__init__.py +7 -7
  39. {quantum_debugger-0.5.0 → quantum_debugger-0.6.1}/quantum_debugger/mitigation/core/__init__.py +5 -5
  40. {quantum_debugger-0.5.0 → quantum_debugger-0.6.1}/quantum_debugger/mitigation/core/extrapolator.py +86 -99
  41. {quantum_debugger-0.5.0 → quantum_debugger-0.6.1}/quantum_debugger/mitigation/core/folder.py +96 -92
  42. {quantum_debugger-0.5.0 → quantum_debugger-0.6.1}/quantum_debugger/mitigation/zne.py +63 -64
  43. {quantum_debugger-0.5.0 → quantum_debugger-0.6.1}/quantum_debugger/noise/__init__.py +24 -24
  44. {quantum_debugger-0.5.0 → quantum_debugger-0.6.1}/quantum_debugger/noise/composite_noise.py +9 -10
  45. {quantum_debugger-0.5.0 → quantum_debugger-0.6.1}/quantum_debugger/noise/hardware_profiles.py +126 -149
  46. {quantum_debugger-0.5.0 → quantum_debugger-0.6.1}/quantum_debugger/noise/noise_helpers.py +26 -21
  47. {quantum_debugger-0.5.0 → quantum_debugger-0.6.1}/quantum_debugger/noise/noise_models.py +79 -78
  48. {quantum_debugger-0.5.0 → quantum_debugger-0.6.1}/quantum_debugger/noise/stochastic_sampler.py +45 -41
  49. quantum_debugger-0.6.1/quantum_debugger/optimization/__init__.py +33 -0
  50. quantum_debugger-0.6.1/quantum_debugger/optimization/circuit_compiler.py +142 -0
  51. quantum_debugger-0.6.1/quantum_debugger/optimization/gate_reduction.py +270 -0
  52. quantum_debugger-0.6.1/quantum_debugger/optimization/optimization_passes.py +194 -0
  53. quantum_debugger-0.6.1/quantum_debugger/optimization/transpiler.py +241 -0
  54. {quantum_debugger-0.5.0 → quantum_debugger-0.6.1}/quantum_debugger/parallel/__init__.py +2 -2
  55. {quantum_debugger-0.5.0 → quantum_debugger-0.6.1}/quantum_debugger/parallel/executor.py +51 -40
  56. {quantum_debugger-0.5.0 → quantum_debugger-0.6.1}/quantum_debugger/profiler/metrics.py +49 -45
  57. {quantum_debugger-0.5.0 → quantum_debugger-0.6.1}/quantum_debugger/profiler/profiler.py +49 -46
  58. {quantum_debugger-0.5.0 → quantum_debugger-0.6.1}/quantum_debugger/qml/__init__.py +8 -4
  59. quantum_debugger-0.6.1/quantum_debugger/qml/algorithms/__init__.py +12 -0
  60. {quantum_debugger-0.5.0 → quantum_debugger-0.6.1}/quantum_debugger/qml/algorithms/qaoa.py +84 -99
  61. quantum_debugger-0.6.1/quantum_debugger/qml/algorithms/qgan.py +246 -0
  62. quantum_debugger-0.6.1/quantum_debugger/qml/algorithms/qrl.py +326 -0
  63. quantum_debugger-0.6.1/quantum_debugger/qml/algorithms/vqe.py +161 -0
  64. {quantum_debugger-0.5.0 → quantum_debugger-0.6.1}/quantum_debugger/qml/ansatz/__init__.py +11 -7
  65. {quantum_debugger-0.5.0 → quantum_debugger-0.6.1}/quantum_debugger/qml/ansatz/excitation_preserving.py +50 -44
  66. {quantum_debugger-0.5.0 → quantum_debugger-0.6.1}/quantum_debugger/qml/ansatz/real_amplitudes.py +35 -33
  67. {quantum_debugger-0.5.0 → quantum_debugger-0.6.1}/quantum_debugger/qml/ansatz/strongly_entangling.py +40 -39
  68. {quantum_debugger-0.5.0 → quantum_debugger-0.6.1}/quantum_debugger/qml/ansatz/two_local.py +53 -50
  69. quantum_debugger-0.6.1/quantum_debugger/qml/automl/__init__.py +27 -0
  70. quantum_debugger-0.6.1/quantum_debugger/qml/automl/ansatz_selector.py +124 -0
  71. quantum_debugger-0.6.1/quantum_debugger/qml/automl/architecture_search.py +160 -0
  72. quantum_debugger-0.6.1/quantum_debugger/qml/automl/auto_qnn.py +273 -0
  73. quantum_debugger-0.6.1/quantum_debugger/qml/automl/hyperparameter_tuner.py +187 -0
  74. {quantum_debugger-0.5.0 → quantum_debugger-0.6.1}/quantum_debugger/qml/data/dataset.py +47 -47
  75. {quantum_debugger-0.5.0 → quantum_debugger-0.6.1}/quantum_debugger/qml/data/feature_maps.py +57 -57
  76. quantum_debugger-0.6.1/quantum_debugger/qml/error_mitigation/__init__.py +11 -0
  77. {quantum_debugger-0.5.0 → quantum_debugger-0.6.1}/quantum_debugger/qml/error_mitigation/zne.py +126 -96
  78. {quantum_debugger-0.5.0 → quantum_debugger-0.6.1}/quantum_debugger/qml/gates/__init__.py +1 -1
  79. {quantum_debugger-0.5.0 → quantum_debugger-0.6.1}/quantum_debugger/qml/gates/parameterized.py +46 -48
  80. {quantum_debugger-0.5.0 → quantum_debugger-0.6.1}/quantum_debugger/qml/hamiltonians/__init__.py +1 -1
  81. {quantum_debugger-0.5.0 → quantum_debugger-0.6.1}/quantum_debugger/qml/hamiltonians/molecular.py +186 -175
  82. quantum_debugger-0.6.1/quantum_debugger/qml/hybrid/__init__.py +48 -0
  83. quantum_debugger-0.6.1/quantum_debugger/qml/hybrid/layers.py +415 -0
  84. quantum_debugger-0.6.1/quantum_debugger/qml/hybrid/pytorch_integration.py +209 -0
  85. quantum_debugger-0.6.1/quantum_debugger/qml/hybrid/tensorflow_integration.py +264 -0
  86. quantum_debugger-0.6.1/quantum_debugger/qml/kernels/__init__.py +37 -0
  87. quantum_debugger-0.6.1/quantum_debugger/qml/kernels/alignment.py +173 -0
  88. quantum_debugger-0.6.1/quantum_debugger/qml/kernels/qsvm.py +218 -0
  89. quantum_debugger-0.6.1/quantum_debugger/qml/kernels/quantum_kernel.py +256 -0
  90. quantum_debugger-0.6.1/quantum_debugger/qml/mitigation/__init__.py +40 -0
  91. quantum_debugger-0.6.1/quantum_debugger/qml/mitigation/cdr.py +277 -0
  92. quantum_debugger-0.6.1/quantum_debugger/qml/mitigation/error_characterization.py +243 -0
  93. quantum_debugger-0.6.1/quantum_debugger/qml/mitigation/noise_models.py +295 -0
  94. quantum_debugger-0.6.1/quantum_debugger/qml/mitigation/pec.py +346 -0
  95. quantum_debugger-0.6.1/quantum_debugger/qml/optimizers/__init__.py +30 -0
  96. {quantum_debugger-0.5.0 → quantum_debugger-0.6.1}/quantum_debugger/qml/optimizers/advanced.py +190 -142
  97. quantum_debugger-0.6.1/quantum_debugger/qml/optimizers/basics.py +98 -0
  98. {quantum_debugger-0.5.0 → quantum_debugger-0.6.1}/quantum_debugger/qml/qnn/__init__.py +12 -12
  99. {quantum_debugger-0.5.0 → quantum_debugger-0.6.1}/quantum_debugger/qml/qnn/base.py +25 -23
  100. {quantum_debugger-0.5.0 → quantum_debugger-0.6.1}/quantum_debugger/qml/qnn/encoding.py +18 -20
  101. {quantum_debugger-0.5.0 → quantum_debugger-0.6.1}/quantum_debugger/qml/qnn/losses.py +29 -28
  102. {quantum_debugger-0.5.0 → quantum_debugger-0.6.1}/quantum_debugger/qml/qnn/network.py +137 -102
  103. {quantum_debugger-0.5.0 → quantum_debugger-0.6.1}/quantum_debugger/qml/qnn/variational.py +30 -32
  104. {quantum_debugger-0.5.0 → quantum_debugger-0.6.1}/quantum_debugger/qml/training/__init__.py +44 -40
  105. quantum_debugger-0.6.1/quantum_debugger/qml/transfer/__init__.py +23 -0
  106. quantum_debugger-0.6.1/quantum_debugger/qml/transfer/fine_tuning.py +226 -0
  107. quantum_debugger-0.6.1/quantum_debugger/qml/transfer/model_zoo.py +213 -0
  108. quantum_debugger-0.6.1/quantum_debugger/qml/transfer/pretrained.py +271 -0
  109. quantum_debugger-0.6.1/quantum_debugger/qml/transfer/serialization.py +187 -0
  110. {quantum_debugger-0.5.0 → quantum_debugger-0.6.1}/quantum_debugger/qml/utils/gradients.py +31 -38
  111. quantum_debugger-0.6.1/quantum_debugger/visualization/bloch_sphere.py +187 -0
  112. {quantum_debugger-0.5.0 → quantum_debugger-0.6.1}/quantum_debugger/visualization/state_viz.py +91 -87
  113. quantum_debugger-0.6.1/quantum_debugger.egg-info/PKG-INFO +449 -0
  114. {quantum_debugger-0.5.0 → quantum_debugger-0.6.1}/quantum_debugger.egg-info/SOURCES.txt +59 -3
  115. quantum_debugger-0.6.1/quantum_debugger.egg-info/requires.txt +43 -0
  116. {quantum_debugger-0.5.0 → quantum_debugger-0.6.1}/setup.py +41 -3
  117. {quantum_debugger-0.5.0 → quantum_debugger-0.6.1}/tests/cirq/test_cirq_advanced.py +155 -154
  118. {quantum_debugger-0.5.0 → quantum_debugger-0.6.1}/tests/cirq/test_cirq_edge_cases.py +131 -129
  119. {quantum_debugger-0.5.0 → quantum_debugger-0.6.1}/tests/cirq/test_cirq_integration.py +117 -108
  120. {quantum_debugger-0.5.0 → quantum_debugger-0.6.1}/tests/conftest.py +17 -0
  121. {quantum_debugger-0.5.0 → quantum_debugger-0.6.1}/tests/integration/test_integration.py +115 -109
  122. {quantum_debugger-0.5.0 → quantum_debugger-0.6.1}/tests/integration/test_qiskit_integration.py +60 -59
  123. quantum_debugger-0.6.1/tests/qml/test_advanced_algorithms.py +236 -0
  124. {quantum_debugger-0.5.0 → quantum_debugger-0.6.1}/tests/qml/test_advanced_optimizers.py +115 -110
  125. {quantum_debugger-0.5.0 → quantum_debugger-0.6.1}/tests/qml/test_ansatz_library.py +74 -81
  126. quantum_debugger-0.6.1/tests/qml/test_automl.py +113 -0
  127. {quantum_debugger-0.5.0 → quantum_debugger-0.6.1}/tests/qml/test_dataset.py +129 -117
  128. {quantum_debugger-0.5.0 → quantum_debugger-0.6.1}/tests/qml/test_edge_cases.py +149 -148
  129. {quantum_debugger-0.5.0 → quantum_debugger-0.6.1}/tests/qml/test_hamiltonians.py +105 -106
  130. quantum_debugger-0.6.1/tests/qml/test_hybrid.py +342 -0
  131. quantum_debugger-0.6.1/tests/qml/test_kernels.py +236 -0
  132. quantum_debugger-0.6.1/tests/qml/test_mitigation.py +288 -0
  133. {quantum_debugger-0.5.0 → quantum_debugger-0.6.1}/tests/qml/test_qaoa.py +65 -63
  134. {quantum_debugger-0.5.0 → quantum_debugger-0.6.1}/tests/qml/test_qml_parameterized_gates.py +75 -83
  135. {quantum_debugger-0.5.0 → quantum_debugger-0.6.1}/tests/qml/test_qnn.py +119 -122
  136. quantum_debugger-0.6.1/tests/qml/test_transfer.py +219 -0
  137. quantum_debugger-0.6.1/tests/qml/test_transfer_extended.py +302 -0
  138. {quantum_debugger-0.5.0 → quantum_debugger-0.6.1}/tests/qml/test_vqe.py +64 -67
  139. {quantum_debugger-0.5.0 → quantum_debugger-0.6.1}/tests/qml/test_zne.py +47 -51
  140. quantum_debugger-0.6.1/tests/test_backends.py +142 -0
  141. quantum_debugger-0.6.1/tests/test_benchmarks.py +138 -0
  142. quantum_debugger-0.6.1/tests/test_integrations.py +178 -0
  143. quantum_debugger-0.6.1/tests/test_optimization.py +315 -0
  144. {quantum_debugger-0.5.0 → quantum_debugger-0.6.1}/tests/unit/test_advanced.py +103 -102
  145. {quantum_debugger-0.5.0 → quantum_debugger-0.6.1}/tests/unit/test_backend_comprehensive.py +80 -54
  146. {quantum_debugger-0.5.0 → quantum_debugger-0.6.1}/tests/unit/test_backend_integration.py +20 -20
  147. {quantum_debugger-0.5.0 → quantum_debugger-0.6.1}/tests/unit/test_backends.py +15 -15
  148. {quantum_debugger-0.5.0 → quantum_debugger-0.6.1}/tests/unit/test_backends_advanced.py +42 -40
  149. {quantum_debugger-0.5.0 → quantum_debugger-0.6.1}/tests/unit/test_backends_comprehensive.py +33 -30
  150. {quantum_debugger-0.5.0 → quantum_debugger-0.6.1}/tests/unit/test_backends_fast.py +32 -27
  151. {quantum_debugger-0.5.0 → quantum_debugger-0.6.1}/tests/unit/test_circuit_noise.py +36 -33
  152. {quantum_debugger-0.5.0 → quantum_debugger-0.6.1}/tests/unit/test_circuit_noise_advanced.py +138 -129
  153. {quantum_debugger-0.5.0 → quantum_debugger-0.6.1}/tests/unit/test_circuit_noise_unique.py +175 -166
  154. {quantum_debugger-0.5.0 → quantum_debugger-0.6.1}/tests/unit/test_compatibility.py +22 -15
  155. {quantum_debugger-0.5.0 → quantum_debugger-0.6.1}/tests/unit/test_comprehensive.py +155 -147
  156. {quantum_debugger-0.5.0 → quantum_debugger-0.6.1}/tests/unit/test_distribution.py +35 -34
  157. {quantum_debugger-0.5.0 → quantum_debugger-0.6.1}/tests/unit/test_docstrings.py +27 -16
  158. {quantum_debugger-0.5.0 → quantum_debugger-0.6.1}/tests/unit/test_error_handling.py +57 -58
  159. {quantum_debugger-0.5.0 → quantum_debugger-0.6.1}/tests/unit/test_extreme.py +143 -140
  160. {quantum_debugger-0.5.0 → quantum_debugger-0.6.1}/tests/unit/test_gpu_quick.py +14 -12
  161. {quantum_debugger-0.5.0 → quantum_debugger-0.6.1}/tests/unit/test_hardware_profiles_extended.py +48 -38
  162. {quantum_debugger-0.5.0 → quantum_debugger-0.6.1}/tests/unit/test_hardware_profiles_phase3.py +38 -32
  163. {quantum_debugger-0.5.0 → quantum_debugger-0.6.1}/tests/unit/test_mitigation_comprehensive.py +114 -129
  164. {quantum_debugger-0.5.0 → quantum_debugger-0.6.1}/tests/unit/test_mitigation_final.py +53 -65
  165. {quantum_debugger-0.5.0 → quantum_debugger-0.6.1}/tests/unit/test_mitigation_observables.py +60 -59
  166. {quantum_debugger-0.5.0 → quantum_debugger-0.6.1}/tests/unit/test_mitigation_zne.py +47 -46
  167. {quantum_debugger-0.5.0 → quantum_debugger-0.6.1}/tests/unit/test_noise.py +29 -22
  168. {quantum_debugger-0.5.0 → quantum_debugger-0.6.1}/tests/unit/test_noise_advanced.py +175 -169
  169. {quantum_debugger-0.5.0 → quantum_debugger-0.6.1}/tests/unit/test_noise_extreme.py +145 -139
  170. {quantum_debugger-0.5.0 → quantum_debugger-0.6.1}/tests/unit/test_noise_final.py +144 -139
  171. {quantum_debugger-0.5.0 → quantum_debugger-0.6.1}/tests/unit/test_noise_performance.py +128 -123
  172. {quantum_debugger-0.5.0 → quantum_debugger-0.6.1}/tests/unit/test_noise_quantum_info.py +148 -139
  173. {quantum_debugger-0.5.0 → quantum_debugger-0.6.1}/tests/unit/test_noise_ultimate.py +41 -40
  174. {quantum_debugger-0.5.0 → quantum_debugger-0.6.1}/tests/unit/test_parallel.py +45 -43
  175. {quantum_debugger-0.5.0 → quantum_debugger-0.6.1}/tests/unit/test_performance.py +20 -20
  176. {quantum_debugger-0.5.0 → quantum_debugger-0.6.1}/tests/unit/test_production.py +141 -133
  177. {quantum_debugger-0.5.0 → quantum_debugger-0.6.1}/tests/unit/test_qiskit_complex.py +68 -67
  178. {quantum_debugger-0.5.0 → quantum_debugger-0.6.1}/tests/unit/test_qiskit_extreme.py +110 -104
  179. {quantum_debugger-0.5.0 → quantum_debugger-0.6.1}/tests/unit/test_qiskit_ultra.py +76 -73
  180. {quantum_debugger-0.5.0 → quantum_debugger-0.6.1}/tests/unit/test_qml_advanced.py +57 -55
  181. {quantum_debugger-0.5.0 → quantum_debugger-0.6.1}/tests/unit/test_qml_comprehensive.py +81 -79
  182. {quantum_debugger-0.5.0 → quantum_debugger-0.6.1}/tests/unit/test_qml_memory.py +71 -65
  183. {quantum_debugger-0.5.0 → quantum_debugger-0.6.1}/tests/unit/test_qml_threading.py +50 -50
  184. {quantum_debugger-0.5.0 → quantum_debugger-0.6.1}/tests/unit/test_qml_tricky.py +90 -86
  185. {quantum_debugger-0.5.0 → quantum_debugger-0.6.1}/tests/unit/test_quickstart.py +30 -29
  186. {quantum_debugger-0.5.0 → quantum_debugger-0.6.1}/tests/unit/test_validation.py +118 -117
  187. quantum_debugger-0.5.0/CHANGELOG.md +0 -110
  188. quantum_debugger-0.5.0/PKG-INFO +0 -572
  189. quantum_debugger-0.5.0/README.md +0 -520
  190. quantum_debugger-0.5.0/quantum_debugger/core/gates.py +0 -141
  191. quantum_debugger-0.5.0/quantum_debugger/integrations/__init__.py +0 -8
  192. quantum_debugger-0.5.0/quantum_debugger/integrations/cirq_adapter.py +0 -270
  193. quantum_debugger-0.5.0/quantum_debugger/qml/algorithms/__init__.py +0 -11
  194. quantum_debugger-0.5.0/quantum_debugger/qml/algorithms/vqe.py +0 -220
  195. quantum_debugger-0.5.0/quantum_debugger/qml/error_mitigation/__init__.py +0 -15
  196. quantum_debugger-0.5.0/quantum_debugger/qml/optimizers/__init__.py +0 -24
  197. quantum_debugger-0.5.0/quantum_debugger/visualization/bloch_sphere.py +0 -152
  198. quantum_debugger-0.5.0/quantum_debugger.egg-info/PKG-INFO +0 -572
  199. quantum_debugger-0.5.0/quantum_debugger.egg-info/requires.txt +0 -16
  200. quantum_debugger-0.5.0/tests/qml/test_properties.py +0 -248
  201. quantum_debugger-0.5.0/tests/qml/test_regression.py +0 -258
  202. quantum_debugger-0.5.0/tests/qml/test_training.py +0 -181
  203. {quantum_debugger-0.5.0 → quantum_debugger-0.6.1}/LICENSE +0 -0
  204. {quantum_debugger-0.5.0 → quantum_debugger-0.6.1}/MANIFEST.in +0 -0
  205. {quantum_debugger-0.5.0 → quantum_debugger-0.6.1}/examples/bell_state_debug.py +0 -0
  206. {quantum_debugger-0.5.0 → quantum_debugger-0.6.1}/examples/benchmarks.py +0 -0
  207. {quantum_debugger-0.5.0 → quantum_debugger-0.6.1}/examples/grover_profiling.py +0 -0
  208. {quantum_debugger-0.5.0 → quantum_debugger-0.6.1}/examples/interactive_demo.py +0 -0
  209. {quantum_debugger-0.5.0 → quantum_debugger-0.6.1}/examples/qaoa_maxcut_example.py +0 -0
  210. {quantum_debugger-0.5.0 → quantum_debugger-0.6.1}/examples/qiskit_integration_demo.py +0 -0
  211. {quantum_debugger-0.5.0 → quantum_debugger-0.6.1}/examples/qml_basic_example.py +0 -0
  212. {quantum_debugger-0.5.0 → quantum_debugger-0.6.1}/examples/vqe_h2_example.py +0 -0
  213. {quantum_debugger-0.5.0 → quantum_debugger-0.6.1}/quantum_debugger/core/__init__.py +0 -0
  214. {quantum_debugger-0.5.0 → quantum_debugger-0.6.1}/quantum_debugger/debugger/__init__.py +0 -0
  215. {quantum_debugger-0.5.0 → quantum_debugger-0.6.1}/quantum_debugger/profiler/__init__.py +0 -0
  216. {quantum_debugger-0.5.0 → quantum_debugger-0.6.1}/quantum_debugger/qml/data/__init__.py +0 -0
  217. {quantum_debugger-0.5.0 → quantum_debugger-0.6.1}/quantum_debugger/qml/utils/__init__.py +0 -0
  218. {quantum_debugger-0.5.0 → quantum_debugger-0.6.1}/quantum_debugger/visualization/__init__.py +0 -0
  219. {quantum_debugger-0.5.0 → quantum_debugger-0.6.1}/quantum_debugger.egg-info/dependency_links.txt +0 -0
  220. {quantum_debugger-0.5.0 → quantum_debugger-0.6.1}/quantum_debugger.egg-info/top_level.txt +0 -0
  221. {quantum_debugger-0.5.0 → quantum_debugger-0.6.1}/requirements.txt +0 -0
  222. {quantum_debugger-0.5.0 → quantum_debugger-0.6.1}/setup.cfg +0 -0
  223. {quantum_debugger-0.5.0 → quantum_debugger-0.6.1}/tests/__init__.py +0 -0
  224. {quantum_debugger-0.5.0 → quantum_debugger-0.6.1}/tests/cirq/__init__.py +0 -0
  225. {quantum_debugger-0.5.0 → quantum_debugger-0.6.1}/tests/integration/__init__.py +0 -0
  226. {quantum_debugger-0.5.0 → quantum_debugger-0.6.1}/tests/qml/__init__.py +0 -0
  227. {quantum_debugger-0.5.0 → quantum_debugger-0.6.1}/tests/unit/CONVERSION_TRACKER.py +0 -0
  228. {quantum_debugger-0.5.0 → quantum_debugger-0.6.1}/tests/unit/__init__.py +0 -0
@@ -0,0 +1,56 @@
1
+ # Authors and Contributors
2
+
3
+ ## Primary Author
4
+
5
+ **Raunak Kumar Gupta**
6
+ - GitHub: [@Raunakg2005](https://github.com/Raunakg2005)
7
+ - LinkedIn: [Raunak Kumar Gupta](https://www.linkedin.com/in/raunak-kumar-gupta-7b3503270/)
8
+ - Institution: K.J. Somaiya School of Engineering
9
+
10
+ ## Academic Supervision
11
+
12
+ **Dr. Vaibhav Prakash Vasani**
13
+ - LinkedIn: [Dr. Vaibhav Vasani](https://www.linkedin.com/in/dr-vaibhav-vasani-phd-460a4162/)
14
+ - Role: Project Supervisor
15
+ - Institution: K.J. Somaiya School of Engineering
16
+
17
+ ## Project Information
18
+
19
+ - **Project:** Quantum Machine Learning Library with AutoML
20
+ - **Version:** 0.6.0
21
+ - **Started:** 2025
22
+ - **Status:** Production Ready
23
+
24
+ ## Contributing
25
+
26
+ We welcome contributions! See [CONTRIBUTING.md](CONTRIBUTING.md) for guidelines.
27
+
28
+ ### Contributors
29
+
30
+ This section will list all contributors who submit pull requests.
31
+
32
+ Thank you to everyone who has contributed to making quantum-debugger better!
33
+
34
+ ## Citation
35
+
36
+ If you use quantum-debugger in your research, please cite:
37
+
38
+ ```bibtex
39
+ @software{quantum_debugger_2026,
40
+ title = {Quantum Debugger: Production-Grade Quantum Machine Learning Library},
41
+ author = {Gupta, Raunak Kumar},
42
+ year = {2026},
43
+ url = {https://github.com/Raunakg2005/quantum-debugger},
44
+ note = {Supervised by Dr. Vaibhav Prakash Vasani, K.J. Somaiya School of Engineering}
45
+ }
46
+ ```
47
+
48
+ ## Contact
49
+
50
+ - **Issues:** [GitHub Issues](https://github.com/Raunakg2005/quantum-debugger/issues)
51
+ - **Discussions:** [GitHub Discussions](https://github.com/Raunakg2005/quantum-debugger/discussions)
52
+ - **LinkedIn:** [Raunak Kumar Gupta](https://www.linkedin.com/in/raunak-kumar-gupta-7b3503270/)
53
+
54
+ ## License
55
+
56
+ MIT License - See [LICENSE](LICENSE) file for details.
@@ -0,0 +1,188 @@
1
+ # Changelog
2
+
3
+ All notable changes to QuantumDebugger will be documented in this file.
4
+
5
+ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
6
+ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
7
+
8
+ ## [0.6.1] - 2026-07-16
9
+
10
+ Release-hardening pass focused on correctness, performance, and robustness. No
11
+ breaking API changes.
12
+
13
+ ### Added
14
+ - **GPU state-vector simulation**: `QuantumCircuit.get_statevector(use_gpu=True,
15
+ precision='single'|'double')` runs the entire circuit on the GPU (CuPy) — the
16
+ state lives on the device across all gates with a single transfer back.
17
+ Verified identical to CPU in double precision; measured ~6x (double) and
18
+ 50-75x (single) vs CPU at 20-22 qubits on an RTX 5060.
19
+ - **Automatic Windows CUDA DLL discovery** so the GPU backend works out of the
20
+ box with the `cupy-cuda12x` + `nvidia-*-cu12` pip wheel setup.
21
+
22
+ ### Fixed
23
+ - **Import robustness**: a broken or version-incompatible optional dependency
24
+ (e.g. PennyLane against a mismatched JAX) no longer crashes
25
+ `import quantum_debugger`. Optional-integration guards now degrade gracefully
26
+ to `<FRAMEWORK>_AVAILABLE = False` instead of only catching `ImportError`.
27
+ - **QNN training**: `QuantumNeuralNetwork.fit` now uses the compiled optimizer
28
+ (Adam / SGD) instead of a hardcoded `params -= 0.01 * gradient` that ignored
29
+ `compile(...)`. Training now actually converges.
30
+ - **QNN readout**: the network output is now a proper Pauli-Z expectation
31
+ `<Z_0>` over the full distribution, rather than `P(|0...0>) - P(|1...1>)`
32
+ which discarded almost all amplitudes for >2 qubits.
33
+ - **AutoML**: `AutoQNN` now selects models on a held-out validation split (was
34
+ scoring on the training data — leakage) and refits the winning configuration
35
+ on all data.
36
+ - **QAOA**: the cost layer now applies genuine two-qubit ZZ interactions
37
+ (CNOT·RZ·CNOT) instead of single-qubit RZ rotations, so the ansatz can
38
+ entangle and reach the true MaxCut optima.
39
+ - **Hybrid (PyTorch)**: fixed a shape-mismatch crash in `HybridQNN` caused by a
40
+ duplicated output projection, and replaced the all-zero backward pass with
41
+ finite-difference gradients so the quantum layer (and any preceding classical
42
+ layers) actually train.
43
+ - Corrected two test bugs exposed once the suite became collectable
44
+ (a swapped-argument `rx` call and a sign error in a QAOA convergence check).
45
+ - **Windows CUDA DLL discovery**: with the common `cupy-cuda12x` + `nvidia-*-cu12`
46
+ wheel setup, the CUDA DLLs live under `site-packages/nvidia/*/bin` and are not
47
+ on the Windows DLL search path, so CuPy failed to load `nvrtc`/`cublas`. The
48
+ backend now adds those directories to `PATH` and the DLL search list before
49
+ importing CuPy, so the GPU backend works out of the box (verified on an
50
+ RTX 5060 / sm_120).
51
+
52
+ ### Reworked — placeholder features are now genuinely quantum
53
+ Several advertised features previously returned classical surrogates, random
54
+ values, or zero gradients. They are now real implementations, each verified:
55
+ - **Quantum fidelity kernel / QSVM**: `FidelityKernel` computes
56
+ `|<phi(x1)|phi(x2)>|^2` by simulating the real feature-map circuits (was a
57
+ classical RBF). Gram matrix verified symmetric, unit-diagonal, PSD.
58
+ `ProjectedKernel` is now the real reduced-density-matrix kernel.
59
+ - **Hybrid quantum layer** (`QuantumMiddleLayer`): forward is now a real
60
+ encoding + variational circuit measured in Z (was `cos(x + params)`), with
61
+ exact parameter-shift gradients wired into the PyTorch and TensorFlow layers
62
+ (were all-zero gradients). Gradients verified against finite differences.
63
+ - **Quantum GAN**: real variational generator circuit and a trainable
64
+ discriminator with exact BCE gradients (was a global-phase no-op generator and
65
+ a random discriminator). Generator demonstrably learns a target distribution.
66
+ - **Quantum RL**: real parameterized-circuit Q-function with parameter-shift TD
67
+ updates (was `tanh` of a dot product). Agent learns the gridworld to optimum.
68
+ - **Error mitigation**: genuine PEC (quasi-probability Monte Carlo that recovers
69
+ the ideal expectation), CDR (exact Clifford simulation + regression), Quantum
70
+ Natural Gradient (true Fubini-Study metric, matches analytic values), and ZNE
71
+ noise scaling by real unitary folding (preserves the logical unitary).
72
+ - **GPU module**: `DistributedQNN`/`DataParallelQNN` now genuinely train via real
73
+ data-parallel gradient averaging (base class no longer raises
74
+ `NotImplementedError`); mixed-precision `train_step` uses a real gradient (was
75
+ random). Multi-GPU wall-clock speedup still requires GPU hardware.
76
+
77
+ ### Changed
78
+ - **Core simulator performance**: `QuantumState.apply_gate` now applies gates by
79
+ tensor contraction (O(2**n) per gate) instead of materializing the full
80
+ 2**n x 2**n operator (O(4**n)). Results are numerically identical (verified
81
+ against the previous implementation over thousands of random configurations);
82
+ 16-qubit circuits that were previously infeasible now run in tens of ms.
83
+ - Reconciled version metadata: `__version__` is the single source of truth and
84
+ `setup.py` reads it (previously `0.4.2` in the package vs `0.6.0` in setup).
85
+
86
+ ## [0.4.2] - 2025-12-22
87
+
88
+ ### Added
89
+ - **Complete pytest migration**: All 200 legacy script-style tests converted to pytest format
90
+ - **Hardware profiles extended**: AWS Braket, Azure Quantum provider support
91
+ - **2025 hardware updates**: IBM Heron, Google Willow, IonQ Forte profiles
92
+ - **Advanced backend tests**: 8 edge case and performance tests
93
+ - **GPU backend support**: CuPy backend availability testing
94
+ - **Enhanced test coverage**: 656 comprehensive tests (all passing ✅)
95
+
96
+ ### Changed
97
+ - Migrated all legacy test files from script execution to pytest format
98
+ - Updated test structure for better CI/CD compatibility
99
+ - Enhanced backend validation with 6 comprehensive backend tests
100
+ - Improved hardware profile testing (18 tests total)
101
+
102
+ ### Fixed
103
+ - Test suite compatibility issues
104
+ - Backend detection for GPU/CuPy
105
+ - Hardware profile version tracking
106
+
107
+ ### Documentation
108
+ - Updated README.md with v0.4.2 features and test count
109
+ - Added comprehensive testing section in README
110
+ - Created FINAL_TEST_SUMMARY.md with complete 656 test breakdown
111
+ - Fixed all documentation links (tutorials, examples, LICENSE)
112
+ - Updated version numbers across all files
113
+
114
+ ### Testing
115
+ - **656 total tests** (all passing ✅)
116
+ - All script-style tests converted to pytest
117
+ - Complete test coverage documentation
118
+
119
+ ## [0.4.1] - 2024-12-XX
120
+
121
+ ### Added
122
+ - Additional QML features and optimizations
123
+ - Performance improvements
124
+
125
+ ## [0.4.0] - 2024-12-XX
126
+
127
+ ### Added
128
+ - **Quantum Machine Learning Module**
129
+ - Parameterized gates (RX, RY, RZ with trainable parameters)
130
+ - VQE algorithm for molecular chemistry
131
+ - QAOA for combinatorial optimization
132
+ - Training framework with 4 optimizers (Adam, SGD, SPSA, RMSprop)
133
+ - Gradient computation (parameter shift rule, finite differences)
134
+ - 316 comprehensive tests
135
+ - 3 tutorials, 4 example scripts
136
+
137
+ ### Changed
138
+ - Enhanced circuit profiling
139
+ - Improved state visualization
140
+
141
+ ## [0.3.0] - 2024-12-XX
142
+
143
+ ### Added
144
+ - Realistic noise models (4 types)
145
+ - Hardware profiles (IBM, Google, IonQ, Rigetti)
146
+ - Qiskit Aer validation
147
+ - 89 new tests
148
+
149
+ ## [0.2.0] - 2024-XX-XX
150
+
151
+ ### Added
152
+ - Bidirectional circuit conversion with Qiskit
153
+ - CP gate support
154
+ - 12-qubit support
155
+
156
+ ## [0.1.1] - 2024-12-03
157
+
158
+ ### Fixed
159
+ - Fixed SWAP gate matrix for little-endian qubit ordering
160
+ - Fixed CNOT gate matrix for little-endian qubit ordering
161
+ - Fixed Toffoli gate matrix for little-endian qubit ordering
162
+ - Fixed entanglement detection for Bell states
163
+ - Rewrote multi-qubit gate expansion algorithm using tensor products
164
+
165
+ ### Added
166
+ - 69 comprehensive tests (100% pass rate)
167
+ - Test suites: quickstart, advanced, comprehensive, extreme, validation, production, edge cases
168
+ - Numerical stability tests (100+ consecutive operations)
169
+ - Quantum mechanics validation tests
170
+ - Production readiness tests
171
+
172
+ ### Changed
173
+ - Improved gate expansion algorithm for better accuracy
174
+ - Enhanced test coverage to 69 tests across 7 test suites
175
+
176
+ ## [0.1.0] - 2024-11-30
177
+
178
+ ### Added
179
+ - Initial release
180
+ - Core quantum state representation
181
+ - 15+ quantum gates (H, X, Y, Z, S, T, RX, RY, RZ, PHASE, CNOT, CZ, SWAP, Toffoli)
182
+ - Step-through debugger with breakpoints
183
+ - Circuit profiler with optimization suggestions
184
+ - State visualization tools
185
+ - Bloch sphere representation
186
+ - Support for up to 15 qubits
187
+ - Example circuits and demos
188
+ - Comprehensive documentation
@@ -0,0 +1,449 @@
1
+ Metadata-Version: 2.4
2
+ Name: quantum-debugger
3
+ Version: 0.6.1
4
+ Summary: Comprehensive quantum machine learning library with AutoML, GPU acceleration, advanced algorithms (QGANs, Quantum RL), transfer learning, and multi-framework support (Qiskit, PennyLane, Cirq, TensorFlow, PyTorch)
5
+ Home-page: https://github.com/Raunakg2005/quantum-debugger
6
+ Author: Raunak Kumar Gupta
7
+ Author-email: raunak.gupta@somaiya.edu
8
+ Project-URL: Bug Reports, https://github.com/Raunakg2005/quantum-debugger/issues
9
+ Project-URL: Source, https://github.com/Raunakg2005/quantum-debugger
10
+ Project-URL: Documentation, https://github.com/Raunakg2005/quantum-debugger#readme
11
+ Keywords: quantum computing debugging profiling quantum-circuit visualization qml vqe qaoa machine-learning
12
+ Classifier: Development Status :: 4 - Beta
13
+ Classifier: Intended Audience :: Science/Research
14
+ Classifier: Intended Audience :: Developers
15
+ Classifier: Topic :: Scientific/Engineering :: Physics
16
+ Classifier: Topic :: Scientific/Engineering :: Artificial Intelligence
17
+ Classifier: Topic :: Software Development :: Debuggers
18
+ Classifier: License :: OSI Approved :: MIT License
19
+ Classifier: Programming Language :: Python :: 3
20
+ Classifier: Programming Language :: Python :: 3.9
21
+ Classifier: Programming Language :: Python :: 3.10
22
+ Classifier: Programming Language :: Python :: 3.11
23
+ Classifier: Programming Language :: Python :: 3.12
24
+ Requires-Python: >=3.9
25
+ Description-Content-Type: text/markdown
26
+ License-File: LICENSE
27
+ License-File: AUTHORS.md
28
+ Requires-Dist: numpy>=1.20.0
29
+ Requires-Dist: scipy>=1.7.0
30
+ Requires-Dist: matplotlib>=3.5.0
31
+ Requires-Dist: scikit-learn>=1.0.0
32
+ Provides-Extra: qiskit
33
+ Requires-Dist: qiskit>=1.0.0; extra == "qiskit"
34
+ Provides-Extra: pennylane
35
+ Requires-Dist: pennylane>=0.30.0; extra == "pennylane"
36
+ Provides-Extra: cirq
37
+ Requires-Dist: cirq>=1.0.0; extra == "cirq"
38
+ Provides-Extra: tensorflow
39
+ Requires-Dist: tensorflow>=2.10.0; extra == "tensorflow"
40
+ Provides-Extra: pytorch
41
+ Requires-Dist: torch>=1.13.0; extra == "pytorch"
42
+ Provides-Extra: ibm
43
+ Requires-Dist: qiskit-ibm-runtime>=0.15.0; extra == "ibm"
44
+ Provides-Extra: aws
45
+ Requires-Dist: amazon-braket-sdk>=1.50.0; extra == "aws"
46
+ Requires-Dist: boto3>=1.28.0; extra == "aws"
47
+ Provides-Extra: all
48
+ Requires-Dist: qiskit>=1.0.0; extra == "all"
49
+ Requires-Dist: pennylane>=0.30.0; extra == "all"
50
+ Requires-Dist: cirq>=1.0.0; extra == "all"
51
+ Requires-Dist: tensorflow>=2.10.0; extra == "all"
52
+ Requires-Dist: torch>=1.13.0; extra == "all"
53
+ Requires-Dist: scikit-learn>=1.0.0; extra == "all"
54
+ Requires-Dist: qiskit-ibm-runtime>=0.15.0; extra == "all"
55
+ Requires-Dist: amazon-braket-sdk>=1.50.0; extra == "all"
56
+ Provides-Extra: dev
57
+ Requires-Dist: pytest>=7.0.0; extra == "dev"
58
+ Requires-Dist: pytest-cov>=3.0.0; extra == "dev"
59
+ Requires-Dist: black>=22.0.0; extra == "dev"
60
+ Requires-Dist: flake8>=4.0.0; extra == "dev"
61
+ Requires-Dist: mypy>=0.990; extra == "dev"
62
+ Dynamic: author
63
+ Dynamic: author-email
64
+ Dynamic: classifier
65
+ Dynamic: description
66
+ Dynamic: description-content-type
67
+ Dynamic: home-page
68
+ Dynamic: keywords
69
+ Dynamic: license-file
70
+ Dynamic: project-url
71
+ Dynamic: provides-extra
72
+ Dynamic: requires-dist
73
+ Dynamic: requires-python
74
+ Dynamic: summary
75
+
76
+ # Quantum Debugger
77
+
78
+ **The Most Comprehensive Quantum Machine Learning Library with AutoML**
79
+
80
+ [![PyPI version](https://badge.fury.io/py/quantum-debugger.svg)](https://pypi.org/project/quantum-debugger/)
81
+ [![Tests](https://img.shields.io/badge/tests-384%20passing-brightgreen)](https://github.com/Raunakg2005/quantum-debugger/blob/main/tests/FINAL_TEST_SUMMARY.md)
82
+ [![CI](https://github.com/Raunakg2005/quantum-debugger/workflows/Tests/badge.svg)](https://github.com/Raunakg2005/quantum-debugger/actions)
83
+ [![Codecov](https://codecov.io/gh/Raunakg2005/quantum-debugger/branch/main/graph/badge.svg)](https://codecov.io/gh/Raunakg2005/quantum-debugger)
84
+ [![Python](https://img.shields.io/badge/python-3.9%2B-blue)](https://python.org)
85
+ [![License](https://img.shields.io/badge/license-MIT-green)](LICENSE)
86
+
87
+ A powerful Python library for quantum circuit debugging, state inspection, performance analysis, and quantum machine learning. From basic circuits to QML with one-line AutoML.
88
+
89
+ ## What's New in v0.6.1
90
+
91
+ Correctness, performance, and "make the advertised features real" release:
92
+ - **Faster core** - gate application is now O(2ⁿ) per gate (was O(4ⁿ)); optional
93
+ **GPU state-vector simulation** (`get_statevector(use_gpu=True)`, up to ~50-75x
94
+ at 20+ qubits in single precision).
95
+ - **Genuinely quantum QML** - the quantum kernel/QSVM, hybrid PyTorch/TF layers,
96
+ Quantum GAN, Quantum RL, and error mitigation (PEC, CDR, QNG, ZNE) are now real
97
+ circuit-based implementations with real gradients, each verified — not the
98
+ classical/placeholder stand-ins they were before.
99
+ - **Robust imports** - a broken optional dependency no longer breaks
100
+ `import quantum_debugger`.
101
+
102
+ See [CHANGELOG.md](CHANGELOG.md) for the full list.
103
+
104
+ ## What's New in v0.6.0
105
+
106
+ **ONE-LINE QUANTUM MACHINE LEARNING**
107
+
108
+ ```python
109
+ # NEW: AutoML - Quantum ML for everyone
110
+ from quantum_debugger.qml.automl import auto_qnn
111
+
112
+ model = auto_qnn(X_train, y_train)
113
+ predictions = model.predict(X_test)
114
+ ```
115
+
116
+ **No quantum expertise required.** AutoML automatically:
117
+ - Selects optimal number of qubits
118
+ - Chooses best ansatz architecture
119
+ - Tunes all hyperparameters
120
+ - Finds best model configuration
121
+
122
+ ### v0.6.0 Complete Feature Set
123
+
124
+ **Advanced QML (Weeks 1-3)**
125
+ - **Hybrid Models** - TensorFlow and PyTorch quantum layers
126
+ - **Quantum Kernels** - QSVM with multiple kernel types
127
+ - **Transfer Learning** - PretrainedQNN, model zoo, fine-tuning
128
+
129
+ **Production Tools (Weeks 4-5)**
130
+ - **Error Mitigation** - PEC, CDR, realistic noise models
131
+ - **Circuit Optimization** - Gate reduction, compilation, transpilation
132
+
133
+ **Universal Compatibility (Week 6)**
134
+ - **Framework Integrations** - Qiskit, PennyLane, Cirq bridges
135
+
136
+ **Hardware and Performance (Weeks 7-8)**
137
+ - **Real Quantum Computers** - IBM Quantum (FREE), AWS Braket
138
+ - **Benchmarking** - QML vs Classical performance analysis
139
+
140
+ **AutoML (Week 9)**
141
+ - **auto_qnn()** - One-line interface for quantum ML
142
+ - **Automatic Ansatz Selection** - Finds best circuit architecture
143
+ - **Hyperparameter Tuning** - Grid and random search
144
+ - **Neural Architecture Search** - Optimizes qubit and layer counts
145
+
146
+ **Jupyter Notebooks (Week 10)**
147
+ - **5 Example Notebooks** - AutoML, Transfer Learning, Hardware, Optimization, Benchmarking
148
+ - **Google Colab Compatible** - Run in browser
149
+
150
+ **Advanced Algorithms (Week 11 - NEW)**
151
+ - **Quantum GANs** - Generative adversarial networks for quantum states
152
+ - **Quantum RL** - Q-learning with quantum circuits
153
+ - **SimpleEnvironment** - Test environment for RL
154
+
155
+ **CI/CD Automation (Week 12 - NEW)**
156
+ - **GitHub Actions** - Auto-testing on Python 3.9-3.12
157
+ - **Auto-Publishing** - Automatic PyPI releases
158
+ - **Code Quality** - Linting, formatting checks
159
+
160
+ **GPU Acceleration (v0.6.1)**
161
+ - **GPU state-vector simulation** - `circuit.get_statevector(use_gpu=True)` runs
162
+ the whole circuit on the GPU (CuPy). Measured on an RTX 5060 vs CPU: ~6x in
163
+ double precision, and 50-75x in single precision (`precision='single'`) at
164
+ 20-22 qubits, where the CPU becomes the bottleneck.
165
+ - **Distributed / mixed-precision training** - real data-parallel gradient
166
+ averaging and mixed-precision steps. (Multi-GPU wall-clock speedup requires
167
+ multiple physical GPUs; on one device these run correctly but sequentially.)
168
+ - **Windows-friendly** - auto-discovers pip-installed CUDA runtime wheels
169
+ (`nvidia-*-cu12`) so the GPU backend works without a manual CUDA toolkit setup.
170
+
171
+ See [complete documentation](https://github.com/Raunakg2005/quantum-debugger#documentation) for details.
172
+
173
+ ## Features
174
+
175
+ ### Core Debugging
176
+ - **Step-through Debugging** - Execute circuits gate-by-gate with breakpoints
177
+ - **State Inspection** - Analyze quantum states at any point
178
+ - **Circuit Profiling** - Depth analysis, gate statistics, optimization suggestions
179
+ - **Visualization** - State vectors, Bloch spheres, and more
180
+ - **Noise Simulation** - Realistic hardware noise models
181
+ - **Qiskit Integration** - Import/export circuits from Qiskit
182
+
183
+ ### Quantum Machine Learning (v0.6.0)
184
+ - **AutoML** - One-line interface with automatic optimization
185
+ - **Advanced Algorithms** - Quantum GANs and Quantum Reinforcement Learning
186
+ - **Transfer Learning** - PretrainedQNN, model zoo, fine-tuning
187
+ - **GPU Acceleration** - Multi-GPU, mixed precision (2-3x speedup)
188
+ - **Error Mitigation** - PEC, CDR, realistic noise models
189
+ - **Circuit Optimization** - Gate reduction, compilation, transpilation
190
+ - **Framework Bridges** - Qiskit, PennyLane, Cirq compatibility
191
+ - **Hardware Backends** - IBM Quantum (FREE), AWS Braket
192
+ - **Benchmarking** - QML vs Classical performance analysis
193
+ - **Hybrid Models** - TensorFlow and PyTorch quantum layers
194
+ - **Quantum Kernels** - QSVM with multiple kernel types
195
+ - **VQE and QAOA** - Molecular chemistry and optimization
196
+ - **Advanced Optimizers** - 7 optimizers including QNG
197
+ - **Ansatz Library** - 8 pre-built quantum circuit templates
198
+ - **Example Notebooks** - 5 comprehensive Jupyter tutorials
199
+
200
+ ## Quick Start
201
+
202
+ ### Installation
203
+
204
+ ```bash
205
+ pip install quantum-debugger
206
+ ```
207
+
208
+ ### Basic Circuit Debugging
209
+
210
+ ```python
211
+ from quantum_debugger import QuantumCircuit, QuantumDebugger
212
+
213
+ # Create a Bell state
214
+ qc = QuantumCircuit(2)
215
+ qc.h(0)
216
+ qc.cnot(0, 1)
217
+
218
+ # Debug step-by-step
219
+ debugger = QuantumDebugger(qc)
220
+ debugger.step() # Execute first gate
221
+ print(debugger.get_current_state())
222
+ debugger.step() # Execute second gate
223
+ print(debugger.get_current_state())
224
+ ```
225
+
226
+ ### Quantum Machine Learning with AutoML
227
+
228
+ ```python
229
+ from quantum_debugger.qml.automl import auto_qnn
230
+ import numpy as np
231
+
232
+ # Load your data
233
+ X_train = np.random.randn(100, 4)
234
+ y_train = np.random.randint(0, 2, 100)
235
+
236
+ # One line to train quantum model
237
+ model = auto_qnn(X_train, y_train)
238
+
239
+ # Make predictions
240
+ X_test = np.random.randn(20, 4)
241
+ predictions = model.predict(X_test)
242
+ ```
243
+
244
+ ### Manual QNN Configuration
245
+
246
+ For more control over your quantum neural network:
247
+
248
+ ```python
249
+ from quantum_debugger.qml.qnn import QuantumNeuralNetwork
250
+
251
+ # Create network
252
+ qnn = QuantumNeuralNetwork(n_qubits=4)
253
+ qnn.compile(optimizer='adam', loss='mse')
254
+
255
+ # Train
256
+ history = qnn.fit(X_train, y_train, epochs=50, batch_size=16)
257
+
258
+ # Predict
259
+ predictions = qnn.predict(X_test)
260
+ ```
261
+
262
+ ## Advanced Features
263
+
264
+ ### Transfer Learning
265
+
266
+ ```python
267
+ from quantum_debugger.qml.transfer import PretrainedQNN
268
+
269
+ # Load pretrained model
270
+ pretrained = PretrainedQNN.from_zoo('iris_classifier')
271
+
272
+ # Fine-tune on your data
273
+ pretrained.fine_tune(X_new, y_new, epochs=10, freeze_layers=2)
274
+
275
+ # Save your model
276
+ pretrained.save('models/my_qnn.pkl')
277
+ ```
278
+
279
+ ### Error Mitigation
280
+
281
+ ```python
282
+ from quantum_debugger.qml.mitigation import PEC, CDR
283
+
284
+ # Probabilistic Error Cancellation
285
+ pec = PEC(gate_error_rates={'rx': 0.01, 'cnot': 0.02})
286
+ mitigated_result, uncertainty = pec.apply_pec(circuit)
287
+
288
+ # Clifford Data Regression
289
+ cdr = CDR(n_clifford_circuits=50)
290
+ training_data = cdr.generate_training_data(n_qubits=4, depth=3)
291
+ cdr.train(training_data, noisy_executor)
292
+ mitigated = cdr.apply_cdr(noisy_measurement)
293
+ ```
294
+
295
+ ### Circuit Optimization
296
+
297
+ ```python
298
+ from quantum_debugger.optimization import optimize_circuit, compile_circuit
299
+
300
+ # Simple optimization
301
+ gates = [('h', 0), ('h', 0), ('x', 1)] # H cancels itself
302
+ optimized = optimize_circuit(gates) # Returns: [('x', 1)]
303
+
304
+ # Multi-level compilation
305
+ compiled = compile_circuit(gates, optimization_level=3)
306
+ ```
307
+
308
+ ### Hardware Deployment
309
+
310
+ ```python
311
+ from quantum_debugger.backends import IBMQuantumBackend
312
+
313
+ # Connect to IBM Quantum (FREE tier)
314
+ backend = IBMQuantumBackend()
315
+ backend.connect({'token': 'YOUR_FREE_IBM_TOKEN'})
316
+
317
+ # Execute on real quantum computer
318
+ gates = [('h', 0), ('cnot', (0, 1))]
319
+ counts = backend.execute(gates, n_shots=1024)
320
+ ```
321
+
322
+ Get your free IBM Quantum token at: https://quantum.ibm.com
323
+
324
+ ### Framework Integration
325
+
326
+ ```python
327
+ from quantum_debugger.integrations import to_qiskit, from_qiskit, to_pennylane, to_cirq
328
+
329
+ # Convert to Qiskit
330
+ qiskit_circuit = to_qiskit(gates)
331
+
332
+ # Convert to PennyLane
333
+ pennylane_qnode = to_pennylane(gates)
334
+
335
+ # Convert to Cirq
336
+ cirq_circuit = to_cirq(gates)
337
+ ```
338
+
339
+ ## Installation Options
340
+
341
+ ### Basic Installation
342
+
343
+ ```bash
344
+ pip install quantum-debugger
345
+ ```
346
+
347
+ ### With Optional Dependencies
348
+
349
+ ```bash
350
+ # All frameworks
351
+ pip install quantum-debugger[all]
352
+
353
+ # Individual frameworks
354
+ pip install quantum-debugger[qiskit]
355
+ pip install quantum-debugger[pennylane]
356
+ pip install quantum-debugger[cirq]
357
+ pip install quantum-debugger[tensorflow]
358
+ pip install quantum-debugger[pytorch]
359
+
360
+ # Hardware backends
361
+ pip install quantum-debugger[ibm] # FREE
362
+ pip install quantum-debugger[aws] # Paid service
363
+
364
+ # Development tools
365
+ pip install quantum-debugger[dev]
366
+ ```
367
+
368
+ ## Documentation
369
+
370
+ **v0.6.0 Guides:**
371
+ - [V0.6.0 Features](V06_FEATURES.md) - Complete feature reference
372
+ - [Transfer Learning Guide](docs/transfer_learning_guide.md)
373
+ - [Error Mitigation Guide](docs/error_mitigation_guide.md)
374
+ - [Circuit Optimization Guide](docs/circuit_optimization_guide.md)
375
+ - [Hardware Backends Guide](docs/hardware_backends_guide.md)
376
+
377
+ **v0.5.0 Guides (still valid):**
378
+ - [QNN Guide](docs/qnn_guide.md)
379
+ - [Hybrid Models Guide](docs/hybrid_models_guide.md)
380
+ - [VQE Guide](docs/vqe_guide.md)
381
+ - [QAOA Guide](docs/qaoa_guide.md)
382
+
383
+ ## Testing
384
+
385
+ ```bash
386
+ # Run all tests
387
+ pytest tests/ -v
388
+
389
+ # Run specific test suites
390
+ pytest tests/qml/ -v
391
+ pytest tests/test_optimization.py -v
392
+ pytest tests/test_integrations.py -v
393
+
394
+ # With coverage
395
+ pytest tests/ --cov=quantum_debugger --cov-report=html
396
+ ```
397
+
398
+ See [FINAL_TEST_SUMMARY.md](tests/FINAL_TEST_SUMMARY.md) for detailed test information.
399
+
400
+ **Test Statistics (v0.6.1):**
401
+ - ~980 tests passing (`pytest tests/ -m "not aws"`)
402
+ - GPU-hardware tests require a working CUDA + CuPy install; they skip otherwise
403
+ - A few tests are performance/timing based and may vary by machine
404
+
405
+ ## Contributing
406
+
407
+ Contributions are welcome. Please ensure:
408
+ 1. All tests pass
409
+ 2. Code follows PEP 8 style guidelines
410
+ 3. Documentation is updated
411
+ 4. New features include tests
412
+
413
+ ## License
414
+
415
+ MIT License - see [LICENSE](LICENSE) file.
416
+
417
+ ## Citation
418
+
419
+ If you use quantum-debugger in your research, please cite:
420
+
421
+ ```bibtex
422
+ @software{quantum_debugger_2026,
423
+ title = {Quantum Debugger: Production-Grade Quantum Machine Learning Library},
424
+ author = {Gupta, Raunak Kumar},
425
+ year = {2026},
426
+ url = {https://github.com/Raunakg2005/quantum-debugger}
427
+ }
428
+ ```
429
+
430
+ ## Acknowledgments
431
+
432
+ **Author:** Raunak Kumar Gupta
433
+ **GitHub:** [@Raunakg2005](https://github.com/Raunakg2005)
434
+ **LinkedIn:** [Raunak Kumar Gupta](https://www.linkedin.com/in/raunak-kumar-gupta-7b3503270/)
435
+ **Supervised by:** Dr. Vaibhav Prakash Vasani
436
+ **Supervisor LinkedIn:** [Dr. Vaibhav Vasani](https://www.linkedin.com/in/dr-vaibhav-vasani-phd-460a4162/)
437
+ **Institution:** K.J. Somaiya School of Engineering
438
+
439
+ ## Links
440
+
441
+ **PyPI:** https://pypi.org/project/quantum-debugger/
442
+ **GitHub:** https://github.com/Raunakg2005/quantum-debugger
443
+ **Issues:** https://github.com/Raunakg2005/quantum-debugger/issues
444
+ **Documentation:** https://github.com/Raunakg2005/quantum-debugger#readme
445
+
446
+ ---
447
+
448
+ **Version:** 0.6.1
449
+ **Last Updated:** July 2026