# Transition states and entangled mass action law

A.N. Gorban<EMAIL_ADDRESS>https://orcid.org/0000-0001-6224-1430 Department
of Mathematics, University of Leicester, Leicester, LE1 7RH, UK  Lobachevsky
State University Nizhni Novgorod, Russia

###### Abstract

The classical approaches to the derivation of the (generalized) Mass Action
Law (MAL) assume that the intermediate transition state (i) has short life
time and (ii) is in partial equilibrium with the initial reagents of the
elementary reaction. The partial equilibrium assumption (ii) means that the
reverse decomposition of the intermediates is much faster than its transition
through other channels to the products. In this work we demonstrate how
avoiding this partial equilibrium assumption modifies the reaction rates. This
kinetic revision of transition state theory results in an effective
‘entanglement’ of reaction rates, which become linear combinations of
different MAL expressions.

###### keywords:

kinetic equation , mass action law , transition state , intermediate , non-
equilibrium

##  1 Introduction: Backgrounds of generalized mass action law

###  1.1  The basic assumptions

The Mass Action Law (MAL) for chemical kinetics was postulated by Guldberg and
Waage first for equilibrium (in 1864), and then for dynamics (in 1879).
Boltzmann used the analogue of the dynamical MAL (Stosszahlansatz) for
collision in gases in 1872 and obtained the gas kinetics equation (Boltzmann’s
equation). The physical background of MAL for complex chemical reactions was
clarified later, in particular in transition state or activated complex
theories published in 1935 (see review in [1]). From the kinetic point of
view, the assumptions that lead to MAL can be summarized as follows:

  1. 1.

A complex reaction is a combination of elementary reactions;

  2. 2.

Elementary reactions pass through intermediate states;

  3. 3.

Intermediate states have a short lifetime and are present in very small
concentrations compared to the main reagents;

  4. 4.

There is a ‘fast equilibrium’ between the input reagents and intermediate
states for each elementary reaction and these fast partial equilibria can be
described thermodynamically, by the conditional minimization of the free
energy.

Figure 1:  Schematic representation of the Michaelis–Menten–Stueckelberg (a),
and Briggs–Haldane (b) asymptotic assumptions: an elementary process
$\sum\alpha_{\rho i}A_{i}\to\sum\beta_{\rho i}A_{i}$ goes through intermediate
compounds $B_{\rho}^{\pm}$. The fast equilibria in the Michaelis–Menten case
(a), $\sum\alpha_{\rho i}A_{i}\rightleftharpoons B_{\rho}^{+}$ and
$\sum\beta_{\rho i}A_{i}\rightleftharpoons B_{\rho}^{-}$, can be described by
conditional minima of free energy. The concentrations of $B_{\rho}^{\pm}$ are
small and the transitions between them obey linear kinetic equation (Markov
chains).

The kinetic assumptions used in transition state theory were introduced much
earlier. In 1913, Michaelis and Menten demonstrated for an enzyme reaction
that under these assumptions the overall reaction follows MAL [2]. They used
the term ‘compounds’ for the active intermediates. In 1952, Stueckelberg [3]
used the same assumptions for the derivation of the Boltzmann equation from
the Markovian microkinetics and demonstrated how the semidetailed balance
conditions (called also the cyclic balance conditions [4] or the complex
balance conditions [6, 7]) arose for the cases when the classical
microreversibility conditions failed and the principle of detailed balance did
not work. The semidetailed balance was invented by Boltzmann [5] as an answer
to Lorentz critique of microreversibility. Boltzmann’s proof of sufficiency of
semidetailed balance for $H$-theorem was straightforward. The assumptions 1–4
are illustrated in Fig. 1a according to Michaelis–Menten and Stueckelberg
works.

The proof that the generalized MAL and semidetailed balance should hold for
macroscopic kinetics is not so obvious. Watanabe [4] found that the
Stueckelbeck work has “lack of proof” and declared direct connection between
this condition and ergodicity of microscopic models. Detailed analysis of this
asymptotic (Fig. 1a) was performed in 2011, the general
Michaelis–Menten–Stueckelberg (MMS) theorem was formulated and proved for
finite-dimensional systems [8], and extended further for general nonlinear
Markov processes [9]. The physical assumptions that lead to generalized MAL
with detailed or semidetailed (cyclic) balance were analyzed in [10].

Assumption 3 about the short lifetime of transition states underlies the
approach to the microscopic theory of reaction rates. This constitutes the
difference between the reagents and intermediates. Assumption 4 adds an
additional time separation: equilibration between the input reagents and the
intermediate states for every elementary reaction is much faster than other
transitions of the intermediates. This traditional hypothesis simplifies the
use of microscopic quantum or semiclassical calculations of transition state
dynamics in kinetics, but also attracts criticism. Recently, the ideas of a
quasi-stationary state and partial equilibrium in the theory of transition
states have been analyzed and compared ‘from scratch’ on a simple example
[11]. This analysis led to a quasi steady state expression for the rate
constant of an elementary reaction that differs only by a simple factor from
the value given by classical theory. The result was compatible with chemical
thermodynamics.

###  1.2  A popular ‘toy example’ of the single transition state paradox

It was clearly shown that the popular ‘demo version’ of combining the results
of the transition state theory with kinetics (one intermediate compound in
partial equilibrium with the reactants, and forward and reverse reactions go
through the same intermediate) contradicts chemical thermodynamics. Indeed,
consider an elementary reaction

$A+B\rightleftharpoons[A-B]\rightleftharpoons P+Q,$ (1)

where $[A-B]$ is the transition state (or better to say ‘activated complex’
because the term ‘transition state’ is often used for the dividing surface
that separates the input reagent side from the product side in the state
space). The partial equilibrium assumption requires equilibration of both
transitions, $A+B\rightleftharpoons[A-B]$ and $[A-B]\rightleftharpoons P+Q$.
There is no essential difference between them, since the reverse reaction
proceeds through the same transition state. Straightforward elementary algebra
demonstrates that this equilibration implies the equilibrium of the brutto-
reaction $A+B\rightleftharpoons P+Q$, which should be a thermodynamic
equilibrium between $A$, $B$ and $P$, $Q$ [11]: Due to equilibration
$A+B\rightleftharpoons[A-B]$, the concentration $[A-B]$ is a function of the
concentrations of $A$ and $B$, and by equilibration $[A-B]\rightleftharpoons
P+Q$, it is a function of the concentrations of $P$ and $Q$. Values of these
two functions coincide. That gives us the thermodynamic equilibrium condition.
Therefore, the partial equilibrium assumption for transitions (1) cannot be
used for kinetics if we respect thermodynamics. Let us call this contradiction
the single transition state paradox.

The general version of this paradox can be represented as follows. According
to the standard basic assumption 4, the transition state is in
quasiequailibrium with the reagents, and we can apply the transition state
theory and find the reaction rate. The separation of components into
‘reagents’ and ‘products’ for a reversible reaction is a matter of convention,
and the situation is symmetrical with respect to renaming of ‘reagents’ into
‘products’ and vice versa. Thus, we can assume quasiequilibrium between the
reagents and the products and find the reverse reaction rate. But if we assume
these two quasiequlibria together, then a simple calculation shows that this
is an equilibrium of the brutto-reaction and, in particular, the rates of the
direct and reverse reactions coincide.

This paradox can be resolved by the classical idea: the activated complex
should be represented by several macroscopic compounds. This approach is even
older than the transition state theory. Already in 1913, Michaelis and Menten
[2] considered two intermediates:

$A+B\rightleftharpoons[A-B]\rightleftharpoons[P-Q]\rightleftharpoons P+Q.$ (2)

Here we employ notations from [11] and use $[A-B]$ and $[P-Q]$ instead of
$B^{\pm}$ (see Fig. 1). According to the Michaelis and Menten assumption,
$[A-B]$ is in partial equilibrium with $A$ and $B$, whereas $[P-Q]$ is in
partial equilibrium with $P$ and $Q$, and the paradox of single intermediate
disappears. We can consider the pair $[A-B]\rightleftharpoons[P-Q]$ as a model
of the microscopic dynamics of an activated complex. It is quite natural that
a microscopic activated complex with a multidimensional space of internal
coordinates should be represented by several macroscopic states. Stueckelberg
[3] also used the two-intermediate representations of collisions for the
Boltzmann equation and assumed Markovian transitions between these
intermediates.

A two-intermediate model of the activated complex is illustrated in Fig. 2.
There are four ranges of reaction coordinate values. They correspond to $A+B$,
$[A-B]$, $[P-Q]$, and $P+Q$. In the MMS assumptions, transitions between $A+B$
and $[A-B]$ are regulated by the partial equilibrium approximation: The
concentration of $[A-B]$ follows the concentrations of $A$ and $B$, and the
reaction $A+B\rightleftharpoons[A-B]$ is always in equilibrium. The same is
true for the transitions $[P-Q]\rightleftharpoons P+Q$. The transition rate
$[A-B]\rightleftharpoons[P-Q]$ is to be estimated by the transition state
theory. It defines the flux between the total masses $A$, $B$, $[A-B]$ and
$P$, $Q$, $[P-Q]$. If we assume, in addition, that the intermediates are
present in small concentrations (that is, their life time is small), then the
transition rate $[A-B]\rightleftharpoons[P-Q]$ gives the brutto-reaction rate
$A+B\rightleftharpoons P+Q$.

Figure 2: Schematic illustration of a two-intermediate representation of the
activated complex. The intermediates $[A-B]$ and $[P-Q]$ are metastable states
in the energetic landscape (black solid line). The vertical solid line (red)
corresponds to the classical transition state and separates the input
equilibrated system $A+B\rightleftharpoons[A-B]$ from the output systems
$[P-Q]\rightleftharpoons P+Q$. The vertical long dashed lines (red) separate
$A+B$ from $[A-B]$ (left) and $[PQ]$ from $P+Q$ (right). The auxiliary
potential wells (dashed lines, blue) can be used for artificial stabilization
of the compounds for computations. There is also the possibility that the
energy landscape is strictly unimodal (dashed lines, blue). (Colors online.)

###  1.3  Several intermediates and Jump Markov model

In more general situations, the key steps remain the same: classically define
the surface dividing incoming reagents and outgoing products, and calculate
the velocity constant as a phase space flow through this surface. The
classical transition state theory takes into account the dynamics only near
the transition state, which, according to the standard definition, is the
dividing surface separating reactants and products. This assumption persists
in many generalized versions of the transitions state theory, in particular,
in variational transition state theory [13] and in stochastic transition state
theory [14]. Many amendments were made to the classical theory. Consideration
of quantum tunneling effects led to a deformed transition state theory and
modification of the Arrhenius reaction rate form [15]. It was found that the
definition of general dividing surfaces in the quantum theory of the
transition state is fundamentally non-unique [16].

One of the basic assumptions of transient state theory is that when the
trajectory crosses the dividing surface separating the input reactants from
the product, no further recrossing occur. But for the classical definition of
a dividing surface, this is not the case: the trajectories can enter the
product side of the space, and then return back to the side of the input
reagents. This recrossing leads to an effective ‘swelling’ of the dividing
surface. There are many attempts to improve computational approaches and
correct theoretical expressions for reaction rates taking into account the
possibility of recrossing [17].

A multidimensional activated complex requires a more detailed partitioning of
the state space to create an adequate kinetic Markov model (Master equation)
of the reaction. This partitioning may be based on local energy minima and
corresponding metastable states [18]. Another idea is to evaluate the
residence time in subdomains and define the partitioning based on this time.
That is, in addition to metastable states, we can consider long-term transient
regimes [19, 20, 21] as elements of the state space of Markov kinetics. This
sort of metastability may be related not to the energetic barriers but to the
entropic barriers. According to [18], the entropic barriers appear when the
process takes a long time to leave the subdomain $S$ because ‘the exit doors
from $S$ are very narrow’. In chemistry, entropic barriers may be related to
steric constraints. In general, metastability of a state is is defined by the
ratio of the expected exit time to the expected local equilibration time. If
this ratio is much greater than one, then the subdomain can be considered as a
metastable state.

