The GAP package Semigroups
GAP C++ M4 Shell Objective-C Python Other
Clone or download
Permalink
Failed to load latest commit information.
data io: auto detect file encoding in generator files Nov 21, 2017
doc Merge branch 'stable-3.0' Jun 6, 2018
gap Fix tests for GAP master Jun 11, 2018
m4 Update build system Jun 6, 2018
scripts Merge branch 'stable-3.0' Apr 23, 2018
src Merge branch 'stable-3.0' Jun 19, 2018
tst Fix tests for GAP master Jun 11, 2018
.LIBSEMIGROUPS_VERSION kernel: update to libsemigroups 0.6.3 Feb 15, 2018
.covignore travis: run code coverage in 64-bit Feb 27, 2017
.gaplint.yml gaplint: update for v1.0.* part 3 Apr 20, 2018
.gitignore Merge branch 'stable-3.0' Oct 2, 2017
.mailmap Add .mailmap file Jul 28, 2017
.travis.yml travis: add tests for GAP stable-4.9 May 29, 2018
CHANGELOG.md Update version numbers etc for 3.0.16 May 29, 2018
CONTRIBUTING.md 1st Attempt: Merge branch 'stable-2.8' into unstable-3.0 Jul 11, 2016
GPL adding LICENSE, copy of GPL v3, making headers of CHANGELOG, CONTRIBU… Apr 2, 2015
LICENSE adding LICENSE, copy of GPL v3, making headers of CHANGELOG, CONTRIBU… Apr 2, 2015
Makefile.am Merge branch 'stable-3.0' Jun 19, 2018
PackageInfo.g Update version numbers etc for 3.0.16 May 29, 2018
README.md README: update genss version May 29, 2018
VERSION Update version numbers etc for 3.0.16 May 29, 2018
VERSIONS Update version numbers etc for 3.0.16 May 29, 2018
autogen.sh libsemigroups: changes for compatibility with libsemigroups Jan 19, 2017
configure.ac Update build system Jun 6, 2018
init.g Merge branch 'stable-3.0' Apr 23, 2018
makedoc.g Linting Mar 14, 2017
read.g Merge branch 'stable-3.0' Apr 23, 2018

README.md

README - Semigroups package for GAP

Copyright (C) 2011-18 James D. Mitchell et al.
Licensing information is available in the LICENSE file.

DOIBuild Status

Getting Semigroups

To get the latest version of the package download the archive file semigroups-x.x.x.tar.gz from the Semigroups webpage, and inside the pkg subdirectory of your GAP installation unpack semigroups-x.x.x.tar.gz, by, for example, doing:

gunzip semigroups-x.x.x.tar.gz; tar xvf semigroups-x.x.x.tar

This will create a subdirectory semigroups-x.x.x.

Issues

For questions, remarks, suggestions, and issues please use the issue tracker.

Installation

It is assumed that you have a working copy of GAP with version number 4.9.0 or higher. The most up-to-date version of GAP and instructions on how to install it can be obtained from the main GAP page.

The following is a summary of the steps that should lead to a successful installation of Semigroups:

  • get the IO package version 4.5.1 or higher

  • get the Orb package version 4.8.0 or higher. Both Orb and Semigroups perform better if Orb is compiled, so compile Orb!

  • ensure that the Digraphs package version 0.12.0 or higher is available. Digraphs must be compiled before Semigroups can be loaded.

  • get the genss package version 1.6.5 or higher

  • download the package archive semigroups-x.x.x.tar.gz from the Semigroups webpage.

  • unzip and untar the file semigroups-x.x.x.tar.gz, for example, using

    gunzip semigroups-x.x.x.tar.gz; tar xvf semigroups-x.x.x.tar
    

    this should create a directory called semigroups-x.x.x.

  • locate the pkg directory of your GAP directory, which contains the directories lib, doc and so on. Move the directory semigroups-x.x.x into the pkg directory.

  • from version 3.0.0, it is necessary to compile the Semigroups package. Semigroups uses the libsemigroups C++ library, which requires a compiler implementing the C++11 standard. To compile, inside the pkg/semigroups-x.x.x directory, type

    • ./configure
    • make

    If you are using GCC to compile Semigroups, then version 5.0 or higher is required. Trying to compile Semigroups with an earlier version of GCC will result in an error at compile time. Semigroups supports GCC version 5.0 or higher, and clang version 5.0 or higher.

    Further information about this step can be found in manual section entitled "Compiling the kernel module"

  • start GAP in the usual way.

  • type LoadPackage("semigroups");

Enjoy!