Biological homochirality and stoichiometric network analysis: Variations on Frank’s model

Biological homochirality is modelled using chemical reaction mechanisms that include autocatalytic and inhibition reactions as well as input and output flows. From the mathematical point of view, the differential equations associated with those mechanisms have to exhibit bistability. The search for those bifurcations can be carried out using stoichiometric network analysis. This algorithm simplifies the mathematical analysis and can be implemented in a computer programme, which can help us to analyse chemical networks. However, regardless of the reduction to linear polynomials, which is made possible by this algorithm, in some cases, the complexity and length of the polynomials involved make the analysis unfeasible. This problem has been partially solved by extending the stoichiometric matrix with rows that code the duality relations between the different reactions occurring in the network given as input. All these facts allow us to analyse 28 different network models, highlighting the basic requirements needed by a chemical mechanism to have spontaneous


Abstract
Biological homochirality is modelled using chemical reaction mechanisms that include autocatalytic and inhibition reactions as well as input and output flows.From the mathematical point of view, the differential equations associated with those mechanisms have to exhibit bistability.
The search for those bifurcations can be carried out using stoichiometric network analysis.This algorithm simplifies the mathematical analysis and can be implemented in a computer programme, which can help us to analyse chemical networks.However, regardless of the reduction to linear polynomials, which is made possible by this algorithm, in some cases, the complexity and length of the polynomials involved make the analysis unfeasible.This problem has been partially solved by extending the stoichiometric matrix with rows that code the duality relations between the different reactions occurring in the network given as input.All these facts allow us to analyse 28 different network models, highlighting the basic requirements needed by a chemical mechanism to have spontaneous mirror symmetry breaking.

Introduction
Homochirality is a characteristic of living beings related to the chirality of some molecules [1].At the molecular level, one of the most representative examples of homochirality is the almost exclusive presence of L-amino acids in the proteins that characterise life on Earth.Frank proposed a simple reaction mechanism to explain homochirality's emergence [2].Subsequently, Kondepudi and Nelson presented a more elaborated version of the same mechanism [3,4].Many other authors have proposed variations to these models, which are supposed to be better models or, at least, completely different models [5,6].The analysis of these models gives us insights into the requirements that a chemical network must fulfil to produce the homochirality phenomenon [7].The first and direct way to perform such an analysis is by computing closed form solutions for the associated systems of differential equations [8].However, this is only possible for the simplest models.An alternative is the qualitative study provided by linear stability analysis based on spectra of the Jacobian matrixes associated with those systems [9].Nonetheless, if one must handle large matrixes with nonlinear entries, it is difficult to obtain information from them.
Bruce Clarke [10,11] introduced a helpful change of variables that reveal the linearities present in the systems of differential equations: Stoichiometric Network Analysis (SNA).In this paper, we summarise Clarke's work, and we transform it into an algorithm implemented in a computer programme: Listanalchem second algorithm [12].The results obtained with this algorithm were verified using numerical simulations (time series and bifurcation diagrams) [13][14][15].Those simulations were performed using the Chemkinlator computer programme [16].The correctness of the computed results is remarkable.
We use the aforementioned tools to analyse some of the most representative stoichiometric networks (chemical models or chemical mechanisms) proposed to explain the origin of biological homochirality, including three of the most recent models presented in the literature.We begin our study with the first and most straightforward mechanism, the one proposed by Frank in 1953.This iconic model is tuned in order to obtain models that are consistent with chemical kinetics and the most basic thermodynamic principles.Thus, in this way, we obtain new models that are tested using our analytical tools.We also used the aforementioned tools to analyse other representative models found in the related literature [5,17,18].These include three recent models, as well as a reaction mechanism proposed by Trapp and co-workers [19].This latter mechanism is intended to model Soai's reaction [20]; which is, to date, the single experimental reaction that exhibits asymmetric autocatalysis.The model of Trapp et al. seems to be the only proposal that correctly describes Soai's reaction.This assertion is based on a detailed kinetic analysis and reaction modelling corroborating the formation of hemiacetals as the reactive species in Soai´s asymmetric autocatalysis.
The result of the total analysis in this work is a set of general characteristics that must be exhibited by a thermodynamic and kinetic consistent model that can produce homochirality.

