## GAP

### Summary

GAP is a system for computational discrete algebra, with particular emphasis on Computational Group Theory. GAP provides a programming language, a library of thousands of functions implementing algebraic algorithms written in the GAP language as well as large data libraries of algebraic objects. GAP is used in research and teaching for studying groups and their representations, rings, vector spaces, algebras, combinatorial structures, and more.

GAP is developed by international cooperation. The system, including source, is distributed freely under the terms of the GNU General Public License. You can study and easily modify or extend GAP for your special use.

The current version is GAP 4, the older version GAP 3 is still available.

### Authors

The GAP Group, see the GAP homepage. For each person involved with GAP you can use the search facility for GAP (http://www.gap-system.org/search.html) to find all places in the GAP documentation (website, manuals, Forum archive) in which the name of the person appears.

### Vendor

GAP is a free system and distributed without charge by The GAP Group.

### Status

officially approved by the authors### Aims and scope

### Mathematical Classification

- 01 Discrete Mathematics
- 01.01 Convex and discrete geometry
- 01.02 Graph theory
- 01.03 Enumerative combinatorics
- 01.04 Algebraic combinatorics
- 01.06 Ordered structures
- 02 Algebra / Number Theory
- 02.02 Number theory
- 02.03 Field theory
- 02.04 Commutative rings and algebras
- 02.04.01 Ideals, modules, homomorphisms
- 02.04.02 Polynomial and power series rings
- 02.04.03 Special rings
- 02.04.07 Factorization and primary decomposition
- 02.04.08 Syzygies and resolutions
- 02.04.10 Groebner bases
- 02.05 Linear and multilinear algebra; matrix theory
- 02.05.01 Linear equations
- 02.05.02 Eigenvalues, singular values, and eigenvectors
- 02.05.03 Canonical forms
- 02.05.04 Matrix factorization
- 02.05.05 Integral matrices
- 02.05.06 Multilinear algebra
- 02.06 Non-commutative and general rings and algebras
- 02.06.01 Lie algebras
- 02.07 Category theory; homological algebra
- 02.08 Group theory and generalizations
- 02.08.01 Permutation groups
- 02.08.02 Matrix groups
- 02.08.03 Finitely presented groups
- 02.08.04 Polycyclicly presented groups
- 02.08.05 Black box groups
- 02.08.06 Group actions
- 02.08.07 Subgroup lattices
- 02.08.08 Group cohomology
- 02.08.09 Semigroups
- 02.09 Representation theory
- 02.09.01 Ordinary Representations of Groups
- 02.09.02 Ordinary Representations of Algebras
- 02.09.03 Modular Representations of Groups
- 02.09.04 Modular Representations of Algebras
- 02.09.05 Character Theory
- 02.09.06 Permutation Representations
- 03.01.08 Algebraic groups and geometric invariant theory
- 07 Applications of Mathematics
- 07.87 Theoretical Chemistry
- 07.88 Crystallography
- 08 Teaching
- 08.97 Mathematics education