GAP

Main Branches

Downloads  Installation  Overview  Data Libraries  Packages  Documentation  Contacts  FAQ  GAP 3 

GAP Packages

Since 1992, sets of user contributed programs, called packages, have been distributed with GAP. For convenience of the GAP users, the GAP Group redistributes packages, but the package authors remain responsible for their maintenance.

There is a designated and documented mechanism for loading packages into GAP including a smooth integration of the documentation into the GAP help system. (See this page for hints how to write your own package and the reference manual chapter 76 about installing and loading packages.)

Some packages represent a piece of work equivalent to a sizeable mathematical publication. To acknowledge such work there has been a refereeing process for packages since 1996. See Submitting Contributions to GAP for more information on this. We call a package an accepted package (with GAP 3 the term share packages was used) when it was succesfully refereed or already distributed with GAP before the refereeing process was started. All other packages distributed here and not in this category are called deposited packages, these may be submitted for refereeing or the authors may not want to submit them for various reasons.

This page lists current versions of GAP packages redistributed with GAP, and the page Manuals informs about presently available package manuals.

If you are interested to find GAP packages hosted on GitHub or BitBucket, please see this page.

If you are familiar with the previous GAP distributions, note that now we do not distribute a merged archive of all currently redistributed packages. All these packages are now included in the same archive with the core GAP system, adding a significant amount of functionality. Dependencies between packages are illustrated by the following graph. Each package is also available in a single archive which may be used e.g. for a later upgrading, though the recommented way to upgrade the system is just to reinstall it as explained on the upgrade page.

Also see Data Libraries, Deposited Contributions, and Undeposited Implementations, as well as the list of (individually authored and/or maintained) 'Modules', into which a large part of the GAP library is divided .

Accepted Packages

Here is the current list of accepted packages. They are either redistributed by the GAP Group since before the refereeing process was setup, or they have been successfully refereed. The packages are sorted alphabetically, except for some data library packages, given in a separate list.

