54.1 More about Monomiality Questions

Group Characters

All the functions in this package assume characters to be character records as described in chapter Class Functions.

Property Tests

When we ask whether a group character chi has a certain property, like quasiprimitivity, we usually want more information than yes or no. Often we are interested in the reason why a group character chi could be proved to have a certain property, e.g., whether monomiality of chi was proved by the observation that the underlying group is nilpotent, or if it was necessary to construct a linear character of a subgroup from that chi can be induced. In the latter case we also may be interested in this linear character.

Because of this the usual property checks of GAP that return either true or false are not sufficient for us. Instead there are test functions that return a record with the possibly useful information. For example, the record returned by the function TestQuasiPrimitive (see TestQuasiPrimitive) contains the component isQuasiPrimitive which is the known boolean property flag, a component comment which is a string telling the reason for the value of the isQuasiPrimitive component, and in the case that the argument chi was a not quasiprimitive character the component character which is an irreducible constituent of a nonhomogeneous restriction of chi to a normal subgroup.

The results of these test functions are stored in the respective records, in our example chi will have a component testQuasiPrimitive after the call of TestQuasiPrimitive.

Besides these test functions there are also the known property checks, e.g., the function IsQuasiPrimitive which will call TestQuasiPrimitive and return the value of the isQuasiPrimitive component of the result.

Where one should be careful

Monomiality questions usually involve computations in a lot of subgroups and factor groups of a given group, and for these groups often expensive calculations like that of the character table are necessary. If it is probable that the character table of a group will occur at a later stage again, one should try to store the group (with the character table stored in the group record) and use this record later rather than a new record that describes the same group.

An example: Suppose you want to restrict a character to a normal subgroup N that was constructed as a normal closure of some group elements, and suppose that you have already computed normal subgroups (by calls to NormalSubgroups or MaximalNormalSubgroups) and their character tables. Then you should look in the lists of known normal subgroups whether N is contained, and if yes you can use the known character table.

A mechanism that supports this for normal subgroups is described in Storing Subgroup Information. The following hint may be useful in this context.

If you know that sooner or later you will compute the character table of a group G then it may be advisable to do this as soon as possible. For example if you need the normal subgroups of G then they can be computed more efficiently if the character table of G is known, and they can be stored compatibly to the contained G-conjugacy classes. This correspondence of classes list and normal subgroup can be used very often.

Package Information

Some of the functions print (perhaps useful) information if the function InfoMonomial is set to the value Print.

Up Top Next
Index

GAP 3.4.4
April 1997