quantum-debugger 0.4.1__tar.gz → 0.5.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 (163) hide show
  1. quantum_debugger-0.5.0/CHANGELOG.md +110 -0
  2. {quantum_debugger-0.4.1/quantum_debugger.egg-info → quantum_debugger-0.5.0}/PKG-INFO +175 -34
  3. {quantum_debugger-0.4.1 → quantum_debugger-0.5.0}/README.md +174 -33
  4. {quantum_debugger-0.4.1 → quantum_debugger-0.5.0}/quantum_debugger/__init__.py +1 -1
  5. {quantum_debugger-0.4.1 → quantum_debugger-0.5.0}/quantum_debugger/backends/__init__.py +11 -0
  6. quantum_debugger-0.5.0/quantum_debugger/backends/gpu_backend.py +296 -0
  7. quantum_debugger-0.5.0/quantum_debugger/integrations/__init__.py +8 -0
  8. quantum_debugger-0.5.0/quantum_debugger/integrations/cirq_adapter.py +270 -0
  9. quantum_debugger-0.5.0/quantum_debugger/qml/__init__.py +27 -0
  10. quantum_debugger-0.5.0/quantum_debugger/qml/ansatz/__init__.py +46 -0
  11. quantum_debugger-0.5.0/quantum_debugger/qml/ansatz/excitation_preserving.py +152 -0
  12. quantum_debugger-0.5.0/quantum_debugger/qml/ansatz/real_amplitudes.py +120 -0
  13. quantum_debugger-0.5.0/quantum_debugger/qml/ansatz/strongly_entangling.py +162 -0
  14. quantum_debugger-0.5.0/quantum_debugger/qml/ansatz/two_local.py +162 -0
  15. quantum_debugger-0.5.0/quantum_debugger/qml/data/__init__.py +26 -0
  16. quantum_debugger-0.5.0/quantum_debugger/qml/data/dataset.py +296 -0
  17. quantum_debugger-0.5.0/quantum_debugger/qml/data/feature_maps.py +228 -0
  18. quantum_debugger-0.5.0/quantum_debugger/qml/error_mitigation/__init__.py +15 -0
  19. quantum_debugger-0.5.0/quantum_debugger/qml/error_mitigation/zne.py +250 -0
  20. quantum_debugger-0.5.0/quantum_debugger/qml/hamiltonians/molecular.py +390 -0
  21. quantum_debugger-0.5.0/quantum_debugger/qml/optimizers/__init__.py +24 -0
  22. quantum_debugger-0.5.0/quantum_debugger/qml/optimizers/advanced.py +351 -0
  23. quantum_debugger-0.5.0/quantum_debugger/qml/qnn/__init__.py +34 -0
  24. quantum_debugger-0.5.0/quantum_debugger/qml/qnn/base.py +90 -0
  25. quantum_debugger-0.5.0/quantum_debugger/qml/qnn/encoding.py +75 -0
  26. quantum_debugger-0.5.0/quantum_debugger/qml/qnn/losses.py +114 -0
  27. quantum_debugger-0.5.0/quantum_debugger/qml/qnn/network.py +324 -0
  28. quantum_debugger-0.5.0/quantum_debugger/qml/qnn/variational.py +95 -0
  29. {quantum_debugger-0.4.1 → quantum_debugger-0.5.0/quantum_debugger.egg-info}/PKG-INFO +175 -34
  30. quantum_debugger-0.5.0/quantum_debugger.egg-info/SOURCES.txt +154 -0
  31. {quantum_debugger-0.4.1 → quantum_debugger-0.5.0}/quantum_debugger.egg-info/top_level.txt +1 -0
  32. {quantum_debugger-0.4.1 → quantum_debugger-0.5.0}/setup.py +1 -1
  33. quantum_debugger-0.5.0/tests/__init__.py +1 -0
  34. quantum_debugger-0.5.0/tests/cirq/__init__.py +1 -0
  35. quantum_debugger-0.5.0/tests/cirq/test_cirq_advanced.py +412 -0
  36. quantum_debugger-0.5.0/tests/cirq/test_cirq_edge_cases.py +423 -0
  37. quantum_debugger-0.5.0/tests/cirq/test_cirq_integration.py +287 -0
  38. quantum_debugger-0.5.0/tests/conftest.py +55 -0
  39. quantum_debugger-0.5.0/tests/integration/__init__.py +1 -0
  40. quantum_debugger-0.5.0/tests/integration/test_integration.py +308 -0
  41. quantum_debugger-0.5.0/tests/integration/test_qiskit_integration.py +218 -0
  42. quantum_debugger-0.5.0/tests/qml/__init__.py +1 -0
  43. quantum_debugger-0.5.0/tests/qml/test_advanced_optimizers.py +278 -0
  44. quantum_debugger-0.5.0/tests/qml/test_ansatz_library.py +271 -0
  45. quantum_debugger-0.5.0/tests/qml/test_dataset.py +353 -0
  46. quantum_debugger-0.5.0/tests/qml/test_edge_cases.py +522 -0
  47. quantum_debugger-0.5.0/tests/qml/test_hamiltonians.py +304 -0
  48. quantum_debugger-0.5.0/tests/qml/test_properties.py +248 -0
  49. quantum_debugger-0.5.0/tests/qml/test_qaoa.py +195 -0
  50. quantum_debugger-0.5.0/tests/qml/test_qml_parameterized_gates.py +343 -0
  51. quantum_debugger-0.5.0/tests/qml/test_qnn.py +283 -0
  52. quantum_debugger-0.5.0/tests/qml/test_regression.py +258 -0
  53. quantum_debugger-0.5.0/tests/qml/test_training.py +181 -0
  54. quantum_debugger-0.5.0/tests/qml/test_vqe.py +153 -0
  55. quantum_debugger-0.5.0/tests/qml/test_zne.py +151 -0
  56. quantum_debugger-0.5.0/tests/unit/CONVERSION_TRACKER.py +40 -0
  57. quantum_debugger-0.5.0/tests/unit/__init__.py +1 -0
  58. quantum_debugger-0.5.0/tests/unit/test_advanced.py +403 -0
  59. quantum_debugger-0.5.0/tests/unit/test_backend_comprehensive.py +211 -0
  60. quantum_debugger-0.5.0/tests/unit/test_backend_integration.py +67 -0
  61. quantum_debugger-0.5.0/tests/unit/test_backends.py +68 -0
  62. quantum_debugger-0.5.0/tests/unit/test_backends_advanced.py +155 -0
  63. quantum_debugger-0.5.0/tests/unit/test_backends_comprehensive.py +126 -0
  64. quantum_debugger-0.5.0/tests/unit/test_backends_fast.py +90 -0
  65. quantum_debugger-0.5.0/tests/unit/test_circuit_noise.py +131 -0
  66. quantum_debugger-0.5.0/tests/unit/test_circuit_noise_advanced.py +423 -0
  67. quantum_debugger-0.5.0/tests/unit/test_circuit_noise_unique.py +590 -0
  68. quantum_debugger-0.5.0/tests/unit/test_compatibility.py +86 -0
  69. quantum_debugger-0.5.0/tests/unit/test_comprehensive.py +481 -0
  70. quantum_debugger-0.5.0/tests/unit/test_distribution.py +142 -0
  71. quantum_debugger-0.5.0/tests/unit/test_docstrings.py +60 -0
  72. quantum_debugger-0.5.0/tests/unit/test_error_handling.py +261 -0
  73. quantum_debugger-0.5.0/tests/unit/test_extreme.py +538 -0
  74. quantum_debugger-0.5.0/tests/unit/test_gpu_quick.py +34 -0
  75. quantum_debugger-0.5.0/tests/unit/test_hardware_profiles_extended.py +151 -0
  76. quantum_debugger-0.5.0/tests/unit/test_hardware_profiles_phase3.py +165 -0
  77. quantum_debugger-0.5.0/tests/unit/test_mitigation_comprehensive.py +370 -0
  78. quantum_debugger-0.5.0/tests/unit/test_mitigation_final.py +229 -0
  79. quantum_debugger-0.5.0/tests/unit/test_mitigation_observables.py +200 -0
  80. quantum_debugger-0.5.0/tests/unit/test_mitigation_zne.py +184 -0
  81. quantum_debugger-0.5.0/tests/unit/test_noise.py +119 -0
  82. quantum_debugger-0.5.0/tests/unit/test_noise_advanced.py +592 -0
  83. quantum_debugger-0.5.0/tests/unit/test_noise_extreme.py +464 -0
  84. quantum_debugger-0.5.0/tests/unit/test_noise_final.py +462 -0
  85. quantum_debugger-0.5.0/tests/unit/test_noise_performance.py +385 -0
  86. quantum_debugger-0.5.0/tests/unit/test_noise_quantum_info.py +427 -0
  87. quantum_debugger-0.5.0/tests/unit/test_noise_ultimate.py +176 -0
  88. quantum_debugger-0.5.0/tests/unit/test_parallel.py +181 -0
  89. quantum_debugger-0.5.0/tests/unit/test_performance.py +93 -0
  90. quantum_debugger-0.5.0/tests/unit/test_production.py +491 -0
  91. quantum_debugger-0.5.0/tests/unit/test_qiskit_complex.py +270 -0
  92. quantum_debugger-0.5.0/tests/unit/test_qiskit_extreme.py +373 -0
  93. quantum_debugger-0.5.0/tests/unit/test_qiskit_ultra.py +282 -0
  94. quantum_debugger-0.5.0/tests/unit/test_qml_advanced.py +253 -0
  95. quantum_debugger-0.5.0/tests/unit/test_qml_comprehensive.py +306 -0
  96. quantum_debugger-0.5.0/tests/unit/test_qml_memory.py +209 -0
  97. quantum_debugger-0.5.0/tests/unit/test_qml_threading.py +219 -0
  98. quantum_debugger-0.5.0/tests/unit/test_qml_tricky.py +339 -0
  99. quantum_debugger-0.5.0/tests/unit/test_quickstart.py +156 -0
  100. quantum_debugger-0.5.0/tests/unit/test_validation.py +459 -0
  101. quantum_debugger-0.4.1/CHANGELOG.md +0 -40
  102. quantum_debugger-0.4.1/quantum_debugger/integrations/__init__.py +0 -9
  103. quantum_debugger-0.4.1/quantum_debugger/qml/__init__.py +0 -31
  104. quantum_debugger-0.4.1/quantum_debugger/qml/ansatz/__init__.py +0 -158
  105. quantum_debugger-0.4.1/quantum_debugger/qml/hamiltonians/molecular.py +0 -107
  106. quantum_debugger-0.4.1/quantum_debugger/qml/optimizers/__init__.py +0 -219
  107. quantum_debugger-0.4.1/quantum_debugger.egg-info/SOURCES.txt +0 -68
  108. {quantum_debugger-0.4.1 → quantum_debugger-0.5.0}/LICENSE +0 -0
  109. {quantum_debugger-0.4.1 → quantum_debugger-0.5.0}/MANIFEST.in +0 -0
  110. {quantum_debugger-0.4.1 → quantum_debugger-0.5.0}/examples/bell_state_debug.py +0 -0
  111. {quantum_debugger-0.4.1 → quantum_debugger-0.5.0}/examples/benchmarks.py +0 -0
  112. {quantum_debugger-0.4.1 → quantum_debugger-0.5.0}/examples/grover_profiling.py +0 -0
  113. {quantum_debugger-0.4.1 → quantum_debugger-0.5.0}/examples/interactive_demo.py +0 -0
  114. {quantum_debugger-0.4.1 → quantum_debugger-0.5.0}/examples/qaoa_maxcut_example.py +0 -0
  115. {quantum_debugger-0.4.1 → quantum_debugger-0.5.0}/examples/qiskit_integration_demo.py +0 -0
  116. {quantum_debugger-0.4.1 → quantum_debugger-0.5.0}/examples/qml_basic_example.py +0 -0
  117. {quantum_debugger-0.4.1 → quantum_debugger-0.5.0}/examples/vqe_h2_example.py +0 -0
  118. {quantum_debugger-0.4.1 → quantum_debugger-0.5.0}/quantum_debugger/backends/base.py +0 -0
  119. {quantum_debugger-0.4.1 → quantum_debugger-0.5.0}/quantum_debugger/backends/cupy_backend.py +0 -0
  120. {quantum_debugger-0.4.1 → quantum_debugger-0.5.0}/quantum_debugger/backends/numba_backend.py +0 -0
  121. {quantum_debugger-0.4.1 → quantum_debugger-0.5.0}/quantum_debugger/backends/numpy_backend.py +0 -0
  122. {quantum_debugger-0.4.1 → quantum_debugger-0.5.0}/quantum_debugger/backends/sparse_backend.py +0 -0
  123. {quantum_debugger-0.4.1 → quantum_debugger-0.5.0}/quantum_debugger/core/__init__.py +0 -0
  124. {quantum_debugger-0.4.1 → quantum_debugger-0.5.0}/quantum_debugger/core/circuit.py +0 -0
  125. {quantum_debugger-0.4.1 → quantum_debugger-0.5.0}/quantum_debugger/core/gates.py +0 -0
  126. {quantum_debugger-0.4.1 → quantum_debugger-0.5.0}/quantum_debugger/core/quantum_state.py +0 -0
  127. {quantum_debugger-0.4.1 → quantum_debugger-0.5.0}/quantum_debugger/debugger/__init__.py +0 -0
  128. {quantum_debugger-0.4.1 → quantum_debugger-0.5.0}/quantum_debugger/debugger/breakpoints.py +0 -0
  129. {quantum_debugger-0.4.1 → quantum_debugger-0.5.0}/quantum_debugger/debugger/debugger.py +0 -0
  130. {quantum_debugger-0.4.1 → quantum_debugger-0.5.0}/quantum_debugger/debugger/inspector.py +0 -0
  131. {quantum_debugger-0.4.1 → quantum_debugger-0.5.0}/quantum_debugger/integrations/qiskit_adapter.py +0 -0
  132. {quantum_debugger-0.4.1 → quantum_debugger-0.5.0}/quantum_debugger/mitigation/__init__.py +0 -0
  133. {quantum_debugger-0.4.1 → quantum_debugger-0.5.0}/quantum_debugger/mitigation/core/__init__.py +0 -0
  134. {quantum_debugger-0.4.1 → quantum_debugger-0.5.0}/quantum_debugger/mitigation/core/extrapolator.py +0 -0
  135. {quantum_debugger-0.4.1 → quantum_debugger-0.5.0}/quantum_debugger/mitigation/core/folder.py +0 -0
  136. {quantum_debugger-0.4.1 → quantum_debugger-0.5.0}/quantum_debugger/mitigation/zne.py +0 -0
  137. {quantum_debugger-0.4.1 → quantum_debugger-0.5.0}/quantum_debugger/noise/__init__.py +0 -0
  138. {quantum_debugger-0.4.1 → quantum_debugger-0.5.0}/quantum_debugger/noise/composite_noise.py +0 -0
  139. {quantum_debugger-0.4.1 → quantum_debugger-0.5.0}/quantum_debugger/noise/hardware_profiles.py +0 -0
  140. {quantum_debugger-0.4.1 → quantum_debugger-0.5.0}/quantum_debugger/noise/noise_helpers.py +0 -0
  141. {quantum_debugger-0.4.1 → quantum_debugger-0.5.0}/quantum_debugger/noise/noise_models.py +0 -0
  142. {quantum_debugger-0.4.1 → quantum_debugger-0.5.0}/quantum_debugger/noise/stochastic_sampler.py +0 -0
  143. {quantum_debugger-0.4.1 → quantum_debugger-0.5.0}/quantum_debugger/parallel/__init__.py +0 -0
  144. {quantum_debugger-0.4.1 → quantum_debugger-0.5.0}/quantum_debugger/parallel/executor.py +0 -0
  145. {quantum_debugger-0.4.1 → quantum_debugger-0.5.0}/quantum_debugger/profiler/__init__.py +0 -0
  146. {quantum_debugger-0.4.1 → quantum_debugger-0.5.0}/quantum_debugger/profiler/metrics.py +0 -0
  147. {quantum_debugger-0.4.1 → quantum_debugger-0.5.0}/quantum_debugger/profiler/profiler.py +0 -0
  148. {quantum_debugger-0.4.1 → quantum_debugger-0.5.0}/quantum_debugger/qml/algorithms/__init__.py +0 -0
  149. {quantum_debugger-0.4.1 → quantum_debugger-0.5.0}/quantum_debugger/qml/algorithms/qaoa.py +0 -0
  150. {quantum_debugger-0.4.1 → quantum_debugger-0.5.0}/quantum_debugger/qml/algorithms/vqe.py +0 -0
  151. {quantum_debugger-0.4.1 → quantum_debugger-0.5.0}/quantum_debugger/qml/gates/__init__.py +0 -0
  152. {quantum_debugger-0.4.1 → quantum_debugger-0.5.0}/quantum_debugger/qml/gates/parameterized.py +0 -0
  153. {quantum_debugger-0.4.1 → quantum_debugger-0.5.0}/quantum_debugger/qml/hamiltonians/__init__.py +0 -0
  154. {quantum_debugger-0.4.1 → quantum_debugger-0.5.0}/quantum_debugger/qml/training/__init__.py +0 -0
  155. {quantum_debugger-0.4.1 → quantum_debugger-0.5.0}/quantum_debugger/qml/utils/__init__.py +0 -0
  156. {quantum_debugger-0.4.1 → quantum_debugger-0.5.0}/quantum_debugger/qml/utils/gradients.py +0 -0
  157. {quantum_debugger-0.4.1 → quantum_debugger-0.5.0}/quantum_debugger/visualization/__init__.py +0 -0
  158. {quantum_debugger-0.4.1 → quantum_debugger-0.5.0}/quantum_debugger/visualization/bloch_sphere.py +0 -0
  159. {quantum_debugger-0.4.1 → quantum_debugger-0.5.0}/quantum_debugger/visualization/state_viz.py +0 -0
  160. {quantum_debugger-0.4.1 → quantum_debugger-0.5.0}/quantum_debugger.egg-info/dependency_links.txt +0 -0
  161. {quantum_debugger-0.4.1 → quantum_debugger-0.5.0}/quantum_debugger.egg-info/requires.txt +0 -0
  162. {quantum_debugger-0.4.1 → quantum_debugger-0.5.0}/requirements.txt +0 -0
  163. {quantum_debugger-0.4.1 → quantum_debugger-0.5.0}/setup.cfg +0 -0