Algorithmic analysis of non-linear chemical systems
Suppose we have a chemical system constituted by chemical species and chemical reactions, its dynamics is driven by a system of differential equations such as: (1) where the variables x1,…,xn represent the concentrations of the n chemical species, expressed in a convenient and consistent system of units.The symbol k represents the r-dimensional vector of reaction rate constants that occur in the definition of the functions f1,…,fn.If there exists i ≤ n such that fi is a non-linear function, for example, a polynomial on the variables x1,…,xn we say that the above system is an autonomous system of non-linear differential equations (a non-linear system, for short).The solutions of those (non-linear) systems describe the dynamics of the concentrations of the species of interest, and the reaction rate constants should be considered variable parameters ranging over an (small) interval of the positive reals.The reader must consider the fact that the value of most reaction rate constants is not known.
Most non-linear systems cannot be solved by analytical means.Hence, the analysis must be a qualitative one based on the linear stability of the steady states [9,21].
Definition 1.We say that (a, k 0) ∈ ℝ n × ℝ r is a steady-state, if and only if, the following equalities hold. (2) Notice that if a system is driven to the state x1=a1,…,xn=an, under the well-controlled conditions represented by k0, then nothing occurs; the system is stuck at a fixed point of its dynamics.In real life, steady states are reached because of friction, dissipation, or entropy growth.However, we see dynamics all the time.This happens because physical systems are continuously perturbed by external noise, and hence most of the dynamics that we see correspond to dynamics that occur when steady states are perturbed.Thus, it makes sense to study the dynamics that could occur when one perturbates the steady states of the system under study.
The qualitative analysis of non-linear systems studies the dynamics that occur near the steady states.Steady states can be either stable or unstable.The idea is that all the exciting dynamics occur near unstable states.Therefore, it becomes essential to develop mathematical and algorithmic tools for the detection of unstable states.The aforesaid problem, called stability analysis, can be reduced to matrix analysis.
Let (a, k0 ) be a steady-state, the Jacobian matrix at state (a, k0 ) is the matrix It has been known, for a long time, that the stability (instability) properties of a state (a, k0 ) can be deduced from the eigenvalues of Ja, k 0 [9].Definition 2. Let (a, k0 ) be a steady-state and let λ1,…, λn be the eigenvalues of Ja,k 0 .We say that (a, k0 ) is stable, if and only if, for all i ≤ n the inequality Re (λi) < 0 holds, where Re (λi) denotes the real part of λi.On the other hand, we say that (a, k0 ) is unstable, if and only if, there exists i such that Re (λi) > 0, and for all i it occurs that Re (λi) ≠ 0.
Remark 1.We say that a matrix is a full rank matrix if and only if the set of rows and the set of columns are linearly independent.Notice that the Jacobian matrixes of the stable and unstable states are full rank.
Thus, the stability analysis of the system (4) is reduced to the analysis of the set (5) Polynomial Systems.We say that the non-linear system (6) is a polynomial system, if and only if, for all i ≤ n the function fi is a polynomial over the variables x1,…,xn.Suppose that we must analyse a polynomial system (7) and suppose that we know that the parameters range over the small interval Ω.Let J :ℝ n × Ω r →ℝ be the function (8) Observe that function J is a polynomial over the variables x1,…, xn , λ, k1,…, kr.Moreover, the set of steady states of the dynamical system is the zero set of the system of polynomial equations given by (9) This means that the stability analysis of polynomial systems reduces to the analysis of a polynomial function defined over an algebraic variety.
Computational algebraic geometry provides us with the algorithmic tools necessary for the stability analysis of polynomial systems.
Unfortunately, most of the aforementioned algorithms are inefficient, and the analysis becomes unfeasible for moderately large values of n [22].This fact indicates that it is worth looking for mathematical tools that could reduce the dimensionality of the algebraic objects under study.Stoichiometric Network Analysis (SNA) allows us to reduce the degree of those algebraic objects.

Basic Concepts of Chemical Networks
A chemical reaction over the chemical species X 1 ,…,Xn is an expression analogous to (10) where ν1,…,νn are small integers (some of which could be equal to zero) that are negative ν (-) for the reactants and positive ν (+) for the products.The above expression indicates that the mixture of | ν 1 (-) | units of X1, …, and | νn (-) | units of Xn gives place to ν 1 (+) units of X1, …, and νn (+) units of Xn.A chemical network over the species {X 1 ,...,Xn} is a set of chemical reactions, say {R 1 ,...,Rr}, over this set of species.Let Ω = [(X1,..., Xn), (R1,..., Rr )] be a chemical network, where Rj is the reaction (11) The network Ω can be encoded into the stoichiometric matrix SΩ, that is given by (12) The entries of the above matrix are called the net stoichiometric coefficients.These coefficients can be used to determine the number of units of species Xi that remain after the occurrence of the reaction Rj.Observe that the rows of SΩ correspond to the species and the columns to the reactions.
It happens that chemical reactions have different rate constants.Let (k1,..., kr) be a vector of rate constants and suppose that under some given conditions, these are the rate constants of the reactions R1,..., Rr.Then, the law of mass action [23] determines that the dynamics of the network, under those specific conditions, is governed by the polynomial system:

The work of Clarke: Stoichiometric Network Analysis (SNA)
Let Ω = [(X1,..., Xn), (R1,..., Rr )] be a chemical network.The velocity function of Ω is the function v (X, K ): ℝ+ n ×ℝ+ r →ℝ+ r , defined by: Clarke [10,11] established that the network kinetic equation can be written as (15) Notice that we are not using the matrix S Ω to linearize the system, we are using it to write the polynomial system in matrix form.Good notations can provide insight: Clarke's matrix form suggests that one can perform the stability analysis in the velocities space instead of in the concentrations space.It happens that switching to the velocities space can reduce the dimensionality of some networks.Moreover, this yields a novel factorisation of the Jacobian matrix, which was (apparently) discovered by Clarke [10], and which is heavily used in SNA.One crucial element of this factorisation is the denominated matrix of extreme currents, E Ω .The meaning and implications of this matrix have been used to obtain insights regarding the behaviour of several models proposed for explaining the origin of homochirality from the point of view of spontaneous mirror symmetry breaking (SMSB) [24] and entropy production [25].Vuk Radojković and Igor Schreiber have also proposed a method, based on SNA and constrained linear optimisation, to estimate rate coefficients and steadystate concentrations of classical chemical oscillators [26].We will not discuss such topics; instead, we will develop algorithmic methods that can be used to compute the parameter values that can produce homochirality in a given network model.That is the focus of the following paragraphs.

Clarke's Factorisation
Clarke's work is heavily based on a factorisation which can help us to simplify the stability analysis of various large chemical mechanisms.This factorisation allows us to reduce the degree of the polynomials that occur in the dynamic equations.We will present this factorisation in two forms.
The first form of Clarke's factorisation.The matrix of orders of reaction (also called the kinetic matrix) is the matrix (16) Observe that the rows of K Ω , in contrast with the rows of S Ω , correspond to the reactions (while the columns correspond to the species).As we will see, the kinetic matrix is a key ingredient of Clarke's factorisation.Let us select a steady-state (a, k 0 ) and let us say that this state is our reference state.The state (a, k 0 ) determines a velocity vector vΩ=(v1,...,vr), which is given by (17) We have, due to the steady-state conditions, that (18) and this means that the physical velocity determined by the steady-state (a, k 0 ) belongs to the kernel of S Ω .Now, suppose that for all i ≤ n, the inequality ai>0 holds.Then, we use the symbol h to denote the vector .SNA is based on the following theorem [27], which corresponds to a factorisation of the Jacobian matrix.
Theorem 1.Let Ja, k 0 be the Jacobian matrix of a system at the steadystate (a, K 0), we have that (19) The second form of Clarke's factorisation.Physical velocities must satisfy the constraint v( X, K )i ≥ 0.Moreover, at a steady-state (a, k 0 ), the physical velocities must satisfy a further constraint, given by the equation (20) Solutions to the above two constraints are called currents.The set of all currents is equal to (21) and it contains the set of physical velocities that can occur at steady states.Notice that the dimension of CΩ, that we denote with the symbol c, satisfies the inequality (22) where d = dim (SΩ) is the dimension of SΩ, which is the number of linearly independent rows (columns) of SΩ while r is the total number of reactions in the chemical network Ω.If d is big enough, the size of CΩ could be small, and this could help us to ease the analysis.Unfortunately, this dimensionality reduction does not always occur, and it strongly depends on the model (the number of reactions and its stoichiometric matrix).In many cases, the dimension of CΩ is enormous: the inequality c ≧ rd is just a lower bound.Then, it could happen that the problem becomes one of larger dimension when switching from the concentration to the velocities space.
Note that CΩ is a convex cone, (called the current cone).Also note that CΩ is polyhedral.The current polytope is equal to (23) ΠΩ is a polytope in the geometrical sense, and this means that it is the convex hull of a finite set that we call the set of nodes of this polytope.
Remark 2. Given a finite set of linear inequalities and linear equalities defining a polytope Π, the set of nodes of Π can be computed by algorithmic means.
Thus, given a network Ω, one can effectively associate to Ω a matrix EΩ * such that the columns of EΩ * are the non-zero nodes of ΠΩ.The matrix EΩ * is a rational matrix, and it can be scaled to obtain an integer matrix EΩ.The matrix EΩ is called the matrix of extreme currents, and their columns are called extreme currents (they are the extreme rays of the current cone).Now, let Ω = [(X1,..., Xn ),(R1,..., Rr )] be a network.According to the first form of Clarke's factorisation, we can write the Jacobian matrix at (a, k 0 ) as Ja, Recall that vΩ is a current.It means that vΩ is a positive linear combination of extreme currents; hence it can be written as (24) for some vector j ∈ ℝ s + .Let eij be the ij-th entry of the matrix EΩ.We have that for all i ≤ r the equality (25) holds.Let diag (EΩ ⋅ j) be the matrix (26) then, we have that (27) The above factorisation of Ja, k 0 corresponds to the second and final form of Clarke's factorisation.

