mkcycl man page

mkcycl — find cyclic subspaces of a condensed module


mkcycl [Options] <Name>


This program is invoked after pwkond(1) has calculated the condensation with respect to the peak words. Mkcycl calculates, for each condensed module, its 1-dimensional subspaces. The output is a list of vectors (in matrix form) for each irreducible constituent, which generate all cyclic submodules. For example, if "X10a" is the constituent's name, the list of vectors is written to "X10a.v".


Quiet, no messages.
Verbose, more messages.
-T <MaxTime>
Set CPU time limit
Produce output in GAP format. This option implies -Q.

Implementation Details

Mkcycl uses a very simple approach: it spins up every vector in the condensed module (avoiding scalar multiples, though), and maintains a list of all cyclic submodules found. As the dimension of the condensed module grows, the number of vectors to spin up quickly becomes very large. This poses an upper limit on the dimension of condensed modules, i.e., on the multiplicity of irreducible constituents. Over GF(2), for example, a 16-dimensional condensed module requires about 20 hours of CPU time on a standard workstation.

A second limit concerns the number of cyclic submodules. Usually there are much less cyclic submodules than 1-spaces. Sometimes, however, it may happen that the peak word found in the second step is "bad" in the sense that the condensed generators commute. In such a case one finds a large number of cyclic submodules and the following steps will probably take too much time. For this reason, the pwkond(1) program has an option to exclude one or more specified peak words from the search. So, if the peak word turns out to be "bad", you can try another one.

Input Files

Constituent info file.
Generators on condensed modules.
Condensed peak words.

Output Files

Cyclic submodules.

See Also

mkdotl(1), pwkond(1)

Referenced By

mkdotl(1), mkinc(1).

Explore man page connections for mkcycl(1).

MeatAxe 2.4.24