B.Tech CSE · IIT Gandhinagar · 2025–2029
I like staying with difficult questions: making their structure precise, building a model or a piece of software around them, then testing what survives. My interests move between mathematics, computation, quantum computing, algorithms, and systems engineering; the common thread is understanding how a system works before deciding what to build with it.
| Interest | What draws me to it |
|---|---|
| ⚛️ Quantum computing & quantum software | Learning the mathematics and working with the software ecosystem |
| 🔐 Enigma & mathematical cryptanalysis | Recovering structure from indicator evidence |
| 🧩 Algorithms & data structures | Connecting mathematical ideas to concrete procedures |
| ⚙️ Systems programming / C | Memory, constraints, and behavior close to the machine |
| ∑ Mathematical foundations of computation | The structures underneath algorithms and engineered systems |
I’m building a state-vector quantum circuit simulator from scratch in C17 to understand how the mathematics of quantum computing translates into software. The current implementation covers complex-number arithmetic, qubit and Bloch sphere representations, quantum-state representation, and multi-qubit operators. Quantum gates, measurement, and circuit execution are the next steps. Longer term, I plan to explore basic quantum algorithms and study the simulator’s performance and memory scaling against frameworks such as Qiskit and Cirq.
A mathematical investigation of Enigma indicator cryptanalysis, Rejewski’s methods, and rotor-wiring recovery, conducted during SRIP 2026 at IIT Gandhinagar. The repository contains the research report, a proof of Rejewski’s pairing theorem, and a Jupyter notebook with Enigma and cryptanalysis simulations.
A C99 memory-management project for simulated 64 KB embedded RAM. Its progressive levels explore fixed and variable-size allocation, fragmentation, task quotas, handles, compaction, and out-of-memory recovery. I like this project for the way it makes systems constraints explicit: memory layout and failure behavior are part of the problem, not implementation details to hide.
I contribute upstream to quantum software, with merged work in Qiskit and Cirq:
- Qiskit — transpiler control flow: Fixed
WrapAnglesfailing to respect angle bounds inside control flow by addingtrivial_recurse, with a regression test and release note. Merged as PR #17349, addressing issue #17316. - Qiskit — two-qubit transpiler tests. Added tests that verify
ConsolidateBlockspreserves the circuit’s unitary with CX, CZ, ECR, and iSWAP as explicit KAK basis gates. The tests also check that the decomposer estimates different gate counts for CX and iSWAP on the same circuit. Merged as PR #17259, addressing issue #17167. - Cirq — random number generator API: Added
PRNG_OR_SEED_LIKEandparse_random_generatorto support NumPy random generators and seed-like inputs, with tests for supported and invalid inputs. Merged as PR #8382, implementing the first part of issue #8374.
As Design and Tech Coordinator for Blithchron 2027, I lead the design and technical development of the festival website, including its interactive experience. The site is live and continues to be developed for IIT Gandhinagar’s annual cultural fest.
Visit blithchron.iitgn.ac.in →
An independently developed Android music library and player, built with Kotlin and Jetpack Compose. I took it from idea and implementation through a production release for short-form creators looking for royalty-free background music. It launched on Google Play in March 2026 and is now paused.
- Project site: musiclib-dev.github.io
- Google Play: Download MusicLib
A small upstream cleanup merged in PR #20412: fixed an issue in a test and resolved two Android Studio warnings.
Question → model → implementation → experiment → evidence
I prefer starting from first principles, whether that means writing down a permutation model or understanding how an allocator handles a constrained heap. Code is a way to make an idea concrete enough to probe: simulate it, find edge cases, and see which parts of the explanation hold up. These projects look different, but each asks what can be inferred, built, or verified from a precise model.
Mathematical foundations of quantum computing, quantum software, and stronger grounding in algorithms and systems programming. I’m keeping this section focused on the questions behind the work rather than listing every tool I’ve tried.
Explore my work: aadityarshah.github.io 🚀