Implications of Stoichiometric Network Analysis (SNA): Reduction to Convex Parameters
The matrix (28) is a scaling matrix with non-negative entries, and hence it does not influence the signature of the eigenvalues of Ja, k 0 .Thus, we can focus on the matrix VΩ = SΩ ⋅ diag ( EΩ ⋅ j) KΩ .Note that SΩ and KΩ are constant (numerical) matrixes that do not depend on our reference state.It is also the case with the matrix EΩ .Then, we can forget the reference state (a,k0).Also, we can see that the entries of diag ( EΩ ⋅ j ) are linear functions that depend on the convex parameters j1,…, js.In that case, we can forget the numerical values of j1,…, js that allowed us to express the velocity VΩ as a convex combination of extreme currents, and we can consider them as the new parameters related to the nonlinearities in concentrations (mass action law) but without their exponents or cross-products.
We use the symbol VΩ to denote the non-numerical (symbolic) matrix (29) called the current matrix, and which is the matrix that we want to analyse.Note that the current matrix encodes the Jacobian matrixes of all the steady states, and its entries are linear polynomials over the variables j1,…, js.Observe that we obtain an important dimensionality reduction by using SNA: the degree of the polynomial entries of VΩ matrix is one.Notice that this was possible due to the factorisation of the Jacobian matrix.
The aforementioned reduction can become useless if the number of parameters grows considerably.Note that we are using s parameters, the parameters j1,…, js, where s is equal to the number of extreme currents (extreme rays of the current cone).We cannot compute, in advance, the exact value of the number of extreme currents that we denote with the symbol #ECΩ but we have that (30) Note that the number of extreme currents can be so huge that the analysis becomes impractical or at least very demanding.Remember that we want to analyse the set (31) which is a parameterised set of n×n matrixes that are initially given through n+r parameters.SNA allows us to encode this set into a symbolic n×n matrix that is given by s parameters.

