Skip to main content

Advertisement

Log in

A Computational Approach to Steady State Correspondence of Regular and Generalized Mass Action Systems

  • Original Article
  • Published:
Bulletin of Mathematical Biology Aims and scope Submit manuscript

Abstract

It has been recently observed that the dynamical properties of mass action systems arising from many models of biochemical reaction networks can be characterized by considering the corresponding properties of a related generalized mass action system. The correspondence process known as network translation in particular has been shown to be useful in characterizing a system’s steady states. In this paper, we further develop the theory of network translation with particular focus on a subclass of translations known as improper translations. For these translations, we derive conditions on the network topology of the translated network which are sufficient to guarantee the original and translated systems share the same steady states. We then present a mixed-integer linear programming algorithm capable of determining whether a mass action system can be corresponded to a generalized system through the process of network translation.

This is a preview of subscription content, log in via an institution to check access.

Access this article

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Fig. 1
Fig. 2
Fig. 3

Similar content being viewed by others

References

  • Boros B (2013) On the dependence of the existence of the positive steady states on the rate coefficients for deficiency-one mass action systems: single linkage class. J Math Chem 51(9):2455–2490

    Article  MathSciNet  MATH  Google Scholar 

  • Conradi C, Shiu A (2014) A global convergence result for processive multisite phosphorylation systems. Available on the arXiv:1404.5524

  • Craciun G, Dickenstein A, Shiu A, Sturmfels B (2009) Toric dynamical systems. J Symb Comput 44(11):1551–1565

    Article  MathSciNet  MATH  Google Scholar 

  • Dasgupta T, Croll DH, Vander Heiden MG, Locasale JW, Alon U, Cantley LC, Gunawardena J (2014) A fundamental trade off in covalent switching and its circumvention in glucose homeostasis. J Biol Chem 289(19):13010–13025

    Article  Google Scholar 

  • Feinberg M (1972) Complex balancing in general kinetic systems. Arch Ration Mech Anal 49:187–194

    Article  MathSciNet  Google Scholar 

  • Feinberg M (1987) Chemical reaction network structure and the stability of complex isothermal reactors: I. The deficiency zero and deficiency one theorems. Chem Eng Sci 42(10):2229–2268

    Article  Google Scholar 

  • Feinberg M (1988) Chemical reaction network structure and the stability of complex isothermal reactors: II. Multiple steady states for networks of deficiency one. Chem Eng Sci 43(1):1–25

    Article  MathSciNet  Google Scholar 

  • Feinberg M (1995) The existence and uniqueness of steady states for a class of chemical reaction networks. Arch Ration Mech Anal 132:311–370

    Article  MathSciNet  MATH  Google Scholar 

  • Feinberg M, Horn F (1977) Chemical mechanism structure and the coincidence of the stoichiometric and kinetic subspaces. Arch Ration Mech Anal 66:83–97

    Article  MathSciNet  MATH  Google Scholar 

  • Hill AV (1910) The possible effects of the aggregation of the molecules of haemoglobin on its dissociation curves. J Physiol 40 (Suppl):iv–vii

  • Horn F (1972) Necessary and sufficient conditions for complex balancing in chemical kinetics. Arch Ration Mech Anal 49:172–186

    Article  MathSciNet  Google Scholar 

  • Johnston MD (2014) Translated chemical reaction networks. Bull Math Biol 76(5):1081–1116

    Article  MathSciNet  MATH  Google Scholar 

  • Johnston MD, Siegel D, Szederkényi G (2012a) Dynamical equivalence and linear conjugacy of chemical reaction networks: new results and methods. MATCH Commun Math Comput Chem 68(2):443–468

    MathSciNet  MATH  Google Scholar 

  • Johnston MD, Siegel D, Szederkényi G (2012b) A linear programming approach to weak reversibility and linear conjugacy of chemical reaction networks. J Math Chem 50(1):274–288

    Article  MathSciNet  MATH  Google Scholar 

  • Johnston MD, Siegel D, Szederkényi G (2013) Computing weakly reversible linearly conjugate chemical reaction networks with minimal deficiency. Math Biosci 241(1):88–98

    Article  MathSciNet  MATH  Google Scholar 

  • Karp RL, Pérez Millán M, Dasgupta T, Dickenstein A, Gunawardena J (2012) Complex-linear invariants of biochemical networks. J Theor Biol 311:130–138

    Article  Google Scholar 

  • Michaelis L, Menten M (1913) Die kinetik der invertinwirkung. Biochem Z 49:333–369

    Google Scholar 

  • Pérez Millán M, Dickenstein A, Shiu A, Conradi C (2012) Chemical reaction systems with toric steady states. Bull Math Biol 74(5):1027–1065

    Article  MathSciNet  MATH  Google Scholar 

  • Müller S, Feliu E, Regensburger G, Conradi C, Shiu A, Dickenstein A (2013). Sign conditions for injectivity of generalized polynomial maps with applications to chemical reaction networks and real algebraic geometry. Available on the arXiv:1311.5493

  • Müller S, Regensburger G (2012) Generalized mass action systems: complex balancing equilibria and sign vectors of the stoichiometric and kinetic-order subspaces. SIAM J Appl Math 72(6):1926–1947

    Article  MathSciNet  MATH  Google Scholar 

  • Rudan J, Szederkényi G, Hangos KM (2014) Efficient computation of alternative structures for large kinetic systems using linear programming. MATCH Commun Math Comput Chem 71(1):71–92

    MathSciNet  Google Scholar 

  • Savageau MA (1969) Biochemical systems analysis II. The steady state solutions for an \(n\)-pool system using a power-law approximation. J Theor Biol 25:370–379

    Article  Google Scholar 

  • Shinar G, Feinberg M (2010) Structural sources of robustness in biochemical reaction networks. Science 327(5971):1389–1391

    Article  Google Scholar 

  • Szederkényi G (2010) Computing sparse and dense realizations of reaction kinetic systems. J Math Chem 47:551–568

    Article  MathSciNet  MATH  Google Scholar 

  • Szederkényi G, Hangos KM (2011a) Finding complex balanced and detailed balanced realizations of chemical reaction networks. J Math Chem 49:1163–1179

    Article  MathSciNet  MATH  Google Scholar 

  • Szederkényi G, Hangos KM, Péni T (2011b) Maximal and minimal realizations of chemical kinetics systems: computation and properties. MATCH Commun Math Comput Chem 65:309–332

    MathSciNet  Google Scholar 

  • Szederkényi G, Hangos KM, Tuza Z (2012c) Finding weakly reversible realizations of chemical reaction networks using optimization. MATCH Commun Math Comput Chem 67:193–212

    MathSciNet  Google Scholar 

  • Vol’pert AI, Hudjaev SI (1985) Analysis in classes of discontinuous functions and equations of mathematical physics. Martinus Nijhoff Publishers, Dordrecht

    MATH  Google Scholar 

