67.11 IsPrimitive for GModules

IsPrimitive( G [, factorisations] )

IsPrimitive takes as input a matrix group G over a finite field and seeks to decide whether or not G acts primitively. The function returns a list containing two values: a boolean and a G-module record, module, for G. If the boolean is false, then G is imprimitive and BlockSystemFlag (module) returns a block system (described in MinBlocks).

If IsPrimitive discovers that G acts semilinearly, then it cannot decide whether or not G acts primitively and returns "unknown".

The second optional argument is a list of possible factorisations of d, the dimension of G. For each [r, s] in this list where rs = d, the function seeks to decide whether G preserves a non-trivial system of imprimitivity having r blocks of size s.

SmashGModule is called by IsPrimitive.

The algorithm is described in [7].

Previous Up Top Next
Index

GAP 3.4.4
April 1997