Computing instability regions
Let Ω be a chemical network.We want to introduce an algorithm that can compute an approximation to the set of unstable steady states of Ω.Let (a, k0) be a steady-state and let J(a, k 0 ) be the Jacobian matrix at (a, k0).If all the eigenvalues of J(a, k 0 ) have a strictly negative real part; then the system is stable.Thus, we are interested in computing the set (32) Suppose that the characteristic polynomial of J(a, k 0 ) is equal to (33) Each one of the terms αi ( j, h) is a polynomial expression over the parameters j and h.The coefficient αi ( j, h) is equal to the sum of all diagonal minors of J(a, k 0 ) of order i [28].On that account, the coefficient αi ( j, h) is equal to the sum of all diagonal minors of VΩ of dimension i×i multiplied by the corresponding sets of reciprocal concentrations.Note that parameters j and h are non-negative, therefore any negative term in the characteristic polynomial of J(a, k 0 ) implies the existence of a diagonal minor of VΩ of order i, whose polynomial expression contains a monomial preceded by a minus sign.We say that a such minor of VΩ is a source of instability.The detection of all the minors that are sources of instability (unstable minors) can be carried out using symbolic algebra [29,30].
Note that each diagonal minor is determined by a set I ⊂ {1, ..., n}.Let V Ω I 1 ,…,V Ω Ir be the unstable minors; we say that V Ω Im is an essential source of instability (essential minor), if and only if, for all i ≠ m the set Im is not a superset of Ii.Each essential minor V Ω Im determines a polynomial, its determinant, which can be written as (34) where Am is the set of indices for which ai m < 0, and Bm is the set of indices for which ai m ≧ 0. We have that set V Ω Im < 0 if and only if, the inequality (35) holds.The above polynomial inequality is the instability condition for minor V Ω Im .We use the symbol CI, Ω to denote the latter inequality, and we use the symbol DI, Ω to denote the set (36) Given J0 ∈ ℝ+ s , it encodes a chemical velocity vΩ-j 0 .Thus, if we compute J0 ∈ ℝ+ s such that the inequality CI, Ω holds for j0 then there must exist at least one steady-state (a, k0) whose velocity is equal to vΩ-j 0 .The above facts indicate that the computation of ⋃I DI, Ω can be of help in the analysis of network Ω.Moreover, the sets DI,Ω are semialgebraic, and semialgebraic sets behave very well from an algorithmic point of view: they can be tested and sampled by algorithmic means [31].
We will present an algorithm derived from the above facts, which can be used in the stability analysis of reaction networks, particularly in this work, those related to SMSB [32].The algorithm is intended to search for reaction rate constants that are good candidates for encoding unstable steady states.These calculations are implemented as the second algorithm of the Listanalchem computer programme [12].The algorithm works as follows: 1. Define the model, Ω, to be analysed in terms of its species X, and reactions R. If the model has only two species, they are the enantiomers.If there are more than two species, the first two defined in the species list must be the enantiomers.If there are more than two pairs of enantiomers, they must be defined explicitly, and the sixth Listanalchem algorithm must be used [33] (this will not be discussed here).2. Compute SΩ, and extend SΩ.The matrix SΩ is extended with rows that code the duality relation between reactions.This operation decreases the size of the EΩ matrix and the running time of the entire algorithm, enabling it to analyse large mechanisms (networks), something that is usually not possible when matrix SΩ is not extended.This important fact can be tested using Listanalchem, matrix SΩ and its extended version.3. Compute KΩ, vΩ, EΩ, diag (EΩ ⋅ j) and VΩ.In this work, matrix EΩ is calculated based either on a previously reported algorithm [29], or on the code of COPASI software [34], both modified to work with singular matrixes.4. Compute all the unstable minors of VΩ.In our computer programme, the maximum size of the essential minors is limited to five to avoid long computations.If ⋃I DI, Ω is empty, there are no unstable minors, and the programme finishes, otherwise it goes to the next step.5. Compute the system of inequalities and equalities that must be satisfied.6. Compute the intervals where the above system of inequalities and equalities are satisfied.If the inequalities are linear, the solutions are found.Otherwise, a heuristic approach is taken to linearise the inequalities.Finding the intervals where the system of inequalities and equalities are satisfied is not an easy task because of the nonlinearities [31].In our computer programme, the solutions of linear systems are found using Reduce [35], which cannot solve non-linear systems.We use a heuristic and naïve procedure that turns the non-linear inequalities into linear ones.The procedure finds, iteratively, the most common ji's in the non-linear system and replaces them with positive random values, repeating this operation until the system becomes linear.The selected values may not produce a solvable linear system, but if they do, we can check for the intervals at which they are satisfied with the help of Reduce [35].If the procedure fails to produce a solvable linear system, the set of values can be re-sampled as many times as desired.This step aims to obtain a set of intervals where the system of inequalities and equalities is satisfied.7. Sampling: compute one element of the solution set of the linearised system obtained in the previous step.Random values, generated inside the ranges where the linear system is satisfied, are assigned to j1,…, jk. 8. Given the values computed in step 7, compute the corresponding reaction rate constants k1,…, kr, using the relation vΩ = EΩ ⋅ j.
Convenient values are assigned to the concentrations when necessary.9. Test the results by numerical simulations using the respective differential equations and including bifurcation diagrams.In this work, this is carried out using our software called Chemkinlator [16].
Concerning steps 4 and 7, some remarks are in order.It is true that given the semialgebraic definition of ⋃I DI, Ω, it is possible to check by algorithmic means if the latter set is non-empty, and it is also true that one can compute points within ⋃I DI, Ω (provided it is non-empty).But it also happens that the set ⋃I DI, Ω could be infinite, and it becomes infinite for most of the chemical networks that one would care to analyse with those tools.Note that, in those cases, the finite samples that we compute can be non-representative.We can reduce the set of target states using chemical-based heuristics or physical constraints, such as solubility or diffusion-controlled rate constants [36].However, the approach in this work is to sample the instability region, make simulations with that set of rate constants, and then expand the region of analysis through the construction of bifurcation diagrams (step 9 of the algorithm).In this way, we explore the hyperspace region around the unstable points that are computed by the sampling process.

Results and discussion
The reaction networks discussed below can be found in the folder "models" of Listanalchem as "*.py" files.The corresponding name files can be found aside from the titles of the subsequent sections, where we analyse different network models of biological homochirality.Also, the respective plots, equivalent to figures 1 and 2, can be obtained from the data given by Listanalchem, second algorithm (SNA), and Chemkinlator, the two computer programmes used here to obtain the results discussed below.

Frank like models
This section presents a sequence of network models derived from the Frank model.The sequence can be understood as a progression along which the original Frank model is being fixed, making it consistent with the most fundamental thermodynamic and kinetic principles.
Frank model (Frank.py, 1953) The first ever proposed model of biological homochirality was the Frank model [2], which we present below.
(37) (38) The Frank model is a network of irreversible reactions that guarantees the SMSB due to the autocatalytic reactions (37), the inhibition reaction (38), and the open condition represented by the absence of reverse reactions.The irreversibility of one reaction can be understood as a backward rate with a very low value.This can be due to low product concentration.It is also possible to understand the low backward rate as an inherent low value for the backward rate constant.Unfortunately, when someone proposes a mechanism, the reasons for removing the reverse reactions are not presented, or they are mentioned briefly.This fact can be a source of misunderstandings, given that introducing a one-way reaction violates the principle of microscopic reversibility (detailed balance) [37][38][39][40][41].In that case, an improvement to the Frank model is to turn its three reactions into reversible ones, which will be carried out in the next section.For now, observe that the product of the Frank model's third irreversible reaction is irrelevant, and it does not have an explicit name; it is a generic product represented by a square, which means anything.
In conclusion, the Frank model is a network constituted of two autocatalytic (positive feedback) and one inhibition (negative feedback) reactions [42], which are irreversible.Moreover, it is an open system with an unspecified product.Frank model generates SMSB for any set satisfying the conditions k0 = k1 > 0 and k2 > 0. Thus, this is a model that always generates SMSB.These facts can be verified using Listanalchem, second algorithm, and the file "Frank.py".