In this ‘Jump Markov’ model approach, instead of the MMS two-intermediate
representation shown in Fig. 1, a more general network of intermediates and
first order transitions between them appears. However, the applications of
this approach to the derivation of macroscopic kinetic equations is not yet
freed from the assumption of partial equilibrium between reactants and
intermediates. The quasi steady state approach sketched in [11] followed the
Briggs-Haldane approximation [12] based on the assumption of small amounts of
intermediate (or, specifically, small enzyme concentrations). This is fine but
the Briggs-Haldane approximation uses the dynamic form of MAL for
$A+B\rightleftharpoons[A-B]$, for both direct and reverse elementary
reactions. The linear kinetics of the reverse reaction $A+B\leftarrow[A-B]$
follows from the smallness of the concentration $[A-B]$, while the bilinear
reaction rate of the direct reaction $A+B\to[A-B]$ is an additional
assumption. Starting with [2], the assumption of a fast equilibrium (between
input reagents and intermediate products) is used to obtain the dynamic MAL or
its generalizations. If we weaken this assumption, we will need a universal
approximation close to partial equilibrium. Linearization near partial
equilibrium seems to be a suitable and fairly universal choice. Utilization of
the Briggs-Haldane quasi steady state approximation produces the transmission
coefficient that modifies the transition theory reaction rate (see [11]). Our
results give the generalized matrix transmission coefficient that we call the
entanglement matrix (see Eqs. (20), (21), and (22 below).

In this paper we do not try to modify the transition state theory. In the
following, the microscopic theory is just a ‘black box’ that provides us with
the Markov kinetics of intermediates. For us, the main question is: how to
correctly incorporate this black box in the basic schemes of thermodynamics
and kinetics. We demonstrate the possible development of the reaction rate
theory without assumption 4. No super-fast equilibration is assumed and all
transitions of intermediates can have a comparable characteristic time.
Already in the first approximation, the reaction rate theory based on
assumptions 1-3 produces the ‘entangled’ MAL: the reaction rates for
elementary reactions become combinations of the MAL rates of various
elementary reactions.

##  2 The basic formalism

We use the following widely used notations borrowed from chemical kinetics [8,
22]. The list of the components (reagents) $A_{i}$ is given. The mechanism of
reaction is the list of the elementary reactions. Each reaction is represented
by the stoichiometric equation:

$\sum_{i}\alpha_{\rho i}A_{i}\to\sum_{i}\beta_{\rho i}A_{i}\,,$ (3)

where $\rho$ is the number of the elementary reaction qand the stiochiomentric
coefficients $\alpha_{\rho i}$, $\beta_{\rho i}$ are non-negative numbers;
$\alpha_{\rho}$, $\beta_{\rho}$ are vectors wit components $\alpha_{\rho i}$,
$\beta_{\rho i}$, correspondingly. The concentration of the component $A_{i}$
is $c_{i}$, the vector of concentrations is $c$. The kinetic equations for (3)
under isochoric isothermal conditions are (with obvious modifications for
other conditions [8]):

$\frac{dc}{dt}=\sum_{\rho}(\beta_{\rho}-\alpha_{\rho})r_{\rho},$ (4)

where $r_{\rho}\geq 0$ is the reaction rate. The linear combinations
$\sum_{i}\alpha_{\rho i}A_{i}$ and $\sum_{i}\beta_{\rho i}A_{i}$ are the
complexes. Each complex can participate in various reactions. The list of
coefficient vectors for complexes is $\\{\nu_{j}\\}$. For each complex
$\sum_{i}\nu_{ji}A_{i}$ from the reaction mechanism we introduce an
intermediate state, a compound (in Michaelis–Menten terminology) $B_{j}$. Each
elementary reaction is represented in the form of the “$2n$-tail scheme” with
two intermediate compounds:

$\sum_{i}\alpha_{\rho i}A_{i}\rightleftharpoons B_{\rho}^{+}\to
B_{\rho}^{-}\rightleftharpoons\sum_{i}\beta_{\rho i}A_{i}\,,$ (5)

where the compound $B_{\rho}^{+}$ corresponds to the input complex
$\sum_{i}\alpha_{\rho i}A_{i}$ of (3), and $B_{\rho}^{-}$ corresponds to the
output complex $\sum_{i}\beta_{\rho i}A_{i}$. The concentration of the
compound $B_{j}$ is $\varsigma_{j}$, the vector of these concentrations is
$\varsigma$. Thermodynamical properties of the mixture is described by the
free energy density (under the condition of small concentrations of compounds,
$\sum_{i}c_{i}\gg\sum_{j}\varsigma_{j}$, the free energy of the small
admixture has the perfect form):

$f(c,\varsigma,T)=f_{A}(c,T)+RT\sum_{j=1}^{q}\varsigma_{j}\left(\ln\left(\frac{\varsigma_{j}}{\varsigma_{j}^{*}(c,T)}\right)-1\right)\
$ (6)

We assume that the standard equilibrium concentrations $\varsigma_{j}^{*}$ are
much smaller than the concentrations of $A_{i}$,
$\sum_{i}c_{i}\gg\sum_{j}\varsigma_{j}^{*}$. The “fast equilibrium” reagents-
compounds for a complex $\sum_{i}\nu_{ji}A_{i}$ is described by the
conditional minimisation of $f(c,\varsigma,T)$ along the straight line
$c=c^{\rm in}-\xi\nu_{j}$, $\varsigma_{j}=\varsigma_{j}^{\rm in}+\xi\nu_{j}$,
where superscript ‘in’ is used for the initial point for minimisation, and
$\xi$ is the coordinate along the line.

For the kinetics of compounds transformations, the smallness of concentrations
of compounds leads to the linear (Markov) kinetics, where the rate constant
$\kappa_{lj}$ of transitions $B_{j}\to B_{l}$ (or $\kappa_{l\leftarrow j}$ if
we need to stress the direction of transition) can depend on concentrations
$c$ and temperature $T$.

According to the basic MMS asymptotics, there are two small parameters,
$\delta$ that evaluates the relative deviation of $\varsigma$ from their
conditional equilibrium approximation, and $\varepsilon$ that evaluates the
relative smallness of $\varsigma$ comparing to $c$ [8]. The compound rate
constants should be rescaled when $\varepsilon\to 0$ as
$\frac{1}{\varepsilon}\kappa_{lj}$. In the asymptotic $\delta,\varepsilon\to
0$, $\delta,\varepsilon>0$ kinetics of $A_{i}$ may be described by the
reaction mechanism (3) with the reaction rates

$r_{\rho}=\varphi_{\rho}\exp\left(\frac{\sum_{i}\alpha_{\rho
i}{\mu}_{i}}{RT}\right)$ (7)

where where $\mu_{i}=\frac{\partial f(c,T)}{\partial c_{i}}$ is the chemical
potential of $A_{i}$ and the kinetic factors $\varphi_{\rho}$ satisfy the
condition:

$\sum_{\rho,\,\alpha_{\rho}=y}\varphi_{\rho}\equiv\sum_{\rho,\,\beta_{\rho}=y}\varphi_{\rho}$
(8)

for any vector $y$ from the set of all vectors
$\\{\alpha_{\rho},\beta_{\rho}\\}$. This statement includes the generalized
mass action law for $r_{\rho}$ (7) and the semidetailed balance identity (8)
for kinetic factors that is sufficient for the entropy growth. If the Markov
chain of compound kinetics is reversible (i.e. satisfies the principle of
detailed balance), then for the generalized MAL the priciple of detailed
balance holds in the form:

$\varphi_{\rho}^{+}\equiv\varphi_{\rho}^{-}.$ (9)

In terminology of nonequilibrium thermodynamics (see, for example, chapter 4
in [23]) we can refer to kinetic equations (4) as a local conservation law;
the stoichiometric matrix plays the role of the gradient in the classical
local conservation laws and (7) is a (generalized) MAL constitutive relation.
Nevertheless, despite possible generalizations, we do not use such a general
terminology and corresponding notations and remain at the level of chemical
kinetics [22].

The form of generalized MAL may need additional comments. The Bolzmann factor
(the exponential of linear combinations of chemical potentials) is the product
of so-called activities:

$\exp\left(\frac{\sum_{i}\alpha_{\rho i}{\mu}_{i}}{RT}\right)=\prod
a_{i}^{\alpha_{\rho i}},$

where $a_{i}$ are activities:

$a_{i}=\exp\left(\frac{{\mu}_{i}}{RT}\right).$

For perfect systems, for example, $\mu_{i}=\ln(c_{i}/c_{i}^{*})$, where
$c_{i}^{*}$ are concentrations in standard equilibrium, and
$a_{i}=c_{i}/c_{i}^{*}$. in this (most common) case, the Boltzmann factor in
generalized MAL formula (7) turns into classical MAL form, the product of
concentrations.

Nevertheless, the kinetic factor $\varphi_{\rho}\geq 0$ can violate the widely
spread intuition that the MAL reaction rate is the power law with a
multiplier. power law is a function of the concentrations or the activities of
the reactants, and the multiplier is a constant independent on the
concentrations or the activities of any reactant. In (7), the kinetic factors
$\varphi_{\rho}$ may depend on concentrations. The conditions on these factors
are either detailed balance (9) for systems with microrevesibility, or more
general complex balance (8) for systems with possible violations of
microreversibility. Appearance of such general factors is a well-known in
kinetics of generalized MAL (see, for example, Marselin–de Donder kinetics and
is generalizations [24, 25]).

A simple physical example can add clarity. In gas reactions, some collisions
need a ‘third particle’ (or ‘third body’) that does not change in reaction but
is needed for energy or momentum balance. Usual notation for this third
particle is M. For example, the following reactions exist in the standard
mechanism of hydrogen burning [26]: ${\rm H}_{2}+{\rm M}\rightleftharpoons
2{\rm H}+{\rm M}$, ${\rm H}+{\rm OH}+{\rm M}\rightleftharpoons{\rm H}_{2}{\rm
O}+{\rm M}$, or ${\rm H}+{\rm O}_{2}+{\rm M}\rightleftharpoons{\rm
HO}_{2}+{\rm M}$.

For different third particles the reaction rates may differ, therefore each
such stoichiometric equation denotes a set of reactions with different M.
Nevertheless, for the reaction rate of such a multiplied reaction the
generalized MAL holds. Formally, it relates the generalized reaction without
M: the Boltzmann factor corresponds to the MAL calculated for components
without M, and the kinetic factor depends on concentrations of all M’s. In the
simplest case, for perfect gases $\varphi_{\rho}$ are linear functions of
concentrations of third particles with positive coefficients. Thus, we can say
that dependence of kinetic factors on the concentrations in this example
describes the impact of the environment on the reaction rate.

For reactions in condensed matter or on surfaces, the impact of the
environment on the reaction rate may be more sophisticated. It does not effect
the thermodynamic equilibrium governed by the thermodynamic potentials, but
modifies the kinetic factors.

Dependence of $\varphi_{\rho}$ on concentrations in kinetic equations can have
even simpler reasons. For example, if we consider a reaction in an isolated
system, then the temperature can be expressed as a function of concentrations
and (constant) internal energy. In such a situation, $\varphi_{\rho}$ in
kinetic equations are functions of concentrations even if initially they
depended on temperature only [25].

##  3 The problem of fast non-equilibrium intermediates

The well founded combination of the generalized MAL with the complex or
detailed balance conditions follows from the asymptotic assumptions presented
in Fig. 1a. These assumptions seem quite realistic, except for one weak point.
Fast equilibrium

$\sum_{i}\nu_{ji}A_{i}\rightleftharpoons B_{j}$ (10)

assumes that the inverse reaction there is much faster than the transitions
between compounds and the lifetime of $B_{j}$ is determined by its
decomposition into $\sum_{i}\nu_{ji}A_{i}$ (Fig. 3). In enzyme kinetics, such
an assumption was abolished by Briggs and Haldane in 1925 [12]. They found the
reaction rate for simple enzyme reaction on the basis of a single assumption:
small concentrations of intermediates. Ironically, the Briggs–Hadane (BH)
formula was called the Michaelis–Menten equation. Detailed analysis of the BH
asymptotics was performed in [27]. In the generalized MAL, this analysis is
still the open problem.

The MMS approach to exclusion of intermediates is very attractive because it
needs no assumption about the rates of the non-linear reactions
$\sum_{i}\nu_{ji}A_{i}\to B_{j}$. These non-linear rates are excluded by the
fast equilibrium condition and the resulting generalized MAL formulas are
based on thermodynamics. The BH approach used the complete kinetic equations
as a starting point and serves for the further simplification of existent MAL
equations. But what can we do if the non-linear kinetic law is unknown and
there is no fast equilibria between input reagents and intermediate (i.e. the
assumption 4 can be wrong)? This is the problem.

Figure 3: A complex reaction can be decomposed in the groups of transitions
associated with compounds $B_{j}$: $B_{j}$ is born and dies in a reaction (10)
and can be transformed into several other compounds $B_{i_{k}}$. In the MMS
asymptotics, the reverse reaction from (10) is much faster than the
transitions $B_{j}\to B_{i_{k}}$. In our work, we avoid this assumption. (The
reverse transitions $B_{i_{k}}\to B_{j}$ are also possible but are included in
the schemes associated with $B_{i_{k}}$.)

##  4 Linearisation near partial equilibria

The first step can be very natural. Let us linearise the kinetic equation for
the elementary reaction $\sum_{i}\nu_{ji}A_{i}\rightleftharpoons B_{j}$ near
its equilibrium. Because the motion in this reaction is one-dimensional, the
linearised equations will have the form of the relaxation time approximation
for all non-linear kinetic laws. Therefore, this type of approximation near
equilibrium has the same absolute validity as non-equilibrium thermodynamics.

If the concentration $\varsigma_{j}$ and $\varsigma^{*}_{j}$ are small and we
neglect in the minimization the second order quantities
$\varsigma_{j}\partial\varsigma_{j}^{*}(c,T)/\partial c_{i}$ then the partial
equilibrium concentrations of $B_{i}$ has a simple form

$\boxed{\varsigma_{j}^{\rm
peq}(c,T)=\varsigma^{*}_{j}(c,T)\exp\left(\frac{\sum_{i}\nu_{ji}\mu_{i}(c,T)}{RT}\right),}$
(11)

where superscript ‘peq’ means partial equilibrium. The linearized reaction
rate for (10) is

$w_{j}(c,T)=\frac{1}{\tau_{j}}(\varsigma_{j}^{\rm peq}(c,T)-\varsigma_{j}).$
(12)

$\begin{split}\frac{dc_{i}}{dt}&=-\sum_{j}\nu_{ji}w_{j},\\\
\frac{d\varsigma_{j}}{dt}&=w_{j}+\sum_{l,\,l\neq
j}(\kappa_{jl}\varsigma_{l}-\kappa_{lj}\varsigma_{j}).\end{split}$ (13)

The $H$-theorem for these equations (13) follows from the general results
[28]: If (i) the density of reagents’ free energy $f_{A}(c,T)$ (see (6)) is a
convex function of $c$, (ii) the partial equilibria in (12) are defined by
conditional minimization of $f(c,\varsigma,T)$ (6), and (iii) the standard
equilibrium $\varsigma^{*}$ is an equilibrium point of the Markovian kinetics
of compounds, then the free energy density $f(c,\varsigma,T)$ does not
increase in time on solutions of (13).

##  5 Small parameter and quasi steady state asymptotics

Let us introduce explicitly a formal small parameter $\varepsilon$ in (11),
(12), and (13):

$\varsigma_{j}^{\rm
peq}=\varepsilon\varsigma^{*}_{j}\exp\left(\frac{\sum_{i}\nu_{ji}\mu_{i}}{RT}\right);$
(14)

$w_{j}=\frac{1}{\varepsilon\tau_{j}}\left(\varsigma_{j}^{\rm
peq}-\varsigma_{j}\right).$ (15)

$\begin{split}\frac{dc_{i}}{dt}=&-\sum_{j}\nu_{ji}\frac{1}{\varepsilon\tau_{j}}\left(\varsigma_{j}^{\rm
peq}-\varsigma_{j}\right),\\\
\frac{d\varsigma_{j}}{dt}=&\frac{1}{\varepsilon\tau_{j}}\left(\varsigma_{j}^{\rm
peq}-\varsigma_{j}\right)+\frac{1}{\varepsilon}\sum_{l,\,l\neq
j}(\kappa_{jl}\varsigma_{l}-\kappa_{lj}\varsigma_{j}).\end{split}$ (16)

For explicit separation of slow and fast variables a simple linear
transformation of concentrations $c_{i}$ is needed [8]. This transformation
excludes reaction rates $w_{j}$ from the slow equations. The new variables are
$b_{i}=c_{i}+\sum_{j}\nu_{ji}\varsigma_{j}$. For them, the equations (13) have
the form

$\begin{split}\frac{db_{i}}{dt}&=\sum_{jl,\,j\neq
l}(\kappa_{jl}\varsigma_{l}-\kappa_{lj}\varsigma_{j})\nu_{ji},\\\
\frac{d\varsigma_{j}}{dt}&=w_{j}+\sum_{l,\,l\neq
j}(\kappa_{jl}\varsigma_{l}-\kappa_{lj}\varsigma_{j}).\end{split}$ (17)

With explicit small parameters these equations are

$\begin{split}\frac{db_{i}}{dt}=&\frac{1}{\varepsilon}\sum_{jl,\,j\neq
l}(\kappa_{jl}\varsigma_{l}-\kappa_{lj}\varsigma_{j})\nu_{ji},\\\
\frac{d\varsigma_{j}}{dt}=&\frac{1}{\varepsilon\tau_{j}}\left(\varsigma^{\rm
peq}_{j}-\varsigma_{j}\right)+\frac{1}{\varepsilon}\sum_{l,\,l\neq
j}(\kappa_{jl}\varsigma_{l}-\kappa_{lj}\varsigma_{j}).\end{split}$ (18)

Here, the relaxation times for the equilibration reactions are
$\varepsilon\tau_{j}$ and $\tau_{j}$ do not depend on $\varepsilon$.

It is important to stress that the linearization of the equations for
compounds in (17), (18) is performed near zero concentration. Any physical
kinetics of transitions between compounds should satisfy two conditions: (i)
preservation of material balance and (ii) preservation of positivity of
concentrations. Therefore, linearization at zero satisfies the same
conditions. Indeed, if a solution of linearized equation with positive initial
state violates one of these conditions, then the solution of the original
nonlinear equations with the same initial state also violates the same
condition, may be, after rescaling of the initial state by multiplying by a
sufficiently small parameter. If linearization violates positivity or balance
then higher order terms cannot correct it near zero. A linear system that
preserves positivity and balance is a Markov chain (first order kinetics).

Let $K$ be a matrix of kinetic coefficients for transitions between compounds:
$K_{jl}=\kappa_{jl}$ for $j\neq l$ and $K_{jj}=-\sum_{i}\kappa_{ji}$. This
matrix has non-negative non-diagonal elements, non-positive diagonal and the
sum of the elements in columns is zero. Therefore, according to Gershgorin’s
circle theorem, all the eigenvalues have non-positive real parts. Let ${\rm
diag}[d_{i}]$ be the diagonal matrix with diagonal elements $d_{i}$. The
matrix $K-{\rm diag}[{1}/{\tau_{i}}]$ has non-negative non-diagonal elements,
non-positive diagonal and the sum of the elements in each column is strictly
negative. Therefore, the eigenvalues of this matrix have negative real parts
(Gershgorin’s theorem). In the vector form, the second equation in (18) is

$\frac{d\varsigma}{dt}=\frac{1}{\varepsilon}{\rm
diag}\left[\frac{1}{\tau_{i}}\right]\varsigma^{\rm
peq}-\frac{1}{\varepsilon}\left({\rm
diag}\left[\frac{1}{\tau_{i}}\right]-K\right)\varsigma$

For given $\mu_{i}$, $T$, the subsystem for concentration of compounds quickly
converges to the quasi steady state (qss). (For detailed description of qss
and pss approximations, their similarities and differences we refer to review
[29].)

$\varsigma^{\rm qss}(\mu,T)=\left({\rm
diag}\left[\frac{1}{\tau_{i}}\right]-K\right)^{-1}{\rm
diag}\left[\frac{1}{\tau_{i}}\right]\varsigma^{\rm peq}(\mu,T)$

that is $\varepsilon$-small because $\varsigma^{\rm eq}$ (14) is
$\varepsilon$-small. Let us notice a simplification:

$\left({\rm diag}\left[\frac{1}{\tau_{i}}\right]-K\right)^{-1}{\rm
diag}\left[\frac{1}{\tau_{i}}\right]=\left(1-{\rm
diag}[\tau_{i}]K\right)^{-1}.$ (19)

If $\varsigma$ is $\varepsilon$-close to $\varsigma^{\rm qss}(\mu,T)$ then it
is $\varepsilon$-small and the right-hand side of equations for $b_{i}$ in
(18) is not fast (in this case, it has zero or even higher order in
$\varepsilon$). Thus, the Tikhonov theorem can be applied and the qss
approximation is valid for small $\varepsilon$. We can take into account that
the difference $b_{i}-c_{i}$ is $\varepsilon$-small and write the resulting
kinetic equation that are asymptotically valid for $\varepsilon\to 0$:

$\begin{split}&\frac{dc_{i}}{dt}=\frac{1}{\varepsilon}\sum_{jl,\,j\neq
l}\left(\kappa_{jl}\varsigma^{\rm qss}_{l}(\mu,T)-\kappa_{lj}\varsigma^{\rm
qss}_{j}(\mu,T)\right)\nu_{ji};\\\ &\varsigma^{\rm qss}(\mu,T)=\left(1-{\rm
diag}[\tau_{i}]K\right)^{-1}\varsigma^{\rm peq}(\mu,T).\end{split}$ (20)

Equations for $c$ can be modified by changing the indexes in double summation:

$\boxed{\begin{split}&\frac{dc_{i}}{dt}=\frac{1}{\varepsilon}\sum_{jl,\,j\neq
l}\kappa_{jl}\varsigma^{\rm qss}_{l}(\mu,T)(\nu_{ji}-\nu_{li});\\\
&\varsigma^{\rm qss}(\mu,T)=\left(1-{\rm
diag}[\tau_{i}]K\right)^{-1}\varsigma^{\rm peq}(\mu,T).\end{split}}$ (21)

Each term in the right hand side of equations for $c$ in (21) can be
represented in the standard form of the sums over reactions. For each pair
$j,l$ consider elementary reaction (3) with $\alpha_{\rho i}=\nu_{li}$ and
$\beta_{\rho i}=\nu_{ji}$. Then, according to (21), equation for $c$ is
chemical kinetic equation with reaction rates

$r_{\rho}=\frac{1}{\varepsilon}\kappa_{jl}\varsigma^{\rm qss}_{l}(\mu,T).$
(22)

The qss concentrations of compounds are linear combinations of the peq
concentrations. Therefore, the reaction rate for each reaction (22) is
combined from the same terms as the generalized MAL reaction rates. The matrix
of coefficients of these combinations is

$E=\left(1-{\rm diag}[\tau_{i}]K\right)^{-1}.$

Let us call it the entanglement matrix.

##  6 The MMS limit and the classical generalized MAL

To obtain the MMS asymptotic formulas, we may assume that $\tau_{i}$ are also
small. That is, there exists an additional small parameter $\delta>0$ and the
relaxation times for the equilibration
$\sum_{i}\nu_{ji}A_{i}\rightleftharpoons B_{j}$ is
$\delta\varepsilon\tau_{j}$.

The MMS asymptotics with $\delta\to 0$ gives the generalized MAL reaction
rates in the assumption of partial equilibria between compounds $B_{j}$ and
the corresponding complexes $\sum_{i}\nu_{ji}A_{i}$:

$\begin{split}r_{\rho}^{\rm
peq}=&\frac{1}{\varepsilon}\kappa_{jl}\varsigma^{\rm peq}_{l}(\mu,T)=\\\
&\frac{1}{\varepsilon}\kappa_{jl}\varsigma^{*}_{l}(c,T)\exp\left(\frac{\sum_{i}\nu_{ji}\mu_{i}(c,T)}{RT}\right).\end{split}$
(23)

If we use the notation
$\varphi_{\rho}=\frac{1}{\varepsilon}\kappa_{jl}\varsigma^{*}_{j}(c,T)$ then
we obtain the standard generalized MAL factorization of reaction rate onto
kinetic and thermodynamic factors (7). The semidetailed balance condition (8)
is a straightforward consequence of the assumption that the standard
thermodynamic equilibrium $\varsigma^{*}$ is also the equilibrium of the
Markov kinetics of compounds: for all $j$

$\sum_{l}(\kappa_{jl}\varsigma_{l}^{*}-\kappa_{lj}\varsigma_{j}^{*})=0.$ (24)

This balance condition means that the microscopic parameters $\kappa_{jl}$ and
$\varsigma^{*}$ are not independent and the constraints (24) are nonlinear
(bilinear). Happily, in the macroscopic expressions for generalized MAL, like
(23), these parameters participate together, in a product
$\xi_{jl}=\kappa_{jl}\varsigma^{*}_{l}$. Parameters $\xi_{jl}$ ($\xi_{jl}\geq
0$, $j\neq l$) have much simpler linear a priory constraints: for all $j$

$\sum_{l}(\xi_{jl}-\xi_{lj})=0.$ (25)

For the generalized MAL, the values of $\xi_{jl}$ can be extracted from the
macroscopic reaction rates $r_{\rho}$ (23) and the thermodynamic data about
reagents $A_{i}$.

It is impossible to extract the all the microscopic data about $\kappa_{jl}$
and $\varsigma$ from the observation of the macroscopic reaction rates
$r_{\rho}$. Nevertheless, the ratio of some microscopic constants can be
found. If two elementary reactions have the same input complex with the
coefficients $\nu_{li}$ and the output complexes have the coefficients
$\nu_{ji}$ and $n_{qi}$ the ratio of the corresponding reaction rates
coincides with the ratio of the compounds reaction rate constants
$\kappa_{jl}/\kappa_{ql}$. According to (22) and (23), this is true both for
the peq and qss reaction rates.

##  7 A simple example of entangled MAL

The structure of the entanglement matrix is closely connected to the
representation of the macroscopic reaction mechanism as transformation of
complexes. Let us introduce this formalism [6] with the corresponding
notations. Each formal sum in the elementary reactions (3) is called a
complex: $\Theta_{l}=\sum_{i}\nu_{li}A_{i}$. The same complex can participate
in several reactions. A complex reaction can be represented as a oriented
graph of transition between complexes.

Let us consider a simple example following [8, 26]: 18 elementary reactions (9
pairs of mutually reverse reactions) from the hydrogen combustion mechanism.

$\begin{array}[]{ll}{\rm H+O_{2}\rightleftharpoons O+OH;}&{\rm
O+H_{2}\rightleftharpoons H+OH;}\\\ {\rm OH+H_{2}\rightleftharpoons
H+H_{2}O;}&{\rm O+H_{2}O\rightleftharpoons 2OH;}\\\ {\rm
HO_{2}+H\rightleftharpoons H_{2}+O_{2};}&{\rm HO_{2}+H\rightleftharpoons
2OH;}\\\ {\rm H+OH+M\rightleftharpoons H_{2}O+M;}&{\rm
H+O_{2}+M\rightleftharpoons HO_{2}+M;}\\\ {\rm H_{2}O_{2}+H\rightleftharpoons
H_{2}+HO_{2}}&\end{array}$

There are 16 different complexes here:

$\displaystyle{\rm\Theta_{1}=H+O_{2},\,\Theta_{2}=O+OH,}$
$\displaystyle{\rm\Theta_{3}=O+H_{2},\,\Theta_{4}=H+OH,}$
$\displaystyle{\rm\Theta_{5}=OH+H_{2},\,\Theta_{6}=H+H_{2}O,}$
$\displaystyle{\rm\Theta_{7}=O+H_{2}O,\,\Theta_{8}=2OH,}$
$\displaystyle{\rm\Theta_{9}=HO_{2}+H,\,\Theta_{10}=H_{2}+O_{2},}$
$\displaystyle{\rm\Theta_{11}=H+OH+M,\,\Theta_{12}=H_{2}O+M,}$
$\displaystyle{\rm\Theta_{13}=H+O_{2}+M,\,\Theta_{14}=HO_{2}+M,}$
$\displaystyle{\rm\Theta_{15}=H_{2}O_{2}+H,\,\Theta_{16}=H_{2}+HO_{2}}.$

The reaction mechanism can be represented as

$\displaystyle\Theta_{1}\rightleftharpoons\Theta_{2},\,\Theta_{3}\rightleftharpoons\Theta_{4},\,\Theta_{5}\rightleftharpoons\Theta_{6},$
$\displaystyle\Theta_{7}\rightleftharpoons\Theta_{8}\rightleftharpoons\Theta_{9}\leftrightharpoons\Theta_{10},$
$\displaystyle\Theta_{11}\rightleftharpoons\Theta_{12},\,\Theta_{13}\rightleftharpoons\Theta_{14},\,\Theta_{15}\rightleftharpoons\Theta_{16}\,$

This graph of transformation of complexes has a very simple structure: There
are five isolated pairs of complexes and one connected group of four
complexes.

Let us rewrite the basic formulas in these notations. For each reaction
$\Theta_{l}\to\Theta_{j}$ consider the generalized MAL reaction rate (7)

$r_{jl}=\varphi_{jl}\exp\left(\frac{\sum_{i}\nu_{ji}\mu_{i}(c,T)}{RT}\right).$
(26)

(The standard order of indexes is used, $r_{j\leftarrow l}$.) For the perfect
systems the free energy density is

$f(c,T)=RT\sum_{i}c_{i}\left(\ln\left(\frac{c_{i}}{c_{i}^{*}}\right)-1\right),$

where $c_{i}^{*}$ is a standard equilibrium (an equilibrium point for a priori
selected values of linear balances).

The Bolltzmann factor for the perfect system is:

$\exp\left(\frac{\sum_{i}\nu_{ji}\mu_{i}(c,T)}{RT}\right)=\prod_{i}\left(\frac{c_{i}}{c_{i}^{*}}\right)^{\nu_{ji}}$

under the standard assumption that $c^{\alpha}=1$ if $\alpha=0$ and $c\geq 0$.
Then the generalized MAL turns into the classical MAL

$r_{jl}=\varphi_{jl}\prod_{i}\left(\frac{c_{i}}{c_{i}^{*}}\right)^{\nu_{ji}}$

Under assumption (8): for all $j$

$\sum_{j}\varphi_{jl}\equiv\sum_{l}\varphi_{lj},$

or, with the systems with microreversibility (the most common case in physics
and chemistry [10]): for pairs all $j,l$ ($j\neq l$)

$\varphi_{jl}\equiv\varphi_{lj}.$

The non-negative quantities $\varphi_{jl}$ are not compulsory constant. Their
detailed dependence on the concentrations, temperature, or other conditions is
beyond the scope of this work.

For the entanglement example, we select a system with five components
$A_{1-5}$, three complexes, $\Theta_{1}=A_{1}+A_{2}$, $\Theta_{2}=2A_{3}$,
$\Theta_{3}=A_{4}+A_{5}$, and two reversible reactions:

$\Theta_{1}\rightleftharpoons\Theta_{2}\rightleftharpoons\Theta_{3}.$

We can find such fragments in many complex reactions, for example, in the
hydrogen combustion mechanism mentioned above.

According to the transient state modeling (Figs. 1, 3), there is one compound
for each complex, $B_{i}$ ($i=1,2,3$). The complete scheme of reactions with
compounds consists of five reversible reactions: $\Theta_{i}\rightleftharpoons
B_{i}$ ($i=1,2,3$) and $B_{1}\rightleftharpoons B_{2}\rightleftharpoons
B_{3}$.

For kinetic model we need the following data: five standard equilibrium
concentrations for reagents, $c_{1-5}^{*}$, three standard equilibrium
concentrations for compounds, $\varsigma_{i}^{*}$, four reaction rate
constants for transitions between compounds, $\kappa_{21}$, $\kappa_{12}$,
$\kappa_{32}$, and $\kappa_{23}$, and three relaxation times for the
equilibraton between the complexes and compounds, $\tau_{1-3}$ (12). These
data are not independent and the balance conditions should hold (24). We
assume even stronger physical conditions, detailed balance:

$\kappa_{21}\varsigma_{1}^{*}=\kappa_{12}\varsigma_{2}^{*}(=w^{*}_{1})\;\mbox{
and }\;\kappa_{32}\varsigma_{2}^{*}=\kappa_{23}\varsigma_{3}^{*}(=w^{*}_{2}),$
(27)

where $w^{*}_{1,2}$ are the equilibrium fluxes between the corresponding
compounds.

The partial equilibrium concentrations of compounds are (11):

$\varsigma_{j}^{\rm
peq}=\varsigma^{*}_{j}\prod_{i}\left(\frac{c_{i}}{c_{i}^{*}}\right)^{\nu_{ji}},$
(28)

in particular,

$\varsigma_{1}^{\rm
peq}=\varsigma^{*}_{1}\frac{c_{1}}{c_{1}^{*}}\frac{c_{2}}{c_{2}^{*}},\;\varsigma_{2}^{\rm
peq}=\varsigma^{*}_{2}\left(\frac{c_{3}}{c_{3}^{*}}\right)^{2},\;\varsigma_{3}^{\rm
peq}=\varsigma^{*}_{3}\frac{c_{4}}{c_{4}^{*}}\frac{c_{5}}{c_{5}^{*}}.$

For the generalized MAL reaction rates, these expressions together with the
detailed balance conditions (27) give (23):

$\begin{split}r_{21}^{\rm
peq}&=w_{1}^{*}\frac{c_{1}}{c_{1}^{*}}\frac{c_{2}}{c_{2}^{*}},\;r_{12}^{\rm
peq}=w^{*}_{1}\left(\frac{c_{3}}{c_{3}^{*}}\right)^{2},\\\ r_{32}^{\rm
peq}&=w^{*}_{2}\left(\frac{c_{3}}{c_{3}^{*}}\right)^{2},\;r_{23}^{\rm
peq}=w^{*}_{2}\frac{c_{4}}{c_{4}^{*}}\frac{c_{5}}{c_{5}^{*}}.\end{split}$ (29)

The entanglement matrix is $E=\left(1-{\rm diag}[\tau_{i}]K\right)^{-1}$:

$E=\left[\begin{array}[]{ccc}1+\tau_{1}\kappa_{21}&-\tau_{1}\kappa_{12}&0\\\
-\tau_{2}\kappa_{21}&1+\tau_{2}(\kappa_{12}+\kappa_{32})&-\tau_{2}\kappa_{23}\\\
0&-\tau_{3}\kappa_{32}&1+\tau_{3}\kappa_{23}\end{array}\right]^{-1}\,.$

The vector of qss concentrations of compounds is $\varsigma^{\rm
qss}=E\varsigma^{\rm peq}$. The qss reaction rates are: $r_{jl}^{\rm
qss}=\kappa_{jl}\varsigma^{\rm qss}_{l}$. It is straightforward to get
explicit formulas for reaction rates, but they are quite cumbersome, so we
will limit ourselves to a numerical example. Let $c_{1_{5}}^{*}=1$,
$\varsigma^{*}_{1-3}=1$, $\kappa_{ij}=1$, and $\tau_{1-3}=1$ (here we omit the
small parameter, since it is vanished in microscopic quantities). For these
data, $w_{1}^{*}=w_{2}^{*}=w_{3}^{*}=1$,

$\varsigma_{1}^{\rm peq}={c_{1}}{c_{2}},\;\varsigma_{2}^{\rm
peq}={c_{3}}^{2},\;\varsigma_{3}^{\rm peq}={c_{4}}{c_{5}};$

$E=\left[\begin{array}[]{ccc}2&-1&0\\\ -1&3&-1\\\
0&-1&2\end{array}\right]^{-1}=\frac{1}{8}\left[\begin{array}[]{ccc}5&2&1\\\
2&4&2\\\ 1&2&5\end{array}\right]\,;$

$\varsigma^{\rm qss}=\frac{1}{8}\left[\begin{array}[]{c
}5{c_{1}}{c_{2}}+2{c_{3}}^{2}+{c_{4}}{c_{5}}\\\
2{c_{1}}{c_{2}}+4{c_{3}}^{2}+2{c_{4}}{c_{5}}\\\
{c_{1}}{c_{2}}+2{c_{3}}^{2}+5{c_{4}}{c_{5}}\end{array}\right]\,;$

$\begin{split}&r_{21}^{\rm
qss}=\frac{1}{8}(5{c_{1}}{c_{2}}+2{c_{3}}^{2}+{c_{4}}{c_{5}}),\;r_{12}^{\rm
qss}=\frac{1}{8}(2{c_{1}}{c_{2}}+4{c_{3}}^{2}+2{c_{4}}{c_{5}}),\;\\\
&r_{32}^{\rm
qss}=\frac{1}{8}(2{c_{1}}{c_{2}}+4{c_{3}}^{2}+2{c_{4}}{c_{5}}),\;r_{23}^{\rm
qss}=\frac{1}{8}({c_{1}}{c_{2}}+2{c_{3}}^{2}+5{c_{4}}{c_{5}}).\end{split}$

$\begin{split}\frac{dc_{1}}{dt}=&\frac{dc_{2}}{dt}=\frac{1}{8}(-3{c_{1}}{c_{2}}+2{c_{3}}^{2}+{c_{4}}{c_{5}}),\\\
\frac{dc_{3}}{dt}=&\frac{1}{4}(2{c_{1}}{c_{2}}-4{c_{3}}^{2}+2{c_{4}}{c_{5}})\\\
\frac{dc_{4}}{dt}=&\frac{dc_{5}}{dt}=\frac{1}{8}({c_{1}}{c_{2}}+2{c_{3}}^{2}-3{c_{4}}{c_{5}}).\end{split}$

If we decipher this system according to the standard (textbook [22]) MAL
kinetics then we find three reversible elementary reactions

$\Theta_{1}\rightleftharpoons\Theta_{2}\rightleftharpoons\Theta_{3}\rightleftharpoons\Theta_{1}.$

Initial two reversible elementary reactions turned into three ones. The
reaction rate constants also changed. In the stoichiometric form, these
reactions with the new reaction rates are listed below

  1. 1.

$A_{1}+A_{2}\rightleftharpoons 2A_{3}$, $k_{1}^{+}=\frac{1}{4}$,
$k_{1}^{-}=\frac{1}{4}$;

  2. 2.

$2A_{3}\rightleftharpoons A_{4}+A_{5}$, $k_{2}^{+}=\frac{1}{4}$,
$k_{2}^{-}=\frac{1}{4}$;

  3. 3.

$A_{4}+A_{5}\rightleftharpoons A_{1}+A_{2}$, $k_{2}^{+}=\frac{1}{8}$,
$k_{2}^{-}=\frac{1}{8}$.

We see that the connected component of the complex transition graph turned
into the complete digraph. This is the universal effect of the entanglement
matrix. The equilibrium did not change.

##  8 Entanglement matrix in the first approximation

The MMS asymptotics (Fig. 1a) assumes that equilibration of fast equilibria is
infinitely much faster than other transitions between compounds (the products
$\tau_{k}\kappa_{ji}\to 0$ for all $i,j,k$). We rejected this assumption (Fig.
1b) and, in combination with linearisation near partial equilibria, obtained
the entanglement matrix (19), (21). Let us analyze an intermediate assumption
that equilibration of fast equilibria is faster than other transitions between
compounds but not infinitely faster. Introduce a formal small parameter
$\delta$.

$E=\left(1-\delta{\rm diag}[\tau_{i}]K\right)^{-1}.$

For sufficiently small $\delta$ the following series for $E$ converges:

$E=1+\delta{\rm diag}[\tau_{i}]K+\delta^{2}({\rm
diag}[\tau_{i}]K)^{2}+\ldots.$

In the first approximation,

$E=1+\delta{\rm diag}[\tau_{i}]K+o(\delta).$

If we introduce such small parameter into the simple example from the previous
section then we obtain:

$E=1+\delta\left[\begin{array}[]{ccc}1&-1&0\\\ -1&2&-1\\\
0&-1&1\end{array}\right]+o(\delta)\,;$

$\varsigma^{\rm qss}=\left[\begin{array}[]{c
}(1+\delta){c_{1}}{c_{2}}-\delta{c_{3}}^{2},\\\
-\delta{c_{1}}{c_{2}}+(1+2\delta){c_{3}}^{2}-\delta{c_{4}}{c_{5}})\\\
-\delta{c_{3}}^{2}+(1+\delta){c_{4}}{c_{5}}\end{array}\right]\,;$
$\begin{split}&r_{21}^{\rm
qss}=(1+\delta){c_{1}}{c_{2}}-\delta{c_{3}}^{2},\;r_{12}^{\rm
qss}=-\delta{c_{1}}{c_{2}}+(1+2\delta){c_{3}}^{2}-\delta{c_{4}}{c_{5}}),\;\\\
&r_{32}^{\rm
qss}=-\delta{c_{1}}{c_{2}}+(1+2\delta){c_{3}}^{2}-\delta{c_{4}}{c_{5}}),\;r_{23}^{\rm
qss}=-\delta{c_{3}}^{2}+(1+\delta){c_{4}}{c_{5}}.\end{split}$