Follow the links to find brief descriptions of each package, as well as further information including download and installation instructions.

  • ACE  5.2 (11/03/2016) by G. Gamble, A. Hulpke, G. Havas, C. Ramsay, M. Horn
    Advanced Coset Enumerator
  • Alnuth  3.1.0 (01/12/2017) by B. Assmann, A. Distler, B. Eick
    Algebraic number theory and an interface to PARI/GP
  • ANUPQ  3.2 (29/11/2017) by G. Gamble, W. Nickel, E. O'Brien, M. Horn
    ANU p-Quotient
  • Automata  1.13 (19/11/2011) by M. Delgado, S. Linton, J. Morais
    A package on automata
  • AutomGrp  1.3 (28/03/2016) by Y. Muntyan, D. Savchuk
    Automata groups
  • AutPGrp  1.9 (07/03/2018) by B. Eick, E. O'Brien
    Computing the Automorphism Group of a p-Group
  • Carat  2.2.2 (28/03/2018) by F. Gähler
    Interface to CARAT, a crystallographic groups package
  • Circle  1.6.1 (25/09/2017) by A. Konovalov, P. Soules
    Adjoint groups of finite rings
  • cohomolo  1.6.6 (02/12/2017) by D. Holt, M. Horn, M. Pfeiffer
    Cohomology groups of finite groups on finite modules
  • Congruence  1.2.2 (06/02/2018) by A. Dooms, E. Jespers, A. Konovalov, H. Verrill
    Congruence subgroups of SL(2,Integers)
  • CoReLG  1.20 (02/12/2014) by H. Dietrich, P. Faccin, W. A. de Graaf
    computation with real Lie groups
  • Crime  1.4 (01/6/2011) by M. Bishop
    A GAP Package to Calculate Group Cohomology and Massey Products
  • CRISP  1.4.4 (20/03/2016) by B. Höfling
    Computing with Radicals, Injectors, Schunck classes and Projectors
  • Cryst  4.1.17 (13/04/2018) by B. Eick, F. Gähler, W. Nickel
    Computing with crystallographic groups
  • Cubefree  1.17 (11/06/2018) by H. Dietrich
    Constructing the Groups of a Given Cubefree Order
  • DESIGN  1.6 (23/11/2011) by L. H. Soicher
    The Design Package for GAP
  • EDIM  1.3.3 (30/01/2018) by F. Lübeck
    Elementary Divisors of Integer Matrices
  • FactInt  1.6.2 (18/02/2018) by S. Kohl, A. Konovalov
    Advanced Methods for Factoring Integers
  • FGA  1.4.0 (23/03/2018) by C. Sievers
    Free Group Algorithms
  • FinInG  1.4.1 (31/03/2018) by J. Bamberg, A. Betten, J. De Beule, P. Cara, M. Lavrauw, M. Neunhoeffer
    Finite Incidence Geometry
  • FORMAT  1.4a (19/03/2018) by B. Eick, C. R. Wright
    Computing with formations of finite solvable groups.
  • Forms  1.2.4 (26/08/2017) by J. Bamberg, J. De Beule
    Sesquilinear and Quadratic
  • FPLSA  1.2.2 (04/02/2018) by V. Gerdt, V. Kornyak, M. Horn
    Finitely Presented Lie Algebras
  • GAPDoc  1.6.1 (28/11/2017) by F. Lübeck, M. Neunhöffer
    A Meta Package for GAP Documentation
  • GBNP  1.0.3 (08/03/2016) by A. Cohen, J. Knopper
    computing Gröbner bases of noncommutative polynomials
  • GRAPE  4.8 (05/06/2018) by L. H. Soicher
    GRaph Algorithms using PErmutation groups
  • groupoids  1.55 (02/02/2018) by E. J. Moore, C. D. Wensley
    Calculations with finite groupoids and their homomorphisms
  • GrpConst  2.6 (08/03/2018) by H. U. Besche, B. Eick
    Constructing the Groups of a Given Order
  • GUAVA  3.14 (24/03/2018) by R. Baart, T. Boothby, J. Cramwinckel, J. Fields, D. Joyner, R. Miller, E. Minkes, E. Roijackers, L. Ruscio, C. Tjhai
    a GAP package for computing with error-correcting codes
  • HAP  1.12.6 (16/04/2018) by G. Ellis
    Homological Algebra Programming
  • idrel  2.41 (18/03/2018) by A. Heyworth, C. D. Wensley
    Identities among relations
  • IRREDSOL  1.4 (03/08/2017) by B. Höfling
    A library of irreducible soluble linear groups over finite fields and of finite primivite soluble groups
  • ITC  1.5 (13/06/2018) by V. Felsch, L. Hippe, J. Neubüser
    Interactive Todd-Coxeter
  • kan  1.28 (04/02/2018) by A. Heyworth, C. D. Wensley
    including double coset rewriting systems
  • kbmag  1.5.5 (04/02/2018) by D. Holt, M. Horn, M. Pfeiffer
    Knuth-Bendix on Monoids and Automatic Groups
  • LAGUNA  3.9.0 (26/04/2017) by V. Bovdi, A. Konovalov, R. Rossmanith, C. Schneider
    Lie AlGebras and UNits of group Algebras
  • LieAlgDB  2.2 (09/04/2018) by S. Cicalò, W. de Graaf, C. Schneider
    A database of Lie algebras
  • LiePRing  1.9 (11/03/2018) by M. Vaughan-Lee, B. Eick
    Database and algorithms for Lie p-rings
  • LieRing  2.3 (01/11/2016) by S. Cicalo', W. A. de Graaf
    finitely presented Lie rings
  • loops  3.4.0 (27/10/2017) by G. Nagy, P. Vojtechovsky
    Computing with quasigroups and loops in GAP
  • MapClass  1.2 (24/04/2012) by A. James, K. Magaard, S. Shpectorov, H. Volklein
    A Package For Mapping Class Orbit Computation
  • ModIsom  2.3.3 (08/01/2016) by B. Eick, A. Konovalov
    Computing automorphisms and checking isomorphisms for modular group algebras of finite p-groups
  • Nilmat  1.3 (12/09/2017) by A. Detinko, B. Eick, D. Flannery
    Computing with nilpotent matrix groups
  • nq  2.5.3 (08/03/2016) by M. Horn, W. Nickel
    Nilpotent Quotients of Finitely Presented Groups
  • NumericalSgps  1.1.8 (06/06/2018) by M. Delgado, P. A. Garcia-Sanchez, J. Morais, B. A. Heredia, J. I. García-García, S. Gutsche, A. Herrera-Poyatos, M. Horn, C. J. Moreno Ávila, I. Ojeda, C. O'Neill, A. Sammartano, A. Sánchez-R. Navarro, K. Stokes, S. Francesco, G. Zito
    A package for numerical semigroups
  • OpenMath  11.4.2 (28/02/2017) by M. Costantini, A. Konovalov, M. Nicosia, A. Solomon
    OpenMath functionality in GAP
  • permut  2.0.1 (18/02/2018) by A. Ballester-Bolinches, E. Cosme-Llópez, R. Esteban-Romero
    A package to deal with permutability in finite groups
  • Polenta  1.3.8 (29/11/2017) by B. Assmann, M. Horn
    Polycyclic presentations for matrix groups
  • Polycyclic  2.14 (12/05/2018) by B. Eick, W. Nickel, M. Horn
    Computation with polycyclic groups
  • QuaGroup  1.8 (16/08/2013) by W. A. de Graaf
    a package for doing computations with quantum groups
  • RadiRoot  2.8 (23/04/2018) by A. Distler
    Roots of a Polynomial as Radicals
  • RCWA  4.6.2 (26/06/2018) by S. Kohl
    Residue-Class-Wise Affine Groups
  • RDS  1.6 (16/02/2012) by M. Roeder
    A package for searching relative difference sets
  • Repsn  3.0.2 (25/08/2011) by V. Dabbaghian
    A GAP4 Package for constructing representations of finite groups
  • SCSCP  2.2.3 (24/09/2017) by A. Konovalov, S. Linton
    Symbolic Computation Software Composability Protocol in GAP
  • SglPPow  2.1 (08/03/2018) by M. Vaughan-Lee, B. Eick
    Database of groups of prime-power order for some prime-powers
  • simpcomp  2.1.8 (05/02/2018) by F. Effenberger, J. Spreer
    A GAP toolbox for simplicial complexes
  • SLA  1.4 (24/04/2018) by W. A. de Graaf
    a package for doing computations with simple Lie algebras
  • SONATA  2.8 (29/07/2015) by E. Aichinger, F. Binder, J. Ecker, P. Mayr, C. Nöbauer
    System of nearrings and their applications
  • Sophus  1.24 (09/04/2018) by C. Schneider
    Computing in nilpotent Lie algebras
  • SymbCompCC  1.3 (20/03/2018) by D. Feichtenschlager
    Computing with parametrised presentations for p-groups of fixed coclass
  • Toric  1.9.4 (07/03/2017) by D. Joyner
    toric varieties and some combinatorial geometry computations
  • UnitLib  4.0.0 (01/05/2018) by A. Konovalov, E. Yakimenko
    Library of normalized unit groups of modular group algebras
  • Wedderga  4.9.3 (30/04/2018) by G. K. Bakshi, O. Broche Cristo, A. Herman, A. Konovalov, S. Maheshwary, G. Olteanu, A. Olivieri, A. del Rio, I. Van Gelder
    Wedderburn Decomposition of Group Algebras
  • XGAP  4.27 (21/03/2018) by F. Celler, M. Horn, M. Neunhöffer
    a graphical user interface for GAP
  • XMod  2.68 (01/05/2018) by C. D. Wensley, M. Alp, A. Odabas, E. O. Uslu
    Crossed Modules and Cat1-Groups

