Skip to main content

Python bindings for the libsemigroups mathematics library

Project description

# Python bindings for libsemigroups

## Basic instructions

Install the libsemigroups C++ library, e.g. from sources:

git clone https://github.com/james-d-mitchell/libsemigroups/ python-bindings

cd libsemigroups
make
sudo make install
sudo ldconfig

Install the python bindings::

cd python-bindings
pip3 install --user . --upgrade

Try it out:

cd python-bindings
pip3 install --user . --upgrade

python3

>>> from semigroups import Semigroup, Transformation
>>> S = Semigroup([Transformation([1,1,4,5,4,5]),Transformation([2,3,2,3,5,5])])
>>> S.size()
5

## Uploading the package to pipy

Build the binary wheel:

rm -rf dist
python setup.py sdist

The first time:

twine register dist/*.tar.gz

For latter releases:

twine upload -s dist/*.tar.gz

## Trick to debug segmentation faults

Install Sage

Install gdb in Sage:

sage -i gdb

Run sage as:

sage -gdb

and type the commands that trigger the segfault. Then gdb will be
fired automatically, allowing for analysing the stack trace.

## [TODO list](TODO)

Project details


Release history Release notifications

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Filename, size & hash SHA256 hash help File type Python version Upload date
libsemigroups-python-bindings-0.2.2.tar.gz (54.5 kB) Copy SHA256 hash SHA256 Source None Apr 21, 2017

Supported by

Elastic Elastic Search Pingdom Pingdom Monitoring Google Google BigQuery Sentry Sentry Error logging AWS AWS Cloud computing DataDog DataDog Monitoring Fastly Fastly CDN DigiCert DigiCert EV certificate StatusPage StatusPage Status page