Reversible Frank model (Frank-Rev.py, this work)
The following reactions give the reversible Frank model (39) (40) This model behaves similarly to the Frank model.However, this second model is not always unstable (as is the previous one), and only a particular set of rate constants can produce SMSB, as its bifurcation diagram shows in figure 1. Observe that this model retains the unspecified product ∎, which, together with the reverse reaction in Eq. ( 40), implies a continuous input of the reagents L and D. In this way, the model satisfies the open system requirement that seems to be necessary for SMSB.

Reversible Frank model with explicit product P (Frank-Rev-P. py, this work)
The inclusion of the explicit product P in the Frank model produces: (41) (42) which now makes the system a closed one, and it is stable, as the second law of thermodynamics predicts.No SMSB is possible with this model.When this model is compared with the previous two, it becomes apparent that inflows of the reagents, as well as outflows of the products, are both necessary to produce instability.

A thermodynamic and kinetic consistent Frank model with two precursors (Frank-Rev-P-AB.py, this work)
Once the thermodynamic principle of detailed balance is explicit in the Frank model, some kinetics issues must be considered.First, the mass balance is not evident in reactions like those of the original Frank model Eq.(37) or the equivalent Eq. ( 39) and (41).Second, the first-order kinetics of those reactions are not the most common in chemistry [43].Finally, a complete and explicit mechanism must show the origin of the enantiomeric species.The following model is a proposal to solve the aforementioned issues: However, no SMSB is possible with this model because it is a closed system and thus a stable one.It is then reasonable to include an input of the precursor reagents A, B, and an output of the whole reaction mixture, as it is made in the classical Continuous well-Stirred Tank Reactor (CSTR) [44].The following section presents this open system.

Open reversible Frank model with two precursors (Frank-Rev-P-AB-CSTR.py, this work)
The previous model in an open system, a standard CSTR reactor [44], can be represented as follows: This model is thermodynamically and kinetically correct.The open system condition, a required source of instability, is included as the input Eq. ( 46) and output Eq. ( 50), which are irreversible.This model can produce homochirality, since it can be proved using SNA.However, it is important to highlight that the SNA algorithm that uses the stoichiometric matrix SΩ with no extension (the process that add rows to code the duality relation between reactions), was not able to analyse this network, which has associated a large matrix of extreme currents, the matrix EΩ which has 17 rows and 25 columns.This matrix becomes, after extension, a matrix with 17 rows and only seven columns.This fact corresponds to an important characteristic of the implemented algorithm, which improves the applicability of SNA in the analysis of network models of biological homochirality.These facts can be checked using Listanalchem second algorithm, the file Frank-Rev-P-AB-CSTR.py, and changing the option "dual-pairs-in-ec" from "False" (SΩ not extended) to "True" (SΩ extended).
Observe that this model is essentially the same as the thermodynamic and kinetic consistent Frank model Eq.(43 -45), except Eq. ( 53), which has become the irreversible inhibition Eq. ( 38) of the Frank model, and the trimolecular character of Eq. (52) respect to Eq. ( 44).Kondepudi-Nelson considers A and B as constants (i.e., they consider a pool chemical approximation [21]).This fact turns the KN model into an open system, with only two variables, XL and XD.If reagents A and B are not constant, then two problems appear; first, the trimolecular reactions Eq. (52) are very uncommon in real systems, as well as the incapability of the model to produce SMSB; see the output of Listanalchem using the file "Kondepudi-Nelson-AS.py".
We can summarise this first set of Frank-type models comparing the most relevant aspects of them, as shown in Table 1.Observe that the Frank and Kondepudi-Nelson models constitute the core of the "all explicit" Frank reversible model with flow, right column on Table 1.This latter model is our proposal, and which evidences the requirements for a thermodynamic and kinetic consistent model producing SMSB.These facts are not always explicit in the literature, which is probably an important source of misunderstandings [37 -41], and this is something that we want to avoid here.Of course, being so explicit has consequences: larger models and larger matrixes.However, we have partially surpassed this problem in this study, as mentioned before, using a suitable preprocessing of the stoichiometric matrixes.