Again, the reaction rates become linear combinations of known MAL
dependencies. The approximate formulas for small $\delta$ can lead to the
positivity loss when some of macroscopic concentrations $c_{i}$ become
$\delta$-small.

##  9 Discussion, conclusion and outlook

The century-old classical MMS asymptotic approach to derivation of
(generalized) Mass Action Law (MAL) implies two properties of intermediate
transition states:

Quasi steady state.

The intermediate states have short life time and are present in much smaller
concentrations than the main reagents.

Fast equilibrium.

The intermediate states are in partial equilibrium with the initial reagents
of the elementary reaction. This means that the reverse decomposition of the
intermediates is much faster than its transition through other channels to the
products.

The transition state (activation complex) theory also relies on these
assumptions. The intermediate states are named differently by different groups
of researchers: the transition states, the activation complexes or just
compounds. We called them ‘compounds’ employing the Michaelis–Menten
terminology.

The classical approaches have an important advantage: there is no need to
postulate a kinetic law for the birth of the transition state (compounds) from
the reagents in non-linear reactions. This non-linear kinetic law follows from
the thermodynamic description of the partial equilibrium and then the
transformations of transition states is described by linear kinetics (Markov
chains). The kinetic constants for this linear kinetics can be evaluated (the
transition state or activation complex theory) or extracted from combination
of experimental data and theoretic estimates. The structure of the kinetic law
will be the same: the generalized MAL.

