Research tools · Python · Pyodide
Symmetry Forge
An experimental Python toolkit for generating small combinatorial structures, computing their symmetries and comparing how unusual they are.
What it does
- Builds graphs, Steiner systems and relational structures, and computes automorphism groups and canonical labels by partition refinement and search.
- Optional nauty and SAT back ends for larger cases, with a pure-Python default that runs anywhere.
- Logged experiments from the Fano plane to a bounded attempt at constructions inspired by codes and the Monster group.
Bringing Python to the browser
The lab loads the unmodified package into Pyodide (CPython compiled to WebAssembly) inside a Web Worker. The page stays responsive, a search that runs too long is cancelled by replacing the worker, and nothing leaves the visitor's machine. The rotating hypercube on the homepage uses the same result: 384 symmetries, which the library computes in milliseconds.
What it is not
It is for reproducible exploration and teaching. Computing something is not proving it, and the samples are starting points rather than discoveries.
- Status
- Research prototype
- License
- MIT
- Built with
- Python, Pyodide, Web Workers