#### Metabolic steady-state prediction in pure metabolic models

FBA employs mass balance, thermodynamic and flux capacity constraints to identify a metabolic state (i.e., a vector, ∈*R*^{m}, of flux reaction rates) that provides a maximal biomass production rate. The mass balance constraints are formulated as

where *S∈R*^{n × m} is the stoichiometric matrix, with *S*_{ij} representing the stochiometric coefficient of metabolite *i* in reaction *j*. Thermodynamic constraints that limit the directionality of reaction and flux capacity constraints are formulated as:

The search for a flux distribution, *v*, that maximizes *v*_{gro} and satisfies the above constraints is performed using a linear programming solver.

#### An integrated metabolic and regulatory model of *E. coli*

The integrated metabolic and regulatory model of the bacteria *E. coli* was obtained from Covert *et al* (2004). The model accounts for *k*=1010 genes, *j*=817 proteins, *m*=1083 reactions (933 enzymatic reactions and 150 external transport reactions) and *n*=761 metabolites.

The complex mapping between genes, proteins and reactions is formulated with Boolean equations. Each reaction is associated with a Boolean equation representing its dependency on the presence of one or multiple proteins. For example, the equation ‘R1=(P1 AND P2) OR (P3 AND P4)’ specifies that reaction R1 is catalyzed by either the enzyme complex consisting of proteins P1 and P2, or by the enzyme complex consisting of proteins P3 and P4. Proteins are further assigned with equations representing their dependency on one or multiple genes. For example, the equation ‘P1=G1 AND G2 AND G3’ specifies that protein P1 is the combined product of genes G1, G2 and G3.

Transcriptional regulation is formulated as an additional set of Boolean equations. Specifically, genes are associated with Boolean equations, reflecting their dependency on the expression of other genes in the model (i.e., TFs). For example, the equation ‘G1=NOT(TF1) AND TF2’ specifies that the gene G1 is expressed if and only if TF1 is not expressed and TF2 is expressed. TFs, in turn, are treated similar to other genes in the model, having additional regulatory equations of their own.

Metabolic regulation, that is, the activation or repression of genes based on the presence of certain metabolites, is incorporated within the regulatory equations using *flux predicates* of specific flux rates. For example, the flux predicate ‘FLUX(R1)>0’ may be a part of a regulatory equation G2=TF1 AND ‘FLUX(R1)>0’, specifying that G2 is expressed if and only if TF1 is expressed and there is non-zero (positive) flux through reaction R1. The model consists of a total of *l*=117 such flux predicates.

#### The SR-FBA method for predicting MRS

*Metabolic constraints*: The metabolic state should satisfy the stochiometric, thermodynamic and flux capacity constraints formulated in equations (1) and (2).

*Reaction predicates constraints*: The reaction predicate *b*_{i} represents a rule in the form ‘FLUX*(j)>c*’, where *c∈R*. This rule can be formulated via the following linear constraints:

*b*_{j}(*c*+ε−β_{i})+*v*_{i}*c*+ε and *b*_{j}(α_{i}−*c*−ε)+*v*_{i}⩾α_{i}, where ε=10^{−4}

The resulting complete MILP formulation is hence as follows:

Regulatory constraints (, )

Reaction enzyme state constraints (, )

Reaction predicates constraints (, )

The formulation of SR-FBA in the integrated metabolic–regulatory model of *E. coli* (Covert *et al*, 2004) results in an MILP problem with 5380 variables (4296 Boolean variables) and 7323 equations. Solving this problem for a given instance takes less than a second using the commercial CPLEX 7.5 solver.

#### Characterizing alternative gene expression and flux activity states

To characterize alternative possible expression states of a gene in a given growth medium, we solve two MILP problems for each gene, once setting it to be expressed and the other setting it to be non-expressed. The gene is determined to be expressed or non-expressed if a feasible MRS solution is obtained for one of the two problems. A gene is considered undetermined if both problems have a feasible solution.

To characterize alternative flux activity states of a gene, we use the following method: (i) solve an MILP problem while considering the gene as not expressed in the Boolean equations of its associated proteins. If there is no feasible MRS solution following this modification, then the gene must be associated with a reaction with non-zero flux, and hence the gene is considered to be active. (ii) If there is a feasible MRS solution, then, to determine whether the gene is non-active or undetermined, we test whether it is associated with a reaction that may have a non-zero flux. This is carried out by applying FVA (Mahadevan and Schilling, 2003) on the MRS solution space to determine whether one of the reactions associated with the gene may be active.