@@ -0,0 +1,110 @@
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.4.2] - 2025-12-22
9
+
10
+ ### Added
11
+ - **Complete pytest migration**: All 200 legacy script-style tests converted to pytest format
12
+ - **Hardware profiles extended**: AWS Braket, Azure Quantum provider support
13
+ - **2025 hardware updates**: IBM Heron, Google Willow, IonQ Forte profiles
14
+ - **Advanced backend tests**: 8 edge case and performance tests
15
+ - **GPU backend support**: CuPy backend availability testing
16
+ - **Enhanced test coverage**: 656 comprehensive tests (all passing ✅)
17
+
18
+ ### Changed
19
+ - Migrated all legacy test files from script execution to pytest format
20
+ - Updated test structure for better CI/CD compatibility
21
+ - Enhanced backend validation with 6 comprehensive backend tests
22
+ - Improved hardware profile testing (18 tests total)
23
+
24
+ ### Fixed
25
+ - Test suite compatibility issues
26
+ - Backend detection for GPU/CuPy
27
+ - Hardware profile version tracking
28
+
29
+ ### Documentation
30
+ - Updated README.md with v0.4.2 features and test count
31
+ - Added comprehensive testing section in README
32
+ - Created FINAL_TEST_SUMMARY.md with complete 656 test breakdown
33
+ - Fixed all documentation links (tutorials, examples, LICENSE)
34
+ - Updated version numbers across all files
35
+
36
+ ### Testing
37
+ - **656 total tests** (all passing ✅)
38
+ - All script-style tests converted to pytest
39
+ - Complete test coverage documentation
40
+
41
+ ## [0.4.1] - 2024-12-XX
42
+
43
+ ### Added
44
+ - Additional QML features and optimizations
45
+ - Performance improvements
46
+
47
+ ## [0.4.0] - 2024-12-XX
48
+
49
+ ### Added
50
+ - **Quantum Machine Learning Module**
51
+ - Parameterized gates (RX, RY, RZ with trainable parameters)
52
+ - VQE algorithm for molecular chemistry
53
+ - QAOA for combinatorial optimization
54
+ - Training framework with 4 optimizers (Adam, SGD, SPSA, RMSprop)
55
+ - Gradient computation (parameter shift rule, finite differences)
56
+ - 316 comprehensive tests
57
+ - 3 tutorials, 4 example scripts
58
+
59
+ ### Changed
60
+ - Enhanced circuit profiling
61
+ - Improved state visualization
62
+
63
+ ## [0.3.0] - 2024-12-XX
64
+
65
+ ### Added
66
+ - Realistic noise models (4 types)
67
+ - Hardware profiles (IBM, Google, IonQ, Rigetti)
68
+ - Qiskit Aer validation
69
+ - 89 new tests
70
+
71
+ ## [0.2.0] - 2024-XX-XX
72
+
73
+ ### Added
74
+ - Bidirectional circuit conversion with Qiskit
75
+ - CP gate support
76
+ - 12-qubit support
77
+
78
+ ## [0.1.1] - 2024-12-03
79
+
80
+ ### Fixed
81
+ - Fixed SWAP gate matrix for little-endian qubit ordering
82
+ - Fixed CNOT gate matrix for little-endian qubit ordering
83
+ - Fixed Toffoli gate matrix for little-endian qubit ordering
84
+ - Fixed entanglement detection for Bell states
85
+ - Rewrote multi-qubit gate expansion algorithm using tensor products
86
+
87
+ ### Added
88
+ - 69 comprehensive tests (100% pass rate)
89
+ - Test suites: quickstart, advanced, comprehensive, extreme, validation, production, edge cases
90
+ - Numerical stability tests (100+ consecutive operations)
91
+ - Quantum mechanics validation tests
92
+ - Production readiness tests
93
+
94
+ ### Changed
95
+ - Improved gate expansion algorithm for better accuracy
96
+ - Enhanced test coverage to 69 tests across 7 test suites
97
+
98
+ ## [0.1.0] - 2024-11-30
99
+
100
+ ### Added
101
+ - Initial release
102
+ - Core quantum state representation
103
+ - 15+ quantum gates (H, X, Y, Z, S, T, RX, RY, RZ, PHASE, CNOT, CZ, SWAP, Toffoli)
104
+ - Step-through debugger with breakpoints
105
+ - Circuit profiler with optimization suggestions
106
+ - State visualization tools
107
+ - Bloch sphere representation
108
+ - Support for up to 15 qubits
109
+ - Example circuits and demos
110
+ - Comprehensive documentation
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: quantum-debugger
3
- Version: 0.4.1
3
+ Version: 0.5.0
4
4
  Summary: Interactive quantum circuit debugger and Quantum Machine Learning library with VQE, QAOA, and parameterized gates
