Dear sagemath and combinat de developpers, We would like to advertise our library of Boltzmann random generation: usain-boltz (Uniform SAmplINg with BOLTZmann). That's a Python project but it easily integrates into Sagemath using pip. It allows the "fast" uniform random generation of "large" discrete structures (a binary tree of 10^6 vertices is built within 10 sec on my laptop). Although the code has not yet been well optimized, maybe we can expect better performance in the future.
In usainboltz the user specify, using a combinatorial grammar, the objects he wants to sample and, using Python functions or class constructors, the way these objects are built in the Python/Sage world. For example binary tree are known to be in bijection with Dyck path, well-parentheses words or rooted plane trees. Thus the same usainboltz generator is used to sample these objects with differents builders. The code, examples and a Jupyter Notebook demo are available on gitlab: https://gitlab.com/ParComb/usain-boltz You can install it using pip (a Pypi release is on the way): pip3 install [--user] git+https://gitlab.com/ParComb/usain-boltz/-/archive/master/usain-boltz-master.tar.gz Or inside Sagemath built with Python 3 (the library is not python2-compatible): sage -pip install git+https://gitlab.com/ParComb/usain-boltz/-/archive/master/usain-boltz-master.tar.gz The documentation and several (Python and Sagemath) examples are available on readthedocs: https://usain-boltz.readthedocs.io/en/latest/ We are looking for feedback so do not hesitate ! Best regards, Matthieu and Martin -- You received this message because you are subscribed to the Google Groups "sage-combinat-devel" group. To unsubscribe from this group and stop receiving emails from it, send an email to sage-combinat-devel+unsubscr...@googlegroups.com. To view this discussion on the web visit https://groups.google.com/d/msgid/sage-combinat-devel/20191211151650.0c0a15c2%40C301L-G12F01.info.unicaen.fr.