CompositionSeriesOfFpGModules(M)
Inputs an FpGmodule M and returns a list of FpGmodules that constitute a composition series for M. 
DirectSumOfFpGModules(M,N) DirectSumOfFpGModules([ M[1], M[2], ..., M[k] ]))
Inputs two FpGmodules M and N with common group and characteristic. It returns the direct sum of M and N as an FpGModule. Alternatively, the function can input a list of FpGmodules with common group G. It returns the direct sum of the list. 
FpGModule(A,P) FpGModule(A,G,p)
Inputs a pgroup P and a matrix A whose rows have length a multiple of the order of G. It returns the "canonical" FpGmodule generated by the rows of A. A small nonprimepower group G can also be input, provided the characteristic p is entered as a third input variable. 
FpGModuleDualBasis(M)
Inputs an FpGmodule M. It returns a record R with two components:

FpGModuleHomomorphism(M,N,A) FpGModuleHomomorphismNC(M,N,A)
Inputs FpGmodules M and N over a common pgroup G. Also inputs a list A of vectors in the vector space spanned by N!.matrix. It tests that the function M!.generators[i] ⟶ A[i] extends to a homomorphism of FpGmodules and, if the test is passed, returns the corresponding FpGmodule homomorphism. If the test is failed it returns fail. The "NC" version of the function assumes that the input defines a homomorphism and simply returns the FpGmodule homomorphism. 
DesuspensionFpGModule(M,n) DesuspensionFpGModule(R,n)
Inputs a positive integer n and and FpGmodule M. It returns an FpGmodule D^nM which is mathematically related to M via an exact sequence 0 ⟶ D^nM ⟶ R_n ⟶ ... ⟶ R_0 ⟶ M ⟶ 0 where R_∗ is a free resolution. (If G=Group(M) is of primepower order then the resolution is minimal.) Alternatively, the function can input a positive integer n and at least n terms of a free resolution R of M. 
RadicalOfFpGModule(M)
Inputs an FpGmodule M with G a pgroup, and returns the Radical of M as an FpGmodule. (Ig G is not a pgroup then a submodule of the radical is returned. 
RadicalSeriesOfFpGModule(M)
Inputs an FpGmodule M and returns a list of FpGmodules that constitute the radical series for M. 
GeneratorsOfFpGModule(M)
Inputs an FpGmodule M and returns a matrix whose rows correspond to a minimal generating set for M. 
ImageOfFpGModuleHomomorphism(f)
Inputs an FpGmodule homomorphism f:M ⟶ N and returns its image f(M) as an FpGmodule. 
GroupAlgebraAsFpGModule(G)
Inputs a pgroup G and returns its mod p group algebra as an FpGmodule. 
IntersectionOfFpGModules(M,N)
Inputs two FpGmodules M, N arising as submodules in a common free module (FG)^n where G is a finite group and F the field of pelements. It returns the FpGmodule arising as the intersection of M and N. 
IsFpGModuleHomomorphismData(M,N,A)
Inputs FpGmodules M and N over a common pgroup G. Also inputs a list A of vectors in the vector space spanned by N!.matrix. It returns true if the function M!.generators[i] ⟶ A[i] extends to a homomorphism of FpGmodules. Otherwise it returns false. 
MaximalSubmoduleOfFpGModule(M)
Inputs an FpGmodule M and returns one maximal FpGsubmodule of M. 
MaximalSubmodulesOfFpGModule(M)
Inputs an FpGmodule M and returns the list of maximal FpGsubmodules of M. 
MultipleOfFpGModule(w,M)
Inputs an FpGmodule M and a list w:=[g_1 , ..., g_t] of elements in the group G=M!.group. The list w can be thought of as representing the element w=g_1 + ... + g_t in the group algebra FG, and the function returns a semiechelon matrix B which is a basis for the vector subspace wM . 
ProjectedFpGModule(M,k)
Inputs an FpGmodule M of ambient dimension nG, and an integer k between 1 and n. The module M is a submodule of the free module (FG)^n . Let M_k denote the intersection of M with the last k summands of (FG)^n . The function returns the image of the projection of M_k onto the kth summand of (FG)^n . This image is returned an FpGmodule with ambient dimension G. 
RandomHomomorphismOfFpGModules(M,N)
Inputs two FpGmodules M and N over a common group G. It returns a random matrix A whose rows are vectors in N such that the function M!.generators[i] ⟶ A[i] extends to a homomorphism M ⟶ N of FpGmodules. (There is a problem with this function at present.) 
Rank(f)
Inputs an FpGmodule homomorphism f:M ⟶ N and returns the dimension of the image of f as a vector space over the field F of p elements. 
SumOfFpGModules(M,N)
Inputs two FpGmodules M, N arising as submodules in a common free module (FG)^n where G is a finite group and F the field of pelements. It returns the FpGModule arising as the sum of M and N. 
SumOp(f,g)
Inputs two FpGmodule homomorphisms f,g:M ⟶ N with common sorce and common target. It returns the sum f+g:M ⟶ N . (This operation is also available using "+". 
VectorsToFpGModuleWords(M,L)
Inputs an FpGmodule M and a list L=[v_1,... ,v_k] of vectors in M. It returns a list L'= [x_1,...,x_k] . Each x_j=[[W_1,G_1],...,[W_t,G_t]] is a list of integer pairs corresponding to an expression of v_j as a word v_j = g_1*w_1 + g_2*w_1 + ... + g_t*w_t where g_i=Elements(M!.group)[G_i] w_i=GeneratorsOfFpGModule(M)[W_i] . 
generated by GAPDoc2HTML