Skip to main content

Analysis of Boolean gene networks

Project description

Boolean Gene

A Python package for analyzing Boolean gene networks.

What are Boolean gene networks?

Interactions between genes and their regulators (such as transcription factors or RNA-binding proteins) provide the machinery for cells to respond to environmental stimuli by adopting an appropriate transcriptional response. The set of interconnected gene-regulator interactions – known as a gene regulatory network (GRN) – can be modeled to predict the cellular response to a signal. However, GRNs arising in nature are highly complex systems with dozens to hundreds of genetic regulators and effectors, making their full characterization computationally intractable. To nonetheless study their behavior, GRNs can be modeled as Boolean networks: each gene is represented by a node whose on/off state is updated at every time step according to a Boolean function of the gene’s regulators. A straightforward example is Elowitz and Leibler’s repressilator (1), where three genes are connected by NOT gates in a unidirectional loop. This GRN is designed to oscillate, and the Boolean model captures this behavior. For instance, when loaded with an initial condition where only one gene is on, the “on” state rotates unidirectionally through the loop (Fig. 1).


Figure 1: Boolean model of the repressilator captures its oscillatory behavior. Genes are represented by nodes, and repressing interactions are represented by NOT gates.

What does this software do?

This package allows users to perform stability analysis and measure topological features (e.g., loops or clusters) of an input Boolean gene network. The input can be either a user-defined network or a pre-defined network from the CellCollective database (2). A strength of this package is its ability to generate randomized networks that nevertheless preserve the logical structure of the input network, including the in-degrees, out-degrees, and Boolean function of each gene. This feature is integrated into the stability analysis pipeline such that users can compare the input network to large numbers of random networks that are logically identical but topologically different from the input. This analysis allows for the characterization of topological modifiers of GRN stability, which can have applications in synthetic biology, systems biology, and biomedical drug discovery.

Installation

pip install booleangene

Usage

This package contains functions for running stability analysis, counting a network's loops, and measuring the clustering coefficient of each gene in a network (use booleangene -h to view all available functions). Each of these functions generates a user-defined number of randomized networks that preserve the Boolean functions of the original input network, allowing for comparison to a null model.

For instance, to run the stability analysis function:

booleangene run_stability_analysis -i "/path/to/input.txt" -o "/path/to/output/directory" 

where the input .txt file should define each gene's associated Boolean function using AND, OR, and NOT connectives. For example inputs, see the text files in the sample_inputs directory, which were downloaded from the Cell Collective database (2).

Citations

  1. Elowitz, M., Leibler, S. A synthetic oscillatory network of transcriptional regulators. Nature 403, 335–338 (2000).
  2. Helikar, T., Kowal, B., McClenathan, S. et al. The Cell Collective: Toward an open and collaborative approach to systems biology. BMC Syst Biol 6, 96 (2012).

Project details


Download files

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

Source Distribution

booleangene-0.0.3.tar.gz (20.8 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

booleangene-0.0.3-py3-none-any.whl (23.7 kB view details)

Uploaded Python 3

File details

Details for the file booleangene-0.0.3.tar.gz.

File metadata

  • Download URL: booleangene-0.0.3.tar.gz
  • Upload date:
  • Size: 20.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.13.7

File hashes

Hashes for booleangene-0.0.3.tar.gz
Algorithm Hash digest
SHA256 fe5da3559f2a78d7c4f7464779255093312bb00fadf77ce05647f1bcf351e028
MD5 d0e7d557bbd87f45e26d88fcf4ad2a17
BLAKE2b-256 65e6dc6f2781aab7d000ec106493d295e1c19829caf041155a6e927f653c2556

See more details on using hashes here.

File details

Details for the file booleangene-0.0.3-py3-none-any.whl.

File metadata

  • Download URL: booleangene-0.0.3-py3-none-any.whl
  • Upload date:
  • Size: 23.7 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.13.7

File hashes

Hashes for booleangene-0.0.3-py3-none-any.whl
Algorithm Hash digest
SHA256 5d098f2b8e0707826d25a00587a36eb95a26a4ad9fd33df0862f8f36191cb9ef
MD5 38d5cf23b9d9243aa63127d21707f78d
BLAKE2b-256 2bb0a7a14e06b860fe64d736e4fb39a370c57d5ae080ee6861a08ff89665324c

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page