Developed a comprehensive Python-based quantum circuit simulator from scratch, implementing fundamental quantum gates, state vector manipulation, and visualization tools. The simulator supports famous quantum algorithms including Grover's search and Shor's factorization, providing both educational value and practical testing capabilities for quantum algorithm development.
Understanding quantum computing requires hands-on experience with quantum circuits, but access to real quantum hardware is limited and expensive. Existing simulators often abstract away crucial implementation details, making it difficult to truly understand quantum mechanics at the gate level. The goal was to build a simulator that:
The simulator represents quantum states as complex-valued vectors in the computational basis. For an n-qubit system, the state vector contains 2^n complex amplitudes, stored as NumPy arrays for efficient linear algebra operations.
Implemented all fundamental quantum gates as unitary matrices:
Grover's Algorithm: Implemented the complete quantum search algorithm with Oracle construction for arbitrary search problems. Verified quadratic speedup with circuits searching databases up to 2^10 elements.
Shor's Algorithm: Built modular exponentiation circuits and Quantum Fourier Transform for integer factorization. Successfully factored integers up to 21 using period-finding subroutine.
Additional Algorithms:
The simulator is organized into modular components:
Max Simulation
Quantum Gates
Algorithms
Accuracy
The simulator has been used in educational settings to teach quantum computing fundamentals and has been validated against IBM Qiskit for accuracy. All implemented algorithms produce correct results matching theoretical predictions, with execution times suitable for interactive exploration and algorithm development.
Python 3.10+
NumPy, SciPy
Matplotlib, Seaborn
Qiskit, Cirq
Pytest, unittest
Sphinx, Jupyter