Download references

Acknowledgments

The author acknowledges helpful comments from Gabor Szedérkenyi and David F. Anderson who suggested several significant improvements in the early drafts of this paper. The author is also thankful for the comments from the anonymous reviewers which have greatly increased the readability of the paper.

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Matthew D. Johnston.

Electronic supplementary material

Below is the link to the electronic supplementary material.

Supplementary material 1 (pdf 350 KB)

Appendices

Appendix 1: Resolvability

In order to make the connection between the results of Johnston (2014), Definition 9, and Theorem 1, we briefly introduce here some background on resolvability. We begin by defining the following concept, which was introduced informally in Sect. 2.

Definition 12

Suppose \(\mathcal {N} = (\mathcal {S},\mathcal {C},\mathcal {R})\) is a chemical reaction network. We say a subgraph \(P = \{ \mathcal {C}_P,\mathcal {R}_P \}\) where \(\mathcal {C}_P \subseteq \mathcal {C}\) and \(\mathcal {R}_{P} \subseteq \mathcal {R}\) is a path from \(C_i\) to \(C_j\) if:

  1. 1.

    there is an ordering \(\{ \nu (1), \nu (2), \ldots , \nu (l) \} \subseteq \mathcal {C}\) with all \(\nu (k)\), \(k=1,\ldots , l,\) distinct such that \(C_i = C_{\nu (1)} \rightarrow C_{\nu (2)} \rightarrow \cdots \rightarrow C_{\nu (l)} = C_j\);

  2. 2.

    \(\mathcal {C}_P = \left\{ \nu (1), \nu (2), \ldots , \nu (l)\right\} \subseteq \mathcal {C}\); and

  3. 3.

    \(\mathcal {R}_P = \left\{ \big (\nu (1),\nu (2)\big ), \ldots , \big (\nu (l-1),\nu (l) \big ) \right\} \subseteq \mathcal {R}\).

We will let \(\mathcal {P}(i,j)\) denote the set of all paths from \(C_i\) to \(C_j\).

Now consider the following.

Definition 13

Suppose \(\mathcal {N} =(\mathcal {S},\mathcal {C},\mathcal {R})\) is a chemical reaction network. We say a subgraph \(T = \{\mathcal {C}_{T},\mathcal {R}_{T}\}\) where \(\mathcal {C}_{T} \subseteq \mathcal {C}\) and \(\mathcal {R}_{T} \subseteq \mathcal {R}\) is a spanning i-tree on \(\mathcal {C}_T\) if:

  1. 1.

    \(\mathcal {R}_T\) spans \(\mathcal {C}_{T}\);

  2. 2.

    \(T\) contains no directed or undirected cycles; and

  3. 3.

    \(T\) has a unique sink at \(C_i\).

We will let \(\mathcal {T}(i)\) denote the set of all spanning \(i\)-trees on \(\mathcal {C}_T\).

In general, an arbitrary subset \(\mathcal {C}_T \subseteq \mathcal {C}\) may not permit any spanning \(i\)-trees; however, if the network is weakly reversible, there is at least one spanning \(i\)-tree on the set \(\mathcal {C}_T = L_{\theta }\) where \(L_{\theta }\) is the linkage class which contains \(C_i\). These are the components to which we will be interested in restricting. We may define the following for weakly reversible networks.

