Gauss-Jordan solve
Example directory:
examples/gauss_jordan_solve
This flow solves A X = B over \(\mathrm{GF}(2)\) using the reference systolic
Gauss-Jordan kernel.
Commands
./.venv/bin/python examples/gauss_jordan_solve/build.py
./.venv/bin/python examples/gauss_jordan_solve/run.py
./.venv/bin/python examples/gauss_jordan_solve/read.py
Inputs
Edit examples/gauss_jordan_solve/input_mats.py to define:
A: shape(N, N), full rank over \(\mathrm{GF}(2)\)B: shape(N, L)
Outputs
Generated under cases/<case_id>/ with cases/latest pointing at the active case:
A.npyB.npyX_software.npyout/data_bottom_trace.binout/solver_counts.txtsolver_trace.npyX_hardware.npy
Final checks
read.py checks:
X_hardware == X_softwareA @ X_hardware == B