Code for the paper.
Michael Jirasek, Abhishek Sharma, Mary Wong, Jennifer Munro, Leroy Cronin* School of Chemistry, University of Glasgow
This work uses Assembly Theory to quantify how directed vs. undirected an open-ended reaction network is, using the exploration ratio (ER) and ensemble assembly (A). Applied to peptide ensembles, non-specific activation (heat-driven wet–dry cycling, CDI coupling) gives high ER (broad, undirected exploration), while sequence-selective proteases (papain, bromelain, trypsin, chymotrypsin) impose measurably lower ER and higher A, consistent with their independently characterised substrate selectivity. This repository builds the Joint Assembly Space (JAS) from experimentally observed peptide sequences, computes ER and A, and produces the manuscript and Supporting Information figures.
HPLC-MS/MS raw data
│ (OLIGOSS: b/y fragment matching, ≥70% coverage threshold)
▼
annotated peptide sequences ──► labbook.csv (experiment metadata & sequences)
│
▼
AssemblyGo (external binary, github.com/croningp/assembly_go)
│ shortest construction pathway per sequence
▼
MolecularAssembly/ (per-sequence pathway cache, gitignored)
│
▼
helpers.data_extractors ──► JAS union, ER, ensemble assembly A, diversity
│
▼
helpers.plots / graph_visualizer ──► manuscript & ESI figures
- Python 3.12 with
networkx2.8.8,pandas,numpy,matplotlib,plotly,rdkit,tqdm,pyarrow - AssemblyGo binary, for computing shortest construction pathways
- Wolfram Mathematica 14 for the notebooks in
mathematica_notebooks/
- Place OLIGOSS-annotated sequence data and experiment metadata as referenced in
labbook.csv. - Point
AssemblyConfig/AllExperiments(inhelpers/data_extractors/pathway_helper.pyandall_experiments.py) at a local build of AssemblyGo and aMolecularAssembly/working directory. - Run
plots_static.ipynbto compute ER, ensemble assembly A, and diversity for each experiment group and reproduce Figures 5 and 6 and the corresponding ESI figures. - Use
visualise_JAS.ipynb/graph_visualizer.pyto draw individual JAS graphs (Figure 6), and the scripts incopy_number_sensitivity/for the bounded abundance-gradient sensitivity check.
- assembly_go — assembly-index/pathway calculation for experimentally observed sequences
- assemblycpp-v5 — assembly-pathway implementation used for the simulated sequence-space model
- molecular_complexity — companion study relating molecular assembly index to NMR/IR/MS spectroscopic complexity
Released under the MIT License.