The functions described here provide access to basic information stored for a generic abelian group A. If some access functions require that the structure of A be known then it is automatically computed (unless it is already known of course).
Note the distinction between Generators and UserGenerators. From now on, unless otherwise specified, whenever mention is made of the generators of A, we refer to the generators as given by the Generators function.
The universe over which A is defined.
The order of the group A, returned as an ordinary integer.
The i-th generator for A.
A sequence containing the generators for A as elements of A. The set of generators of A is a reduced set of generators as constructed during the group structure computation. Therefore, if the group structure of A has been computed from a user-supplied set of generators, it is more than likely that Generators(A) and UserGenerators(A) do not coincide.
A sequence containing the user-supplied generators for A as elements of A.
The number of generators for A.
The torsion invariants of the finite abelian group A.
> Universe(GA_Zm); Residue class ring of integers modulo 34384 > Generators(GA_Zm); [ 21489, 17191, 12281, 27021 ]and
> Universe(GA_qf); Binary quadratic forms of discriminant -4000004 > Generators(GA_qf); [ <101,0,9901>, <103,102,9734> ] > UserGenerators(GA_qf); [ <3,2,333334>, <59,14,16950>, <47,42,21286>, <31,22,32262>, <19,16,52635>, <5,4,200001>, <11,6,90910>, <23,8,43479>, <29,16,34485>, <103,102,9734> ]