Skip to main content

A python package for the libsemigroups C++ library

Project description

libsemigroups_pybind11 - Version 0.10.1

python bindings for the C++ library libsemigroups

DOI

What is libsemigroups?

libsemigroups is a C++14 library containing implementations of several algorithms for computing finite and finitely presented semigroups. Namely:

libsemigroups_pybind11 is a python package exposing much (but not all) of the functionality of libsemigroups.

The development version of libsemigroups_pybind11 is available on github, and some related projects are here.

Installation

Installing with pip

It's possible to install libsemigroups_pybind11 using pip via one of:

pip install libsemigroups_pybind11
pip3 install libsemigroups_pybind11
python -m pip install libsemigroups_pybind11
python3 -m pip install libsemigroups_pybind11

Installing with conda

This installation method assumes that you have anaconda or miniconda installed. See the getting started and miniconda download page on the conda website.

It might be a good idea to create and activate a conda environment to contain the installation of the libsemigroups_pybind11:

conda create --name libsemigroups
conda activate libsemigroups

Install libsemigroups_pybind11:

conda install -c conda-forge libsemigroups_pybind11

At present this does not work for Macs with M1 processors.

From the sources

Before installing libsemigroups_pybind11 from its sources you should first perform a system install of the C++ library libsemigroups. For information about how to install libsemigroups see the installation guide.

Assuming that you have libsemigroups installed you can install libsemigroups_pybind11 as follows:

git clone https://github.com/libsemigroups/libsemigroups_pybind11
cd libsemigroups_pybind11
pip install .

From a release archive

To build libsemigroups_pybind11 from a release archive:

curl -L -O https://github.com/libsemigroups/libsemigroups_pybind11/releases/latest/download/libsemigroups_pybind11-0.10.1.tar.gz
tar -xf libsemigroups_pybind11-0.10.1.tar.gz
rm -f libsemigroups_pybind11-0.10.1.tar.gz
cd libsemigroups_pybind11-0.10.1
pip install .

Building the documentation

The following are required to be able to build the documentation:

  1. python3
  2. the python packages: jinja2 sphinx sphinx_rtd_theme sphinxcontrib-bibtex sphinx_copybutton

Assuming you already have python3 install, on Mac OSX you can install all of the above by doing:

python3 -m pip3 install -r requirements.txt

Then it ought to be possible to just run make doc in the libsemigroups_pybind11 directory.

Issues

If you find any problems with libsemigroups_pybind11, or have any suggestions for features that you'd like to see, please use the issue tracker.

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_pybind11-0.10.1.tar.gz (93.0 kB view hashes)

Uploaded Source

Built Distributions

libsemigroups_pybind11-0.10.1-pp39-pypy39_pp73-macosx_10_9_x86_64.whl (4.1 MB view hashes)

Uploaded PyPy macOS 10.9+ x86-64

libsemigroups_pybind11-0.10.1-pp38-pypy38_pp73-macosx_10_9_x86_64.whl (4.1 MB view hashes)

Uploaded PyPy macOS 10.9+ x86-64

libsemigroups_pybind11-0.10.1-pp37-pypy37_pp73-macosx_10_9_x86_64.whl (4.1 MB view hashes)

Uploaded PyPy macOS 10.9+ x86-64

libsemigroups_pybind11-0.10.1-cp311-cp311-musllinux_1_1_x86_64.whl (4.0 MB view hashes)

Uploaded CPython 3.11 musllinux: musl 1.1+ x86-64

libsemigroups_pybind11-0.10.1-cp311-cp311-musllinux_1_1_i686.whl (4.2 MB view hashes)

Uploaded CPython 3.11 musllinux: musl 1.1+ i686

libsemigroups_pybind11-0.10.1-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (3.6 MB view hashes)

Uploaded CPython 3.11 manylinux: glibc 2.17+ x86-64

libsemigroups_pybind11-0.10.1-cp311-cp311-manylinux_2_17_i686.manylinux2014_i686.whl (3.7 MB view hashes)

Uploaded CPython 3.11 manylinux: glibc 2.17+ i686

libsemigroups_pybind11-0.10.1-cp311-cp311-macosx_12_0_arm64.whl (3.6 MB view hashes)

Uploaded CPython 3.11 macOS 12.0+ ARM64

libsemigroups_pybind11-0.10.1-cp311-cp311-macosx_10_9_x86_64.whl (4.3 MB view hashes)

Uploaded CPython 3.11 macOS 10.9+ x86-64

libsemigroups_pybind11-0.10.1-cp310-cp310-musllinux_1_1_x86_64.whl (4.0 MB view hashes)