It is possible to relax the assumption of fast equilibrium without postulating
a law of non-linear reactions. For this purpose, we can just linearize the
still unknown equation of the birth of compounds from combinations of initial
reagents. The single elementary reaction goes along one stoichiometric vector,
therefore, the linearized kinetics can be described by one constant – the
relaxation time. Of course this relaxation time may be different for different
compounds and also depend on the conditions.

We demonstrate how substituting of the partial equilibrium assumption by the
weaker assumption of the linear kinetics near partial equilibria modifies the
reaction rates. In this approach, the asymptotic quasi steady state
expressions for reaction rates were produced. The final reaction rates are
combinations of the generalized MAL expressions but for different reactions.
We called this effect the ‘entanglement’ of MAL. From the transition state
theory point of view, the entanglement matrix $E$ can be considered as the
generalized matrix transmission coefficient.

In particular, any connected component of the digraph of the transitions
between complexes is transformed into a complete digraph of reactions. Thus,
the set of reactions $\rm O+H_{2}O\rightleftharpoons 2OH\rightleftharpoons
HO_{2}+H\leftrightharpoons H_{2}+O_{2}$ should be compulsory supplemented to
the complete digraph by three reversible reactions $\rm
O+H_{2}O\rightleftharpoons HO_{2}+H$, $\rm O+H_{2}O\leftrightharpoons
H_{2}+O_{2}$, and $\rm 2OH\rightleftharpoons H_{2}+O_{2}$.

