GAP

Main BranchesDownloads Installation Overview Data Libraries Packages Documentation Contacts FAQ GAP 3 
Find us on GitHubNavigation Tree 
Groups and Group ElementsGroups can be given in various forms: for example as permutation groups or matrix groups (by generating elements), as finitely presented groups or as polycyclicly presented groups. GAP knows how to construct a number of wellknown groups such as symmetric and classical groups and to fetch concrete groups from group libraries (see also the page Data Libraries). There is a wide variety of functions for the investigation of groups. Some of these functions just build on the concept of a group while others (usually the more efficient ones, for instance nearly linear methods for permutation groups) utilize the way in which a particular group is given. GAP tries automatically to select a good method, but the user can take over full control of this selection of methods. Also, if no deterministic method exists (e. g., for determining the order of an fpgroup) GAP will try to find an isomorphism to a group it can handle (in the above case it will try to find an isomorphism to a permutation group using the ToddCoxeter method). There are many functions to compute invariants of groups, e. g.:
There are also functions for
Of course the range of applicability of the particular functions depends very much on the order and structure of the group. To give an idea of capabilities, GAP has (already in 1993) been used to find the composition series, Sylow subgroups and character table of a certain solvable subgroup of order 3,265,173,504 in the sporadic simple group Fi_{23}, given as a permutation group of degree 31,671. Have a look at this and further examples. 
The GAP Group 