Uploaded CPython 3.10 musllinux: musl 1.1+ x86-64

libsemigroups_pybind11-0.10.1-cp310-cp310-musllinux_1_1_i686.whl (4.2 MB view hashes)

Uploaded CPython 3.10 musllinux: musl 1.1+ i686

libsemigroups_pybind11-0.10.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (3.6 MB view hashes)

Uploaded CPython 3.10 manylinux: glibc 2.17+ x86-64

libsemigroups_pybind11-0.10.1-cp310-cp310-manylinux_2_17_i686.manylinux2014_i686.whl (3.7 MB view hashes)

Uploaded CPython 3.10 manylinux: glibc 2.17+ i686

libsemigroups_pybind11-0.10.1-cp310-cp310-macosx_12_0_arm64.whl (3.6 MB view hashes)

Uploaded CPython 3.10 macOS 12.0+ ARM64

libsemigroups_pybind11-0.10.1-cp310-cp310-macosx_10_9_x86_64.whl (4.3 MB view hashes)

Uploaded CPython 3.10 macOS 10.9+ x86-64

libsemigroups_pybind11-0.10.1-cp39-cp39-musllinux_1_1_x86_64.whl (4.0 MB view hashes)

Uploaded CPython 3.9 musllinux: musl 1.1+ x86-64

libsemigroups_pybind11-0.10.1-cp39-cp39-musllinux_1_1_i686.whl (4.2 MB view hashes)

Uploaded CPython 3.9 musllinux: musl 1.1+ i686

libsemigroups_pybind11-0.10.1-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (3.6 MB view hashes)

Uploaded CPython 3.9 manylinux: glibc 2.17+ x86-64

libsemigroups_pybind11-0.10.1-cp39-cp39-manylinux_2_17_i686.manylinux2014_i686.whl (3.7 MB view hashes)

Uploaded CPython 3.9 manylinux: glibc 2.17+ i686

libsemigroups_pybind11-0.10.1-cp39-cp39-macosx_12_0_arm64.whl (3.6 MB view hashes)

Uploaded CPython 3.9 macOS 12.0+ ARM64

libsemigroups_pybind11-0.10.1-cp39-cp39-macosx_10_9_x86_64.whl (4.3 MB view hashes)

Uploaded CPython 3.9 macOS 10.9+ x86-64

libsemigroups_pybind11-0.10.1-cp38-cp38-musllinux_1_1_x86_64.whl (4.0 MB view hashes)

Uploaded CPython 3.8 musllinux: musl 1.1+ x86-64

libsemigroups_pybind11-0.10.1-cp38-cp38-musllinux_1_1_i686.whl (4.2 MB view hashes)

Uploaded CPython 3.8 musllinux: musl 1.1+ i686

libsemigroups_pybind11-0.10.1-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (3.6 MB view hashes)

Uploaded CPython 3.8 manylinux: glibc 2.17+ x86-64

libsemigroups_pybind11-0.10.1-cp38-cp38-manylinux_2_17_i686.manylinux2014_i686.whl (3.7 MB view hashes)

Uploaded CPython 3.8 manylinux: glibc 2.17+ i686

libsemigroups_pybind11-0.10.1-cp38-cp38-macosx_12_0_arm64.whl (3.6 MB view hashes)

Uploaded CPython 3.8 macOS 12.0+ ARM64

libsemigroups_pybind11-0.10.1-cp38-cp38-macosx_10_9_x86_64.whl (4.3 MB view hashes)

Uploaded CPython 3.8 macOS 10.9+ x86-64

libsemigroups_pybind11-0.10.1-cp37-cp37m-musllinux_1_1_x86_64.whl (4.1 MB view hashes)

Uploaded CPython 3.7m musllinux: musl 1.1+ x86-64

libsemigroups_pybind11-0.10.1-cp37-cp37m-musllinux_1_1_i686.whl (4.3 MB view hashes)

Uploaded CPython 3.7m musllinux: musl 1.1+ i686

libsemigroups_pybind11-0.10.1-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (3.6 MB view hashes)

Uploaded CPython 3.7m manylinux: glibc 2.17+ x86-64

libsemigroups_pybind11-0.10.1-cp37-cp37m-manylinux_2_17_i686.manylinux2014_i686.whl (3.7 MB view hashes)

Uploaded CPython 3.7m manylinux: glibc 2.17+ i686

libsemigroups_pybind11-0.10.1-cp37-cp37m-macosx_10_9_x86_64.whl (4.2 MB view hashes)

Uploaded CPython 3.7m macOS 10.9+ x86-64

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