The following packages mainly contain and/or provide access to data libraries. These are either refereed and accepted packages or they were a part of the GAP library which is now separated into a package.

  • AClib  1.3 (11/03/2018) by K. Dekimpe, B. Eick
    Almost Crystallographic Groups - A Library and Algorithms
  • AtlasRep  1.5.1 (30/03/2016) by R. A. Wilson, R. A. Parker, S. Nickerson, J. N. Bray, T. Breuer
    A GAP Interface to the Atlas of Group Representations
  • CrystCat  1.1.8 (09/02/2018) by V. Felsch, F. Gähler
    The crystallographic groups catalog
  • CTblLib  1.2.2 (07/03/2013) by T. Breuer
    The GAP Character Table Library
  • PrimGrp  3.3.1 (17/02/2018) by A. Hulpke, A. Konovalov, C. M. Roney-Dougal, C. Russell
    GAP Primitive Permutation Groups Library
  • SmallGrp  1.3 (09/04/2018) by B. Eick, H. U. Besche, E. O'Brien
    The GAP Small Groups Library
  • TomLib  1.2.6 (07/11/2016) by L. Naughton, G. Pfeiffer
    The GAP Library of Tables of Marks
  • TransGrp  2.0.2 (13/11/2017) by A. Hulpke
    Transitive Groups Library

