GAP |
Main BranchesDownload Overview Data Libraries Packages Documentation Contacts FAQ GAP 3 |
||||||||||||||
SitemapNavigation Tree
|
Frequently Asked QuestionsGeneral Obtaining GAP Installation Hardware/OS Usage Complaints Computing with GAP Programming GAP 7. Computing with GAP7.11: How do I use GAP to "identify" a given group?One of the most frequent requests that comes up is for to "identify" a given group. While some functionality for this exists, the problem is basically what "identify" means, or what a user expects from identification:
gap> g:=Group((1,2,3),(2,3,4));; gap> StructureDescription(g); "A4" Group Librariescontains extensive libraries of "small" groups and many of these libraries allow identificatuion of a group therein. The associated library group then often comes with a name that might be appropriate.Small GroupsThe small groups library contains - amongst others - all groups of order up to 1000, except 512. For such a group IdGroup returns a list such that the group is isomorphic to SmallGroup().gap> g:=Group((1,2,3),(2,3,4));; gap> IdGroup(g); [ 12, 3 ] gap> SmallGroup(12,3); <pc group of size 12 with 3 generators> Transitive GroupsThe transitive groups library contains transitive subgroups of Sn of degree at most 31 up to Sn conjugacy. For such a group of degree n, TransitiveIdentification returns a number , such that the group is conjugate in Sn to TransitiveGroup().gap> g:=Group((1,2,3),(2,3,4));; gap> TransitiveIdentification(g); 4 gap> TransitiveGroup(NrMovedPoints(g),4); A4 Primitive GroupsThe primitive groups library contains primitive subgroups of Sn (i.e. the group is transitive and affords no nontrivial G-invariant partition of the points) of degree at most 1000 up to Sn conjugacy. For such a group of degree n, PrimitiveIdentification returns a number , such that the group is conjugate in Sn to PrimitiveGroup().gap> g:=Group((1,2,3),(2,3,4));; gap> IsPrimitive(g,[1..4]); true gap> PrimitiveIdentification(g); 1 gap> PrimitiveGroup(NrMovedPoints(g),1); A(4) Simple groups and Composition SeriesThe one class of groups for which it is unambiguous, and comparatively easy to assign names to is finite simple groups (assuming the classification of finite simple groups). A consequence of the classification is that the order of a simple group determines its isomorphism type, with the exception of two infinite series (which can be distinguished easily otherwise). In GAP, this is achieved by the command IsomorphismTypeInfoFiniteSimpleGroup: For a finite simple group, it returns a record, containing information about the groups structure, as well as some name.gap> g:=SL(3,5); SL(3,5) gap> IsomorphismTypeInfoFiniteSimpleGroup(g/Centre(g)); rec( name := "A(2,5) = L(3,5) ", series := "L", parameter := [ 3, 5 ] )Clearly, this can be applied to the composition series of a finite group, identifying the isomorphism types of all composition factors. (Of course, this information does not identify the isomorphism type of the group, and - in particular for solvable groups - can be rather uninformative.) The command DisplayCompositionSeries will print information about the composition factors of a finite group. gap> DisplayCompositionSeries(SymmetricGroup(4)); G (4 gens, size 24) | Z(2) S (3 gens, size 12) | Z(3) S (2 gens, size 4) | Z(2) S (1 gens, size 2) | Z(2) 1 (0 gens, size 1) gap> DisplayCompositionSeries(SymmetricGroup(5)); G (2 gens, size 120) | Z(2) S (3 gens, size 60) | A(5) ~ A(1,4) = L(2,4) ~ B(1,4) = O(3,4) ~ C(1,4) = S(2,4) ~ 2A(1,4) = U(2,4) ~ A(1,5) = L(2,5) ~ B(1,5) = O(3,5) ~ C(1,5) = S(2,5) ~ 2A(1,5) = U(2,5) 1 (0 gens, size 1) gap> DisplayCompositionSeries(GU(6,2)); G (size 82771476480) | Z(3) S (4 gens, size 27590492160) | 2A(5,2) = U(6,2) S (1 gens, size 3) | Z(3) 1 (size 1) |
||||||||||||||
The GAP Group Last updated: Sat Mar 27 07:44:02 2010 |