sagemath_gap: Computational Group Theory with GAP

This pip-installable distribution passagemath-gap is a small distribution that provides modules that depend on the GAP system.

What is included

  • Cython interface to libgap

  • Pexpect interface to GAP

  • numerous modules with build-time dependencies on GAP, see MANIFEST

  • the binary wheels on PyPI ship a prebuilt copy of GAP and the following GAP packages:

    • aclib: Almost crystallographic groups

    • alnuth: Algebraic number theory, interface to PARI/GP

    • atlasrep: Interface to the Atlas of Group Representations

    • autodoc: Generate documentation from GAP source code

    • autpgrp: Computing the automorphism group of a p-group

    • cohomolo: Cohomology groups of finite groups on finite modules

    • corelg: Computing with real Lie algebras

    • crime: Group cohomology and Massey products

    • crisp: Computing with radicals, injectors, Schunck classes and projectors

    • crypting: Hashes and crypto

    • cryst: Computing with crystallographic groups

    • crystcat: Crystallographic groups catalog

    • datastructures: Collection of standard data structures

    • design: Constructing, classifying, partitioning, and studying block designs

    • digraphs: Graphs, digraphs, and multidigraphs

    • factint: Advanced methods for factoring integers

    • fga: Free group algorithms

    • gapdoc: Meta package for GAP documentation

    • gbnp: Gröbner bases of noncommutative polynomials

    • genss: Generic Schreier-Sims

    • grape: GRaph Algorithms using PErmutation groups

    • guava: Computing with error-correcting codes

    • hap: Homological algebra programming

    • hapcryst: HAP extension for crystallographic groups

    • hecke: Calculating decomposition matrices of Hecke algebras

    • images: Minimal and canonical images

    • jupyterviz: Visualization Tools for Jupyter and the GAP REPL

    • io: Bindings for low level C library I/O routines

    • json: Reading and Writing JSON

    • laguna: Lie AlGebras and UNits of group Algebras

    • liealgdb: Database of Lie algebras

    • liepring: Database and algorithms for Lie p-rings

    • liering: Computing with finitely presented Lie rings

    • lins: Computing the normal subgroups of a finitely presented group

    • loops: Computing with quasigroups and loops

    • mapclass: Mapping class orbit computation

    • nq: Nilpotent quotients of finitely presented groups

    • orb: Methods to enumerate orbits

    • packagemanager: Easily download and install GAP packages

    • polenta: Polycyclic presentations for matrix groups

    • polycyclic: Computation with polycyclic groups

    • polymaking: Interfacing the geometry software polymake

    • primgrp: Primitive permutation groups library

    • quagroup: Computations with quantum groups

    • qpa: Quivers and path algebras

    • radiroot: Roots of a polynomial as radicals

    • repsn: Constructing representations of finite groups

    • resclasses: Set-theoretic computations with residue classes

    • singular: Interface to Singular

    • sla: Simple Lie algebras

    • smallgrp: The GAP Small Groups Library

    • sonata: System of nearrings and their applications

    • sophus: Computing in nilpotent Lie algebras

    • toric: Toric varieties and some combinatorial geometry computations

    • utils: Utility functions

    • uuid: RFC 4122 UUIDs

    • ZeroMQInterface: ZeroMQ bindings

  • the binary wheels on PyPI ship a prebuilt copy of the native Jupyter kernel for GAP

Examples

A quick way to try it out interactively:

$ pipx run --pip-args="--prefer-binary" --spec "passagemath-gap[test]" IPython

In [1]: from sage.all__sagemath_modules import *

In [2]: from sage.all__sagemath_gap import *

In [3]: G = libgap.eval("Group([(1,2,3), (1,2)(3,4), (1,7)])")

In [4]: CG = G.ConjugacyClasses()

In [5]: gamma = CG[2]

In [6]: g = gamma.Representative()

In [7]: CG; gamma; g
[ ()^G, (4,7)^G, (3,4,7)^G, (2,3)(4,7)^G, (2,3,4,7)^G, (1,2)(3,4,7)^G, (1,2,3,4,7)^G ]
(3,4,7)^G
(3,4,7)

Available as extras, from other distributions

Jupyter kernel spec

pip install "passagemath-gap[jupyterkernel]"

installs the kernel spec for use in the Jupyter notebook and JupyterLab

pip install "passagemath-gap[notebook]"

installs the kernel spec and the Jupyter notebook

pip install "passagemath-gap[jupyterlab]"

installs the kernel spec and JupyterLab

GAP packages

pip install "passagemath-gap[ctbllib]"

installs ctbllib: The GAP Character Table Library

pip install "passagemath-gap[irredsol]"

installs irredsol: Library of irreducible soluble linear groups over finite fields and of finite primivite soluble groups

pip install "passagemath-gap[tomllib]"

installs tomlib: The GAP Library of Tables of Marks

pip install "passagemath-gap[transgrp]"

installs transgrp: Transitive Groups Library

Type

standard

Dependencies

Version Information

package-version.txt:

10.6.3

version_requirements.txt:

passagemath-gap ~= 10.6.3.0

Equivalent System Packages

(none known)