This is a pure Python implementation of a matrix class with addition, multiplication, transposition, determinants, inverses, reduced row echelon form, and other fundamental operations. I built it while studying algorithms and machine learning foundations (thanks to Justin Skycak's "Introduction to Algorithms and Machine Learning") to deeply understand linear algebra through code.
The design prioritizes readability over speed. This means no external libraries. Still, I optimized where it mattered, including helper functions to minimize Matrix object creation (lower memory overhead), and skipping Strassen's algorithm due to its complexity, extra memory use, and numerical stability risks.
This project strengthened my algorithmic foundations and Python OOP fluency significantly.