The approach based on the quasi steady state assumption that the intermediates
have short life time and are present in small concentrations works well if the
microkinetic equations for birth of eacch compound are linearized near the
corresponding partial equilibria. In this approximation, the kinetic law is
the ‘entangled MAL’ combined from the same terms. This approach can be
incorporated in modern advances framework of multiscale non-equilibrium
thermodynamics [23]. The next step beyond this approximation requires the
analysis of microscopic models of elementary reaction phenomena, depends on
the details of the interaction of particles, and goes beyond the scope of
universal phenomenological theory.

Is there a loophole / logic cycle in determination of generalized MAL?
Michaelis and Menten hypothesized MAL for rapid equilibrium between reagents
and compounds that are present in small quantities, and obtained a dynamic MAL
for the brutto-reaction. In brief, it can be formulated as a logic cycle: we
assumed MAL – we got MAL, but this is not the case. Michaelis and M assume MAL
for the equilibrium between reagents and compounds. This is a consequence of
the perfect form of the free energy and does not require any kinetic
assumption. Then they used that the intermediate compounds are present in
small amounts. This leads to the first order kinetics for their transitions.
(Of course, neither Michaelis and Menten nor Stueckelberg performed formal
proofs. For example, they did not prove the correct linear kinetics for a
general kinetic system with material balance and positivity preservation near
zero concentrations and just wrote the first order kinetics.) The result was
the dynamic MAL that described the reaction rate of the overall brutto-
reaction, not only the equilibrium. Moreover, Briggs and Haldane demonstrated
that if we do not assume that the equilibrium between reagents and
intermediate compounds is approaching much faster than the reaction between
intermediates, then the MAL for the brutto reaction is not valid even we
assume the dynamic MAL for all the intermediate elementary reactions. (The
historical paradox – result of Briggs and Haldane is called the
Michaelis–Menten formula). Thus, there is no logic cycle here and the assumed
MAL for equilibrium did not automatically imply the dynamic MAL for the
brutto-reaction. The same is true for the general
Michaelis–Menten–Stueckelberg theorem.

We represent logical chains of reasoning for obtaining a generalized MAL in
the Michaelis-Menten-Stueckelberg theorem and in this work by two flowcharts
(Figs. 4, 5).

It should be noted that the assumption of small intermediate concentrations is
repeatedly used in the work not only directly to calculate the QSS
approximation, but also to simplify the free energy function, to explicitly
solve the 1D minimization of free energy, which gives us quasi-equilibrium
concentrations of intermediate substances, to approximate unknown kinetic
equations for compounds near zero concentrations, to derive kinetic equations
(17), (18) (here the smallness of the intermediate concentration is used not
only to determine the asymptotic limit, but also for the introduction of
correct macroscopic variables $b_{i}$), for some other technical purposes, and
finally for the derivation of the QSS asymptotics of kinetic equations, which
gives us the main result – the generalized entangled MAL (21). Thus,
assumption of smallness of concentrations of intermediate compounds is a ‘hub’
on flowcharts (Figs. 4, 5).

Figure 4:  Main assumptions (green frame), intermediate statements (blue
frames) and the main statement in Michaelis–Menten–Stueckelberg theorem about
generalized MAL with complex balance conditions. The main assumptions are
(Fig. 1a): (i) representation of elementary reactions by schemes with two
intermediates, (ii) decomposition of complex reaction into multichannel
transitions, (iii) fast equilibria between reagents and intermediates, and
(iv) small intermediate concentrations. Dashed frame indicates operation of
linearization. Figure 5:  Main assumptions (green frame) and intermediate
statements (blue frames) that imply generalized entangled MAL (21) . The main
assumptions are (Fig. 1a): (i) representation of elementary reactions by
schemes with two intermediates, (ii) decomposition of complex reaction into
multichannel transitions, (iii) small deviations of fast reactions between
reagents and intermediates from their equilibria, and (iv) small intermediate
concentrations. Dashed frame indicates operations of linearization and QSS
approximation.

There is one more open possibility of universal laws. These are the laws of
fluctuations. Two closely related questions appear, up-and down [30, 31]:

Up:

coarse-graining. Given a microscopic model and reasonable set of macroscopic
or mesoscopic variables generate the universal thermodynamic structure of the
phenomenological equations and a meaningful coarse-graining map, how can one
find the thermodynamic structure of the macroscopic, phenomenological
equation?

Down:

noise enhancement. Given a phenomenological equation and its thermodynamic
structure, how can we add fluctuations in a universal and correct form?

We demonstrated a step up, coarse-graining with the exclusion of intermediates
from macroscopic equations. The result looks quite universal. A corresponding
step down is also needed. For this purpose, we should employ the general
fluctuation-dissipation theorem, which relates the dissipation in kinetic
equations to the fluctuation extension of these equations to the Markov
process. A case study of a simple chemical reaction $A\leftrightharpoons B$
was presented in [31]. Such an analysis should be extended to the general
case.

Another dimension of future work is the learning physics from data. Here the
interaction between data science and nonequilibrium thermodynamics is twofold.
First, we can combine our knowledge of thermodynamic structures, some
theoretical estimates and data, and create reliable and accurate models. A
better understanding of the underlying physical structures creates more
constraints on models and allows for more efficient use of data. As for
complicated and sometimes ambiguous calculations of the transition state
theory, we can quote the famous talk of Geoffrey F. Chew at Lawrence Radiation
Laboratory, Berkeley about $S$-matrix theory [32]: “a long theoretical chain
of calculations can be reinforced at its weak links by a direct infusion of
experimental information.” On another hand, the the machine learning process
can be considered as a dissipative time evolution. This is the gate for
thermodynamics to enter machine learning. Exclusion of intermediates and other
thermodynamic model reduction processes can be considered as a model of
learning. The approach to learning via reducing dynamics and associated
thermodynamics was proposed recently and illustrated by examples of learning
physics from data [33].

Thus, we see two main directions for further research: ‘noise enhancement’
(adding fluctuations) and ‘learning physics from data’ (combine machine
learning and a thermodynamic framework to effectively use experimental data in
modeling).

