CANAlization: Control & Redundancy in Boolean Networks
This package implements a series of methods used to study control, canalization and redundancy in Boolean Networks.
** Latest stable release **
- from PYPI
pip install cana
** Latest development release on GitHub **
Pull and install the code directly from the github project page.
pip install git+https://github.com/rionbr/CANA
Please note that CANA uses Cython. For it to compile you may need to install the following:
pip install Cython
The full documentation can be found at: rionbr.github.io/CANA
A.J. Gates, R.B. Correia, X. Wang, L.M. Rocha . "The effective graph reveals redundancy, canalization, and control pathways in biochemical regulation and signaling". Proceedings of the National Academy of Sciences (PNAS). 118(12). doi: 10.1073/pnas.20225981186
R.B. Correia, A.J. Gates, X. Wang, L.M. Rocha . "CANA: A python package for quantifying control and canalization in Boolean Networks". Frontiers in Physiology. 9: 1046. doi: 10.3389/fphys.2018.01046
A. Gates and L.M. Rocha.  "Control of complex networks requires both structure and dynamics." Scientific Reports 6, 24456. doi: 10.1038/srep24456.
A. Gates and L.M. Rocha . "Structure and dynamics affect the controllability of complex systems: a Preliminary Study". Artificial Life 14: Proceedings of the Fourteenth International Conference on the Synthesis and Simulation of Living Systems: 429-430, MIT Press.
M. Marques-Pita and L.M. Rocha . "Canalization and control in automata networks: body segmentation in Drosophila Melanogaster". PLoS ONE, 8(3): e55946. doi:10.1371/journal.pone.0055946.
CANA was originally written by Rion Brattig Correia and Alexander Gates, and has been developed
with the help of many others. Thanks to everyone who has improved
CANA by contributing code, bug reports (and fixes), documentation, and input on design, and features.
- Rion Brattig Correia, github: rionbr
- Alexander Gates, github: ajgates42
Optionally, add your desired name and include a few relevant links. The order is an attempt at historical ordering.
Those who have contributed to
CANA have received support throughout the years from a variety of sources. We list them below.
If you have provided support to
CANA and a support acknowledgment does not appear below, please help us remedy the situation, and similarly, please let us know if you'd like something modified or corrected.
CANA was developed with support from the following:
- CASCI, Indiana University, Bloomington, IN; PI: Luis M. Rocha
- CAPES Foundation, Ministry of Education of Brazil, Brasília, Brazil; Rion B. Correia.
Pull requests are welcome :) Please get in touch with one us beforehand:
- Parallelize control methods;
- Parallelize canalization methods;
- Generating ensembles of dynamics from structural motifs;
- Expand on easy-to-replicate tutorials;
Run nosetests -v to perform tests and diagnoses on functions.
- Canalization methods ported to Cython
- Pep8 and python3
- Pinned controllability methods
- Networkx 2.1 compatibility
- Inclusion of tutorials
- Derrida curve
- Control (FVS, MDS, CSTG) methods.
- Canalization methods.
- Implementation ported to public package.