Installation ============ .. toctree:: :maxdepth: 4 Python ------ *BoolForge* is developed for Python 3.10+ and is not compatible with prior versions of Python. Windows ------- It is recommended to install the package using *pip*. If you do not already have *pip* installed, run:: C:> py -m ensurepip --upgrade To install *BoolForge* with *pip*, run:: C:> py -m pip install boolforge You should now be able to import BoolForge:: C:> py >>> import boolforge To remove *BoolForge* using *pip*, run:: C:> py -m pip uninstall boolforge Mac OS / Linux -------------- It is recommended to install the package using *pip*. If you do not already have *pip* installed, run:: $ python -m ensurepip --upgrade To install *BoolForge* with *pip*, run:: $ python -m pip install boolforge You should now be able to import BoolForge:: $ python >>> import boolforge To remove *BoolForge* using *pip*, run:: $ python -m pip uninstall boolforge Extended Functionality ---------------------- BoolForge is fully usable with its core dependencies, but some features rely on optional packages that can be installed via *extras*. Performance Acceleration ~~~~~~~~~~~~~~~~~~~~~~~~ Some internal routines are automatically accelerated if `numba `__ is available. To enable numba acceleration:: pip install boolforge[speed] When numba is not installed, BoolForge transparently falls back to pure-Python implementations. Plotting and Visualization ~~~~~~~~~~~~~~~~~~~~~~~~~~ Plotting of wiring diagrams and network structure requires `matplotlib `__. To enable plotting:: pip install boolforge[plot] CANA Integration ~~~~~~~~~~~~~~~~ Some methods interface with the `CANA `__ package for advanced canalization measures. To enable CANA-based functionality:: pip install boolforge[cana] Symbolic Logic and Expression Minimization ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Symbolic representations and logical expression minimization rely on `PyEDA `__. To enable symbolic functionality:: pip install boolforge[symbolic] Biological Model Retrieval ~~~~~~~~~~~~~~~~~~~~~~~~~~ The retrival and loading of hundreds of published biological Boolean network models relies on the `requests `__ package for web access. To enable biological model retrieval:: pip install boolforge[bio] All Optional Features ~~~~~~~~~~~~~~~~~~~~~ To install BoolForge with **all optional dependencies**:: pip install boolforge[all] Compatability and Interoperability ---------------------------------- *BoolForge* supports import and export of Boolean network representations used by other software packages. In particular, BoolForge supports the **BNet format** commonly used by `pyboolnet `__, without requiring pyboolnet itself to be installed. Boolforge also supports converstion to and from the format used by `CANA `__.