In this work, one fundamental question remained unresolved. What is the
relationship between the relaxation times of the equilibria ‘reactants –
intermediates’ and the Markov chain of transitions between intermediates? Or,
which is about the same question, what are the relative orders of magnitude
between the groups of constants $1/\tau_{l}$ and $\kappa_{ij}$ in equations
(12), (13) and further? In the classical asymptotic assumption (Fig. 1 a)
relaxation time of fast equilibria (i.e. $\tau$) is much smaller (faster) than
the relaxation time of the transitions between the intermediates. No
fundamental reasons for this assumption is known other than simplicity and the
possibility of explicit solutions. Moreover, in the kinetics of enzymatic
reactions and in heterogeneous catalysis, this assumption has long been
discarded (after Briggs and Haldane [12]). The relations between these
relaxation times and reaction rate constants may be different, and the stages
of creating intermediates are included in the reaction mechanism without any a
priori hypothesis of time separation [34]. The situation with transition state
theory is more complicated because the (generalized) dynamic MAL for
elementary reactions is not assumed. A detailed microscopic theory of
elementary reactions has not yet been developed, and, moreover, we cannot
expect a universal answer from this theory. An experimental approach to can be
proposed for answering this question. The entangled MAL (21) leads to some
inequalities between observable MAL constants of elementary reactions: if
there exists a chain of complex transformations
$\Theta_{1}\rightleftharpoons\Theta_{2}\rightleftharpoons\ldots\rightleftharpoons\Theta_{m}$,
then the reaction $\Theta_{1}\rightleftharpoons\Theta_{m}$ should be also
observed and its reaction rate constants cannot be arbitrarily small. The
lower bounds for these constants can be evaluated. They depend on relations
between the sets for constants $1/\tau_{l}$ and $\kappa_{ij}$ for the chain.
So, some of these relations can be estimated experimentally.

##  10 Acknowledgments

The work was supported by the University of Leicester and the Ministry of
Science and Higher Education of Russian Federation (Project No.
075-15-2020-808).