Calvin model, 1969
Melvin Calvin proposed a model to explain the origin of homochirality [17,6].His model can be presented in three different forms, as shown below.
These models do not produce SMSB.Let us modify these models to make them capable of producing SMSB.First, we make them open using a CSTR, but this is not enough for the production of SMSB, as can be verified by checking the files Calvin-#-CSTR.py,where the symbol # represents one of the numbers 1, 2, or 3 that label the different versions of the Calvin model.Second, we observe that these three models have two pairs of enantiomers (L -A, D -A, and L -B, D -B), but they do not have an inhibition reaction (negative feedback) as the one in the Frank-type models.In some specific models, inhibition reactions are necessary to produce SMSB, as was proved in reference [7].Accordingly, the three Calvin models were added with an inhibition reaction: It was observed that SMSB is still not possible according to SNA (see files Calvin-#-CSTR-Inhibition.py, second algorithm).However, when a more specific analysis is made, using the fifth [46] and sixth [33] Listanalchem algorithms, it was found that SMSB exists in versions 2 and 3 of the model (see files Calvin-2-CSTR-Inhibition.py and Calvin-3-CSTR-Inhibition.py, fifth and sixth algorithms), but it does not appear in version 1, see file Calvin-1-CSTR-Inhibition.py.This fact means that the heuristic (the work with the minors of the current matrix VΩ used in the second algorithm-SNA of Listanalchem to find the instability) is not 100 % effective, and some false negatives, like those presented before, are eventually obtained.
Nevertheless, as we have seen (and we will see with the following models), those cases are not common, making the SNA useful most of the time.Also, it is important to note, in this point, that the samples taken by the fifth and sixth Listanalchem algorithms need some minor adjustment to make the SMSB evident.Usually, it is enough to increase the perturbation of the initial enantiomeric excess or draw the bifurcation diagrams to see the range of the rate constants where the SMSB is possible.This work can be carried out using Chemkinlator [16].These facts will not be discussed in detail because it is not within the scope of this work which is dedicated only to the SNA algorithm, but those interested can use Listanalchem and Chemkinlator to explore them.The critical fact here is that the additional work needed to find SMSB in these versions of the Calvin model demonstrated that in those models, it is not easy to find SMSB.
Finally, to end with the Calvin model, we have added limited enantioselectivity (LES) reactions [47]: instead of the inhibition reaction.The result was no SMSB is possible.However, if those four LES reactions are not forced to have the same values as the autocatalytic rate constants, as must be the case, then SMSB becomes possible in Calvin-1-CSTR-LES.py and Calvin-2-CSTR-LES.py but not in Calvin-3-CSTR-LES.py.Some authors have used this fact to obtain SMSB [18], but there is no way to justify four different rate constants for those four reactions.Thus, in conclusion, the Calvin model as initially proposed is stable.

Iwamoto model, 2003
Iwamoto proposed a reaction model including Michaelis-Menten type catalytic reactions.Iwamoto argues that his model is different from Frank and Kondepudi-Nelson's models [5].He presented two versions of his proposal: perfect and imperfect.The latter classification is based on the stereoselectivity R1, R1a, R2, R2a, or stereospecificity R3, R3a, R4, R4a, as shown in Table 2.
Iwamoto assumes constant concentrations for P, ZL, ZD, YL, YD and Q.Under these conditions, the mechanisms are reduced to the two columns on the right of Table 2, labeled with the expression "Equivalent to".We analysed this model using our tools (Listanalchem second algorithm -SNA).

Iwamoto perfect model (Iwamoto-Perfect.py)
The perfect version of the Iwamoto model is an open system due to the irreversible reactions R5, R6 and also to the reversibility of the reactions that have either constant (not explicit) reagents or constant products (reactions R0, R3, R4).These reactions, together with the autocatalytic reactions (positive feedback) R1, R2, and the negative feedback given by reactions R3, R4 (the consumption of the isomeric-autocatalytic species), make this model capable of producing SMSB.Notwithstanding, the region where the model is unstable is small, as Figure 2 shows.A) the small unstable region when the perturbation is small (ee of order ≈ 1 × 10 -5 %), and B) when the perturbation is larger, ee ≈ 2 × 10 -2 %.The time series in C) highlights the unbounded growth of the concentration of E D , and the time series in D) corresponds to the imperfect version.In C), the SMSB is evident, while in D) racemisation is evident, which means that no SMSB is produced in the imperfect model, although this second system is also unstable, due to the unlimited growth of the concentrations of E L and E D .
In Figure 2 A, the initial difference between the concentrations of the two enantiomers, the enantiomeric excess (ee), is of order 1 × 10 -5 %.If the initial difference between those concentrations increases to ee ≈ 2 × 10 -2 %, we can observe a larger instability region in the bifurcation diagrams, as shown in Figure 2 B. On the other hand, we have to observe that this model shows an unbounded growth of the concentration of the ED species, Figure 2 C.

