Format of module definition files:

Module definition files are free format. That is, the line breaks and spacing do not matter. The generators MUST be ordered so that the degrees are nondecreasing. However, the order in which the Sq^r's are defined does not matter. The program sortDef will reorder a definition to accomplish this, and tell you the translation between the old and new generators.

Data Description
n dimension over GF(2)
d0 d1 ... d(n-1) degrees of the generators (in nondecreasing order)
Then repeat as necessary:
g r k g1 g2 ... gk where g and g1,...,gk are generator numbers (0 to n-1), and this line means that Sq^r(g) is the sum g1 + ... + gk

Repeat these for each nonzero Sq^r (not just for r a power of two). Any Sq^r's not mentioned are assumed 0. Before computing with such a definition, its consistency is checked by the 'newmodule' script. You can run this repeatedly to fill in the Sq^r which are missing after creating a file in which the Sq^{2^i} have been defined. Since the Sq^{2^i} generate, there is only one way to do this.


0 1
0 1 1 1

0 2
0 2 1 1

Cofiber(2) smash Cofiber(2)
0 1 1 2
0 1 2 1 2
0 2 1 3
1 1 1 3
2 1 1 3