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


Download files

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

Source Distribution

libsemigroups-python-bindings-0.2.2.tar.gz (54.5 kB view details)

Uploaded Source

File details

Details for the file libsemigroups-python-bindings-0.2.2.tar.gz.

File metadata

File hashes

Hashes for libsemigroups-python-bindings-0.2.2.tar.gz
Algorithm Hash digest
SHA256 064f6abb1aefd662127b074576032234eb1d5dad208880c19027ae603a0b56da
MD5 2a514581ca407341a2757e2ec9d93e1d
BLAKE2b-256 8c59c11e9daf03ce851f0687e49383bc4579cce9742bfe10387394911cd3a575

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page