gap_packages: A collection of GAP packages - Packages and Features

Skip to content
Back to top
View this page
Edit this page

# gap_packages: A collection of GAP packages

## Description

Several “official” and “undeposited” GAP packages available from https://www.gap-system.org/Packages/packages.html

Installing this SPKG will install the corresponding GAP packages, but before you can use them in Sage, they still have to be loaded into either the GAP interface or libgap:

Sage

    sage: gap.eval('LoadPackage("Grape")')  # optional - gap_packages
    'true'
    sage: libgap.LoadPackage("Grape")       # optional - gap_packages
    true

Python

    >>> from sage.all import *
    >>> gap.eval('LoadPackage("Grape")')  # optional - gap_packages
    'true'
    >>> libgap.LoadPackage("Grape")       # optional - gap_packages
    true

Those correspond to:

    gap> LoadPackage("Grape");

within the GAP interface and libgap, respectively.

## Upstream Contact

Mailing list at https://mail.gap-system.org/mailman/listinfo/gap

## Dependencies

- GAP (a standard spkg)

## TODO

The crystallographic group packages are untested/untestable. They rely on polymake and the dependency “cryst” is missing. This needs to be cleaned up.

## Notes

A brief description of each package follows:

cohomolo - The cohomolo package is a GAP interface to some `C` programs for computing Schur multipliers and covering groups of finite groups and first and second cohomology groups of finite groups acting on finite modules. (Author: Max Horn, Markus Pfeiffer)

CoReLG - Contains functionality for working with real semisimple Lie algebras. (Author: Heiko Dietrich, Paolo Faccin, Willem Adriaan de Graaf)

crime - package to compute the cohomology ring of finite p-groups, induced maps, and Massey products. (Author: Marcus Bishop)

crypting - The crypting package provides some cryptographic primitives so that the JupyterKernel package works. (Authors: Markus Pfeiffer and The GAP Team)

cryst - Computing with crystallographic groups (Authors: Bettina Eick, Franz Gähler, Werner Nickel)

CTblLib - The GAP Character Table Library (Author: Thomas Breuer)

datastructures - The datastructures package provides some standard data structures. (Authors: Markus Pfeiffer, Max Horn, Christopher Jefferson and Steve Linton)

DESIGN is a package for classifying, partitioning and studying block designs. (Author: Leonard H. Soicher)

Digraphs - GAP package containing methods for graphs, digraphs, and multidigraphs. (Authors: Jan De Beule, Julius Jonusas, James Mitchell, Wilf A. Wilson, Michael Young, Marina Anagnostopoulou-Merkouri, Finn Buck, Stuart Burrell, Graham Campbell, Raiyan Chowdhury, Reinis Cirpons, Ashley Clayton, Tom Conti-Leslie, Joseph Edwards, Luna Elliott, Isuru Fernando, Ewan Gilligan, Sebastian Gutsche, Samantha Harper, Max Horn, Christopher Jefferson, Olexandr Konovalov, Hyeokjun Kwon, Andrea Lee, Saffron McIver, Michael Orlitzky, Matthew Pancer, Markus Pfeiffer, Daniel Pointon, Lea Racine, Christopher Russell, Artur Schaefer, Isabella Scott, Kamran Sharma, Finn Smith, Ben Spiers, Maria Tsalakou, Meike Weiss, Murray Whyte and Fabian Zickgraf)

FactInt is a package providing routines for factoring integers, in particular:

- Pollard’s p-1

- Williams’ p+1

- Elliptic Curves Method (ECM)

- Continued Fraction Algorithm (CFRAC)

- Multiple Polynomial Quadratic Sieve (MPQS)

(Author: Stefan Kohl)

GAPDoc is a package containing a definition of a structure for GAP documentation, based on XML. It also contains conversion programs for producing text-, DVI-, PDF- or HTML-versions of such documents, with hyperlinks if possible. (Authors: Frank Luebeck, Max Neunhoeffer)

GBNP - The GBNP package provides algorithms for computing Grobner bases of noncommutative polynomials with coefficients from a field implemented in GAP and with respect to the “total degree first then lexicographical” ordering. Further provided are some variations, such as a weighted and truncated version and a tracing facility. The word “algorithm” is to be interpreted loosely here: in general one cannot expect such an algorithm to terminate, as it would imply solvability of the word problem for finitely presented (semi)groups. (Authors: A.M. Cohen, J.W. Knopper)

GRAPE is a package for computing with graphs and groups, and is primarily designed for constructing and analysing graphs related to groups, finite geometries, and designs. (Author: Leonard H. Soicher)

GUAVA is included here, and with Sage standard.

