+++ title = “The Module Builder” section = “features” +++
The Module Builder
The Module Builder lets you define new modules over the Steenrod algebra and compute their Adams spectral sequences.
Defining a module
A module definition specifies:
- Prime — the prime $p$ (currently 2, 3, 5, or 7)
- Type — the type of module (e.g., “finite dimensional module”)
- Generators — a list of generators with their degrees
- Actions — the Steenrod algebra actions on the generators ($\operatorname{Sq}^i$ for $p = 2$, or $P^i$ and $\beta$ for odd primes)
The JSON format
Module definitions are JSON objects. See Module Definition Format for the complete specification. A minimal example for $p = 2$:
{
"type": "finite dimensional module",
"p": 2,
"gens": { "x0": 0, "x1": 1 },
"actions": ["Sq1 x0 = x1"]
}
Cell complexes and cofibers
You can build modules as cell complexes — attaching cells to an existing module. See Cell Complexes and Cofibers for the full workflow.
The “Take Cofiber” workflow:
- In the viewer, select a class at filtration 1 on the $E_\infty$ page.
- Click “Take Cofiber” to open the builder with a pre-filled module definition.
- The builder auto-checks the Steenrod operations suggested by the attaching map.
- Submit to compute the cofiber’s spectral sequence.
The resulting module tracks its provenance — the parent module and attaching data — which enables the deduction engine to compute naturality maps automatically.
Computation range
When you submit a module definition, htpy resolves it to compute Ext groups. The default computation range is $n \leq 30$, $s \leq 7$, but you can adjust this when recomputing from the viewer.
Limitations
- The module builder is currently available for the Adams spectral sequence only. Motivic Adams, CESS, and algebraic Novikov modules must be provided as JSON definitions directly.
- At most $p = 7$ is supported (limited by the bit-packing in the linear algebra layer).