Abstract
We introduce a mixedinteger linear programming (MILP) framework capable of determining whether a chemical reaction network possesses the property of being endotactic or strongly endotactic. The network property of being strongly endotactic is known to lead to persistence and permanence of chemical species under genetic kinetic assumptions, while the same result is conjectured but as yet unproved for general endotactic networks. The algorithms we present are the first capable of verifying endotacticity of chemical reaction networks for systems with greater than two constituent species. We implement the algorithms in the opensource online package CoNtRol and apply them to a large sample of networks from the European Bioinformatics Institute’s BioModels Database. We use strong endotacticity to establish for the first time the permanence of a wellstudied circadian clock mechanism.
Similar content being viewed by others
References
Achterberg T (2009) SCIP: Solving constraint integer programs. Math Program Comput 1(1):1–41. http://mpc.zib.de/index.php/MPC/article/view/4
Anderson DF (2011) A proof of the global attractor conjecture in the single linkage class case. SIAM J Appl Math 71(4):1487–1508
Angeli D, Leenheer P, Sontag E (2007) A petri net approach to the study of persistence in chemical reaction networks. Math Biosci 210(2):598–618
Angeli D, Sontag E (2008) Translationinvariant monotone systems, and a global convergence result for enzymatic futile cycles. Nonlinear Anal Ser B Real World Appl 9:128–140
Conradi C, Shiu A (2014) A global convergence result for processive multisite phosphorylation systems. Bull Math Bio 77(1):126–155
Craciun G, Dickenstein A, Shiu A, Sturmfels B (2009) Toric dynamical systems. J Symb Comput 44(11):1551–1565
Craciun G, Pantea C, Nazarov F (2013) Persistence and permanence of mass action and powerlaw dynamical systems. SIAM J Appl Math 73(1):305–329
Donnell P, Banaji M, Marginean A, Pantea C (2014) CoNtRol: an open source framework for the analysis of chemical reaction networks. Bioinformatics 30(11):1633–1634
Feinberg M (1972) Complex balancing in general kinetic systems. Arch Ration Mech Anal 49:187–194
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
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
Feinberg M (1995) The existence and uniqueness of steady states for a class of chemical reaction networks. Arch Ration Mech Anal 132:311–370
Feinberg M (1995) Multiple steady states for chemical reaction networks of deficiency one. Arch Ration Mech Anal 132:371–406
Freedman HI, Moson P (1990) Persistence definitions and their connections. Proc Am Math Soc 109(4):1025–1033
Goldbeter A, Koshland DE (1981) An amplified sensitivity arising from covalent modification in biological systems. Proc. Natl. Acad. Sci. U.S.A. 78(11):6840–6844
Gopalkrishnan M, Miller E, Shiu A (2014) A geometric spproach to the global attractor conjecture. SIAM J Appl Dyn Syst 13(2):758–797
Gunawardena J (2005) Multisite protein phosphorylation makes a good threshold but can be a poor switch. Proc Natl Acad Sci USA 102(41):14617–14622
Hill A (2010) The possible effects of the aggregation of the molecules of haemoglobin on its dissociation curves. J Physiol 40(4):iv–vii
Hofbauer J, Sigmund K (1987) Permanence for replicator equations. In: Kurzhanski AB, Sigmund K (eds) Dynamical systems. Lecture Notes in economics and mathematical systems 287:70–91
Horn F (1972) Necessary and sufficient conditions for complex balancing in chemical kinetics. Arch Ration Mech Anal 49:172–186
Horn F, Jackson R (1972) General mass action kinetics. Arch Ration Mech Anal 47:81–116
Johnston MD (2014) Translated chemical reaction networks. Bull Math Bio 76(5):1081–1116
Johnston MD, Siegel D, Szederkényi G (2012) A linear programming approach to weak reversibility and linear conjugacy of chemical reaction networks. J Math Chem 50(1):274–288
Leloup JC, Goldbeter A (1999) Chaos and birhythmicity in a mode for circadian oscillations of the PER and TIM proteins in drosophila. J Theor Biol 198:445–459
Li C, Donizelli M, Rodriguez N, Dharuri H, Endler L, Chelliah L, Li L, He E, Henry A, Stefan MI, Snoep JL, Hucka M, Le Novère N, Laibe C (2010) BioModels database: an enhanced, curated and annotated resource for published quantitative kinetic models. BMC Syst Biol 4:92
Makhorin A (2010) GNU Linear Programming Kit Reference Manual Version 4.45. http://kam.mff.cuni.cz/~elias/glpk
Michaelis L, Menten M (1913) Die kinetik der invertinwirkung. Biochem Z 49:333–369
Millán MP, Dickenstein A, Shiu A, Conradi C (2012) Chemical reaction systems with toric steady states. Bull Math Biol 74(5):1027–1065
Pantea C (2012) On the persistence and global stability of mass action systems. SIAM J Math Anal 44(3):1636–1673
Patwardhan P, Miller WT (2007) Processive phosphorylation: mechanism and biological importance. Cell Signal 19(10):2218–2226
Pokhilko A, Hodge SK, Stratford K, Knox K, Edwards KD, Thomson AW, Mizuno T, Millar AJ (2010) Data assimilation constrains new connections and components in a complex, eukaryotic circadian clock model. Mol Syst Biol 6:416
Pokhilko A, Mas P, Millar AJ (2013) Modelling the widespread effects of TOC1 signalling on the plant circadian clock and its outputs. BMC Syst Biol 7:23
Siegel D, MacLean D (2000) Global stability of complex balanced mechanisms. J Math Chem 27(1–2):89–110
Szederkényi G (2010) Computing sparse and dense realizations of reaction kinetic systems. J Math Chem 47:551–568
Szederkényi G, Hangos K, Tuza Z (2012) Finding weakly reversible realizations of chemical reaction networks using optimization. MATCH Commun Math Comput Chem 67:193–212
Takeuchi Y (1996) Global dynamical properties of Lotka–Volterra systems. World Scientific Publishing, Singapore
Thomson M, Gunawardena J (2009) The rational parameterisation theorem for multisite posttranslational modification systems. J Theor Biol 261(4):626–636
Wang L, Sontag E (2008) On the number of steady states in a multiple futile cycle. J Math Biol 57(1):25–52
Acknowledgments
M. J. is supported by grant Army Research Office grant W911NF1410401. P.D. is supported by EPSRC grant EP/J00826/1. The authors thank Gheorghe Craciun for helpful discussions and suggestions, and Murad Banaji for organizing the workshop “Combinatorial and algebraic approaches to chemical reaction networks” at the University of Portsmouth (UK) at which this collaboration began. The authors also thank the anonymous referees whose comments have significantly improved the readability of the paper.
Author information
Authors and Affiliations
Corresponding author
Appendices
Appendix A (Proof of Lemma 1)
We will consider the endotactic and strongly endotactic cases separately. The lower endotactic case follows with a trivial modification to the endotactic case.
(Not endotactic \(\Longrightarrow \)) Suppose that the network is not endotactic. We construct the sets \({{\mathcal {R}}}_\), \({{\mathcal {R}}}_0\), and \({{\mathcal {R}}}_+\) in the following way: (1) \({{\mathcal {R}}}_\) consists of those \(R_i\) for which \({{\mathbf {w}}} \cdot (y_{\rho '(i)}  y_{\rho (i)}) < 0\) and \({{\mathbf {w}}} \cdot (y_{\rho (i)}  y_{\rho (j)}) \le 0\) for all other \(R_j \in {{\mathcal {R}}}\) such that \({{\mathbf {w}}} \cdot (y_{\rho '(j)}  y_{\rho (j)}) < 0\); (2) \({{\mathcal {R}}}_0\) consists of those \(R_i\) for which \({{\mathbf {w}}} \cdot (y_{\rho '(i)}  y_{\rho (i)}) = 0\); and (3) \({{\mathcal {R}}}_+\) consists of everything else. We have that E1 and E2 are satisfied by construction and that E4 is satisfied by the assumption that the network is not endotactic. To show that E3 is satisfied, we suppose that there is a pair \(R_i \in {{\mathcal {R}}}_\) and \(R_j \in {{\mathcal {R}}}_+\) such that \({{\mathbf {w}}} \cdot (y_{\rho (i)}  y_{\rho (j)}) > 0\). By the construction of \({{\mathcal {R}}}_\), we have \({{\mathbf {w}}} \cdot (y_{\rho '(i)}  y_{\rho (i)}) < 0\), and by the construction of \({{\mathcal {R}}}_\) and \({{\mathcal {R}}}_0\), it follows that \({{\mathbf {w}}} \cdot (y_{\rho '(j)}  y_{\rho (j)}) > 0\). It follows by Definition 4 that the network is endotactic, which contradicts our assumption. It follows that E3 is satisfied.
(Not endotactic \(\Longleftarrow \)) Suppose there is a \({{\mathbf {w}}} \in {{\mathbb {R}}}^m\) which satisfies E1  E4. It follows from E2 and E4 that there is a \(R_i \in {{\mathcal {R}}}\) such that \({{\mathbf {w}}} \cdot (y_{\rho '(i)}  y_{\rho (i)} ) < 0\). Furthermore, from E1 and E3 we have that for every \(R_j \in {{\mathcal {R}}}\), either \({{\mathbf {w}}} \cdot (y_{\rho (i)}  y_{\rho (j)}) \le 0\) (if \(R_j \in {{\mathcal {R}}}_+\)) or \({{\mathbf {w}}} \cdot (y_{\rho '(j)}  y_{\rho (j)}) = 0\) (if \(R_j \in {{\mathcal {R}}}_0 \cup {{\mathcal {R}}}_\)). It follows that the network is not endotactic by the contrapositive of Definition 4. The cases for lower endotactic networks follows similarly.
(Not strongly endotactic \(\Longrightarrow \)) Suppose that the network is not strongly endotactic. We construct the sets \({{\mathcal {R}}}_\), \({{\mathcal {R}}}_0\), and \({{\mathcal {R}}}_+\) in the following way: (1) \({{\mathcal {R}}}_\) consists of those \(R_i\) for which \({{\mathbf {w}}} \cdot (y_{\rho '(i)}  y_{\rho (i)}) < 0\) and \({{\mathbf {w}}} \cdot (y_{\rho (i)}  y_{\rho (j)}) \le 0\) for all other \(R_j \in {{\mathcal {R}}}\) such that \({{\mathbf {w}}} \cdot (y_{\rho '(j)}  y_{\rho (j)}) < 0\); (2) \({{\mathcal {R}}}_0\) consists of those \(R_j\) for which \({{\mathbf {w}}} \cdot (y_{\rho '(j)}  y_{\rho (j)}) = 0\) and \({{\mathbf {w}}} \cdot (y_{\rho (j)}  y_{\rho (i)}) < 0\) for all \(R_i \in {{\mathcal {R}}}_\); and (3) \({{\mathcal {R}}}_+\) consists of everything else. The condition E1, E2, and E4 are satisfied by the constructions of \({{\mathcal {R}}}_\) and \({{\mathcal {R}}}_0\).
Now suppose that \({{\mathcal {R}}}_0 \not = \emptyset \) and there is a pair \(R_i \in {{\mathcal {R}}}_0\) and \(R_j \in {{\mathcal {R}}}_ \cup {{\mathcal {R}}}_+\) such that \({{\mathbf {w}}} \cdot (y_{\rho (i)}  y_{\rho (j)}) \ge 0\). \(R_j \in {{\mathcal {R}}}_\) violates the construction of \({{\mathcal {R}}}_0\) so that we must have \(R_j \in {{\mathcal {R}}}_+\). By the construction of \({{\mathcal {R}}}_\) and \({{\mathcal {R}}}_0\) we must have \({{\mathbf {w}}} \cdot (y_{\rho '(j)}  y_{\rho (j)}) > 0\) and \({{\mathbf {w}}} \cdot (y_{\rho (j)}y_{\rho (i)}) < 0\) so that the network is endotactic by Definition 4. Now suppose that \({{\mathcal {R}}}_0 = \emptyset \) and there is a pair \(R_i \in {{\mathcal {R}}}_\) and \(R_j \in {{\mathcal {R}}}_+\) such that \({{\mathbf {w}}} \cdot (y_{\rho (i)}  y_{\rho (j)}) > 0\). By the construction of \({{\mathcal {R}}}_\) and \({{\mathcal {R}}}_0\) (which is empty), it follows that \({{\mathbf {w}}} \cdot (y_{\rho '(j)}  y_{\rho (j)}) > 0\) so that the network is endotactic by Definition 4. Since these results contradict our assumption, it follows that one of SE3(a) or SE(b) is satisfied, and we are done.
(Not strongly endotactic \(\Longleftarrow \)) Suppose there is a \({{\mathbf {w}}} \in {{\mathbb {R}}}^m\) which satisfies E1, E2, SE3(a), and E4. It follows from E2 and E4 that there is a \(R_i \in {{\mathcal {R}}}\) such that \({{\mathbf {w}}} \cdot (y_{\rho '(i)}  y_{\rho (i)} ) < 0\). It follows from E1 and SE3(a) that there is an \(R_i \in {{\mathcal {R}}}\) such that \({{\mathbf {w}}} \cdot (y_{\rho '(i)}  y_{\rho (i)}) = 0\) and \({{\mathbf {w}}} \cdot (y_{\rho (i)}  y_{\rho (j)}) < 0\) for every \(R_j \in {{\mathcal {R}}}\) such that \({{\mathbf {w}}} \cdot (y_{\rho '(i)}  y_{\rho (i)}) < 0\). It follows by Definition 4 that the network is not strongly endotactic.
Now suppose there is a \({{\mathbf {w}}} \in {{\mathbb {R}}}^m\) which satisfies E1, E2, SE3(b), and E4. It follows from E2 and E4 that there is a \(R_i \in {{\mathcal {R}}}\) such that \({{\mathbf {w}}} \cdot (y_{\rho '(i)}  y_{\rho (i)} ) < 0\). It follows from E1 and SE3(b) that \({{\mathbf {w}}} \cdot (y_{\rho (j)}  y_{\rho (i)} \le 0\) for every \(R_j \in {{\mathcal {R}}}\) such that \({{\mathbf {w}}} \cdot (y_{\rho '(j)}  y_{\rho (j)}) > 0\) so that the network is not endotactic by Definition 4 and therefore not strongly endotactic. This completes the cases, so we are done.
Appendix B (Proof of Lemma 2)
We first establish the general form of the standard quasisteady state approximation (QSSA) of (9) and (10). Under the QSSA, we assume that the intermediate compounds (i.e. the species \(S_iE\) and \(S_iF\)) equilibriate on a sufficiently short timescale that their concentrations may be assumed to be constant. To accommodate this assumption, we set their derivatives equal to zero, so that we have
We may use (19) in conjunction with the conservation laws
to determine algebraic expressions for \([S_iE]\) and \([S_iF]\). The rate of each phosphorylation or dephosphorylation step in (9) or (10) may then be simplified to a single step which depends upon the equilibriated value of the corresponding step’s intermediate compound.
The form of the QSSA rates for (9) and (10) are wellknown for the cases \(n=0\) (onestep chain) and \(n=1\) (twostep chain). To the best of the authors’ knowledge, the derivation contained here is the first to determine the QSSA rate form for the general \(n\)site chains (9) and (10). We have the following results which we prove by direct substitution. Note that we present the QSSA form for the forward chains in (9) and (10) only. The form for the backward chains follow directly.
Lemma 5
The forward chain of the processive phosphorylation network (9) has the QSSA solution
where \(K_i = k_{2i+1}/(k_{2i+2}+k_{2i+3})\), \(i=0, \ldots , n1\).
Proof
We need to solve the system of equations
We substitute (24) into (22) and (23) and substitute \(K_i = k_{2i+1}/(k_{2i+2}+k_{2i+3})\) for \(i=0, \ldots , n1\), to get the new system of equations
Substituting (21) into the lefthand size of (25) gives
Substituting (21) into the lefthand side of (26) gives
and we are done. \(\square \)
Lemma 6
The forward chain of the distributive phosphorylation network (10) has the QSSA solution
where \(K_i = k_{3i+1}/(k_{3i+2}+k_{3i+3})\) for \(i=0, \ldots , n1\).
Proof
We need to solve the system of equations
We substitute (29) into (28) and use the substitution \(K_i = k_{3i+1}/(k_{3i+2}+k_{3i+3})\) to obtain the new system of equations
Substituting (27) into the lefthand side of (30) gives
and we are done. \(\square \)
We now prove Lemma 2.
Proof
The form (14) follows by applying Lemma 5 independently to the phosphorylation and dephosphorylation chains in (9), then rearranging the constants in the denominator. The form (16) follows similarly by applying Lemma 6 to the chains in (10), and we are done. \(\square \)
Appendix C (Proof of Lemma 4)
The following is the full model for the PER (period) and TIM (timeless) protein system in Drosophila presented by Leloup and Goldbeter in Leloup and Goldbeter (1999):
We now prove the following result, which proves Lemma 4 as a direct corollary.
Lemma 7
The system of equations (31)–(40) can be represented by the following network with \(\kappa \)variable mass action kinetics:
where each species also undergoes linear degradation (i.e. \(P_i \rightarrow 0\), \(T_i \rightarrow 0\), \(C_i \rightarrow 0\)).
Proof
We split the proof into the following steps:

1.
We prove that all trajectories are eventually bounded by a common bound. Our method is to construct a linear functional in all of the species which decreases along trajectories. This allows us to bound the MichaelisMenten terms in (32)–(34) and (36)–(38).

2.
We bound concentrations of \(M_P\) and \(M_T\) from below in the limit as \(t \rightarrow \infty \) so that, after a finite time, we may incorporate the concentrations of \(M_P\) and \(M_T\) into the rate constants for the creation of \(P_0\) and \(T_0\). The bounds guarantee that this can be done with a \(\kappa \)variable reaction rate.

3.
We show that this resulting system corresponds to a \(\kappa \)variable massaction system with underlying network structure given by the reduced clock network.
1. Trajectories are bounded We define the linear functional
and introduce the bound values \(M_P^* = M_T^* = k^*/k_d\), \(P_0^* = P_1^* = P_2^* = T_0^* = T_1^* = T_2^* = k^* / k_d^2\), \(C^* = k^* / (2k_d k_{dC}),\) and \(C_N^* = k^* / (2k_d k_{dN})\) where \(k^* = (k_{sP} + 1) \nu _{sP} + (k_{sT} + 1) \nu _{sT}\). We now show that, along trajectories of (31)–(40), there is a finite time \(\tau > 0\) such that \(H(t) \le H^*\) for \(t \ge \tau \) where
Consider the time derivative of (41) along trajectories of (31)–(40). After simplification, we have
Now suppose that \(H(t) \ge H^*\). It follows by construction that at least one of the reactants obtains or exceeds its corresponding bound value so that the negative values in (43) exceed \(k^*\) in magnitude. Noting that
we have that (43) is nonpositive whenever \(H(t) \ge H^*\). The strict negativity of the remaining negative terms (43) ensures that (43) is bound strictly, so that
for some \(0 < \epsilon \). Integrating (44) shows that there is a \(\tau > 0\) such that \(H(t) \le H^*\) for all \(t \ge \tau \). Since all of the coefficients of the reactants in \(H(t)\) are positive, it follows that every reactant is eventually bounded by the common bound \(H^*\).
2. \(M_P\) and \(M_T\) are bounded away from zero We first define
Now consider the equation (31) for the concentration of \(M_P(t)\). Since all trajectories of the system (31)–(40) converge to a bounded set, we have that there is a \(C_N^* > 0\) and a \(\tau \ge 0\) such that \(C_N(t) \le C_N^*\) for all \(t \ge \tau \). It follows from this and that fact that \(M_P(t) \ge 0\) that, for \(t \ge \tau \), we have
It follows from (46) that
It follows that \(\displaystyle \liminf _{t \rightarrow \infty } MP(t) \ge M_P^*\). A similar argument shows that \(\displaystyle \liminf _{t \rightarrow \infty } MT(t) \ge M_T^*\), and we are done.
3.Construction of network We consider equations (32)–(34) and (36)–(40). We have shown that all variables are bounded, so that Lemma 6 implies any MichaelisMenten form in these variables may be written in \(\kappa \)variable form. We also have shown that there is are \(M_P^{*} \ge 0, M_P^{**} \ge 0, M_T^{*} \ge 0,\) \(M_T^{**} \ge 0,\) and \(\tau \ge 0\) such that
for \(t \ge \tau \). We may therefore incorporate these variables into a \(\kappa \)variable influx rate for \(P_0\) and \(T_0\) respectively. The remaining terms correspond to linear degradation terms which are already in \(k\)variable form.
This yields a network which is \(\kappa \)variable form. For example, we may write (32) as
where
Since the resulting network has the form of the reduced clock network, we are done.
Rights and permissions
About this article
Cite this article
Johnston, M.D., Pantea, C. & Donnell, P. A computational approach to persistence, permanence, and endotacticity of biochemical reaction systems. J. Math. Biol. 72, 467–498 (2016). https://doi.org/10.1007/s0028501508921
Received:
Revised:
Published:
Issue Date:
DOI: https://doi.org/10.1007/s0028501508921