Iwamoto imperfect model (Iwamoto-Imperfect.py)
If we add to the perfect model the imperfect stereoselectivity reactions R1a, R2a, and the imperfect stereospecificity reactions R3a, R4a, we get the imperfect model.When the tuples R1, R1a, R2, R2a, and R3, R3a, R4, R4a have the same rate constants, then the Listanalchem programme, SNA algorithm, finds an unstable region.However, the values sampled for the rate constants cannot produce SMSB, and the bifurcation diagrams show no SMSB in the neighbourhood of those values.The detected instability is due to the unlimited growth of the concentrations of EL and ED, Figure 2 D. Nevertheless, it is possible to obtain a model capable of SMSB by using the same trick used in the analysis of the three Calvin models: we allow different values for the rate constants of R1a, R2a with respect to values of the rate constants of R1, R2, and we do the same for the pairs R3a, R4a, and R3, R4.However, it is unclear why those rate constants could be different, given that the reagents are the same.

APED model (APED.py, 2004)
The model proposed in reference [18], and called APED model, is shown below: (54) .It is important to mention that we detected this error thanks to our computer programme Listanalchem second algorithm-SNA, which allowed us to test the stability of these two options efficiently.This network exhibits some of the features that allow the emergence of homochirality: external input of the precursors (irreversible pseudoreactions) although not an explicit output, autocatalysis (RR ⇌ R + RR, SS ⇌ S + SS), and negative feedback R+S ⇌ SR, which produces the heterochiral inactive catalytic species SR.The specific scheme presented above was elaborated with the help of our SNA algorithm because the original scheme 8, presented by Blackmond in her review, was shown (using our algorithm) incapable of producing SMSB.We want to remark that this is one of the capabilities of our algorithm: it can lead us in the design (and improvement) of network models of biological homochirality.

The Soai reaction mechanism proposed by Trapp and co-workers (Soai-Trapp-et-al.py, 2020)
Trapp and co-workers presented a reaction mechanism that is supposed to model the Soai reaction [19].This mechanism was constructed from a large set of experimental data.This model includes 26 species and 34 reactions (counting forward and reverse), too large to be shown here, but available in the reference as well as in the file "Soai-Trapp-et-al.py" of Listanalchem folder "models".We have to say that our SNA algorithm classified the network as incapable of SMSB.However, if one uses Chemkinlator on the set of parameter values provided in [19], it will observe SMSB.This fact can be seen as a fault of our algorithm, which should rely on the approximate nature of the algorithms used to solve the nonlinear inequalities in the analysis.However, we would like to stress the capability of our algorithm in handling such a huge mechanism.Also, as was shown when the Calvin models were discussed, additional analysis can be carried out using the Listanalchem fifth algorithm.That one allows founding SMSB in this enormous mechanism.However, as before with the Calvin model, no more discussion will be presented here because the scope of this work is only the SNA algorithm.

Conclusions
The mathematical tools provided by Clarke's Stoichiometric network analysis were implemented as a computer programme.This implementation allows us to focus the stability analysis on the matrixes of extreme currents, whose entries are linear polynomials and not the nonlinear polynomials that occur as entries of the Jacobian matrixes.This fact allows us to efficiently search the instability sources of the coupled systems of differential equations that govern the chemical mechanism proposed to explain the chemistry behind the emergence of homochirality.
The algorithm and the computer programme presented here were used to analyse ten different models of biological homochirality that appear in the related literature and 18 variations of those models for a total of 28 models.This was possible thanks to the efficiency of our algorithm.
This work allows us to detect some of the sources of SMSB, namely: autocatalysis (positive feedback), negative feedback (usually presented as inhibition reactions that involve two enantiomers), and openness (similar to CSTR, but also representable by irreversible reactions which are usually not well supported).Furthermore, we observed that these sources of instability are generally present in the models proposed in the literature, and we studied the consequences of adjusting some of them to the basic principles of thermodynamics and kinetics.

Figure 1 .
Figure 1.The bifurcation diagram of the Frank reversible model.The simulation parameters are shown on the left side of the figure, a snapshot of the Chemkinlator computer programme [16] used to make the simulations.The initial difference in the enantiomers concentration is 1 × 10 -15 , equivalent to an enantiomeric excess (ee) of ≈ 1 × 10 -9 %.

Figure 2 .
Figure 2. The Bifurcation diagrams of the Iwamoto perfect model showing A) thesmall unstable region when the perturbation is small (ee of order ≈ 1 × 10 -5 %), and B) when the perturbation is larger, ee ≈ 2 × 10 -2 %.The time series in C) highlights the unbounded growth of the concentration of E D , and the time series in D) corresponds to the imperfect version.In C), the SMSB is evident, while in D) racemisation is evident, which means that no SMSB is produced in the imperfect model, although this second system is also unstable, due to the unlimited growth of the concentrations of E L and E D .
Blackmond discusses, in her 2020 review, the modelling of the Soai reaction[40].The following mechanism readily resumes her proposal.

Table 1 .
Comparison of the most relevant characteristics of the Frank-type models discussed in this work.

Table 2 .
The Iwamoto model.The perfect, imperfect, and equivalent mechanisms.The equivalent mechanisms have the constant species absent according to the requirements of Listanalchem.