Definition 14

Consider a weighted chemical reaction network \(\mathcal {N}(\mathcal {K}) = (\mathcal {S},\mathcal {C},\mathcal {R},\mathcal {K})\) which is weakly reversible. Then the tree constant for \(i \in \mathcal {C}\) is given by

$$\begin{aligned} K_{i} = \sum _{T \in \mathcal {T}(i)} \prod _{(i^*,j^*) \in T} k(i^*,j^*) \end{aligned}$$
(24)

where \(\mathcal {T}(i)\) is the set of spanning \(i\)-trees on the component \(\mathcal {C}_T = L_{\theta }\) where \(C_i \in L_{\theta }\).

For example, for the network

we have

$$\begin{aligned} K_1 = k_2k_4k_5+k_3k_4k_5 \end{aligned}$$

corresponding to the two spanning trees with unique sinks at \(C_1\):

Remark 9

An immediate consequence of Definition 13 is that, given any \(i\)-tree which spans \(\mathcal {C}_T\) and any \(C_j \in \mathcal {C}_T\), there is a unique path from \(C_j\) to \(C_i\). We will make use of this fact in the proofs contained in “Appendix 2”.

Remark 10

We will denote the tree constants of the translated weighted networks \(\tilde{\mathcal {N}}(\tilde{\mathcal {B}}) = (\tilde{\mathcal {S}},\tilde{\mathcal {C}},\tilde{\mathcal {C}}_K,\tilde{\mathcal {R}},\tilde{\mathcal {B}})\) as \(\tilde{B}_{i'}\), \(i' = 1, \ldots , \tilde{m}\). Note also that the convention of referring to these algebraic constructs as “tree constants” is original to Johnston (2014).

Appendix 2: Proof of Theorem 1 and Corollary 1

In this section, we prove Theorem 1 and the equivalence of Theorem 1 and Corollary 1. We first motivate the proof for Theorem 1 through Example 2 from Sect. 3.2.

Example 2: We have that \(\tilde{\mathcal {C}}_I = \{ 6 \}\) and \(h^{-1}(6) = \{ 6, 8 \}\). That is, the complexes \(C_6 = X_3 + X_7\) and \(C_8 = X_1 + X_7\) are both mapped to the translated complex \(\tilde{C}_{6} = X_1 + X_2 + X_3 + X_7\). Following (18), we choose \((\tilde{C}_6)_K = C_6 = X_3 + X_7\) and note that \(y_8 - y_6 = (1,0,-1,0,0,0,0,0) = (\tilde{y}_K)_1 - (\tilde{y}_K)_3\) so that \(\tilde{\mathcal {C}}_R = \{ 1, 3\}\). After manipulation, this yields the identity

$$\begin{aligned} \mathbf {x}^{y_8} = \left( \frac{\mathbf {x}^{(\tilde{y}_K)_1}}{\mathbf {x}^{(\tilde{y}_K)_3}} \right) \mathbf {x}^{y_6} \; \; \; \Longrightarrow \; \; \; x_1 x_7 = \left( \frac{x_1}{x_3} \right) x_3 x_7. \end{aligned}$$
(25)

Equation (25) suggests that the monomial \(\mathbf {x}^{y_8} = x_1x_7\), which appears in (3) but not in (6), may be incorporated in (6) by relating it to the monomial \(\mathbf {x}^{y_6} = x_3x_7\). In particular, we can write the rate for reaction \(12\) in (12) as

$$\begin{aligned} k_{12} x_1 x_7 = \left[ k_{12} \left( \frac{x_1}{x_3} \right) \right] x_3 x_7. \end{aligned}$$

That is, we reimagine reaction 12 as occurring from the complex \(C_6 = X_3 + X_7\) with the state-dependent weight \(k_{12} \cdot x_1 / x_3\). We obtain dynamical equivalence between (12) and (14) by choosing the kinetic complexes (18) and the weights \(\tilde{b}_i = k_i\) for \(i=1, \ldots , 14\), \(i \not = 12\), and \(\tilde{b}_{12} = k_{12} \cdot x_1/x_3\). In order to remove the dependence on the ratio \(x_1/x_3\), we make the following observations:

Fig. 4
figure 4

Four possible configurations for a spanning \(1\)-tree for the network (14). Highlighted are the improper complex \(\tilde{C}_6\) (pink), bottleneck complex \(\tilde{C}_2\) (green), and resolving complex \(\tilde{C}_1\) (blue). The four constructions (28) are realized with \(\tilde{T}^*\) (red arrows), \(\tilde{T}^{**}\) (blue arrow), and \(\tilde{X}^*\) (green arrows). Notice that \(\tilde{T}^*\), \(\tilde{T}^{**}\), and \(\tilde{X}^*\) may be chosen independently (Color figure online)

  1. 1.

    Network structure simplifies steady state representation: Since \(\tilde{\delta } = 0\) for the network (14), it follows that all steady states \(\mathbf {x} \in \mathbb {R}_{> 0}^n\) of the corresponding generalized system (6) satisfy

    $$\begin{aligned} \tilde{A}(\tilde{\mathcal {B}}) \cdot \varPsi (\mathbf {x}) = \mathbf {0} \end{aligned}$$

    where \(\tilde{A}(\tilde{\mathcal {B}})\) is the Kirchhoff matrix (4) corresponding to (14). Since (14) consists of a single linkage class, it follows by Corollary 4 of Craciun et al. (2009) that

    $$\begin{aligned} \varPsi (\mathbf {x}) \in \text{ span } \{ (\tilde{B}_1, \ldots , \tilde{B}_8)\}. \end{aligned}$$
    (26)

    where \(\tilde{B}_1, \ldots , \tilde{B}_8\) are the tree constants given in “Appendix 1” derived from the network (14) with rate constants given above. It follows from (18) and (26) that, at every steady state of (6), we have

    $$\begin{aligned} \frac{x_1}{x_3} = \frac{\mathbf {x}^{(\tilde{y}_K)_1}}{\mathbf {x}^{(\tilde{y}_K)_3}} = \frac{\tilde{B}_1}{\tilde{B}_3}. \end{aligned}$$
    (27)

    Notice that, since \(\tilde{A}(\tilde{\mathcal {B}})\) depends upon the state-dependent ratio \(x_1/x_3\), we must allow that \(\tilde{B}_1, \ldots , \tilde{B}_8\) do as well.

  2. 2.

    Construction of \(\tilde{B}_1\): We now use the observation that every path from \(\tilde{C}_6\) to \(\tilde{C}_1\) in (14) goes through \(\tilde{C}_2\) to construct the tree constant \(\tilde{B}_1\). Our first step is to identify subcomponents \(\tilde{\mathcal {C}}(6,2)\) and \(\tilde{\mathcal {C}}(2,1)\) consisting of all complexes which lie on any path from \(\tilde{C}_6\) to \(\tilde{C}_2\) or \(\tilde{C}_2\) to \(\tilde{C}_1\), respectively. This gives \(\tilde{\mathcal {C}}(6,2) = \{ 2, 6, 7, 8 \}\) and \(\tilde{\mathcal {C}}(2,1) = \{ 1, 2 \}\). Our second step is to identify the set of all \(2\)-trees which span \(\tilde{\mathcal {C}}(6,2)\) and all \(1\)-trees which span \(\tilde{\mathcal {C}}(2,1)\). We denote these by \(\tilde{\mathcal {T}}(6,2)\) and \(\tilde{\mathcal {T}}(2,1)\), respectively. Our third step is to identify a set of configurations of edges on the remaining complexes, denoted \(\tilde{\mathcal {X}}(6,1)\), which connect each complex by a unique path to either \(\tilde{\mathcal {C}}(6,2)\) or \(\tilde{\mathcal {C}}(2,1)\). We may now construct a spanning \(1\)-tree \(\tilde{T} \in \mathcal {\mathcal {T}}(1)\) by considering

    $$\begin{aligned} \tilde{T} = \tilde{T}^* \cup \tilde{T}^{**} \cup \tilde{X}^* \end{aligned}$$
    (28)

    where \(\tilde{T}^* \in \tilde{\mathcal {T}}(6,2)\), \(\tilde{T}^{**} \in \tilde{\mathcal {T}}(2,1)\), and \(X^* \in \tilde{\mathcal {X}}(6,1)\). The property that every path from \(\tilde{C}_6\) to \(\tilde{C}_1\) goes through \(\tilde{C}_2\) guarantees that every spanning \(1\)-tree may be constructed in this way. The four possible configurations are contained in Fig. 4. (Construction of \(\tilde{\mathcal {T}}(3)\) follows similarly.) We have

    $$\begin{aligned} \begin{aligned} \tilde{B}_1&= \tilde{b}_2 (\tilde{b}_4 + \tilde{b}_5) \tilde{b}_6 \tilde{b}_8 (\tilde{b}_9 + \tilde{b}_{12}) \tilde{b}_{11} \tilde{b}_{14} \\ \tilde{B}_3&= \tilde{b}_1 \tilde{b}_3 \tilde{b}_6 \tilde{b}_8 (\tilde{b}_9 + \tilde{b}_{12}) \tilde{b}_{11} \tilde{b}_{14}. \end{aligned} \end{aligned}$$
    (29)
  3. 3.

    Ratio \(x_1/x_3\) is constant at every steady state: From (27) and (29), we have

    $$\begin{aligned} \frac{x_1}{x_3} = \frac{\tilde{B}_1}{\tilde{B}_3} = \frac{\tilde{b}_2 (\tilde{b}_4 + \tilde{b}_5) \left[ \tilde{b}_6 \tilde{b}_8 (\tilde{b}_9 + \tilde{b}_{12}) \tilde{b}_{11} \tilde{b}_{14}\right] }{\tilde{b}_1 \tilde{b}_3 \left[ \tilde{b}_6 \tilde{b}_8 (\tilde{b}_9 + \tilde{b}_{12}) \tilde{b}_{11} \tilde{b}_{14} \right] } = \frac{\tilde{b}_2 (\tilde{b}_4 + \tilde{b}_5)}{\tilde{b}_1 \tilde{b}_3}. \end{aligned}$$
    (30)

    Since (30) does not depend upon \(\tilde{b}_{12}\), it follows that the ratio \(x_1/x_3\) is constant at any steady state of (6). We may therefore incorporate reaction \(12\) into the network (14) by using the rescaled weight

    $$\begin{aligned} k_{12} x_1 x_7 = \left[ k_{12} \left( \frac{x_1}{x_3} \right) \right] x_3 x_7 = k_{12} \left( \frac{k_2 (k_4 + k_5)}{k_1 k_3}\right) x_3 x_7. \end{aligned}$$

    That is, we obtain steady state equivalence between (12) and (14) with kinetic complex set (18) by setting \(\tilde{k}_{i} = k_i\) for \(i=1,\ldots , 14\), \(i \not = 12\), and

    $$\begin{aligned} \tilde{k}_{12} = \left( \frac{k_2(k_4+k_5)}{k_1k_3} \right) . \end{aligned}$$

The key feature in obtaining steady state equivalence is that the state-dependent weight \(\tilde{b}_{12}\) does not appear in the ratio \(\tilde{B}_1 / \tilde{B}_3\). Since every path from \(\tilde{C}_6\) to either \(\tilde{C}_1\) or \(\tilde{C}_3\) passes through \(\tilde{C}_2\), it follows that set of configurations \(\tilde{\mathcal {T}}(6,2)\) in (28), which contains \(\tilde{b}_{12}\), is common to both the construction of the trees in \(\tilde{\mathcal {T}}(1)\) and \(\tilde{\mathcal {T}}(3)\) and may be chosen independently of the remaining edges. It follows that the corresponding algebraic combination of rates must factor in (24) and therefore cancel in the ratio \(\tilde{B}_1/\tilde{B}_3\).

We now generalize the argument given above to prove Theorem 1. In particular, we will use the three-part construction (28) of spanning \(i\)-trees \(\tilde{\mathcal {T}}(i)\).

Proof of Theorem 1

Suppose that \(\tilde{\mathcal {N}}(\tilde{\mathcal {B}}) = (\tilde{\mathcal {S}},\tilde{\mathcal {C}},\tilde{\mathcal {C}}_K,\tilde{\mathcal {R}},\tilde{\mathcal {B}})\) is an improper weighted translation of a weighted chemical reaction network \(\mathcal {N}(\mathcal {K}) = (\mathcal {S},\mathcal {C},\mathcal {R},\mathcal {K})\) according to Definition 7. Suppose furthermore that \(\tilde{\mathcal {N}}(\tilde{\mathcal {B}})\) is weakly reversible, \(\tilde{\delta } = 0\), and \(\tilde{S}_I \subseteq \tilde{S}_K\).

Since \(\tilde{S}_I \subseteq \tilde{S}_K\), by Definition 11 there is a non-empty resolving complex set \(\tilde{\mathcal {C}}_R\). Let \(\tilde{B}_{i'}\), \(i' = 1, \ldots , \tilde{m}\), denote the tree constants (24) corresponding to the weighted reaction graph of \(\tilde{\mathcal {N}}(\tilde{\mathcal {B}})\).

Consider any pair \(i,j \in h^{-1}(k')\) where \(k' \in \tilde{\mathcal {C}}_I\) and define the ratios

$$\begin{aligned} \tilde{B}_{i,j} = \prod _{i',j'=1}^{\tilde{m}} \left( \frac{\tilde{B}_{j'}}{\tilde{B}_{i'}} \right) ^{c(i',j')} = \prod _{\theta =1}^{\tilde{\ell }} \prod _{i',j' \in \tilde{L}_{\theta }} \left( \frac{\tilde{B}_{j'}}{\tilde{B}_{i'}} \right) ^{c(i',j')} \end{aligned}$$
(31)

where the final decomposition into linkage classes can be made by condition \(1.\)(b) of Definition 11. We will show that (31) does not depend on any rate constant from any complex in the set \(\tilde{\mathcal {C}}_I\), which are the rates which may depend upon the state \(\mathbf {x} \in \mathbb {R}_{> 0}^n\).

Fix a \(\theta \in \{ 1, \ldots , \tilde{\ell } \}\) such that \(\tilde{\mathcal {C}}_R \cap \tilde{L}_{\theta } \not = \emptyset \). Notice that condition \(1.\)(b) of Definition 11 implies that there are at least two \(i', j' \in \tilde{\mathcal {C}}_R \cap \tilde{L}_{\theta }\) such that \(j' \not = i'\). We consider two cases.

Case 1: Suppose \(\tilde{\mathcal {C}}_I \cap \tilde{L}_{\theta } = \emptyset \). Since the spanning \(i\)-trees only span \(\tilde{L}_\theta \), it follows that for any \(p' \in \tilde{\mathcal {C}}_I\), we have that

$$\begin{aligned} \prod _{i',j' \in \tilde{L}_{\theta }} \left( \frac{\tilde{B}_{j'}}{\tilde{B}_{i'}} \right) ^{c(i',j')} \end{aligned}$$
(32)

does not depend on any reaction from any \(p' \in \tilde{\mathcal {C}}_I\). This completes consideration of Case 1.

Case 2: Suppose there is an \(p' \in \tilde{\mathcal {C}}_I \cap \tilde{L}_{\theta }\). By assumption \(2.\) of Theorem 1, there is a \(k' \in \tilde{L}_{\theta }\) such that for every path \(\tilde{P} = \{ \tilde{\mathcal {C}}_{\tilde{P}},\tilde{\mathcal {R}}_{\tilde{P}} \}\) from \(\tilde{C}_{p'}\) to \(\tilde{C}_{i'}\), we have \(k' \in \tilde{\mathcal {C}}_{\tilde{P}}\). Let \(\tilde{\mathcal {P}}(p',k')\) and \(\tilde{\mathcal {P}}(k',i')\) denote the set of all paths from \(\tilde{C}_{p'}\) to \(\tilde{C}_{k'}\) and from \(\tilde{C}_{k'}\) to \(\tilde{C}_{i'}\), respectively. Now define

$$\begin{aligned} \tilde{\mathcal {C}}(p',k') = \bigcup _{\tilde{P} \in \tilde{\mathcal {P}}(p',k')} \tilde{\mathcal {C}}_{\tilde{P}} \; \; \; \text{ and } \; \; \; \tilde{\mathcal {R}}(p',k') = \bigcup _{\tilde{P} \in \tilde{\mathcal {P}}(p',k')} \tilde{\mathcal {R}}_{\tilde{P}}, \end{aligned}$$
$$\begin{aligned} \tilde{\mathcal {C}}(k',i') = \bigcup _{\tilde{P} \in \tilde{\mathcal {P}}(k',i')} \tilde{\mathcal {C}}_{\tilde{P}} \; \; \; \text{ and } \; \; \; \tilde{\mathcal {R}}(k',i') = \bigcup _{\tilde{P} \in \tilde{\mathcal {P}}(k',i')} \tilde{\mathcal {R}}_{\tilde{P}}. \end{aligned}$$

Let \(\tilde{\mathcal {T}}(p',k')\) denote the set of all \(k'\)-trees which span \(\tilde{\mathcal {C}}(p',k')\), and \(\tilde{\mathcal {T}}(k',i')\) denote the set of all \(i'\)-trees which span \(\tilde{\mathcal {C}}(k',i')\). Note that every path from a complex in \(\tilde{\mathcal {C}}(p',k')\) to \(\tilde{C}_{i'}\) goes through \(\tilde{C}_{k'}\) and that no path from a complex in \(\tilde{\mathcal {C}}(k',i')\) passes through \(\tilde{\mathcal {C}}(p',k')\) (since it would return to \(\tilde{C}_{k'}\)).

We may write any \(\tilde{T} \in \tilde{\mathcal {T}}(i')\) as

$$\begin{aligned} \tilde{T} = \tilde{T}^* \cup \tilde{T}^{**} \cup \tilde{X}^* \end{aligned}$$
(33)

where \(\tilde{T}^* \in \tilde{\mathcal {T}}(p',k')\), \(\tilde{T}^{**} \in \tilde{\mathcal {T}}(k',i')\), and \(\tilde{X}^* \in \tilde{\mathcal {X}}(p',i')\), where \(\tilde{\mathcal {X}}(p',i')\) is the set of configuration of reactions which connect the remaining complexes in \(\tilde{L}_\theta \) along a unique path to \(\tilde{\mathcal {C}}(p',k') \cup \tilde{\mathcal {C}}(k',i')\).

We now construct \(\tilde{B}_{i'}\) by considering all possible trees \(\tilde{T} \in \tilde{\mathcal {T}}(i')\) constructed by (33). By the independence of \(T^*\), \(T^{**}\), and \(X^*\) in (33), we have that

(34)

Now consider any \(j' \in \tilde{\mathcal {C}}_R \cap \tilde{L}_{\theta }\), \(j' \not = i'\). By assumption \((*)\), we have that every path from \(C_{p'}\) to \(C_{j'}\) also goes through \(C_{k'}\), so that \(B_{j'}\) has the same form as (34). In particular, \(\tilde{\mathcal {T}}(p',k')\) is common to both \(\tilde{\mathcal {T}}(i')\) and \(\tilde{\mathcal {T}}(j')\) in (33). After simplifying, it follows that

$$\begin{aligned} \frac{\tilde{B}_{j'}}{\tilde{B}_{i'}} \!=\! \displaystyle {\frac{ \left( \sum _{\tilde{T}^{**} \in \tilde{\mathcal {T}}(k',j')} \prod _{(i^*,j^*) \in \tilde{T}^{**}} \tilde{b}(i^*,j^*) \right) \left( \sum _{\tilde{X}^* \in \tilde{\mathcal {X}}(p',j')} \prod _{(i^*,j^*) \in \tilde{X}^*} \tilde{b}(i^*,j^*) \right) }{\left( \sum _{\tilde{T}^{**} \in \tilde{\mathcal {T}}(k',i')} \prod _{(i^*,j^*) \in \tilde{T}^{**}} \tilde{b}(i^*,j^*) \right) \left( \sum _{\tilde{X}^* \in \tilde{\mathcal {X}}(p',i')} \prod _{(i^*,j^*) \in \tilde{X}^*} \tilde{b}(i^*,j^*) \right) }.}\nonumber \\ \end{aligned}$$
(35)

The equation (35) does not depend on any reaction from any complex in \(\tilde{\mathcal {C}}(p',k')\). Since \(p' \in \tilde{\mathcal {C}}_I \cap \tilde{L}_{\theta }\) was chosen arbitrarily, it follows that (32) does not depend on any reaction from a complex in \(\tilde{\mathcal {C}}_I\). Now consider an arbitrary pair \(i,j \in h^{-1}(k')\) where \(k' \in \tilde{\mathcal {C}}_I\). Applying the result of either case \(1\) of case \(2\) to (32), we have that \(\tilde{B}_{i,j}\) given in (31) does not depend on any reaction from any complex in \(\tilde{\mathcal {C}}_I\). This completes consideration of Case 2.

It remains to construct a weight set \(\tilde{\mathcal {K}}\) such that \(\tilde{\mathcal {N}}(\tilde{\mathcal {K}})\) is steady state equivalent to \(\mathcal {N}(\mathcal {K})\). We follow the technique of the proof of Lemma 4 in Johnston (2014). For every reaction in \(\mathcal {N}(\mathcal {K})\) corresponding to a source complex which is not a kinetic complex in \(\tilde{\mathcal {N}}(\tilde{\mathcal {B}})\), we must rescale the weight. Supposing that \(i, j \in h^{-1}(k')\) for some \(k' \in \tilde{\mathcal {C}}_I\), at steady state we have

$$\begin{aligned} \mathbf {x}^{y_j} = \left[ \prod _{i',j'=1}^{\tilde{m}} \left( \frac{\mathbf {x}^{(\tilde{y}_K)_{j'}}}{\mathbf {x}^{(\tilde{y}_K)_{i'}}} \right) ^{c(i',j')}\right] \mathbf {x}^{y_i} = \left[ \prod _{i',j'=1}^{\tilde{m}} \left( \frac{\tilde{B}_{j'}}{\tilde{B}_{i'}} \right) ^{c(i',j')} \right] \mathbf {x}^{y_i} \end{aligned}$$
(36)

where the first equality follows from condition \(1.\) of Definition 11, and the second equality follows from the fact that \(\tilde{\delta } = 0\) and (35). By the argument so far, the coefficient in (36) does not depend upon the state \(\mathbf {x} \in \mathbb {R}_{> 0}^n\). We may now take any complex from the set \(h^{-1}(k')\) as the kinetic complex \((\tilde{C}_K)_{k'}\) and use (36) to rescale the reactions from the remaining complexes which are mapped to \(\tilde{C}_{k'}\). This process forms our weight set \(\tilde{\mathcal {B}}\). Note that condition \(1.(b)\) of Definition 7 guarantees that we may not rescale any reaction in such a way that the resulting net push is not representable as a weighted sum of reaction vectors from the corresponding source complex in \(\tilde{\mathcal {N}}(\tilde{\mathcal {B}})\).

Since \(\tilde{\mathcal {B}}\) and \(\tilde{\mathcal {K}}\) correspond to the same network structure, it follows that \(\mathcal {N}(\mathcal {K})\) and \(\tilde{\mathcal {N}}(\tilde{\mathcal {B}})\) are steady state resolvable, which completes the proof. \(\square \)

Proof of Corollary 1

It is sufficient to prove the equivalence of the technical condition (\(*\)) of Theorem 1 and the four technical conditions of Corollary 1.

Theorem  1 \(\Longrightarrow \) Corollary 1: Suppose condition (\(*\)) of Theorem 1 holds. That is, for every \(p' \in \tilde{\mathcal {C}}_I\), there is a \(k' \in \tilde{\mathcal {C}}\) such that every path from \(\tilde{C}_{p'}\) to \(\tilde{C}_{i'}\) where \(i' \in \tilde{\mathcal {C}}_R\) goes through \(\tilde{C}_{k'}\). For a given \(p' \in \tilde{\mathcal {C}}_I\), define \(k'(p')\) to be the corresponding \(k'\) in condition \((*)\) and define \(\tilde{\mathcal {C}}^*(p')\) to be the set of all complexes in \(\tilde{\mathcal {C}}\) which can be reached from \(p'\) without passing through \(k'(p')\). Note that, by assumption, \(\tilde{\mathcal {C}}^*(p') \cap \tilde{\mathcal {C}}_R = \emptyset \) and \(\tilde{\mathcal {C}}^*(p') \cap k'(p') = \emptyset \). We define

$$\begin{aligned} \tilde{\mathcal {C}}^* = \bigcup _{p' \in \tilde{\mathcal {C}}_I} \tilde{\mathcal {C}}^*(p') \; \; \; \text{ and } \; \; \; \tilde{\mathcal {R}}^* = \mathop {\bigcup _{(i',j') \in \tilde{\mathcal {R}}}}_{i' \in \tilde{\mathcal {C}}^*}(i',j'). \end{aligned}$$

By construction, these sets satisfy conditions \(1.\) and \(2.\) of Corollary 1.

We now construct the supplemental sets \(\tilde{\mathcal {C}}^{**}\) and \(\tilde{\mathcal {R}}^{**}\). Notice that \(\tilde{\mathcal {C}}^{**}\) may contain complexes \(k'\) selected earlier but that there must be a path from such a complex to another \(k'\). We therefore define

$$\begin{aligned} \tilde{\mathcal {C}}^{**} = \left[ \bigcup _{p' \in \tilde{\mathcal {C}}_I} k'(p') \right] \setminus \tilde{\mathcal {C}}^*. \end{aligned}$$

We also define \(\tilde{\mathcal {R}}^{**}\) to be the set of all pairs \((k',p')\) where (1) \(k' \in \tilde{\mathcal {C}}^{**}\), and (2) for a given \(k'\), \(p' \in \tilde{\mathcal {C}}_I\) is such that there is a path from \(\tilde{C}_{p'}\) to \(\tilde{C}_{k'}\) in the network \((\tilde{\mathcal {S}},\tilde{\mathcal {C}}^* \cup \tilde{\mathcal {C}}^{**},\tilde{\mathcal {R}}^*)\). Notice that these pairs need not be in the network \(\tilde{\mathcal {N}}(\tilde{\mathcal {B}})\).

By construction, each linkage class of \((\tilde{\mathcal {S}},\tilde{\mathcal {C}}^* \cup \tilde{\mathcal {C}}^{**},\tilde{\mathcal {R}}^*)\) has a unique sink. (Otherwise, we would contradict condition \(2.\) of Corollary 1.) The addition of the reaction set \(\tilde{\mathcal {R}}^{**}\) clearly makes this network weakly reversible so that we have satisfied condition \(3.\) of Corollary 1. Condition \(4.\) follows from the uniqueness of the sinks in each linkage class prior to adding \(\tilde{\mathcal {R}}^{**}\), since these sinks correspond to complexes in \(\tilde{\mathcal {C}}^{**}\), and we are done.

Corollary  1 \(\Longrightarrow \) Theorem 1: Suppose that there are sets \(\tilde{\mathcal {C}}^*\), \(\tilde{\mathcal {R}}^*\), \(\tilde{\mathcal {C}}^{**}\), and \(\tilde{\mathcal {R}}^{**}\) which satisfy conditions \(1-4.\) of Corollary 1. Take an arbitrary \(p' \in \tilde{\mathcal {C}}_I\). By condition \(1.\), we have that \(p' \in \tilde{\mathcal {C}}^*\). By condition \(3.\) and \(4.\), we have that the each linkage class of the network \((\tilde{\mathcal {S}},\tilde{\mathcal {C}}^* \cup \tilde{\mathcal {C}}^{**}, \tilde{\mathcal {R}}^*)\) has a unique sink at some complex in \(\tilde{\mathcal {C}}^{**}\). From condition \(2.\), however, we have that every path from \(p'\) to this complex in \(\tilde{\mathcal {N}}(\tilde{\mathcal {B}})\) is contained in \((\tilde{\mathcal {S}},\tilde{\mathcal {C}}^* \cup \tilde{\mathcal {C}}^{**}, \tilde{\mathcal {R}}^*)\). Since \(\tilde{\mathcal {C}}^* \cup \tilde{\mathcal {C}}_R = \emptyset \) by condition \(1.\), we have that for every \(p' \in \tilde{\mathcal {C}}_I\) there is a \(k' \in \tilde{\mathcal {C}}\) (the identified element in \(\tilde{\mathcal {C}}^{**}\)) such that every path from \(\tilde{C}_{p'}\) to \(\tilde{C}_{i'}\) where \(i' \in \tilde{\mathcal {C}}_R\) goes through \(\tilde{C}_{k'}\). It follows that condition (\(*\)) of Theorem 1 is satisfied, and we are done. \(\square \)

Appendix 3: Code for Sect. 4

The following code corresponds to that derived in Sect. 4. We divide the code into four sections: parameters, decision variables, objective functions, and constraint sets.

Parameters:

figure a

Decision variables:

figure b

Objective functions:

figure c
figure d

Constraint Sets:

figure e
figure f
figure g
figure h
figure i
figure j
figure k
figure l

Rights and permissions

Reprints and permissions

About this article

Check for updates. Verify currency and authenticity via CrossMark

Cite this article

Johnston, M.D. A Computational Approach to Steady State Correspondence of Regular and Generalized Mass Action Systems. Bull Math Biol 77, 1065–1100 (2015). https://doi.org/10.1007/s11538-015-0077-5

Download citation

  • Received:

  • Accepted:

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s11538-015-0077-5

Keywords

Mathematics Subject Classification

Navigation