## TODO ### C Rewrite Polish * Win32 threads branch in `src/parallel.c` (Windows currently falls back to serial) * Persistent thread pool instead of per-gate fork-join in `psi_parallel_for` (avoid thread spawn overhead) * Verify the x86 SIMD paths (`apply_avx2`/`apply_avx512` in `src/maths/simd.c`) on real AVX2/AVX-512 hardware — only the NEON path has been run * `tools/check-style.sh` (grep-based) for the rules clang-format/clang-tidy can't enforce: no `typedef` on structs, `double`-only (no `float`), stdint over `int`/`long`, `sizeof *obj` allocation idiom * `DensityMatrix` Display/Debug pretty-printer (skipped during the port; cosmetic) ### Noise Channels & Open Quantum System Modelling * Depolarising channel * Amplitude damping * Phase damping * Thermal relaxation (T1/$T_2$) * Readout noise * Kraus operator framework * Pauli / Lindblad evolution engine * Stabiliser noise models ### Density Matrix Backend * Optimised density matrix propagation * Hybrid wave-function / density-matrix simulation modes ### GPU Offload, Caching & Scheduling * State caching on GPU * Tensored simulation on device * Batched execution engine * Device-side gate fusion ### Tensor Network Simulation Backend * Tensor slicing * Contraction ordering * Edge-cut optimisation ### Analogue Evolution * Suzuki–Trotter time-evolution models