Patrick AMAR1,2, Martin DAVY1, Franck Molina1

1 Synthetic & Systems Biology group, Sys2diag UMR 9005 CNRS / ALCEN
2 Bioinfo group, LISN, Univ. Paris Saclay, UMR 9015 CNRS

Download SKF
    Windows Version (September 3, 2024)
    Linux (x86_64) Version (September 3, 2024)
    Mac OS X (x86_64) Version (September 3, 2024)

Download data files
    Enzymatic reactions from BRENDA (June, 2022)
    Enzymes inhibitors from BRENDA (June, 2022)
    Unique metabolites identifiers from BRENDA (June, 2022)

Overview

SKF (SkillFinder) is a software tool that extracts from a set of enzymatic reactions, those that connect a given substrate to a given product. Kinetics constants and pH, can be specified to refine the search. The ability of metabolites to inhibit reactions can also be selected.

Finding all the paths, from input to output nodes in a directed graph, is known to be an exponential problem. To reduce the computing time, the search is carried out starting both from the input to intermediate metabolites, and backward from the output to intermediate metabolites. This way, the depths of searches are halved and the number of nodes to explore is exponentially reduced.

We used BRENDA (https://www.brenda-enzymes.org) for our benchmarks mainly because of the large number of reactions described, the presence of kinetics constants, pH and inhibitors.

It is used along with Silicell Maker to build the initial biochemical network needed to find enzymatic logic gates.

Quick SKF user manual

Synopsis

skf -r reaction-file -y synonym-file -s input_met -p output_met
   [-i inhibition-file]
   [-f] force undefined pH to 7
   [-ph min-max] pH range (default: no filter)
   [-k] ignore reactions without any kinetics
   [-K] ignore reactions where one Km or Kcat is missing
   [-e catalytic efficiency (mM^-1, default: 0)]
   [-o output-file] (default: stdout)
   [-u] use EC numbers for enzymes:
   [-n] do not ignore excess molecules: H2O, H+, 02, NH3, CO, H2, CO2
   [-d (-1, 0, 1, 2, 3, 4)] (defaults: 4): path length between 'input' and 'output'
      0: all reactions and inhibitions are output
      1: (without output) reactions where 'input' is a substrate
     -1: reactions where 'output' is a product

Examples

Example 1

Input: acetone
Output: resorufin

Find all the reactions involved in at least one path of length 4, that connects acetone to resorufin. The reactions and inhibitions are written in the .ssa format file A2R-out.ssa

skf -d 4
    -r brendaReaction.tsv.gz -i brendaInhibition.tsv.gz -y referenced.tsv.gz
    -s aceton -p resorufin
    -o A2R-out.ssa
44883 inhibitors
82880 reactions
193143 metabolites
6454 enzymes
Init. time: 1.10635 s

12454 reactions extracted
9856 inhibitors used
Search time: 0.986321 s

Example 2

Input: glucose
Output: H2O2

Find all the reactions involved in at least one path of length 2, that connects glucose to H2O2. The reactions are written in the .ssa format file G2OW-out.ssa

skf -d 2
    -r brendaReaction.tsv.gz -y referenced.tsv.gz
    -s glucose -p H2O2 -o G2OW-out.ssa
82880 reactions
108544 metabolites
6454 enzymes
Init. time: 0.881041 s

242 reactions extracted
0 inhibitors used
Search time: 0.006515 s

Example 3

Input: glucose
Output: H2O2

Same as before but only using reactions where full kinetics are provided.

skf -d 2 -K
    -r brendaReaction.tsv.gz -y referenced.tsv.gz
    -s glucose -p H2O2 -o G2OW-out.ssa
3911 reactions
108544 metabolites
6454 enzymes
Init. time: 0.684156 s

2 reactions extracted
0 inhibitors used
Search time: 0.000915 s