Educational quantum computing simulator for learning and experimentation
Project description
quantumsim: Educational Quantum Computer Simulator Goal: Lightweight, didactic quantum circuit simulator optimized for clarity, modularity, and CPU-only execution on a MacBook. ## Features SUCCESS: - Statevector simulator (dense) up to ~20 qubits comfortably. - Complete gate library: X, Y, Z, H, S, T, RX, RY, RZ, CX, CZ, SWAP. - Circuit builder with fluent API and ASCII visualization. - Quantum noise models: Depolarizing, amplitude damping, phase damping. - Educational examples: Bell states, Grover's algorithm, teleportation, noise effects. - Measurement simulation with classical outcome sampling. ## Quick Start bash # From the workspace root: PYTHONPATH=$(pwd) python quantumsim/examples/run_grover.py PYTHONPATH=$(pwd) python quantumsim/examples/run_noise_demo.py ## Example Usage python from quantumsim import Circuit, Executor, print_circuit # Create Bell state c = Circuit(2) c.h(0).cx(0, 1) print_circuit(c) # Execute and measure sv = Executor().run(c) print("Measurement counts:", sv.measure_all(1000)) # Output: {'00': ~500, '11': ~500} ## Advanced Features python # Noise simulation from quantumsim.noise import DepolarizingChannel noise = DepolarizingChannel(p=0.1) noisy_state = noise.apply_stochastic(sv) # Algorithm examples python quantumsim/examples/run_grover.py # 2-qubit search python quantumsim/examples/run_teleport.py # Quantum teleportation ## Roadmap Stages 1. Core data structures (QubitRegister, Gate, Circuit) + statevector executor. 2. Measurement + basic noise injection. 3. Visualization (ASCII + optional matplotlib). 4. Algorithms examples + docs. 5. Performance pass: simple gate fusion and caching. 6. (Stretch) Tensor network path contraction for >24 qubits (limited cases). ## Design Principles - Readability over micro-optimization in v0. - Pure functions where reasonable; deterministic random seeds. - Type hints & docstrings for every public function. - Minimal dependencies initially (numpy, typing, dataclasses, matplotlib optional). ## Folder Structure (planned) quantumsim/ core/ statevector.py gates.py circuit.py executor.py noise/ channels.py viz/ ascii.py examples/ run_bell.py run_teleport.py requirements.txt README.md ## License MIT (to be added).
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
quantumsim_edu-2.0.0.tar.gz
(16.0 kB
view details)
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file quantumsim_edu-2.0.0.tar.gz.
File metadata
- Download URL: quantumsim_edu-2.0.0.tar.gz
- Upload date:
- Size: 16.0 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.13.5
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
bd75e2896fca905b36f45e338d07fb6c4827ee30a786c60f87167a06acb4a652
|
|
| MD5 |
1803e02b8667c162b7c8b37229bf4ab1
|
|
| BLAKE2b-256 |
91173460c6bb0fb33edaec005d5bd03ddd6c75e5e7fff92e1abe387b4603409a
|
File details
Details for the file quantumsim_edu-2.0.0-py3-none-any.whl.
File metadata
- Download URL: quantumsim_edu-2.0.0-py3-none-any.whl
- Upload date:
- Size: 18.2 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.13.5
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
c75f569e1b15a414b4a21152f62d584dda140be79d64782bf5d98b3d19344911
|
|
| MD5 |
f5a1ca06683c131606db6923643bd520
|
|
| BLAKE2b-256 |
20264a4b803dd82ae1dd3705e07abedd7563ce916701aeb666af0dbc459b0a8a
|