Fast Boltzmann random generators for SageMath
Project description
Usain Boltz
Usain Boltz is a Python/Cython library meant to automate the random generation of tree-like structures.
The library was primarily designed to be used with the Sagemath mathematics software system but Sagemath is no longer a dependency and the library is now perfectly usable both within and without a Sagemath environment.
Install
Via pip (recommended)
Usain Boltz is available on PyPI, just type:
pip3 install usainboltz
From source
System requirements:
-
One of our dependencies requires
cmake
to build. It is installed by default on most distributions but if you encounter build errors withosqp
that may be the reason. -
You also need to have
cython
installed on your system to be able to build Usain Boltz.
Build, test and install:
- Run
make build
to build theC
andCython
extensions - Run
make test
to run the doctests - Run
python3 setup.py install [--user]
to install in your current python environment
Sagemath
Both installation methods make Usain Boltz available to Sagemath
Documentation
Provided you have sphinx
installed, you can
build the documentation with make doc
.
Examples and demo
Some examples are available in the examples
and sage_examples
modules in
the documentation. In particular, the sage_examples
module illustrates how
Usain Boltz can be used to generate sage objects.
A sage notebook is available in the demo/
folder which shows how Usain Boltz
can be used to generate various objects related to binary trees from the same
grammar and generator.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distributions
Hashes for usainboltz-0.2.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 084341b9ed02fda89dc8ee73475cd421539cb6bb7aa0aac9ccf4d39688051690 |
|
MD5 | 7c3e58499cda7184b672f7d7eadeac96 |
|
BLAKE2b-256 | 31e8a9ec7edbd223663e79d2dc28a161418844b37ef7f01d6a730c6fcaa0b09b |
Hashes for usainboltz-0.2.0-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | c3bbf27f9ee8694857e7543c457e22a43c3f7d7ed2a4fd0950012cb5164f59f2 |
|
MD5 | d7d85d052e20e4586c2534e89be2fcb0 |
|
BLAKE2b-256 | 30fd489c6f12acbf77bc026e1e1e2edf730e221a638df52726e15dc736b2d87e |
Hashes for usainboltz-0.2.0-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 1a8202b2425ca7a4e0307d546e76f767ead66689aeb9e81f6d32aa4134c10282 |
|
MD5 | 210a2114dcd38c50f6ba9d7166fecec5 |
|
BLAKE2b-256 | 44aa7f961d266b4adf1f17b6ab40372dc11222904f91422b44e5f00e9236ddb2 |