skillfed

passagemath-gap

passagemath: Computational Group Theory with GAP

passagemath-gap v10.8.9 128.4K downloads/30d#11,707 on PyPI102
Copyleft license GPL-2.0-or-later Active released

What it is and what it does

passagemath-gap is a Python distribution that wraps the GAP computational algebra system, providing interfaces for group-theoretic computation. It bundles GAP with a comprehensive set of GAP packages covering group representations, cohomology, combinatorics, Lie algebras, and related areas. The package is part of the passagemath project, a modularized fork focused on pip-installable binary wheels and integration with the scientific Python ecosystem.

It depends on passagemath-environment, passagemath-categories, passagemath-repl, and data packages for specific GAP libraries (factint, primgrp, smallgrp). Installation is straightforward on Linux and macOS via prebuilt wheels; Windows users currently need WSL or virtualization for full functionality. The package supports Python 3.11–3.14 and has no known vulnerabilities.

Use it for:

  • Computing properties of finite groups, permutation groups, and group actions using GAP algorithms from Python.
  • Accessing the GAP Small Groups Library and primitive permutation groups library for group classification.
  • Performing cohomology calculations and representation theory computations via bundled GAP packages.
  • Integrating group-theoretic computations into scientific Python workflows alongside other ecosystem tools.
  • Prototyping and teaching group theory and computational algebra in interactive environments.

Worth the install?

AI-flagged interpretation of the facts on this page — verify before relying

Provides Python interfaces to the GAP computational algebra system through Cython-based libgap and Pexpect-based interactive access, bundled with GAP and a comprehensive set of GAP packages for group theory and related mathematics.

Yes, if you need Python access to GAP's group-theoretic algorithms and can use Linux/macOS or WSL on Windows. The package is actively maintained, has no known vulnerabilities, and provides binary wheels that eliminate compilation friction on supported platforms. The copyleft GPL-2.0-or-later license is a constraint for proprietary use. Install friction is moderate but manageable for academic and research use.

Install

passagemath-gap on PyPI

pip

pip install passagemath-gap

uv

uv add passagemath-gap

poetry

poetry add passagemath-gap

Installing passagemath-gap

Before you install

Medium install friction due to compiled dependencies and bundled GAP binaries. Package is actively maintained with recent releases and supports Python 3.11–3.14 across Linux, macOS, and partial Windows coverage via binary wheels.

License in practice

Licensed under GPL-2.0-or-later (copyleft). Use in proprietary or closed-source projects requires either licensing compliance or distribution under compatible open-source terms.

Quickstart

pip install passagemath-gap

import passagemath_gap

Requires Python 3.11–3.14; binary wheels available for Linux (x86_64, aarch64), macOS (x86_64, arm64), and limited Windows support. Full Windows functionality requires WSL or virtualization.

Verify before relying

  • Specific API surface and usage patterns for the Cython libgap interface and Pexpect interface.
  • Whether the prebuilt GAP binary and bundled packages are sufficient for typical workflows without additional installation.
  • Performance characteristics of libgap versus Pexpect interface for large computations.
  • Compatibility and testing coverage with the listed GAP packages on all supported platforms.

Package facts

License GPL-2.0-or-later (copyleft)
Python support supports the current Python release (<3.15,>=3.11)
Install friction medium — platform-specific wheel
Runtime dependencies 10 — cysignals, dot2tex, memory_allocator, pexpect, passagemath-environment, passagemath-categories, passagemath-gap-pkg-factint-data, passagemath-gap-pkg-primgrp-data, passagemath-gap-pkg-smallgrp-data, passagemath-repl
Maintenance actively maintained — 4 days since the last release
Last repo commit
First released
Downloads 128,435/month — #11,707 on PyPI (30-day window, as of 2026-08-14)
Known vulnerabilities none known (OSV.dev, checked 2026-08-14)

Evidence: passagemath_gap-10.8.9-cp311-cp311-macosx_13_0_arm64.whl; passagemath_gap-10.8.9-cp311-cp311-macosx_13_0_x86_64.whl; passagemath_gap-10.8.9-cp311-cp311-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl; passagemath_gap-10.8.9-cp311-cp311-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl; passagemath_gap-10.8.9-cp311-cp311-musllinux_1_2_aarch64.whl; passagemath_gap-10.8.9-cp311-cp311-musllinux_1_2_x86_64.whl; passagemath_gap-10.8.9-cp312-cp312-macosx_13_0_arm64.whl; passagemath_gap-10.8.9-cp312-cp312-macosx_13_0_x86_64.whl; passagemath_gap-10.8.9-cp312-cp312-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl; passagemath_gap-10.8.9-cp312-cp312-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl; passagemath_gap-10.8.9-cp312-cp312-musllinux_1_2_aarch64.whl; passagemath_gap-10.8.9-cp312-cp312-musllinux_1_2_x86_64.whl; passagemath_gap-10.8.9-cp313-cp313-macosx_13_0_arm64.whl; passagemath_gap-10.8.9-cp313-cp313-macosx_13_0_x86_64.whl; passagemath_gap-10.8.9-cp313-cp313-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl; passagemath_gap-10.8.9-cp313-cp313-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl; passagemath_gap-10.8.9-cp313-cp313-musllinux_1_2_aarch64.whl; passagemath_gap-10.8.9-cp313-cp313-musllinux_1_2_x86_64.whl; passagemath_gap-10.8.9-cp314-cp314-macosx_13_0_arm64.whl; passagemath_gap-10.8.9-cp314-cp314-macosx_13_0_x86_64.whl

Development Status :: 6 - MatureIntended Audience :: EducationIntended Audience :: Science/ResearchOperating System :: MacOS :: MacOS XOperating System :: POSIXOperating System :: POSIX :: LinuxProgramming Language :: Python :: 3 :: OnlyProgramming Language :: Python :: 3.11Programming Language :: Python :: 3.12Programming Language :: Python :: 3.13Programming Language :: Python :: 3.14Programming Language :: Python :: Implementation :: CPythonTopic :: Scientific/Engineering :: Mathematics

Tags

GAP group theory interfacecomputational algebra pythongroup theory computationGAP system python bindinglibgap cython interfacepermutation group algorithmsfinite group computation
group-theorycomputational-algebragap-system

More Mathematics packages