Skip to main content

Python bindings for the tool AEON.

Project description

Biodivine/AEON.py

This repository contains AEON.py, the Python bindings for the AEON tool, which can be used for symbolic analysis of (partially specified) Boolean networks. In particular, it allows solving attractor detection and source-target control problems on large, non-trivial networks. Furthermore, these problems can be addressed even in networks with logical parameters or partially unknown dynamics.

Installation

The package is available through PyPI for all major operating systems (Windows, Linux and macOS). To install it, you can simply run:

pip install biodivine-aeon

Documentation

For new users, we recommend familiarising with the three Jupyter notebooks below, which summarise most of the major functionality of AEON.py:

Subsequently, the manual of the standalone AEON tool (which AEON.py is based on) can be also helpful to understand some of the high-level concepts.

More advanced users can inspect a detailed API documentation available here. Note that this is a documentation generated for the Rust codebase, which is then exported into Python using the PyO3 tool. As such, note that some names may be different in the exported Python library (observe the name attribute on most structs that is used for this reason). Nevertheless, the documentation should describe all available methods and data structures.

Building from source

At the moment, the build process includes a Z3 wrapper that will use your local Z3 installation. On linux, to build this wrapper, you'll need clang (and cmake and other standard build tools). This is only required during build, however, even at runtime, you might need to have Z3 installed to use certain features if you are running a locally compiled version of AEON.py.

If you are building a "release" version, we recommend running the build with --features static-z3 (see our CI scripts on how to do this). This will "bake in" the Z3 library into the final package, which takes a lot more time to build (~30min), but it means you don't need a local Z3 installation to run AEON.py. Also, the users cannot break the library by having an outdated or otherwise incompatible Z3 installed.

Project details


Download files

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

Source Distributions

No source distribution files available for this release.See tutorial on generating distribution archives.

Built Distributions

biodivine_aeon-0.2.0a5-cp37-abi3-win_amd64.whl (7.0 MB view hashes)

Uploaded CPython 3.7+ Windows x86-64

biodivine_aeon-0.2.0a5-cp37-abi3-manylinux_2_28_x86_64.whl (12.6 MB view hashes)

Uploaded CPython 3.7+ manylinux: glibc 2.28+ x86-64

biodivine_aeon-0.2.0a5-cp37-abi3-macosx_11_0_x86_64.macosx_11_0_arm64.macosx_11_0_universal2.whl (17.5 MB view hashes)

Uploaded CPython 3.7+ macOS 11.0+ ARM64 macOS 11.0+ universal2 (ARM64, x86-64) macOS 11.0+ 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