Language-oriented rule-based reaction network generation and analysis: Algorithms of RING

Srinivas Rangarajan, Ted Kaminski, Eric Van Wyk, Aditya Bhan, Prodromos Daoutidis

Research output: Contribution to journalArticlepeer-review

27 Scopus citations


The underlying algorithms of the language interface and post-generation analysis modules in RING, a network generation and analysis tool, are discussed. The front-end is a domain-specific reaction language developed with Silver, a meta-language based on attribute grammars. The language compiler translates user inputs written as a program into internal instructions, catches syntactic and semantic errors, and performs domain-specific optimization to speed up execution. In addition to generating reaction networks, RING allows post-processing analysis options to: (a) obtain reaction pathways and overall mechanisms from initial reactants to desired products using graph traversal algorithms, (b) group together isomers to reduce the size of the network through a novel molecule hashing technique, (c) calculate thermochemical quantities through semi-empirical methods such as group additivity, and (d) formulate and solve kinetic models of the entire or lumped complex network based on a rule-based kinetics specification scheme.

Original languageEnglish (US)
Pages (from-to)124-137
Number of pages14
JournalComputers and Chemical Engineering
StatePublished - May 7 2014

Bibliographical note

Funding Information:
Financial support from the National Science Foundation (CBET # 1307089 , IIS grant # 0905581 ) and from the University of Minnesota Digital Technology Center is gratefully acknowledged. The authors also acknowledge partial support from the Initiative for Renewable Energy (Large Grant: RL-0004-09 ), Digital Technology Center , and the doctoral dissertation fellowship at the University of Minnesota.


  • Automated reaction network generation
  • Domain-specific languages
  • Extensible languages
  • Isomer lumping
  • Kinetic modeling
  • Reaction network analysis


Dive into the research topics of 'Language-oriented rule-based reaction network generation and analysis: Algorithms of RING'. Together they form a unique fingerprint.

Cite this