How marchbeta2087/minbms works
MinBMS is a Haskell implementation of the Bashicu Matrix System: users expand matrices, enumerate standard matrices, and analyze representable ordinals. Its optional Python tools compare results with the independent basmat program, calibrate convention differences, and inspect standardness. The README documents the Haskell capabilities; sampled Python excerpts show tool calls. Haskell source was not sampled, so those internal relationships are based on README descriptions.
Main entry points: basmat_client.py Container client · search.py Ordinal search · Explore.hs Explore CLI · BashicuMatrix.hs Matrix operations
Components 13
Matrix rules
- Matrix operations
BashicuMatrix.hs - Expansion versions
Version.hs
Ordinal engine
- Ordinal representation
Ordinal.hs
Enumeration and analysis
- Explore CLI
Explore.hs - Demo
Demo.hs
Reference tools
- Expansion and standardness
tools/bms_reference.py - Ordinal notation comparison
tools/ordinal_notation.py
Basmat integration
- Ordinal search
tools/search.py - Standardness probe
tools/standardness.py - Convention calibration
tools/calibrate.py - Container client
tools/basmat_client.py
Other components
- User
- basmat service
Connections 15
- User → Explore CLI: enumerates matrices
README.md - Explore CLI → Matrix operations: filters and expands
README.md - Explore CLI → Ordinal representation: analyzes ordinals
README.md - Matrix operations → Expansion versions: selects expansion rule
README.md - User → Demo: runs demonstration
README.md - Expansion and standardness → Container client
- User → Ordinal search: requests ordinal search
tools/search.py - Ordinal search → Explore CLI: reads enumeration
tools/search.py - Ordinal search → Container client: submits batches
tools/search.py - Ordinal search → Ordinal notation comparison: compares notation
tools/search.py - User → Standardness probe: probes standardness
tools/standardness.py - Standardness probe → Container client: runs probes
tools/standardness.py - User → Convention calibration: calibrates conventions
tools/calibrate.py - Convention calibration → Container client: captures outputs
tools/calibrate.py - Container client → basmat service: invokes container
tools/basmat_client.py