5
5
  Home-page: https://github.com/Raunakg2005/quantum-debugger
6
6
  Author: Raunak Kumar Gupta
@@ -55,34 +55,49 @@ Dynamic: summary
55
55
  **Interactive debugger, profiler, and quantum machine learning library for quantum circuits**
56
56
 
57
57
  [![PyPI version](https://badge.fury.io/py/quantum-debugger.svg)](https://pypi.org/project/quantum-debugger/)
58
- [![Tests](https://img.shields.io/badge/tests-316%2F316%20passing-brightgreen)]()
58
+ [![Tests](https://img.shields.io/badge/tests-689%20passing-brightgreen)](https://github.com/Raunakg2005/quantum-debugger/blob/main/tests/FINAL_TEST_SUMMARY.md)
59
59
  [![Python](https://img.shields.io/badge/python-3.9%2B-blue)]()
60
60
  [![License](https://img.shields.io/badge/license-MIT-green)]()
61
61
 
62
62
  A powerful Python library for quantum circuit debugging, state inspection, performance analysis, and **quantum machine learning**. Now with VQE, QAOA, and parameterized quantum circuits!
63
63
 
64
- ## ✨ What's New in v0.4.0
64
+ ## ✨ What's New in v0.5.0
65
65
 
66
- **Quantum Machine Learning Module** 🚀
66
+ **Advanced Quantum Machine Learning** 🚀
67
67
 
68
68
  ```python
69
- from quantum_debugger.qml import VQE, h2_hamiltonian, hardware_efficient_ansatz
69
+ # NEW: Quantum Neural Networks
70
+ from quantum_debugger.qml.qnn import QuantumNeuralNetwork, EncodingLayer, VariationalLayer
70
71
 
71
- # Find H2 molecule ground state
72
- H = h2_hamiltonian()
73
- vqe = VQE(H, hardware_efficient_ansatz, num_qubits=2)
74
- result = vqe.run(initial_params)
75
- print(f"Ground state energy: {result['ground_state_energy']:.6f} Hartree")
76
- # Accuracy: < 1% error from exact solution
72
+ qnn = QuantumNeuralNetwork(n_qubits=4)
73
+ qnn.add(EncodingLayer(4, feature_map='zz'))
74
+ qnn.add(VariationalLayer(4, ansatz='real_amplitudes', reps=2))
75
+ qnn.compile(optimizer='adam', loss='mse', learning_rate=0.01)
76
+ history = qnn.fit(X_train, y_train, epochs=50, batch_size=16)
77
+
78
+ # NEW: Zero-Noise Extrapolation (Error Mitigation)
79
+ from quantum_debugger.qml.error_mitigation import ZeroNoiseExtrapolation
80
+
81
+ zne = ZeroNoiseExtrapolation(scale_factors=[1.0, 2.0, 3.0])
82
+ mitigated_value = zne.execute(circuit_function)
83
+
84
+ # NEW: GPU Acceleration
85
+ from quantum_debugger.backends import GPUBackend
86
+
87
+ backend = GPUBackend() # Auto-detects GPU, falls back to CPU
88
+ state = backend.allocate_state(n_qubits=15) # 2-5x faster on GPU
77
89
  ```
78
90
 
79
- **New Features:**
80
- - ✅ **Parameterized Gates** (RX, RY, RZ with trainable parameters)
81
- - ✅ **VQE** (Variational Quantum Eigensolver for chemistry)
82
- - ✅ **QAOA** (Quantum optimization for MaxCut problems)
83
- - ✅ **Training Framework** (Adam, SGD, SPSA, RMSprop optimizers)
84
- - ✅ **Gradient Computation** (Parameter shift rule, finite differences)
85
- - ✅ **316 comprehensive tests** (100% passing)
91
+ **v0.5.0 Features:**
92
+ - ✅ **Quantum Neural Networks** (Layer-based QML with batch training)
93
+ - ✅ **Zero-Noise Extrapolation** (Error mitigation for noisy circuits)
94
+ - ✅ **GPU Acceleration** (CuPy integration with automatic CPU fallback)
95
+ - ✅ **Advanced Ansätze** (4 new templates: RealAmplitudes, TwoLocal, etc.)
96
+ - ✅ **Dataset Integration** (CSV/JSON loading, preprocessing, feature maps)
97
+ - ✅ **Molecular Hamiltonians** (LiH, H2O, BeH2 with accurate energies)
98
+ - ✅ **Advanced Optimizers** (QNG, Nelder-Mead, L-BFGS-B)
99
+ - ✅ **190+ comprehensive tests** (all passing ✅)
100
+ - ✅ **Professional documentation** (7 detailed guides)
86
101
 
87
102
  See full [QML Documentation](#quantum-machine-learning-v040) below.
88
103
 
@@ -96,12 +111,14 @@ See full [QML Documentation](#quantum-machine-learning-v040) below.
96
111
  - **Noise Simulation** - Realistic hardware noise models
97
112
  - **Qiskit Integration** - Import/export circuits from Qiskit
98
113
 
99
- ### Quantum Machine Learning (NEW v0.4.0)
100
- - **Parameterized Circuits** - Trainable quantum gates
101
- - **VQE** - Molecular ground state finding
102
- - **QAOA** - Combinatorial optimization
103
- - **Training & Optimization** - 4 classical optimizers
104
- - **Ansatz Library** - 4 pre-built quantum circuit templates
114
+ ### Quantum Machine Learning (v0.5.0)
115
+ - **Quantum Neural Networks** - Layer-based deep learning on quantum hardware
116
+ - **Error Mitigation** - Zero-noise extrapolation for accurate results
117
+ - **GPU Acceleration** - Hardware-accelerated simulations (2-5x speedup)
118
+ - **VQE & QAOA** - Molecular chemistry and optimization
119
+ - **Advanced Optimizers** - 7 optimizers including quantum natural gradient
120
+ - **Ansätze Library** - 8 pre-built quantum circuit templates
121
+ - **Dataset Tools** - Loading, preprocessing, quantum feature encoding
105
122
 
106
123
  ## Quick Start
107
124
 
@@ -143,7 +160,77 @@ rx.parameter = 0.7
143
160
  new_matrix = rx.matrix() # Automatically cached for performance
144
161
  ```
145
162
 
146
- ## Quantum Machine Learning (v0.4.0)
163
+ ## v0.5.0 Feature Spotlight
164
+
165
+ ### 1. Quantum Neural Networks
166
+
167
+ Build and train quantum machine learning models:
168
+
169
+ ```python
170
+ from quantum_debugger.qml.qnn import (
171
+ QuantumNeuralNetwork,
172
+ EncodingLayer,
173
+ VariationalLayer
174
+ )
175
+
176
+ # Create network
177
+ qnn = QuantumNeuralNetwork(n_qubits=4)
178
+ qnn.add(EncodingLayer(4, feature_map='zz'))
179
+ qnn.add(VariationalLayer(4, ansatz='real_amplitudes', reps=2))
180
+
181
+ # Train
182
+ qnn.compile(optimizer='adam', loss='mse')
183
+ history = qnn.fit(X_train, y_train, epochs=50, batch_size=16)
184
+
185
+ # Predict
186
+ predictions = qnn.predict(X_test)
187
+ ```
188
+
189
+ 📖 **Documentation:** [QNN Guide](docs/qnn_guide.md)
190
+
191
+ ### 2. Zero-Noise Extrapolation (Error Mitigation)
192
+
193
+ Reduce quantum noise effects:
194
+
195
+ ```python
196
+ from quantum_debugger.qml.error_mitigation import ZeroNoiseExtrapolation
197
+
198
+ # Setup ZNE
199
+ zne = ZeroNoiseExtrapolation(
200
+ scale_factors=[1.0, 2.0, 3.0],
201
+ extrapolator='polynomial'
202
+ )
203
+
204
+ # Apply to circuit
205
+ mitigated_result = zne.execute(circuit_function)
206
+
207
+ # Check improvement
208
+ improvement = zne.get_improvement()
209
+ print(f"Error reduced by {improvement:.1f}%")
210
+ ```
211
+
212
+ 📖 **Documentation:** [ZNE Guide](docs/zne_guide.md)
213
+
214
+ ### 3. GPU Acceleration
215
+
216
+ Hardware-accelerated quantum simulations:
217
+
218
+ ```python
219
+ from quantum_debugger.backends import GPUBackend
220
+
221
+ # Auto-detect GPU (falls back to CPU)
222
+ backend = GPUBackend()
223
+
224
+ # Allocate on GPU
225
+ state = backend.allocate_state(n_qubits=15)
226
+
227
+ # 2-5x faster for large circuits
228
+ # Transparent API - same code for CPU/GPU
229
+ ```
230
+
231
+ 📖 **Documentation:** [GPU Guide](docs/gpu_guide.md)
232
+
233
+ ## Quantum Machine Learning (v0.4.0+)
147
234
 
148
235
  ### 1. Parameterized Gates
149
236
 
@@ -361,14 +448,16 @@ See [test files](.) for details.
361
448
  ## 📖 Documentation
362
449
 
363
450
  - **Tutorials:**
364
- - [Parameterized Gates Tutorial](tutorials/parameterized_gates_tutorial.md)
365
- - [VQE Preparation Guide](tutorials/vqe_preparation.md)
366
- - [QAOA Tutorial](tutorials/qaoa_tutorial.md)
451
+ - [Parameterized Gates Tutorial](https://github.com/Raunakg2005/quantum-debugger/blob/main/tutorials/parameterized_gates_tutorial.md)
452
+ - [VQE Preparation Guide](https://github.com/Raunakg2005/quantum-debugger/blob/main/tutorials/vqe_preparation.md)
453
+ - [QAOA Tutorial](https://github.com/Raunakg2005/quantum-debugger/blob/main/tutorials/qaoa_tutorial.md)
454
+ - [Noise Tutorial](https://github.com/Raunakg2005/quantum-debugger/blob/main/tutorials/noise_tutorial.md)
455
+ - [ZNE Tutorial](https://github.com/Raunakg2005/quantum-debugger/blob/main/tutorials/zne_tutorial.md)
367
456
 
368
457
  - **Examples:**
369
- - [VQE H2 Molecule](examples/vqe_h2_example.py)
370
- - [QAOA MaxCut](examples/qaoa_maxcut_example.py)
371
- - [Performance Benchmarks](examples/benchmarks.py)
458
+ - [VQE H2 Molecule](https://github.com/Raunakg2005/quantum-debugger/blob/main/examples/vqe_h2_example.py)
459
+ - [QAOA MaxCut](https://github.com/Raunakg2005/quantum-debugger/blob/main/examples/qaoa_maxcut_example.py)
460
+ - [QML Basic Example](https://github.com/Raunakg2005/quantum-debugger/blob/main/examples/qml_basic_example.py)
372
461
 
373
462
  ## 📈 Version History
374
463
 
@@ -410,22 +499,74 @@ See [test files](.) for details.
410
499
  - [ ] Quantum error correction tools
411
500
  - [ ] Production deployment tools
412
501
 
502
+ ## 🧪 Testing
503
+
504
+ **v0.4.2: 656 Comprehensive Tests** ✅
505
+
506
+ ### Test Suite Coverage
507
+ - **Core Tests**: 441 tests (quantum operations, circuits, debugging)
508
+ - **QML Tests**: 139 tests (VQE, QAOA, training, parameterized gates)
509
+ - **Integration**: 76 tests (Cirq, Qiskit, backend validation)
510
+ - **All test files converted to pytest format**
511
+
512
+ ### Running Tests
513
+
514
+ ```bash
515
+ # Run all tests
516
+ pytest tests/ -v
517
+
518
+ # Run specific test suites
519
+ pytest tests/unit/ -v # Core unit tests
520
+ pytest tests/cirq/ -v # Cirq integration
521
+ pytest tests/qiskit/ -v # Qiskit integration
522
+ pytest tests/qml/ -v # QML tests
523
+
524
+ # Run with coverage
525
+ pytest tests/ --cov=quantum_debugger --cov-report=html
526
+
527
+ # Run specific converted tests
528
+ pytest tests/unit/test_backends_advanced.py -v
529
+ pytest tests/unit/test_hardware_profiles_phase3.py -v
530
+ ```
531
+
532
+ ### Test Documentation
533
+ - 📊 [Complete Test Summary](https://github.com/Raunakg2005/quantum-debugger/blob/main/tests/FINAL_TEST_SUMMARY.md) - Full breakdown of all 656 tests
534
+ - 📁 [Test Structure](https://github.com/Raunakg2005/quantum-debugger/blob/main/tests/README.md) - Organization and conventions
535
+
536
+ ### Test Categories
537
+ 1. **Backend Tests** (59 tests) - NumPy, Sparse, GPU backends
538
+ 2. **Noise Tests** (64 tests) - Noise models, hardware profiles
539
+ 3. **Mitigation Tests** (28 tests) - ZNE, error mitigation
540
+ 4. **Hardware Profiles** (18 tests) - AWS Braket, Azure Quantum, 2025 updates
541
+ 5. **QML Tests** (139 tests) - VQE, QAOA, training framework
542
+ 6. **Integration Tests** (76 tests) - Cirq, Qiskit compatibility
543
+
413
544
  ## 🤝 Contributing
414
545
 
415
546
  Contributions welcome! Please ensure tests pass:
416
547
 
417
548
  ```bash
418
- pytest test_*.py -v
549
+ pytest tests/ -v --tb=short
419
550
  ```
420
551
 
552
+ See [Testing Section](#testing) for details.
553
+
421
554
  ## 📄 License
422
555
 
423
- MIT License - see [LICENSE](LICENSE) file.
556
+ MIT License - see [LICENSE](https://github.com/Raunakg2005/quantum-debugger/blob/main/LICENSE) file.
557
+
558
+ ---
559
+
560
+ ## 🙏 Acknowledgments
561
+
562
+ **Author:** Raunak Kumar Gupta
563
+ **Supervised by:** Dr. Vaibhav Prakash Vasani
564
+ **Institution:** K.J. Somaiya School of Engineering
424
565
 
425
566
  ---
426
567
 
427
568
  **PyPI:** https://pypi.org/project/quantum-debugger/
428
569
  **Author:** Raunak Kumar Gupta
429
570
  **Institution:** K.J. Somaiya School of Engineering
430
- **Version:** 0.4.0
571
+ **Version:** 0.4.2
431
572
  **Python:** 3.9+
@@ -3,34 +3,49 @@
3
3
  **Interactive debugger, profiler, and quantum machine learning library for quantum circuits**
4
4
 
5
5
  [![PyPI version](https://badge.fury.io/py/quantum-debugger.svg)](https://pypi.org/project/quantum-debugger/)
6
- [![Tests](https://img.shields.io/badge/tests-316%2F316%20passing-brightgreen)]()
6
+ [![Tests](https://img.shields.io/badge/tests-689%20passing-brightgreen)](https://github.com/Raunakg2005/quantum-debugger/blob/main/tests/FINAL_TEST_SUMMARY.md)
7
7
  [![Python](https://img.shields.io/badge/python-3.9%2B-blue)]()
8
8
  [![License](https://img.shields.io/badge/license-MIT-green)]()
9
9
 
10
10
  A powerful Python library for quantum circuit debugging, state inspection, performance analysis, and **quantum machine learning**. Now with VQE, QAOA, and parameterized quantum circuits!
11
11
 
12
- ## ✨ What's New in v0.4.0
12
+ ## ✨ What's New in v0.5.0
13
13
 
14
- **Quantum Machine Learning Module** 🚀
14
+ **Advanced Quantum Machine Learning** 🚀
15
15
 
16
16
  ```python
17
- from quantum_debugger.qml import VQE, h2_hamiltonian, hardware_efficient_ansatz
17
+ # NEW: Quantum Neural Networks
18
+ from quantum_debugger.qml.qnn import QuantumNeuralNetwork, EncodingLayer, VariationalLayer
18
19
 
19
- # Find H2 molecule ground state
20
- H = h2_hamiltonian()
21
- vqe = VQE(H, hardware_efficient_ansatz, num_qubits=2)
22
- result = vqe.run(initial_params)
23
- print(f"Ground state energy: {result['ground_state_energy']:.6f} Hartree")
24
- # Accuracy: < 1% error from exact solution
20
+ qnn = QuantumNeuralNetwork(n_qubits=4)
21
+ qnn.add(EncodingLayer(4, feature_map='zz'))
22
+ qnn.add(VariationalLayer(4, ansatz='real_amplitudes', reps=2))
23
+ qnn.compile(optimizer='adam', loss='mse', learning_rate=0.01)
24
+ history = qnn.fit(X_train, y_train, epochs=50, batch_size=16)
25
+
26
+ # NEW: Zero-Noise Extrapolation (Error Mitigation)
27
+ from quantum_debugger.qml.error_mitigation import ZeroNoiseExtrapolation
28
+
29
+ zne = ZeroNoiseExtrapolation(scale_factors=[1.0, 2.0, 3.0])
30
+ mitigated_value = zne.execute(circuit_function)
31
+
32
+ # NEW: GPU Acceleration
33
+ from quantum_debugger.backends import GPUBackend
34
+
35
+ backend = GPUBackend() # Auto-detects GPU, falls back to CPU
36
+ state = backend.allocate_state(n_qubits=15) # 2-5x faster on GPU
25
37
  ```
26
38
 
27
- **New Features:**
28
- - ✅ **Parameterized Gates** (RX, RY, RZ with trainable parameters)
29
- - ✅ **VQE** (Variational Quantum Eigensolver for chemistry)
30
- - ✅ **QAOA** (Quantum optimization for MaxCut problems)
31
- - ✅ **Training Framework** (Adam, SGD, SPSA, RMSprop optimizers)
32
- - ✅ **Gradient Computation** (Parameter shift rule, finite differences)
33
- - ✅ **316 comprehensive tests** (100% passing)
39
+ **v0.5.0 Features:**
40
+ - ✅ **Quantum Neural Networks** (Layer-based QML with batch training)
41
+ - ✅ **Zero-Noise Extrapolation** (Error mitigation for noisy circuits)
42
+ - ✅ **GPU Acceleration** (CuPy integration with automatic CPU fallback)
43
+ - ✅ **Advanced Ansätze** (4 new templates: RealAmplitudes, TwoLocal, etc.)
44
+ - ✅ **Dataset Integration** (CSV/JSON loading, preprocessing, feature maps)
45
+ - ✅ **Molecular Hamiltonians** (LiH, H2O, BeH2 with accurate energies)
46
+ - ✅ **Advanced Optimizers** (QNG, Nelder-Mead, L-BFGS-B)
47
+ - ✅ **190+ comprehensive tests** (all passing ✅)
48
+ - ✅ **Professional documentation** (7 detailed guides)
34
49
 
35
50
  See full [QML Documentation](#quantum-machine-learning-v040) below.
36
51
 
@@ -44,12 +59,14 @@ See full [QML Documentation](#quantum-machine-learning-v040) below.
44
59
  - **Noise Simulation** - Realistic hardware noise models
45
60
  - **Qiskit Integration** - Import/export circuits from Qiskit
46
61
 
47
- ### Quantum Machine Learning (NEW v0.4.0)
48
- - **Parameterized Circuits** - Trainable quantum gates
49
- - **VQE** - Molecular ground state finding
50
- - **QAOA** - Combinatorial optimization
51
- - **Training & Optimization** - 4 classical optimizers
52
- - **Ansatz Library** - 4 pre-built quantum circuit templates
62
+ ### Quantum Machine Learning (v0.5.0)
63
+ - **Quantum Neural Networks** - Layer-based deep learning on quantum hardware
64
+ - **Error Mitigation** - Zero-noise extrapolation for accurate results
65
+ - **GPU Acceleration** - Hardware-accelerated simulations (2-5x speedup)
66
+ - **VQE & QAOA** - Molecular chemistry and optimization
67
+ - **Advanced Optimizers** - 7 optimizers including quantum natural gradient
68
+ - **Ansätze Library** - 8 pre-built quantum circuit templates
69
+ - **Dataset Tools** - Loading, preprocessing, quantum feature encoding
53
70
 
54
71
  ## Quick Start
55
72
 
@@ -91,7 +108,77 @@ rx.parameter = 0.7
91
108
  new_matrix = rx.matrix() # Automatically cached for performance
92
109
  ```
93
110
 
94
- ## Quantum Machine Learning (v0.4.0)
111
+ ## v0.5.0 Feature Spotlight
112
+
113
+ ### 1. Quantum Neural Networks
114
+
115
+ Build and train quantum machine learning models:
116
+
117
+ ```python
118
+ from quantum_debugger.qml.qnn import (
119
+ QuantumNeuralNetwork,
120
+ EncodingLayer,
121
+ VariationalLayer
122
+ )
123
+
124
+ # Create network
125
+ qnn = QuantumNeuralNetwork(n_qubits=4)
126
+ qnn.add(EncodingLayer(4, feature_map='zz'))
127
+ qnn.add(VariationalLayer(4, ansatz='real_amplitudes', reps=2))
128
+
129
+ # Train
130
+ qnn.compile(optimizer='adam', loss='mse')
131
+ history = qnn.fit(X_train, y_train, epochs=50, batch_size=16)
132
+
133
+ # Predict
134
+ predictions = qnn.predict(X_test)
135
+ ```
136
+
137
+ 📖 **Documentation:** [QNN Guide](docs/qnn_guide.md)
138
+
139
+ ### 2. Zero-Noise Extrapolation (Error Mitigation)
140
+
141
+ Reduce quantum noise effects:
142
+
143
+ ```python
144
+ from quantum_debugger.qml.error_mitigation import ZeroNoiseExtrapolation
145
+
146
+ # Setup ZNE
147
+ zne = ZeroNoiseExtrapolation(
148
+ scale_factors=[1.0, 2.0, 3.0],
149
+ extrapolator='polynomial'
150
+ )
151
+
152
+ # Apply to circuit
153
+ mitigated_result = zne.execute(circuit_function)
154
+
155
+ # Check improvement
156
+ improvement = zne.get_improvement()
157
+ print(f"Error reduced by {improvement:.1f}%")
158
+ ```
159
+
160
+ 📖 **Documentation:** [ZNE Guide](docs/zne_guide.md)
161
+
162
+ ### 3. GPU Acceleration
163
+
164
+ Hardware-accelerated quantum simulations:
165
+
166
+ ```python
167
+ from quantum_debugger.backends import GPUBackend
168
+
169
+ # Auto-detect GPU (falls back to CPU)
170
+ backend = GPUBackend()
171
+
172
+ # Allocate on GPU
173
+ state = backend.allocate_state(n_qubits=15)
174
+
175
+ # 2-5x faster for large circuits
176
+ # Transparent API - same code for CPU/GPU
177
+ ```
178
+
179
+ 📖 **Documentation:** [GPU Guide](docs/gpu_guide.md)
180
+
181
+ ## Quantum Machine Learning (v0.4.0+)
95
182
 
96
183
  ### 1. Parameterized Gates
97
184
 
@@ -309,14 +396,16 @@ See [test files](.) for details.
309
396
  ## 📖 Documentation
310
397
 
311
398
  - **Tutorials:**
312
- - [Parameterized Gates Tutorial](tutorials/parameterized_gates_tutorial.md)
313
- - [VQE Preparation Guide](tutorials/vqe_preparation.md)
314
- - [QAOA Tutorial](tutorials/qaoa_tutorial.md)
399
+ - [Parameterized Gates Tutorial](https://github.com/Raunakg2005/quantum-debugger/blob/main/tutorials/parameterized_gates_tutorial.md)
400
+ - [VQE Preparation Guide](https://github.com/Raunakg2005/quantum-debugger/blob/main/tutorials/vqe_preparation.md)
401
+ - [QAOA Tutorial](https://github.com/Raunakg2005/quantum-debugger/blob/main/tutorials/qaoa_tutorial.md)
402
+ - [Noise Tutorial](https://github.com/Raunakg2005/quantum-debugger/blob/main/tutorials/noise_tutorial.md)
403
+ - [ZNE Tutorial](https://github.com/Raunakg2005/quantum-debugger/blob/main/tutorials/zne_tutorial.md)
315
404
 
316
405
  - **Examples:**
317
- - [VQE H2 Molecule](examples/vqe_h2_example.py)
318
- - [QAOA MaxCut](examples/qaoa_maxcut_example.py)
319
- - [Performance Benchmarks](examples/benchmarks.py)
406
+ - [VQE H2 Molecule](https://github.com/Raunakg2005/quantum-debugger/blob/main/examples/vqe_h2_example.py)
407
+ - [QAOA MaxCut](https://github.com/Raunakg2005/quantum-debugger/blob/main/examples/qaoa_maxcut_example.py)
408
+ - [QML Basic Example](https://github.com/Raunakg2005/quantum-debugger/blob/main/examples/qml_basic_example.py)
320
409
 
321
410
  ## 📈 Version History
322
411
 
@@ -358,22 +447,74 @@ See [test files](.) for details.
358
447
  - [ ] Quantum error correction tools
359
448
  - [ ] Production deployment tools
360
449
 
450
+ ## 🧪 Testing
451
+
452
+ **v0.4.2: 656 Comprehensive Tests** ✅
453
+
454
+ ### Test Suite Coverage
455
+ - **Core Tests**: 441 tests (quantum operations, circuits, debugging)
456
+ - **QML Tests**: 139 tests (VQE, QAOA, training, parameterized gates)
457
+ - **Integration**: 76 tests (Cirq, Qiskit, backend validation)
458
+ - **All test files converted to pytest format**
459
+
460
+ ### Running Tests
461
+
462
+ ```bash
463
+ # Run all tests
464
+ pytest tests/ -v
465
+
466
+ # Run specific test suites
467
+ pytest tests/unit/ -v # Core unit tests
468
+ pytest tests/cirq/ -v # Cirq integration
469
+ pytest tests/qiskit/ -v # Qiskit integration
470
+ pytest tests/qml/ -v # QML tests
471
+
472
+ # Run with coverage
473
+ pytest tests/ --cov=quantum_debugger --cov-report=html
474
+
475
+ # Run specific converted tests
476
+ pytest tests/unit/test_backends_advanced.py -v
477
+ pytest tests/unit/test_hardware_profiles_phase3.py -v
478
+ ```
479
+
480
+ ### Test Documentation
481
+ - 📊 [Complete Test Summary](https://github.com/Raunakg2005/quantum-debugger/blob/main/tests/FINAL_TEST_SUMMARY.md) - Full breakdown of all 656 tests
482
+ - 📁 [Test Structure](https://github.com/Raunakg2005/quantum-debugger/blob/main/tests/README.md) - Organization and conventions
483
+
484
+ ### Test Categories
485
+ 1. **Backend Tests** (59 tests) - NumPy, Sparse, GPU backends
486
+ 2. **Noise Tests** (64 tests) - Noise models, hardware profiles
487
+ 3. **Mitigation Tests** (28 tests) - ZNE, error mitigation
488
+ 4. **Hardware Profiles** (18 tests) - AWS Braket, Azure Quantum, 2025 updates
489
+ 5. **QML Tests** (139 tests) - VQE, QAOA, training framework
490
+ 6. **Integration Tests** (76 tests) - Cirq, Qiskit compatibility
491
+
361
492
  ## 🤝 Contributing
362
493
 
363
494
  Contributions welcome! Please ensure tests pass:
364
495
 
365
496
  ```bash
366
- pytest test_*.py -v
497
+ pytest tests/ -v --tb=short
367
498
  ```
368
499
 
500
+ See [Testing Section](#testing) for details.
501
+
369
502
  ## 📄 License
370
503
 
371
- MIT License - see [LICENSE](LICENSE) file.
504
+ MIT License - see [LICENSE](https://github.com/Raunakg2005/quantum-debugger/blob/main/LICENSE) file.
505
+
506
+ ---
507
+
508
+ ## 🙏 Acknowledgments
509
+
510
+ **Author:** Raunak Kumar Gupta
511
+ **Supervised by:** Dr. Vaibhav Prakash Vasani
512
+ **Institution:** K.J. Somaiya School of Engineering
372
513
 
373
514
  ---
374
515
 
375
516
  **PyPI:** https://pypi.org/project/quantum-debugger/
376
517
  **Author:** Raunak Kumar Gupta
377
518
  **Institution:** K.J. Somaiya School of Engineering
378
- **Version:** 0.4.0
519
+ **Version:** 0.4.2
379
520
  **Python:** 3.9+
@@ -15,7 +15,7 @@ Features:
15
15
  Version: 0.4.0-dev
16
16
  """
17
17
 
18
- __version__ = "0.4.0-dev"
18
+ __version__ = "0.4.2"
19
19
  __author__ = "warlord9004"
20
20
  __license__ = "MIT"
21
21
 
@@ -123,3 +123,14 @@ if HAS_SPARSE:
123
123
 
124
124
  if HAS_CUPY:
125
125
  __all__.append('CuPyBackend')
126
+
127
+ # Add GPU backend
128
+ try:
129
+ from .gpu_backend import (
130
+ GPUBackend,
131
+ get_optimal_backend,
132
+ benchmark_backends
133
+ )
134
+ __all__.extend(['GPUBackend', 'get_optimal_backend', 'benchmark_backends'])
135
+ except ImportError:
136
+ pass