## References

  * [1] K. Laidler, C. King, Development of transition-state theory, J. Phys. Chem. 87 (15) (1983), 2657–2664. https://doi.org/10.1021/j100238a002
  * [2] L. Michaelis, M. Menten, Die Kinetik der Invertinwirkung, Biochem. Z. 49 (1913), 333–369. [English translation: Biochemistry 50 (2011), 8264–8269 https://doi.org/10.1021/bi201284u]
  * [3] E.C.G. Stueckelberg, Theoreme $H$ et unitarite de $S$, Helv. Phys. Acta 25 (1952), 577–580. http://doi.org/10.5169/seals-112324
  * [4] S. Watanabe, Symmetry of physical laws Part I. Symmetry in space-time and balance theorems. Rev. Mod. Phys. 27(1) (1955), 26–39. https://doi.org/10.1103/RevModPhys.27.26
  * [5] L. Boltzmann, Neuer Beweis zweier Sätze über das Wärmegleichgewicht unter mehratomigen Gasmolekülen. Sitzungsberichte der Kaiserlichen Akademie der Wissenschaften in Wien 95 (2) (1887), 153–164.
  * [6] F. Horn, R. Jackson, General mass action kinetics. Arch. Ration. Mech. Anal. 47 (1972), 81–116. https://doi.org/10.1007/BF00251225
  * [7] M. Feinberg, Complex balancing in general kinetic systems. Arch. Ration. Mech. Anal. 49 (1972), 187–194. https://doi.org/10.1007/BF00255665
  * [8] A.N. Gorban, M. Shahzad, The Michaelis-Menten-Stueckelberg theorem, Entropy 13(5) (2011), 966–1019. https://doi.org/10.3390/e13050966
  * [9] A.N. Gorban, V.N. Kolokoltsov, Generalized mass action law and thermodynamics of nonlinear Markov processes. Math. Model. Nat. Phenom. 10(5) (2015), 16–46. https://doi.org/10.1051/mmnp/201510503
  * [10] A.N. Gorban, Detailed balance in micro- and macrokinetics and micro-distinguishability of macro-processes. Results Phys. 4 (2014), 142–147. https://dx.doi.org/10.1016/j.rinp.2014.09.002
  * [11] J.F. Perez-Benito, Some considerations on the fundamentals of chemical kinetics: steady state, quasi-equilibrium, and transition state theory. J. Chem. Educ. 94(9) (2017), 1238–1246. https://dx.doi.org/10.1021/acs.jchemed.6b00957
  * [12] G.E. Briggs, J.B.S. Haldane, A note on the kinetics of enzyme action, Biochem. J. 19 (1925), 338–339. https://doi.org/10.1042/bj0190338
  * [13] J.L. Bao, D.G. Truhlar, Variational transition state theory: theoretical framework and recent developments. Chem. Soc. Rev. 46(24) (2017), 7548–7596. https://doi.org/10.1039/c7cs00602k
  * [14] E. Pollak, Stochastic Transition State Theory. J. Phys. Chem. Lett. 9(20) (2018), 6066–6071 https://doi.org/10.1021/acs.jpclett.8b02712
  * [15] V.H. Carvalho-Silva, V. Aquilanti, H.C. de Oliveira, K.C. Mundim, Deformed transition-state theory: Deviation from Arrhenius behavior and application to bimolecular hydrogen transfer reaction rates in the tunneling regime. J. Comput. Chem. 38(3) (2017), 178–188. https://doi.org/10.1002/jcc.24529
  * [16] S. Jang, G.A. Voth, Non-uniqueness of quantum transition state theory and general dividing surfaces in the path integral space. J. Chem. Phys. 146(17) (2017), 174106. https://doi.org/10.1063/1.4982053
  * [17] O. Sharia, G. Henkelman, Analytic dynamical corrections to transition state theory. New J. Phys. 18(1) (2016), 013023. https://doi.org/10.1088/1367-2630/18/1/013023
  * [18] G. Di Gesù, T. Lelièvre, D. Le Peutrec, B. Nectoux, Jump Markov models and transition state theory: the quasi-stationary distribution approach. Faraday Discuss. 195 (2017), 469–495. https://doi.org/10.1039/C6FD00120C
  * [19] A.N. Gorban, Singularities of transition processes in dynamical systems: Qualitative theory of critical delays, Electron. J. Diff. Eqns., Monograph 05, 2004. Online: http://ejde.math.unt.edu/Monographs/05/gorban.pdf
  * [20] T. Kittel, J. Heitzig, K. Webster, J. Kurths, Timing of transients: quantifying reaching times and transient behavior in complex systems. New J. Phys. 19(8) (2017), 083005. https://doi.org/10.1088/1367-2630/aa7b61
  * [21] A.N. Gorban, Singularities of transient processes in dynamics and beyond, Phys. Life Rev. 32 (2020), 46–49. https://doi.org/10.1016/j.plrev.2019.12.002
  * [22] G.B. Marin, G.S. Yablonsky, D. Constales, Kinetics of chemical reactions: Decoding complexity. John Wiley & Sons, 2019.
  * [23] M. Pavelka, V. Klika, M. Grmela, Multiscale thermo-dynamics: introduction to GENERIC, De Gruyter, Berlin/Boston, 2018.
  * [24] M. Feinberg, On chemical kinetics of a certain class. Arch. Ration. Mech. Anal., 46 (1972), 1–41. https://doi.org/10.1007/BF00251866
  * [25] V.I. Bykov, A.N. Gorban, G.S. Yablonskii, Description of nonisothermal reactions in terms of Marcelin–de-Donder kinetics and its generalizations, React. Kinet. Catal. Lett., 20 (1982), 261–265. https://doi.org/10.1007/BF02066307
  * [26] M. Ò Conaire, H.J. Curran, J.M. Simmie, W.J. Pitz, C.K. Westbrook, A comprehensive modeling study of hydrogen oxidation. Int. J. Chem. Kinet. 36 (2004), 603–622. https://doi.org/10.1002/kin.20036
  * [27] L.A. Segel, M. Slemrod, The quasi-steady-state assumption: A case study in perturbation. SIAM Rev. 31 (1989), 446–477. https://doi.org/10.1137/1031091
  * [28] A.N. Gorban, Universal Lyapunov functions for non-linear reaction networks. Comm. Nonlinear Sci. Numer. Simulat. 79 (2019), 104910\. https://doi.org/10.1016/j.cnsns.2019.104910
  * [29] A.N. Gorban, Model reduction in chemical dynamics: slow invariant manifolds, singular perturbations, thermodynamic estimates, and analysis of reaction graph, Curr. Opin. Chem. Eng. 21 (2018), 48–59. https://doi.org/10.1016/j.coche.2018.02.009
  * [30] H.C. Öttinger, M.A. Peletier, A. Montefusco, A framework of nonequilibrium statistical mechanics. I. Role and type of fluctuations. arXiv preprint arXiv:2004.09120 (2020). https://arxiv.org/abs/2004.09120
  * [31] A. Montefusco, M.A. Peletier, H. C. Öttinger, A framework of nonequilibrium statistical mechanics. II. Coarse-graining. arXiv preprint arXiv:2004.09121 (2020). https://arxiv.org/abs/2004.09121
  * [32] G.F. Chew, The $S$-matrix theory of strong interactions. (1961). Lawrence Berkeley National Laboratory, Report UCRL-9701, May 15, 1961. https://escholarship.org/content/qt2v38k2hr/qt2v38k2hr.pdf
  * [33] F. Chinesta, E. Cueto, M. Grmela, B. Moya, M. Pavelka, Learning physics from data: a thermodynamic interpretation. arXiv preprint arXiv:1909.01074 (2019). https://arxiv.org/abs/1909.01074
  * [34] G.S. Yablonskii, V.I. Bykov, A.N. Gorban, V.I. Elokhin, Kinetic models of catalytic reactions. Elsevier, Amsterdam – New York, 1991.

Alexander N. Gorban, DrSc, PhD, Prof, has held a Personal Chair in applied
mathematics at the University of Leicester since 2004. He worked for the
Russian Academy of Sciences, Siberian Branch, and ETH Zurich, was a visiting
professor and scholar at Clay Mathematics Institute (Cambridge, MA), IHES
(Bures-sur-Yvette), Courant Institute (New York), and Isaac Newton Institute
(Cambridge, UK). His main research interests are machine learning, data mining
and model reduction problems, physical, chemical and biological kinetics, and
applied dynamics.


#  Development of Authenticated Clients and Applications for ICICLE CI
Services
Final Report for the REHS Program, June - August, 2022

Sahil Samar  Del Norte High School,
San Diego, CA, USA
Email<EMAIL_ADDRESS>Mia Chen  Westview High School,
San Diego, CA, USA
Email<EMAIL_ADDRESS>Jack Karpinski  San Diego High School,
San Diego, CA, USA
Email<EMAIL_ADDRESS>Michael Ray  JSerra Catholic High School,
San Juan Capistrano, CA, USA
Email<EMAIL_ADDRESS>Archita Sarin  Mission San Jose High School,
Fremont, CA, USA
Email<EMAIL_ADDRESS>Christian Garcia (mentor)  Texas Advanced
Computing Center,
Austin, TX, USA
Email<EMAIL_ADDRESS>Matthew Lange (mentor)  IC-FOODS,
Davis, CA, USA
Email<EMAIL_ADDRESS>Joe Stubbs (mentor)  Texas Advanced Computing
Center,
Austin, TX, USA
Email<EMAIL_ADDRESS>Mary Thomas (mentor)  San Diego Supercomputer
Center
La Jolla, CA, USA
Email<EMAIL_ADDRESS>
###### Abstract

The Artificial Intelligence (AI) institute for Intelligent Cyberinfrastructure
with Computational Learning in the Environment (ICICLE) is funded by the NSF
to build the next generation of Cyberinfrastructure to render AI more
accessible to everyone and drive its further democratization in the larger
society. We describe our efforts to develop Jupyter Notebooks and Python
command line clients that would access these ICICLE resources and services
using ICICLE authentication mechanisms. To connect our clients, we used Tapis,
which is a framework that supports computational research to enable scientists
to access, utilize, and manage multi-institution resources and services. We
used Neo4j to organize data into a knowledge graph (KG). We then hosted the KG
on a Tapis Pod, which offers persistent data storage with a template made
specifically for Neo4j KGs. In order to demonstrate the capabilities of our
software, we developed several clients: Jupyter notebooks authentication,
Neural Networks (NN) notebook, and command line applications that provide a
convenient frontend to the Tapis API. In addition, we developed a data
processing notebook that can manipulate KGs on the Tapis servers, including
creations of a KG, data upload and modification. In this report we present the
software architecture, design and approach, the successfulness of our client
software, and future work.

##  1 Introduction

The AI institute for Intelligent Cyberinfrastructure with Computational
Learning in the Environment (ICICLE) program aims to develop intelligent
cyberinfrastructure with transparent and high-performance execution on diverse
and heterogeneous environments, as well as to advance plug-and-play AI that is
easy to use by scientists across a wide range of domains, promoting the
democratization of AI.[1][2] The deep AI infrastructure that ICICLE plans to
utilize to sift through data relies on knowledge graphs (KGs) in which
information is stored in a graph database that uses a graph-structured data
model to represent a network of entities and the relationships between
them.[3]

Finding a way to make KGs easily accessible and functional on high performance
computing (HPC) systems is an important step in helping to democratize HPC.
Thus a large focus of this project was contributing to the body of knowledge
needed for hosting live, dynamic, and interactive services that interface with
HPC systems hosting KGs for ICICLE based resources and services.

Figure 1: Hello ICICLE 3-tier middleware architecture, consisting of client,
middleware and backend resources.

This report describes the results and lessons learned from the project we
worked on as part of the San Diego Supercomputer Center (SDSC) [4] 2022
Research Experience for High School Students (REHS) program.[5],

During the course of the project, we learned about many technologies, in the
following core areas: (1) Programming and Development - Bash scripting, Docker
containers, Jupyter Notebooks, JupyterLab, Anaconda Environments, Machine
learning, Neo4j Cypher Query Language, CLI Development, Github; (2) Tapis –
instantiating Tapis Pods on remote HPC systems, exercising the TapisAPI in
notebooks/python scripts; using Tapis to remotely run singularity/docker
containers, using Tapis as an alternative to SSH for file transfer; and (3)
HPC Systems – connecting to and running jobs on Expanse and Stampede, How to
use the Slurm batch scheduler, How to navigate the Expanse storage system.

In the following sections, we describe the architecture and components of the
system as follows: Section 2 describes the architecture of the Hello ICICLE
system and the various components of the sofware stack; Section 3 covers the
methodology we used for creating Knowledge Graphs, developing Jupyter Notebook
and Python Clients, and testing applications such as Neural Networks and
Machine Learning with KGs; Section 4 summarizes the results of our project;
finally, Section 5 provides a conclusion as well as an outline of further
research to be done with the ICICLE project.

##  2 Architecture of the Hello ICICLE System

There are many ways to access HPC systems, but they are generally difficult
and require a specialized understanding of computer science and system
architecture. Many scientists and researchers who want to analyze large data
sets do not have this expertise, and cannot utilize advanced computing
resources to their fullest. As a result, there is a high demand for simpler,
more user friendly interfaces with HPC systems. Many of these architectures
are based on a 3-tier middleware architecture [6], which consist of a client,
middleware and backend resources. The middleware layer often includes the Web
app frameworks, and local databases and services. To meet this demand, we
developed a system we initially referred to as Hello ICICLE that allows
clients to create, edit, and query remote ICICLE services (see Figure 1). The
system supports Jupyter Notebook and command line interface (CLI) clients,
that use the Tapis Framework [7] to authenticate and run jobs on remote
services and to access Neo4J generated Knowledge graphs [8]. The various
components used in the Hello ICICLE system, what we learned about them, and
how they are used are described in the sections below.

###  2.1 Hello ICICLE Clients

We designed two types of clients that can be run on the users local laptop,
workstation or HPC system: Jupyter Notebooks and command line Python apps
(CLI). Jupyter Notebooks are popular Web based applications that
compartmentalize and simplify authentication and interfacing to jobs and
services hosted on these HPC systems.[9, 10] We initially ran and tested the
notebooks provided by the Tapis project. To create an ICICLE relevant test
case, we focused on the deployment and use of Neo4j knowledge graph databases
using pods hosted on Kubernetes clusters that are hosted via Tapis and run on
TACC’s Cyclone supercomputer. Figure 2 shows how user requests (e.g. the
Jupyter Notebook) are routed to the appropriate Pod or service hosted in the
Kubernetes cluster(green).

Many HPC systems users know how to run programs using command line interface
(CLI) applications. Consequently, we developed a set of CLI applications that
emulate the Jupyter Notebook KG functions. Results and outcomes of our clients
are discussed in the Results section ($\S$ 4).

Figure 2: Figure shows how user requests (e.g. Jupyter Notebook) are routed to
the appropriate Pod service hosted in the Kubernetes cluster(green). [11]

###  2.2 Tapis Computing Platform

Tapis authentication is a multi-layered operation that constitutes the most
difficult portion of this process. Figure 3 shows the backend architecture of
the Tapis system, as well as the Tapis API.[11] In our project, we heavily
leveraged the use of the Tapis API in order to create a Neo4j template
database hosted on Tapis systems. User requests are routed through the Tenant
Router, and authentication is done using Tokens and the Security Kernel; then,
a user’s request for a job is able to go through. The workflow for the end
user is much simpler as these layers are handled by the Tapis API.

####  2.2.1 Tapis Authentication and Authorization

Tapis has provided a tutorial called “Hello, Tapis” in order to introduce
researchers to the Tapis systems.[1] We have compiled a Jupyter Notebook [5]
in which we simplified and elaborated parts of this tutorial and annotated
each step with clear instructions.

For authentication and authorization via Tapis, we leveraged TACC accounts.
The Jupyter Notebook starts with a request for input of the TACC username and
password which will then be stored as variables in the notebook. Then, Tapis
is imported and a python Tapis client is created for the user. After a call to
the Tokens API, the Notebook prints out a string that includes a token that
the user needs to set to the JWT variable in the shell using the command:

    export JWT=<access token starting with ey>

Then the user can run the command:

    t.authenticator.get_userinfo()$

This command should return the info that is part of the user’s TACC account.
The next step is to access a new system. To do this you need to create a
system variable which in our Notebook is used to access Stampede2 by someone
with an allocation on it. To run it, edit cell 5 in the Notebook by replacing
<stampede_username>in the code with your stampede username. Then after running
a createSystem command, you have connected to the system. and there are some
commands to check if you have connected correctly.

####  2.2.2 Using Tapis Pods

There are a multitude of possibilities of what can be done once authenticated.
Accessing a TACC machine like Stampede or Jetstream requires that HPC system
to be registered with the TACC account. We cover this process in our “Tapis-
Notebook” notebook. Most of our project, however, was focused on Tapis Pods.
Tapis Pods are a Tapis service which allow for easy deployment and use of
databases. They are able to import and export data from live databases. Tapis
has an easy to use template to create a pod that will host Neo4J knowledge
graphs.

Each Tapis pod hosts one knowledge graph. These are stored on TACC systems
using Kubernetes. The creation of these Pods is simplified through the Tapipy
library. It is simply done through this method of the tapis object, “t”:

    t.pods.create_pod(pod_id=pod_id,
        pod_template=pod_template,
        description=pod_description)

Each of the parameters should be defined prior to using them. The pod_id is a
string that will be used to reference the pod. The “pod_template” should
describe what is going into the pod. The pod_template that we used was a neo4j
template, which is specified simply through assigning the parameter a string
value of neo4j. The third parameter provides some information about the pod.

####  2.2.3 Tapis Generated User Credentials

The next section describes the steps needed to create user credentials, which
are used to access the pods. For example, each of the pods (described in
Section 2.2.2) has a specific set of permissions, and one can have the same
permissions as the owner with the ADMIN level. These permissions can be set
using our Tapis console application or can be done through a few simple
commands, which are also covered in the tapis_auth notebook. When pods are
created, they have preset credentials associated with them. These credentials
can easily be accessed from a TACC user’s python Tapis object through the
following code:

    username,password=t.pods.get_pod_credentials
    (pod_id = pod_id).user_username,t.pods.
            get_pod_credentials(pod_id=pod_id)
            .user_password

where t is the Tapis object. It is important to not print out these passwords,
as it is currently a security threat since once logged in, the credentials can
be accessed, but those credentials can be used by members without any other
access to the pod. The current best practice is to do as done in the code
snippet, where the credentials are stored in aliases that are referenced when
the user needs to login to a pod. Currently, the best supported and easiest
way to create a template using pods is the Neo4j template. Once a Neo4j pod is
created and the permissions have been set, the authentication flow is as
follows:

  1. 1.

Using python, create a Tapis object.

  2. 2.

Login to TACC.

  3. 3.

Get the ID of the pod you want to access.

  4. 4.

Get the credentials of that pod.

  5. 5.

Pass in those credentials to a Neo4j graph object.

  6. 6.

Use the Py2Neo client package to generate the graph.

An example for generating the graph is shown below:

    graph = Graph(f"bolt+ssc://{pod_id}.
    pods.icicle.develop.tapis.io:443",
    auth=(username, password), secure=True, verify=True)

In the above example, “icicle.develop.tapis.io” is the base url that was used
to create the pod. The base url is specified in the creation of the Tapis
object, like so:

    t = Tapis(base\_url =
    "https://icicle.develop.tapis.io",
    username = username, password = getpass(’password’))

After the Pod is completely registered and all of the above steps have been
followed, authentication can be largely streamlined using the resources that
we have made such as our console applications and Jupyter Notebooks. All of
these resources essentially just require a TACC login (as of now), and handle
all of the further authentication described in this section in the backend.

###  2.3 Neo4j Database Service

Neo4j is a graph database service which allows users to create complex
visualizations of data by using node edges and relationships instead of
columns and rows to arrange data. Each node holds data, and connects to one or
more nodes through relationships. Both nodes and relationships can possess
unique properties to describe the data. The Neo4j article, “From Graph to
Knowledge Graph: How a Graph Becomes a Knowledge Graph”, provides a simple
definition of a KG to be “an interconnected dataset enriched with semantics so
we can reason about the underlying data and use it confidently for complex
decision-making.”[12]

Neo4j allows for flexibility in storing relationship driven data. Where
relationships or classifications play a significant role, Neo4j proves much
simpler and more efficient than other services, such as SQL. Throughout our
project, a main testing focus was using python and Tapis to manage Neo4j
knowledge graphs remotely on Stampede.

##  3 Methodology

In order to test the architecture, we had to develop software and clients to
access the different services that are part of the overall architecture (see
Figure 1). These are described below.

###  3.1 Client Authentication Processes

The first step was the authentication. That only required a TACC username and
password. However, there were multiple steps to follow to get the knowledge
graphs to run on the Tapis Pods. In order to understand the authentication
process that we went through to access our knowledge graphs, we created
sequence diagrams of the Tapis architecture. These diagrams contained the
steps that connected our laptop to the pods where the notebooks were run.
Figure 3 shows the steps needed to authenticate the Jupyter Notebook client to
the Tapis authentication system.

Once Tapis authenticates the TACC username and password from the client
notebook, it returns a token that the user uses to request a pod. The software
checks the authentication and if everything properly executes, it creates a
pod on which the knowledge graph is remotely hosted. The KG runs on the pod
using Neo4J. To query the data, the computer sends a query through the BOLT
link and the remote KG returns the output.

Figure 3: Sequence diagram showing access steps needed to authenticate the
Jupyter Notebook client to the Tapis authentication system

###  3.2 Creating Knowledge Graphs

We initially used a Neo4j service to get acquainted with creating knowledge
graphs. Using cypher, we each created our own knowledge graphs and then worked
together on a larger set of data to efficiently host it on ICICLE systems. It
was integral that we had a larger set of data in order to confirm that hosting
the KG would be easy for scientists looking to just test their data. We found
a way to write, query, and edit the KGs with Jupyter Notebooks using a Neo4j
python package called “py2neo”. We then automated the creation of knowledge
graphs from .csv files via the LOAD CSV cypher command in a Jupyter Notebook.
In the final product of our software, we exclusively used the Tapis pods
service to create our KGs. After authentication on TACC, all that was left is
to run the KGs. We created Jupyter Notebook clients to efficiently host remote
KGs.

###  3.3 Accessing and Hosting Knowledge Graphs

As part of our project, we investigated several mechanisms for hosting KGs for
public consumption. These included locally hosted graphs on our laptops, using
the Neo4J browser and desktop apps, and the AuraDB and Bolt services. As we
tested these methods, we determined that Kubernetes Pods (hosted on Tapis)
were the optimal solution for our experiments. These methods are described
below.

####  3.3.1 Local Host

Our project primarily used Neo4j’s localhost service for testing purposes,
which was useful given its simplicity and speed. While localhost services
cannot operate on remote computers or be shared between team members, for much
of the project it allowed us to quickly test cypher queries and programs
without having to worry about networking.

####  3.3.2 Neo4j Browser and Desktop Apps

The Neo4j browser can be used for lightweight visualization of knowledge
graphs. The Neo4j browser can be used to connect to a Tapis Pod with a Neo4j
template. The credentials for authentication for this connection can be found
using the same methods as described in the previous section. The Neo4j browser
can be accessed through the Neo4j Desktop app. From there, a new connection
can be created; the checkbox for using an encrypted connection must be ticked
here to authenticate. Then, the credentials for the Pod simply have to be
entered and the Neo4j Browser can open the project. Cypher queries can be
visualized from here. The main drawback was that the browser and desktop apps
were unable to host the KGs themselves.

####  3.3.3 AuraDB Hosting Service

AuraDB is Neo4j’s own cloud service for hosting knowledge graphs. While it is
useful for people who don’t want to go to the trouble of manually setting up a
bolt service, it isn’t persistent, and not easily scalable due to the
additional costs of hosting more than one knowledge graph. As such, for large
scale or multi-project data hosting, AuraDB is not the ideal option. As such,
while we initially used AuraDB for our database hosting, we quickly phased it
out for other methods.

####  3.3.4 Bolt Portforwarding

After trying and realizing the limitations of cloud based solutions, Neo4j’s
Bolt service was our next option. We used our own laptops as servers, and
exposed a Bolt URL for public access. While it did provide a cost free way to
host our knowledge graphs, setup was difficult and unreliable. In the few
instances we managed to set up bolt services, they were unstable (dropping
connections, service errors), and not easily scalable, since each database had
to be manually configured (if no other software is used). This made Bolt
unsuitable for our intended use.

####  3.3.5 Tapis Pods

Tapis pods were our final solution, and fixed most of the aforementioned
issues with other graph hosting services. As shown in Section II, after
authenticating with the Tapis service, the user can create, or access a graph
database in a Kubernetes cluster. Since the entire database creation and
querying backend was streamlined by TACC, it takes minimal python code and
minutes to accomplish the same as with hours configuring bolt. Thanks to its
user friendliness and reliability, Tapis pods became the primary hosting
service for our project.

###  3.4 Developing the Jupyter Notebook Clients

A key goal of our project was to create Jupyter Notebook Clients that allowed
anyone to easily access Stampede2 and other Tapis supported HPC’s. We wanted
the Notebooks to be able to run from a local computer (laptop, workstation)
and access remote HPC systems, so we used the Tapis Authentication system.
Some of these Notebooks are a slight variation on the “Hello Tapis”
tutorial.[13] Others allow people to access and visualize KGs using the
py2neo, neo4j, and neo4jupyter python modules. These notebooks can be found in
the project GitHub repository.[14]

To create these Notebooks as a team, we hosted them on our Github
repository.[14] We used Visual Studio Code and Github Desktop to write and
push edits to our Notebooks. For testing, we ran our Jupyter Notebooks using
the browser, Visual Studio Code, and HPC environments.

All of this effort was in order to make HPC resources more accessible for
computational scientists without needing to go through all the training that
is currently required to use them.

###  3.5 Developing Python Clients

Not only did we create Jupyter Notebooks but we also made python clients that
can be run from the command line. These clients access the KGs hosted on the
TACC system using a few simple inputs. It does require your TACC username and
passcode for authentication. It shows you all the pods that you have access to
and asks which you’d like to use. It then allows you to easily access, create,
delete, change permissions, get information, and query the knowledge graph
without needing to know Cypher (Neo4j’s query language).

##  4 Results

In the next sections we describe the projects that were developed by this
project. Some of the projects were done in collaboration by the entire group,
while some were done by individuals; but we were always helping each other
with ideas and solutions. All of the software created by the students can be
found in the project GitHub repository.[14]. In addition, some of our work
(ICIConsole and TapisCL-ICICLE) will be included in the first ICICLE Software
Components Catalog (VC3), which released around April 2023.[15] Those
components can be found in the VC3 release github repository.[14]. Below, we
highlight several of our projects.

###  4.1 Jupyter Notebook Clients

We created various Jupyter Notebooks that displayed important components in
Authentication and Authorization, as well as setting up services like a Neo4j
Knowledge Graph on a Tapis Pod. We explore how to populate blank templates of
knowledge graphs, and went on to develop notebooks as clients to these
knowledge graphs.

####  4.1.1 Tapis Authentication Notebook

We compiled authentication to Tapis as well as creation and authorization for
Tapis Pods in this notebook. It forms the basis for many of our other
applications.

####  4.1.2 Data Loading Notebook

In many cases, there is pre-existing data that must be brought into a
knowledge graph. We showed how this can be done in our Data Loading notebook,
where we displayed CSV data being loaded into a blank knowledge graph. The
main requisite is having a link where the CSV is stored; we used Github for
this. Then, we simply pass in the link to the Cypher function

    LOAD CSV WITH HEADERS

and specify columns to node types using the

    MERGE

keyword. We also did some scripting to automate the creation of relationships
from CSV data.

Figure 4: Figure kg-graph-visualization.png

####  4.1.3 Knowledge Graph Visualization of Architecture

This Knowledge Graph is an alternative visualization to our architecture
diagram. It contains nodes representing the Tapis Authentication service, the
Tapis Pods service, the Neo4j Knowledge Graph, and the Local Jupyter Notebook
that queried the knowledge graph. It also contained relationships that
displayed how the nodes interacted with each other. The goal of this project
was to show how we could successfully host Neo4j Knowledge Graphs on Tapis
Pods, and authenticate to them using local Jupyter Notebooks - we created a
notebook for this so that the user could experience the point of view from the
”Local Jupyter Notebook” node.

Figure 4 shows the different nodes and relationships in the KG.

###  4.2 Command-line Interfaces (CLIs)

We developed Command-line Interfaces (CLIs) which will allow users to connect
to HPC systems using a simple terminal/shell application. The first step to
any communication with a TACC system (cluster, Tapis service, etc.) is
authentication. The prerequisite to this is that one must have an account
registered with TACC already; this can be easily checked using the online TACC
portal. Our console applications handle authentication to Tapis with the
user’s TACC account. We demonstrate the authentication process in the
“tapis_auth” notebook described in Section 4.1.1; our CLIs simply transported
that functionality to the console. We developed two separate CLIs. One had the
goal of streamlining Tapis functions such as creation of pods (TapisCL-
ICICLE), while the other had the goal of easily working with data in a Neo4j
pod (ICICONSOLE). As other institutions begin using Tapis services, our
applications will also be to authenticate to them.

Figure 5: Instagram Web Scraper Knowledge Graph.

###  4.3 Application Examples

####  4.3.1 Instagram Web Scraper Knowledge Graph

We also developed an application to gather follower data from Instagram and
feed that information into a Neo4j pod hosted on the TACC Tapis service. Since
every user’s data was stored in a separate JSon file, it offered an
opportunity to explore different ways of loading information into Neo4j
graphs. After uploading the data to the pod, we were able to visualize and
query individual users and their relationships on the Tapis pod shown in
Figure 5.

Figure 6: Train and test results for the ML Asteroid classification model.

####  4.3.2 Neural Network Asteroid Classification

In order to demonstrate the capabilities and flexibility of Neo4j KG system we
developed, we created a dense neural network to classify asteroids as
hazardous or harmless using data from NASA’s, “Nearest Earth Object,”
dataset.[16] This classification was done based on diameter, absolute
magnitude, relative velocity, and estimated miss distance of an asteroid.
Because of the data imbalance between hazardous and non-hazardous asteroids in
the dataset, we achieved only about 75% accuracy during dataset testing.
However, only 3.8% of these predictions were false negatives (that is a
hazardous asteroid was classified as non-hazardous).

Figure 7: Training set losses for the ML Asteroid classification model

Figures 6 and 7 visualize the performance metrics of the machine learning
model. Note that in Fig 6, PRC represents the area under the precision curve
(AUPRC).

These deficiencies, however, proved valuable, since visualizing the model’s
faulty predictions gave us more opportunity to push our data loading program.
Then we visualized these relationships in Figure 8.

In Figure 8, green nodes represent asteroids. Blue nodes represent the
asteroids’ classifications, as well as how the neural network classified them
(hazardous or non-hazardous), and orange nodes represent the nature of the
network’s prediction (false negative, false positive, etc.)

While feeding a neural network’s output into a knowledge graph isn’t the most
obvious usage of Neo4j, it demonstrates that it can present complex, high
volume data in a unique visual medium using simple, short pieces of code; and
it can also do so without extensive knowledge of the backend that goes into
creating these visualizations. Hosting the knowledge graph on a Tapis pod
during this project also demonstrated its efficacy for similar use cases.

Figure 8: Training vs. Testing accuracy with Dropout Regularization.

##  5 Conclusions and Future Work

Throughout the course of our work, our team developed notebooks for stable,
efficient authentication to ICICLE services hosted on TACC using Tapis,
notebooks to host Neo4j Knowledge graphs, and command line applications to
make accessing HPC systems more user-friendly. Through our research, we
created the first instances of Jupyter Notebooks to connect to the
iTapis/ICICLE system and access ICICLE-hosted KGs behind a Kubernetes Pods.
Our interactive Jupyter Notebook Clients successfully address the issue of
democratizing HPC systems by providing a simple and accessible way to create
remotely hosted knowledge graphs by providing an easy plug-and-play that
simplifies the authentication process. A key outcome of our efforts includes
contributing our software to the upcoming ICICLE Software Components Catalog,
which will be released around April, 2023.[14, 15]

Going forward, we will work on expanding the capabilities of our applications
to ensure greater outreach of HPC resources. One of our primary goals is to
develop our console applications to a production standard for easy access to
Tapis resources. Additionally, we want to work with Visual Analytics within
ICICLE to visualize our data outside of Neo4j.

##  6 Acknowledgment

As members of REHS 2022 Program, we are grateful to have been a part of such a
large and impactful project, and we hope that the materials presented in this
paper will be of use for ICICLE developers. The work on this project was
carried out with the support of the San Diego Supercomputer Center Research
Experience for Undergraduates (REHS) program. We also want to acknowledge the
use of several NSF funded resources and services including: the AI Institute
for Intelligent CyberInfrastructure with Computational Learning in the
Environment (ICICLE) (#2112606); SDSC Expanse project (#1928224); TACC
Stampede System (# 1663578) and Tapis projects (#1931439); the NSF Track 3
Award: COre National Ecosystem for CyberinfrasTructure (CONECT) (#2138307);
and finally, the Extreme Science and Engineering Discovery Environment (XSEDE)
(NSF award #ACI-1548562).

## References

  * [1] “Intelligent Cyberinfrastructure with Computational Learning in the Environment (ICICLE).” [Online]. Available: https://icicle.osu.edu/
  * [2] M. Parashar, “Democratizing Science Through Advanced Cyberinfrastructure,” _Computer_ , vol. 55, no. 9, pp. 79–84, 2022.
  * [3] “Knowledge Graph Wikipedia Page.” [Online]. Available: https://en.wikipedia.org/wiki/Knowledge_graph
  * [4] “REHS Program Home Page.” [Online]. Available: https://education.sdsc.edu/studenttech/rehs-home/
  * [5] “REHS Program Home Page.” [Online]. Available: https://github.com/sdsc-hpc-students/REHS2022
  * [6] M. P. Thomas, C. Cheng, and J. E. Castillo, “Development of a Cyberinfrastructure-based Computational Environment for the General Curvilinear Coastal Ocean Model,” in _Congress on Computer Applications and Computational Science_ , no. Ci, 2010.
  * [7] Tapis, “Tapis Project Documentation.” [Online]. Available: https://tapis.readthedocs.io/en/latest/
  * [8] Neo4J, “The Neo4J Graph Data Platform Project.” [Online]. Available: https://neo4j.com/
  * [9] M. B. Milligan, “Jupyter as Common Technology Platform for Interactive HPC Services,” in _Proceedings of the Practice and Experience in Advanced Research Computing PEARC_ , vol. 9, no. 3, 2018, pp. 21–29.
  * [10] J. Stubbs, J. Looney, M. Poindexter, E. Chalhoub, G. J. Zynda, E. S. Ferlanti, M. Vaughn, J. M. Fonner, and M. Dahan, “Integrating Jupyter into Research Computing Ecosystems,” in _PEARC ’20: Practice and Experience in Advanced Research Computing_ , Portland, OR, USA, 2020, pp. 91–98.
  * [11] S. B. Cleveland, A. Jamthe, S. Padhy, J. Stubbs, M. Packard, J. Looney, S. Terry, R. Cardone, M. Dahan, and G. A. Jacobs, “Tapis API Development with Python: Best Practices in Scientific REST API Implementation: Experience implementing a distributed Stream API,” _ACM International Conference Proceeding Series_ , pp. 181–187, 2020.
  * [12] “From graph to knowledge graph: How a graph becomes a knowledge graph.” [Online]. Available: https://neo4j.com/blog/from-graph-to-knowledge-graph-how-a-graph-becomes-a-knowledge-graph/
  * [13] Tapis, “Hello Tapis Tutorial.” [Online]. Available: https://tapis-project.github.io/tutorials/hello/hello/
  * [14] “Hello ICICLE Auth Clients, ICICLE VC3 Software Release.” [Online]. Available: https://github.com/sdsc-hpc-training-org/hello_icicle_auth_clients
  * [15] “ICICLE Software Components Catalog - Release March, 2023.” [Online]. Available: https://icicle.osu.edu/knowledge-transfer/cyberinfrastructure
  * [16] “NASA Near-Earth Object Surveyor Site.” [Online]. Available: https://www.jpl.nasa.gov/missions/near-earth-object-surveyor