No longer redistributed with GAP:

  • LAG - the functionality of this package is now included in the newer package LAGUNA.
  • NQL - this package has been withdrawn by the author, and later has been superseded by the package lpres.
  • ParGAP is no longer redistributed with GAP because it no longer can be compiled with GAP 4.9 (see this announcement). Its source code repository, containing the code of the last distributed version, plus some first fixes needed for compatibility for GAP 4.9, can still be found on GitHub here. If somebody is interested in repairing this package and taking over its maintenance, so that it can be distributed again, please contact the GAP team.

Deposited Packages

Some of the following packages may be refereed and moved into the section on accepted packages later, others will not be submitted for refereeing.

  • 4ti2Interface  2017.10.04 (04/10/2017) by S. Gutsche
    A link to 4ti2
  • AutoDoc  2018.02.14 (14/02/2018) by S. Gutsche, M. Horn
    Generate documentation from GAP source code
  • Browse  1.8.8 (08/06/2018) by T. Breuer, F. Lübeck
    browsing applications and ncurses interface
  • CAP  2017.09.25 (25/09/2017) by S. Gutsche, S. Posur, Ø. Skartsæterhagen
    Categories, Algorithms, Programming
    • GeneralizedMorphismsForCAP  2017.09.09 (09/09/2017) by S. Gutsche, S. Posur
      Implementations of generalized morphisms for the CAP project
    • LinearAlgebraForCAP  2017.09.09 (09/09/2017) by S. Gutsche, S. Posur
      Category of Matrices over a Field for CAP
    • ModulePresentationsForCAP  2017.09.09 (09/09/2017) by S. Gutsche, S. Posur
      Category R-pres for CAP
  • Convex  2013.12.05 (05/12/2013) by S. Gutsche
    A package for fan combinatorics
  • crypting  0.8 (25/05/2018) by M. Pfeiffer
    Hashes and Crypto in GAP
  • cvec  2.6.1 (07/06/2018) by M. Neunhöffer, M. Horn
    Compact vectors over finite fields
  • Digraphs  0.12.1 (26/04/2018) by J. De Beule, S. Burrell, L. Elliott, C. Jefferson, J. Jonusas, J. D. Mitchell, M. Pfeiffer, C. Russell, F. Smith, M. Torpey, W. A. Wilson
    Graphs, digraphs, and multidigraphs in GAP
  • Example  4.1.0 (26/04/2018) by W. Nickel, G. Gamble, A. Konovalov
    Example/Template of a GAP Package
  • float  0.9.1 (14/06/2018) by L. Bartholdi
    Integration of mpfr, mpfi, mpc, fplll and cxsc in GAP
  • FR  2.4.5 (21/03/2018) by L. Bartholdi
    Computations with functionally recursive groups
  • fwtree  1.1 (08/03/2018) by B. Eick, T. Rossmann
    Computing trees related to some pro-p-groups of finite width
  • Gauss  2018.04.03 (03/04/2018) by S. Goertzen, M. Barakat, S. Gutsche
    Extended Gauss functionality for GAP
  • genss  1.6.5 (21/11/2017) by M. Neunhöffer, F. Noeske, M. Horn
    Generic Schreier-Sims
  • Guarana  0.94 (27/04/2012) by B. Assmann, J. McDermott
    Applications of Lie methods for computations with infinite polycyclic groups
  • HAPcryst  0.1.11 (27/10/2013) by M. Roeder
    A HAP extension for crytallographic groups
  • hecke  1.4 (02/07/2013) by D. Traytel
    Hecke - Specht 2.4 ported to GAP 4
  • HeLP  3.3 (11/12/2017) by A. Bächle, L. Margolis
    Hertweck-Luthar-Passi method.
  • homalg  2017.10.26 (26/10/2017) by M. Barakat, S. Gutsche, M. Lange-Hegermann
    A homological algebra meta-package for computable Abelian categories
    • ExamplesForHomalg  2018.05.29 (29/05/2018) by M. Barakat, S. Görtzen, M. Lange-Hegermann
      Examples for the GAP Package homalg
    • GaussForHomalg  2018.02.05 (05/02/2018) by S. Goertzen, M. Barakat
      Gauss functionality for the homalg project
    • GradedModules  2018.02.04 (04/02/2018) by M. Barakat, S. Gutsche, S. Jambor, M. Lange-Hegermann, A. Lorenz, O. Motsak
      A homalg based package for the Abelian category of finitely presented graded modules over computable graded rings
    • GradedRingForHomalg  2018.02.04 (04/02/2018) by M. Barakat, S. Gutsche, M. Kirschmer, S. Jambor, M. Lange-Hegermann, D. Robertz
      Endow Commutative Rings with an Abelian Grading
    • HomalgToCAS  2018.06.15 (15/06/2018) by T. Bächler, M. Barakat, T. Breuer, S. Görtzen, S. Gutsche, F. Lübeck, V. Wagh
      A window to the outer world
    • IO_ForHomalg  2017.09.02 (02/09/2017) by T. Bächler, M. Barakat, S. Gutsche, M. Neunhöffer, D. Robertz
      IO capabilities for the homalg project
    • LocalizeRingForHomalg  2018.02.04 (04/02/2018) by M. Barakat, M. Lange-Hegermann, V. Wagh
      A Package for Localization of Polynomial Rings
    • MatricesForHomalg  2018.06.02 (02/06/2018) by M. Barakat, M. Lange-Hegermann, M. Leuner, V. Wagh
      Matrices for the homalg project
    • Modules  2018.05.31 (31/05/2018) by T. Bächler, M. Barakat, F. Diebold, S. Gutsche, M. Lange-Hegermann, V. Wagh
      A homalg based package for the Abelian category of finitely presented modules over computable rings
    • RingsForHomalg  2018.04.04 (04/04/2018) by M. Barakat, S. Goertzen, M. Kirschmer, M. Lange-Hegermann, O. Motsak, M. Neunhöffer, D. Robertz, H. Schönemann, A. Steenpaß, V. Wagh
      Dictionaries of external rings
    • SCO  2017.09.10 (10/09/2017) by S. Görtzen, M. Barakat
      SCO - Simplicial Cohomology of Orbifolds
    • ToolsForHomalg  2018.05.22 (22/05/2018) by M. Barakat, S. Gutsche, M. Lange-Hegermann
      Special methods and knowledge propagation tools
    • ToricVarieties  2012.12.22 (22/12/2012) by S. Gutsche
      A package to handle toric varieties
  • IntPic  0.2.3 (14/09/2017) by M. Delgado
    A package for drawing integers
  • IO  4.5.1 (10/01/2018) by M. Neunhöffer, M. Horn
    Bindings for low level C library I/O routines
  • json  2.0.0 (08/06/2018) by C. Jefferson
    Reading and Writing JSON
  • JupyterKernel  0.99999 (21/06/2018) by M. Pfeiffer
    Jupyter kernel written in GAP
  • linboxing  0.5.2 (19/05/2011) by P. Smith
    access to LinBox linear algebra functions from GAP
  • lpres  0.4.3 (14/06/2018) by R. Hartung, L. Bartholdi
    Nilpotent Quotients of L-Presented Groups
  • matgrp  0.4 (25/02/2015) by A. Hulpke
    Matric Group Interface Routines
  • NormalizInterface  1.0.2 (03/12/2017) by S. Gutsche, M. Horn, C. Söger
    GAP wrapper for Normaliz
  • orb  4.8.0 (10/11/2017) by J. Mueller, M. Neunhöffer, F. Noeske, M. Horn
    Methods to enumerate Orbits
  • PatternClass  2.4.1 (28/09/2017) by R. Hoffmann, S. Linton, M. Albert
    A permutation pattern class package
  • PolymakeInterface  2015.01.26 (26/01/2015) by T. Baechler, S. Gutsche
    A package to provide algorithms for fans and cones of polymake to other packages
  • polymaking  0.8.1 (16/11/2013) by M. Roeder
    Interfacing the geometry software polymake
  • profiling  2.0.1 (06/05/2018) by C. Jefferson
    Line by line profiling and code coverage for GAP
  • qaos  1.6 (28/03/2018) by S. Freundt, S. Pauli
    Interfacing the QaoS database from GAP
  • QPA  1.27 (16/12/2017) by E. Green, O. Solberg
    Quivers and Path Algebras
  • recog  1.2.5 (08/03/2016) by M. Neunhöffer, Á. Seress, N. Ankaralioglu, P. Brooksbank, F. Celler, S. Howe, M. Law, S. Linton, G. Malle, A. Niemeyer, E. O'Brien, C. M. Roney-Dougal, M. Horn
    A collection of group recognition methods
  • recogbase  1.2.5 (08/03/2016) by M. Neunhöffer, Á. Seress, M. Horn
    A framework for group recognition
  • ResClasses  4.7.1 (18/12/2017) by S. Kohl
    Set-Theoretic Computations with Residue Classes
  • Semigroups  3.0.16 (29/05/2018) by J. D. Mitchell, S. Burrell, M. Delgado, J. East, A. Egri-Nagy, N. Ham, J. Jonusas, M. Pfeiffer, C. Russell, B. Steinberg, F. Smith, J. Smith, M. Torpey, W. A. Wilson
    A package for semigroups and monoids
  • SgpViz  0.999.1 (13/09/2017) by M. Delgado, J. Morais
    A package for semigroup visualization
  • singular  12.04.28 (28/04/2012) by M. Costantini, W. de Graaf
    The GAP interface to Singular
  • Smallsemi  0.6.11 (26/04/2017) by A. Distler, J. Mitchell
    A library of small semigroups
  • SpinSym  1.5 (01/02/2013) by L. Maas
    Brauer tables of spin-symmetric groups
  • Unipot  1.4 (09/04/2018) by S. Haller, M. Horn
    Computing with elements of unipotent subgroups of Chevalley groups
  • utils  0.54 (12/02/2018) by S. Gutsche, M. Horn, A. Hulpke, S. Kohl, F. Lübeck, C. D. Wensley
    Utility functions in GAP
  • uuid  0.5 (22/05/2018) by M. Pfeiffer
    RFC 4122 UUIDs
  • XModAlg  1.16 (29/01/2018) by Z. Arvasi, A. Odabas
    Crossed Modules and Cat1-Algebras
  • ZeroMQInterface  0.10 (02/03/2018) by M. Pfeiffer, R. Behrends
    ZeroMQ bindings for GAP

No longer redistributed with GAP:

  • Citrus - this package has been renamed to Semigroups.
  • HAPprime - part of the code has been incorporated into the HAP package. Its source code repository, containing the code of the last distributed version, can still be found on GitHub here.
  • if - this package has been withdrawn; a better functionality is now included in the newer package SCSCP.
  • MONOID - the functionality of this package is now included in the newer package Semigroups.