HAP (Homological Algebra Programming) is a GAP package providing some functions for group cohomology computation. (Author: Graham Ellis)

HAPcryst - an extension package for HAP, which allows for group cohomology computation for a wider class of groups. (Author: Marc Roeder)

hecke - Provides functions for calculating decomposition matrices of Hecke algebras of the symmetric groups and q-Schur algebras. Hecke is a port of the GAP 3 package Specht 2.4 to GAP 4. (Author: Dmitriy Traytel)

IO - as its name suggests, provides bindings for GAP to the lower levels of Input/Output functionality in the C library. (Authors: Max Neunhöffer and Max Horn)

LAGUNA - this package provides functionality for calculation of the normalized unit group of the modular group algebra of the finite p-group and for investigation of Lie algebra associated with group algebras and other associative algebras. (Authors :Victor Bovdi, Alexander Konovalov, Richard Rossmanith, Csaba Schneider)

liealgdb - A database of Lie algebras (Author: Serena Cicalo’, Willem Adriaan de Graaf, Csaba Schneider)

LiePRing - Database and algorithms for Lie p-rings (Author: Michael Vaughan-Lee, Bettina Eick)

LieRing - contains functionality for working with finitely presented Lie rings and the Lazard correspondence. (Author: Serena Cicalo’, Willem Adriaan de Graaf)

LINS - provides an algorithm for computing the normal subgroups of a finitely presented group up to some given index bound. (Author: Friedrich Rober)

loops - Provides researchers in nonassociative algebra with a computational tool that integrates standard notions of loop theory with libraries of loops and group-theoretical algorithms of GAP. The package also expands GAP toward nonassociative structures. (Authors: Gabor Nagy, Petr Vojtechovsky)

mapclass - The package calculates the mapping class group orbits for a given finite group. (Authors: Adam James, Kay Magaard, Sergey Shpectorov, Helmut Volklein)

nq - This package provides access to the ANU nilpotent quotient program for computing nilpotent factor groups of finitely presented groups. (Authors: Max Horn and Werner Nickel)

orb - This package is about enumerating orbits in various ways. (Authors: Juergen Mueller, Max Neunhöffer, Felix Noeske and Max Horn)

polymake - an interface with the (standalone) polymake program used by HAPcryst. (Author: Marc Roeder)

qpa - Quivers and Path Algebras provides data structures and algorithms for doing computations with finite dimensional quotients of path algebras, and finitely generated modules over such algebras. The current version of the QPA package has data structures for quivers, quotients of path algebras, and modules, homomorphisms and complexes of modules over quotients of path algebras. (Authors: Edward Green, Oeyvind Solberg)

quagroup - Contains functionality for working with quantized enveloping algebras of finite-dimensional semisimple Lie algebras. (Author: Willem Adriaan de Graaf)

repsn - The package provides GAP functions for computing characteristic zero matrix representations of finite groups. (Author: Vahid Dabbaghian)

Semigroups - split out as a separate optional spkg

sla - a package for doing computations with simple Lie algebras (Author: Willem Adriaan de Graaf)

SONATA (“System Of Nearrings And Their Applications”) is a package which constructs finite nearrings and related objects. (Authors: Erhard Aichinger, Franz Binder, Jürgen Ecker, Peter Mayr, Christof Noebauer)

TORIC is a GAP package for computing with toric varieties. (Author: David Joyner)

## Type

optional

## Dependencies

- $(SAGERUNTIME)

- gap: Groups, Algorithms, Programming - a system for computational discrete algebra

- planarity: Planarity-related graph algorithms

## Version Information

package-version.txt:

    4.14.0

## Equivalent System Packages

conda-forge

    $ conda install gap

Fedora/Redhat/CentOS

    $ sudo dnf install gap-pkg-cohomolo gap-pkg-corelg gap-pkg-crime \
          gap-pkg-cryst gap-pkg-ctbllib gap-pkg-design gap-pkg-factint \
          GAPDoc gap-pkg-gbnp gap-pkg-grape gap-pkg-guava gap-pkg-hap \
          gap-pkg-hapcryst gap-pkg-hecke gap-pkg-laguna gap-pkg-liealgdb \
          gap-pkg-liepring gap-pkg-liering gap-pkg-loops gap-pkg-mapclass \
          gap-pkg-polymaking gap-pkg-qpa gap-pkg-quagroup gap-pkg-repsn \
          gap-pkg-sla gap-pkg-sonata gap-pkg-toric

See https://repology.org/project/gap/versions

However, these system packages will not be used for building Sage because `spkg-configure.m4` has not been written for this package; see Issue #27330 for more information.