Computing linear extensions for polynomial posets subject to algebraic constraints
Abstract
In this paper we consider the classical problem of computing linear extensions of a given poset which is well known to be a difficult problem. However, in our setting the elements of the poset are multivariate polynomials, and only a small “admissible” subset of these linear extensions, determined implicitly by the evaluation map, are of interest. This seemingly novel problem arises in the study of global dynamics of gene regulatory networks in which case the poset is a Boolean lattice. We provide an algorithm for solving this problem using linear programming for arbitrary partial orders of linear polynomials. This algorithm exploits this additional algebraic structure inherited from the polynomials to efficiently compute the admissible linear extensions. The biologically relevant problem involves multilinear polynomials and we provide a construction for embedding it into an instance of the linear problem.
1 Introduction
Consider a set of real polynomials , defined on a domain , equipped with a partial order . We are interested in identifying linear extensions (total orders compatible with ) that are satisfied by under evaluation at a point in . To be more precise consider a semi-algebraic set , called the evaluation domain, and a collection of polynomials . Let denote a partial order on such that if , then
(1) |
Let denote the set of permutations on symbols. We identify linear extensions of with a subset of as follows. Given , let denote the linear order
We define the realizable set associated to by
(2) |
Observe that if , then is a linear extension of . The algebraically constrained linear extension problem (AC-LEP) defined by is to determine
Notice that in the formulation of the AC-LEP we have identified the partial order with the associated element in . We will use this identification throughout the remainder of the paper. We say that each is an admissible linear extension.
As is discussed in Section 2 our immediate motivation for studying the AC-LEP comes from modeling the dynamics of regulatory networks in biology and in particular characterizing relevant subsets of the parameter space. For the moment we attempt to put this problem into a broader mathematical context as the problem itself, as well as our solutions for some special cases, have elements of both classical real algebraic geometry and order theory.
Quantifier elimination and real algebraic geometry
Observe that if , and is an arbitrary collection of polynomials, then is admissible if and only if there exists such that for all . These inequalities define a semi-algebraic set. Therefore, if is the trivial partial order (i.e. is a single anti-chain), then this instance of AC-LEP is equivalent to the classical problem of decidability for real semi-algebraic sets.
The previous example illustrates a major challenge in solving the AC-LEP. The first general algorithm for solving the quantifier elimination/decidability problem for polynomials in with feasible running time was the cylindrical algebraic decomposition (CAD) given by Collins [13] in 1975. The CAD algorithm works by subdividing into subsets on which the polynomials are sign invariant. Given such a decomposition, decidability is reduced to simply evaluating each polynomial at a sample point located in each subset and checking if it satisfies the necessary inequalities. Unfortunately, the computational complexity of the algorithm grows like
(3) |
This worst case running time is known to be sharp even for classes of “nice” polynomials e.g. linear [10], and moreover, the worst case is also typical [4]. As a result, the question of whether or not , even for a single , is often intractable for problems of practical interest.
In addition, the CAD algorithm does not provide partial information. It either runs to completion, in which case it is guaranteed to provide an answer, or it provides no information. Furthermore, we note that if additional algebraic constraints are added e.g. we assume is a strict semi-algebraic subset, then the CAD algorithm can handle this by simply appending the polynomial constraints which define to the set of polynomials. However, this dramatically increases the complexity of the CAD algorithm, despite the fact that the number of admissible linear extensions can only decrease.
Some improved algorithms have been proposed which aim to reduce the complexity of specific aspects of the problem or for special classes of polynomials (e.g. [35, 8, 9]). These improvements often provide dramatic algorithmic speedups for checking whether for a single linear extension. However, these algorithms have the same worse case running time as the general CAD algorithm and understanding which classes of polynomials benefit is still a very active area of research. Therefore, these improved algorithms alone are not sufficient to handle instances of AC-LEP since we are interested in determining which of the possible semi-algebraic sets are nonempty. An efficient algorithm that does not produce a decomposition of into sign invariant subsets would still need to be called times. However, we will make use of these improved algorithms as a post-processing step which we discuss further in Section 4.
Computing linear extensions of Boolean lattices
Let us momentarily ignore the algebraic structure in the AC-LEP by forgetting that is a collection of polynomials. Hence, we focus only on the poset structure , and consider the problem of computing all linear extensions. The related problem of counting all linear extensions of a partial order is a well studied problem in order theory. Its importance is due in large part to its connection with the complexity of sorting elements in a list. If one considers a list of distinct values which have been partially sorted by making pairwise comparisons on a subset of its elements, then these comparisons induce a partial order. Therefore, the linearly ordered values of the fully sorted list are given by one of the possible linear extensions for the partial order. As a result, the complexity of completely sorting a list is intimately connected to counting linear extensions for posets.
Observe that computing the set of all linear extensions of is not easier than counting them which is known to be -complete [6]. In particular, a polynomial time algorithm for computing all possible linear extensions for arbitrary posets would imply that by Toda’s theorem [51]. Moreover, we are interested not only in counting linear extensions, but explicitly computing them. Therefore, we are also concerned with how fast the number of admissible linear extensions grows.
For reasons we discuss in Section 4, we are specifically interested in the case that is a Boolean lattice. Specifically, for fixed , define and let denote its power set. The standard -dimensional Boolean lattice is the poset, , where is the partial order defined by inclusion. We say a poset, , is an -dimensional Boolean lattice if is order isomorphic to the standard -dimensional Boolean lattice and we write in place of .
Estimating the number of linear extensions for Boolean lattices was first considered in [45] which established a nontrivial upper bound. Later, Brightwell and Tetali [7] proved the following result that essentially settles the question for all practical considerations. If denotes the number of linear extensions of an -dimensional Boolean lattice, then
(4) |
The estimate in Equation (4) illustrates a major challenge in solving the instances of AC-LEP of interest in this paper. Consider an instance of AC-LEP given by where is an -dimensional Boolean lattice and is any evaluation domain. Suppose we had a black box for efficiently computing all linear extensions of a Boolean lattice denoted by . Furthermore, assume we also had a “CAD”-like algorithm which could efficiently check if . Then, one would need to call this algorithm only -many times as opposed to as we argued above. However, the growth estimate in Equation (4) implies that the number of calls to this algorithm would still grow exponentially.
This work
In this work we present efficient algorithms for solving two specific instances of the AC-LEP. The first is the linearly constrained linear extension problem (LC-LEP), in which is a set of linear polynomials, is the interior of a polyhedral cone (i.e. is defined by a finite number of linear inequalities), and is an arbitrary partial order. We present an efficient algorithm for solving the LC-LEP in Section 3. The second instance of the AC-LEP, which we call the parameter space decomposition (PSD) problem and describe now (see Definition 4.6 for a precise definition), is motivated by an application from systems biology described in Section 2.
Definition 1.1.
For , an interaction function of order is a polynomial in variables, , of the form
(5) |
where each factor has the form
and the indexing sets form a partition for . We define the interaction type of to be where denotes the number of elements in .
Remark 1.2.
We leave it to the reader to check that the order of the indexing sets does not matter for any of the analysis in this paper. Therefore, for convenience in reporting results (see Section 5) we will always assume that
To define an instance of the PSD problem, fix an interaction function of order and let be the collection of polynomials in the positive real variables, , obtained by evaluating with each . Taking all possible combinations of for produces the polynomials for the PSD problem,
(6) |
In Section 4, we will define an indexing map between the elements of and the standard -dimensional Boolean lattice. Let denote the Boolean lattice partial order with respect to this index map, and set . The PSD problem is the instance of the AC-LEP defined by . In Section 4, we prove that satisfies Equation (1). However, we present some examples before continuing.
Example 1.3.
The simplest nonlinear PSD problem arises from the interaction function
which has interaction type, . The PSD polynomials for this interaction function are given by
The PSD evaluation domain is and the partial order, , is imposed on by identifying with the vertex of a unit cube whose coordinates are where is the binary expansion of . The solution to this PSD problem is the set of admissible linear extensions of , such that if and only if . We note that there are linear orders on . However, only of these are linear extensions of , and of these, only the following linear extensions are admissible.
The “missing” linear extensions are those which do not satisfy certain algebraic constraints which are imposed by the polynomial structure. For example, observe that for fixed , if , then must also hold.
Unlike the partial order which constrains all possible linear extensions, this order relation is conditional. Indeed, there exist choices of such that in which case there is no requirement imposed on the order of , and in fact, there are admissible linear extensions which satisfy both choices, e.g. the first two orders in column four. As another example, observe that , if and only if . This algebraic constraint is bi-conditional. However, it too can not be represented in the partial order since both choices occur in at least one admissible order.
To emphasize the role of the interaction function in determining the algebraic constraints, we consider a similar PSD problem that is also an instance of LC-LEP.
Example 1.4.
Similarly, the missing linear extensions in this example fail to satisfy some algebraic constraints. In both cases, the set of admissible linear extensions is a fraction of the set of all linear extensions of the Boolean lattice. In other words, the algebraic structure implies that the admissible linear extensions are a sparse subset of all linear extensions. The algorithm in this paper exploits the algebraic and order theoretic aspects of the PSD problem to overcome the computational complexity limitations which plague both problems in general. Furthermore, we prove that this algorithm finds all possible linear extensions. For both examples we obtained the ( and respectively) admissible solutions without first computing the linear extensions of and then checking which are admissible.
Related work
As is indicated above our original motivation for this paper arises from problems in systems biology for which explicit complete solutions to the PSD problem are required. As such the majority of this introduction has focused on the question of efficacy of computation. However, there is another direction in which the work of this paper overlaps with other efforts. In particular, observe that the case where the interaction function is linear, i.e. has interaction type , solving the AC-LEP is equivalent to identifying all the cells of a hyperplane arrangement. This latter problem has been the subject of considerable study (see [47] for an introduction) and in particular, Maclagan [33] provides the number of solutions for the linear PSD problem for . Our computations (see Table 1) lead to the same numbers, as expected.
After accounting for symmetry in the number of linear PSD solutions for interaction types , , and , reported in column two of Table 1, we obtain
which align with sequence A009997 in the OEIS [44]. From [22], we know this sequence represents the number of comparative probability orderings on all subsets of elements that can arise by assigning a probability distribution to the individual elements. The equivalence of comparative probability orderings and solutions to the linear PSD problem follows directly from the definition of comparative probability.
Organization of paper
The remainder of this paper is organized as follows. In Section 2 we briefly describe how the PSD problem arises naturally in the study of global dynamics for gene regulatory networks. In Section 3, we present an efficient algorithm for solving instances of the LC-LEP. In Section 4, we show that the LC-LEP is related to the PSD problem in the following way. If is an instance of the PSD problem, then we construct an associated instance of LC-LEP, denoted by , which satisfies the inclusion
(7) |
We refer to this instance of LC-LEP as the linearized PSD problem associated to . We exploit this construction and the algorithm for solving the LC-LEP presented in Section 3, to provide a means of efficiently computing a collection of candidates that contains the solution to the PSD problem. We prove that in some cases the inclusion in Equation (7) is actually an equality. More generally, this inclusion is strict, but the candidate set is a sparse subset of the collection of all linear extensions of . In this case we describe algorithms for removing the non-admissible solutions.
Finally, in Section 5 we present the results for all PSD solutions with order up to four. Additionally, we have some results for PSDs of order five and six. For the remaining cases and PSDs of higher order the computations become too large, i.e. we do not have immediate use for them in applications and they require significant computing resources.
2 Dynamic Signatures Generated by Regulatory Networks
This section provides a brief description of how the AC-LEP arises in the context of mathematical modeling of problems from systems biology with a few comments at the end indicating its potential application in more general settings of nonlinear dynamics. Biologists often describe regulatory networks in terms of annotated directed graphs, such as that shown in Figure 1(a) where the labeling of the edges, or indicates whether node activates or represses node . Our goal is to describe the type of dynamics that can be expressed by the regulatory network. This requires two things: (i) a mathematical framework in which we can rigorously discuss dynamics when an analytic expression of the nonlinearity is unknown, and more specifically, (ii) imposing a mathematical interpretation on the regulatory network that is compatible with its use as a biological model.
We discuss both of these topics in the following sections, but hasten to add that there are other complementary approaches to this problem. Perhaps the strongest dichotomy is between Boolean models and ordinary differential equation (ODE) models (see [1] for a brief overview and references). Recent efforts in the ODE direction seek to go from networks to explicit polynomial vector fields (see [27] and references therein). The approach we describe lies somewhere between these two. Our approach is partially combinatorial, and thus we obtain efficacy similar to that of the Boolean models, but we maintain continuous parameterization (hence the necessity of the results of this paper), and therefore our computations can be interpreted in the context of ODEs. However, unlike methods based on explicit vector fields, we derive the structure of the dynamics via order theory and algebraic topology. Understanding the relative strengths and weaknesses of these various methods is still an active area of research.
2.1 Mathematical framework
Classical nonlinear dynamics focuses on invariant sets and bifurcations, both of which are extremely sensitive to parameters, e.g. nonlinearities. Unfortunately, this is precisely the information that is unknown in multiscale systems such as those associated with biology. C. Conley proposed that in these situations one should focus on isolated invariant sets [14] as there is a sheaf structure associated to them [43] and thus are not subject to the above mentioned sensitivity. Furthermore, he developed an algebraic topological invariant for isolated invariant sets, called the Conley index, from which one can recover considerable information about the existence and structure of the invariant set [42]. In particular, using the homology Conley index one can identify the existence of invariant sets [14], equilibria [46, 36], periodic orbits [38], heteroclinic orbits [15], chaotic dynamics [40, 49], and semi-conjugacies onto nontrivial dynamics [39, 37].
One indication of the strength of Conley’s proposition is that it is possible to study a differential equation (ordinary or partial) or a continuous map (finite or infinite dimensional) numerically and with appropriate bounds on the errors, to draw rigorous conclusions about the dynamics from homological Conley index computations [41, 18, 28, 19]. The weakness of the above mentioned results is that they are perturbative in nature, i.e. the results are computed at given parameter values and the results are guaranteed to be true for a sufficiently small neighborhood of that parameter value. In practice one can extract numerical bounds for the size of the neighborhood, but they tend to be small.
For multiscaled systems such as those arising in systems and synthetic biology we need to be able to investigate dynamics over large ranges of parameter values. This was done in the context of low dimensional maps with a low dimensional parameter space [3, 12, 11]. The strategy is to subdivide parameter space uniformly, for each region of parameter space compute dynamics with error bounds valid over the entire region, and once again interpret the structure of the dynamics using the Conley index. While the approach is extremely effective for low dimensional problems it is difficult to extend to higher dimensions for two reasons:
- R1
-
the cost of computing effective numerical error bounds becomes prohibitive, and
- R2
-
the subdivision of parameter space is not chosen according to the underlying dynamics and refinement of the subdivision leads to exponential growth with dimension in the number of subdivisions.
With R1 in mind W. Kalies, R. Vandervorst, and the third author have developed an approach to dynamics that is based on combinatorics, order theory (posets and lattices), and algebraic topology. The combinatorics arises from the choice of a decomposition of phase space into closed regular sets and the dynamics is characterized by a relation on this collection of closed regular sets. It is proven that Conley’s fundamental characterization of dynamics in terms of attractor-repeller pairs or equvalently Morse decompositions can be completely recovered via this combinatorial approach [29, 30, 31]. The algebra of the order theory, in particular Birkhoff’s theorem relating finite posets with finite distributive lattices, provides an algorithmic approach for the identification of index pairs from which the Conley index can be computed [32]. This in turn allows one to obtain a chain complex that codifies gradient-like structure of the dynamics and the Conley indices of all the associated isolated invariant sets [25]. Observe that, at least conceptually, we have replaced the numerical computations by combinatorial computations. In practice, at least for the biological regulatory networks discussed below, this combinatorial approach is extremely efficient, both with respect to time and memory [17].
Dealing with R2 is the raison d’etre for this paper. As is made clear below for the regulatory networks of interest our closed regular sets take the form of cubes determined by parameter values. The relation on these cubes that represents the dynamics is obtained by determining the directions of inequalities. All possible sets of directions are in turn determined by understanding the orders of the polynomials defined by (6). Thus, solving the AC-LEP provides us with an a priori optimal potentially nonlinear decomposition of parameter space.
2.2 Mathematical interpretation of regulatory networks
We now turn to our mathematical interpretation of a regulatory network that is compatible with its use as a biological model. With this in mind, we assign to node a state variable, , that corresponds to the quantity of a protein, mRNA, or a signaling molecule. Precise nonlinear expressions for the interactions of the variables are not assumed to be known, but we do assume that the sign of the rate of change of is determined by the expression
(8) |
where indicates the decay rate and is a parameter dependent function that characterizes the rate of growth of . Note that is a function of if and only if there exists an edge from to in the regulatory network.
Since the biological model provides minimal information about the effect of on we want to choose a mathematical expression with a minimal set of assumptions. The rates of growth of due to are labeled as . Figure 1(b) corresponds to an edge and indicates that the rate of increase must occur at some lesser value of and the rate of increase must occur at some greater value of . An arrow of the form leads to the opposite relation.
This introduces three positive parameters, , , and , for each edge in the regulatory network. Note that this is the minimal number of parameters that allows one to quantify the assumption that activates (or equivalently that represses ). We encode this information with the following functions
(9) |
We do not assume that the values of , or are known (see Figure 1(b)). This is intentional as many of these parameters do not have an easy biological interpretation and/or correspond to physical constants which are difficult or impossible to precisely measure. Thus, the goal is not to determine the dynamics at any particular choice of parameters, but to determine the range and robustness of the qualitative dynamics exhibited by a network.
A regulatory network such as that of Figure 1(a) does not indicate how multiple inputs to a particular node should be processed. An approach that is used is to assume a simple algebraic relationship involving sums and products of the . As an example, a reasonable choice for of Figure 1(a) is
(10) |
Observe that each takes only two values and therefore, generically Equation (10) takes distinct values which are precisely the values of the elements of in the PSD of Example 1.3.
As is suggested in the caption of Figure 1(b), we do not interpret the values of , or as literal expressions of the nonlinear interactions, but rather, that the associated parameter values are landmarks of whatever of the “true” nonlinear function is. This has several consequences.
-
1.
We cannot expect Equation (8) to provide precise information about the growth rate of . Therefore we restrict our attention to asking whether is increasing or decreasing. However, we wish to answer this question over all the possible parameter values , , and .
-
2.
The only values of at which the dynamics of change are of the form . The associated hyperplanes decompose phase space , where is the number of nodes in the network, into -dimensional rectangular regions called domains.
- 3.
The Dynamic Signatures Generated by Regulatory Networks (DSGRN) library contains software that, given the information of the form provided by consequence 3, is capable of efficiently building a database of the global dynamics of a regulatory network over all of parameter space [17, 34]. In [17] the authors considered networks whose nodes have at most three in-edges, and at most three out-edges. This constraint was due to the difficulty in solving the PSD problem and the results of this paper provide a means to vastly expand the capabilities of DSGRN [34]. In particular, DSGRN can now handle the algebraic combinations of 4 to 6 in-edges as is indicated in Section 5, and arbitrarily many out-edges.
2.3 Extensions
The focus of this paper is on the PSD problem because of the immediate need, arising from applications, to expand the capabilities of DSGRN to handle regulatory networks with nodes that have more than three in and out edges. However, as should be clear from Section 2.1 the mathematical foundations for our approach is quite general. In particular, the dynamics associated with functions described in Section 2.2 or more generally with the PSD problem (See Definition 4.6) represent a rather special subclass. Two immediate generalizations that are being pursued in other work, but rely on application of the techniques of this work are as follows.
The first generalization is to replace the constant in (8) by a function . This allows the DSGRN strategy to be applied in the systems biology setting to regulatory networks that involve post-transcriptional regulation. The second generalization is to replace the functions given in (9) by a step function involving multiple steps without necessarily assuming monotonicity. In this setting we no longer have the Boolean lattice as the minimal partial order, but the essential arguments of this paper still apply.
3 Solving the LC-LEP
In this Section, we provide an efficient algorithm to solve the LC-LEP defined in Section 1. Note that if is a linear polynomial, then evaluation of defines a linear functional on . Thus, there exists a unique vector , that we call the representation vector for , satisfying
Recall that the evaluation domain for the LC-LEP is the interior of a polyhedral cone. Thus, there exists a collection of linear polynomials , such that
(11) |
We assume that (11) is satisfied for the remainder of this section.
To foreshadow our approach recall that by definition if and only if . Our approach to determining the latter is to recast it in the language of linear algebra on cones in . From this perspective, the problem is equivalent to rigorously solving a linear programming problem and the efficacy of our algorithm is based on the fact that this can be done efficiently. With this goal in mind, we begin with a few remarks concerning cones and ordered vector spaces.
3.1 Cones
Definition 3.1.
A subset is a cone if and implies that . The cone is pointed if it is closed, convex, and satisfies
(12) |
Observe that (12) implies that a pointed cone does not contain any lines. A vector is a conic combination of if where . Suppose . The conic hull of is given by
The following result is left to the reader to check.
Proposition 3.2.
Given , is the smallest closed convex cone that contains .
We make use of the following propositions.
Proposition 3.3.
Suppose is a collection of nonzero vectors such that is a pointed cone. Then, there exists some such that for all .
Proof.
Observe that since is pointed. Hence and are disjoint, convex, closed subsets of .
Therefore, by the hyperplane separation theorem [5], there exists such that and for any . ∎
Proposition 3.4.
Suppose is a collection of nonzero vectors such that is a pointed cone. If , then is pointed.
Proof.
Suppose that is not pointed. Then, there exists such that or equivalently
where are all nonnegative. Note that if , then , which contradicts the assumption that is pointed. The sum of the two equations above is
This implies that , contradicting the assumption that is pointed. ∎
The previous propositions illustrate the importance of solving the cone inclusion problem: given a vector , and finite set of vectors , determine whether or not . Algorithm 1, stated below, solves this problem. Observe that checking if is equivalent to solving the following linear programming feasibility problem.
(13) | ||||
where is the column matrix of .
Linear programming is a powerful tool that is widely used in convex optimization, and as a result, there are many available solvers/algorithms for solving the linear programming feasibility problem [52]. The results can be made rigorous by performing computations using interval arithmetic [48] or rational linear programming [2] in the case that is rational. Observe that the PSD problem defined in Section 1 satisfies this constraint. As is made clear in Section 5, we use different solvers depending on the machine employed to do the computations. In any case, we take for granted the existence of a rigorous solver for the feasibility problem in Equation 3.1 as a “black box” which we call LPSolver which is employed in the following algorithm.
The next algorithm uses Proposition 3.4 (see line 4) and Algorithm 1 to determine if a set of vectors defines a pointed cone.
We now show that the LC-LEP can be reformulated as a problem of identifying whether some specific subsets of vectors generate pointed cones.
Definition 3.5.
Given an instance of the LC-LEP, , we define the base cone as where and are defined as follows. Set
where are the representation vectors as defined in Equation (11). Applying Algorithm 2 to (and the fact that we assume ) shows that is pointed. Define
Observe that if satisfies Equation (1), then the representation vector for is an element of by definition. Therefore, by Proposition 3.3, is pointed.
The motivation behind our definition of is that it characterizes the algebraic constraints in the LC-LEP in terms of linear algebra that can be efficiently checked. The next proposition shows that the same idea works for linear extensions.
Given , we define
(14) |
Proposition 3.6.
For any , if and only if is a pointed cone.
This Proposition is a trivial application of a well known result in convex optimization. If denotes the closure of , then is a convex cone. Its dual cone is defined to be the set
and we observe that this set is nothing more than . Similarly, for each , is again a convex cone as its simply a restriction of obtained by imposing finitely many additional linear constraints and is its associated dual cone. Consequently, Proposition 3.6 follows from the fact that a convex cone is pointed if and only if its dual cone is nonempty. A proof of this result can be found in [21]. We emphasize that the importance of Proposition 3.6 is the implied equivalence
3.2 An algorithm for identifying
In this section we present an algorithm for solving an arbitrary instance of the LC-LEP.
In the Algorithm 3, for convenience, we take . To prove the correctness of the algorithm it is useful to denote the return of Algorithm 3 given input as .
Definition 3.7.
Theorem 3.8.
Algorithm 3 solves the LC-LEP.
Proof.
Given , we need to show that . We may assume that is pointed since if not, then both and are empty.
We first show that , i.e. for any we show that the set . As indicated above we assume is pointed. For Algorithm 3, lines 2-4 returns the empty set if is not pointed. Otherwise, it passes to lines 5-9 which checks if is a total order over . If so, it is added to the return variable, Ret. If is not a total order, then lines 10-17 extend it to a total order by recursively constructing from for .
Therefore, it suffices to show that are all pointed for .
Fix . In lines 11-12, we find a candidate which is not in the image of , and define where . In line 13, we verify that and it follows from Proposition 3.4, that is pointed. For each appended to Ret, we have is pointed for . In particular, is pointed, and from Proposition 3.6, we have .
We now prove that . Assume that . By definition this means that and from Proposition 3.6, is pointed. For each , we have , and thus is pointed. As is pointed, we know for . Therefore, line 13 in Algorithm 3 will not fail to extend at each step in the recursion and after recursive extensions, will be appended to Ret and thus, . ∎
3.3 Complexity analysis
As discussed in Section 1, computing linear extensions of a poset is at least as hard as counting them, which has been established to be a difficult problem. While the algebraic constraints induced by the evaluation domain reduces the number of admissible linear extensions, it is not clear whether or not the constrained problem is easier (i.e. whether or not the LC-LEP is also -complete). The answer may depend on the partial order, the evaluation domain, or both. In any case, this appears to be a difficult and open problem which is outside the scope of this work. Consequently, we do not attempt to provide any rigorous asymptotic estimates of Algorithm 3.
However, for the instances of LC-LEP solved in this work, our algorithm is dramatically more efficient than a brute force algorithm as evidenced by the results in Section 5. By brute force we mean an algorithm which checks every linear order on to determine whether or not it is admissible. Thus we conjecture that Algorithm 3 is more efficient in the typical case which explains our results.
A heuristic, but not rigorous, justification is as follows. We start by assuming a fixed implementation for the InCone function in Algorithm 1. This is the core algorithm in the sense that it dominates the computational cost of Algorithm 3. Let be a given instance of the LC-LEP where and let denote the solution of the LC-LEP.
We consider the number of InCone function calls required to solve this instance (i.e. we suppose that each call to InCone has unit computational cost). It is trivial to count the number of calls to InCone necessary for a brute force search. By Proposition 3.6, is nonempty for any if and only is pointed which is determined by a single InCone call. Therefore, a brute force search recovers in exactly calls to InCone.
To contrast this with Algorithm 3, consider a fixed which is not admissible. Hence, there exists a least index, , such that
and
Consequently, in the recursive call, line of Algorithm 3 returns False and is “pruned” (i.e. removed from consideration as a candidate solution). In other words, has already been ruled incompatible with the algebraic constraints imposed by and using only its partial image obtained by restriction to the subset . The key observation is that this applies to every such incompatible linear extension. In other words, every satisfying
is also pruned in this step. Evidently, there are such extensions which are simultaneously removed which results in saving calls to InCone compared to the brute force search.
Pruning incompatible partial images early leads to an exponential reduction in the number of InCone calls which explains the results shown in Table 1. However, a more rigorous analysis for the complexity of Algorithm 3 amounts to estimating how early a given incompatible partial image is pruned. It is likely that this is heavily dependent on either or , or both, and may also depend on the order in which the partial images are extended.
4 Solving the general PSD problem
In this section we present a solution for the PSD problem described in Section 1. The solution is based on the observation that the PSD problem naturally has a Boolean lattice structure. Therefore, the linear PSD problem is an instance of the LC-LEP and and reduces to a simple application of the algorithms presented in Section 3. For nonlinear PSD problems, we construct a map that “embeds” it into an instance of LC-LEP (of higher dimension) in the sense that the inclusion in Equation (7) holds for the Boolean partial order. We prove a sufficient condition for which this inclusion is equality and describe a method for disqualifying spurious solutions when it is strict.
4.1 The PSD as an instance of AC-LEP
Throughout this section denotes a PSD problem for a fixed interaction function of order type as defined in Equation (6) where is the Boolean lattice partial order. Our first goal is to show that satisfies Equation (1), and in particular, that every is a linear extension of a Boolean lattice. We start by defining appropriate indices for the elements of .
Definition 4.1.
Suppose is the interaction type for . As in Definition 1.1 let denote the indexing sets for each summand of which form an integer partition of . For each , we consider as an ordered set and and for , we let denote the largest element of . Let be the set of all Boolean functions defined on . The Boolean indexing map, denoted by , is defined by the formula
In other words, and are defined so that for each , is the binary digit of in Little-endian order.
We will also consider, , as a vector of Boolean functions defined as follows. Let denote the set of Boolean functions defined on . Then, elements of can be represented as vectors of the form
Note that under this identification, has the equivalent representation as .
Definition 4.2.
Suppose is the interaction type for an interaction function, as in Definition 1.1, and denotes the corresponding Boolean indices. For , define , by the formula
(15) |
When convenient, we use a linear indexing scheme for elements of which we define via the Boolean indexing map by identifying where . To avoid confusion, we exclusively use Greek subscripts when referring to elements of by their Boolean indices, and Latin subscripts when referring to elements of by their linear indices. We leave it to the reader to check that the linearly indexed polynomials in Examples 1.3 and 1.4 are in agreement with that of Definition 4.2 via this identification.
Definition 4.3.
Let be a pair of Boolean indices corresponding to . An ordered pair satisfies the one bit condition if , for all and , with equality for all but exactly one pair.
Remark 4.4.
Observe that if satisfy the one bit condition and is the unique pair for which and take different values, then and .
Remark 4.5.
The one bit condition induces a poset structure on by setting for each satisfying the one bit condition, and extending the relation transitively. The one bit condition is a covering relation for the partial order.
Definition 4.6.
The next proposition proves that satisfies Equation (1), and furthermore that is a Boolean partial order which justifies expressing the PSD problem as .
Proposition 4.7.
Consider a PSD problem . Then,
-
1.
is a Boolean lattice.
-
2.
For any , if , then
Proof.
To prove the first claim, let and let denote the standard Boolean lattice. Define a map, , by the formula
and we note that is a bijection since is defined to be the collection of all Boolean maps defined on . Furthermore, for any , we have by Definition 4.3 that if and only if
implying that is an order isomorphism.
To establish the second claim, we must show that if , then holds for all . Note that by transitivity, it suffices to prove this holds for satisfying the one bit condition. In this case we have
for some , . If , then from Equation (15) we have
as required. ∎
With Proposition 4.7 in mind, we return to writing in place of for the PSD problem where is the partial order of a Boolean lattice inherited by from the one bit condition.
4.2 The linear PSD problem
We consider two cases of the PSD problem: the interaction type for the function has the form or . In the first case, is linear (see Example 1.4) and the PSD problem is an instance of LC-LEP. In the second case, is linear so after a simple change of variables, we obtain an instance of LC-LEP with equivalent solutions since is monotone, hence order preserving. We focus on the first case, leaving it to the reader to check that the second case is same modulo the evaluation domain ( versus . Following the algorithm described in Section 3, we encode the partial order defined by as a set of linear constraints defined by a base cone which we must show is pointed. We begin by denoting the set of representation vectors for as
We define the set,
(16) |
which encodes the partial order into the representation vectors. These vectors will be the generators of the base cone for the algorithm in Section 3. Thus, we must show that generates a pointed cone.
Lemma 4.8.
Let denote the cone generated by , then is pointed.
Proof.
By Proposition 3.2, is closed and convex so it suffices to prove that if and , then . Fix and suppose satisfies the one bit condition. By the formula in Equation (15) it follows that
for some . Since for all , it follows that
for every satisfying the one bit condition. Passing to the representation vectors, it follows that for every , we have . Taking the conic hull, we have that if , then . It follows that if simultaneously, then and implying . ∎
4.3 The general PSD problem
Given a general PSD problem we present the construction of a LC-LEP denoted by with the property that . The importance of this is that can be solved using Algorithm 3 and hence we obtain a rigorous upper bound on .
Definition 4.9.
Given an interaction type , let denote the corresponding Boolean indices. Set and define the linearized evaluation domain to be
(17) |
Define a polynomial ring in indeterminates with Boolean indexing by
(18) |
and define a collection of linear polynomials by
The linearized PSD problem determined by is to compute .
Theorem 4.10.
Fix an interaction type, and let and denote the corresponding PSD and linearized PSD problems, respectively. The following are true.
-
1.
Let and . If and
then .
-
2.
.
Proof.
To prove the first claim, we define a map, , by where the coordinates of are given by the formula
(19) |
Observe that is defined to satisfy the functional equation
(20) |
Therefore, if and satisfies , then and it follows from Equation (20) that where as required.
To prove the second claim, consider and equipped with the linear indices as in Definition 4.2, and suppose . Then, by definition there exists satisfying
Let and apply the first result to successive pairs in the ordering which implies that for all , we have
Thus, we satisfies
and it follows that which completes the proof. ∎
Example 4.11.
Recall the PSD in Example 1.3 with interaction function corresponding to interaction type . The corresponding polynomials for the linearized PSD problem are the following polynomials in variables
where we have used linear indexing for elements of to match the polynomials in Example 1.3.
As defined in Equation (18), each variable of the form, , denotes an indeterminate in which is identified with the element, , which satisfies and . In other words, the binary vector subscript, , denotes the two values which takes for the inputs in . Similarly, is identified with satisfying .
4.4 Solving the PSD problem for interaction type .
In this section we prove the following theorem.
Theorem 4.12.
Let be an interaction function with interaction type, . Let denote the corresponding PSD problem and the associated linearized PSD problem. Then where .
The proof of the theorem is based on the following lemma
Lemma 4.13.
Fix parameters, , and define the function, by the formula
If , then has a positive root if and only if .
Proof.
Suppose first that is a root of . Expanding and to first order about and , respectively, and applying the mean value theorem yields the formula
(21) |
for some and . We define and multiply Equation (21) by to obtain
Noting that , it follows that . Therefore if , then or equivalently, .
Conversely, if then has at least one positive root since clearly and . ∎
Proof of Theorem 4.12.
Suppose , is the associated realizable set as defined in Equation (2), and , then by Theorem 4.10 we have . Note that by definition the first four coordinates of are given by the formulas
Since for , it follows that
so we have .
Conversely, suppose and . From the Boolean lattice we have or . Moreover, also satisfies, . Hence, Lemma 4.13 implies that there exists such that satisfies
Next, we define by
One easily verifies that for all , and that . From Theorem 4.10, we have which implies that . ∎
4.5 Solving the general PSD problem
In the general case, we have , and thus, computing provides only a set of candidates for . This candidate set contains spurious linear extensions so we consider the problem of removing linear extensions which are non-admissible. We have two strategies for doing this efficiently.
The first is to restrict the evaluation domain to a strict subset, , such that we still have the inclusion
(22) |
Restricting to a smaller evaluation domain amounts to imposing more of the algebraic constraints a-priori which results in improved efficiency. In order for the candidate set on the right hand side to be efficiently computable using the algorithm in Section 3, it must be an instance of the LC-LEP i.e. should be the interior of a polyhedral cone. For example, for the PSD with interaction type , analyzed in Section 4.4, we computed on the restricted domain
In terms of the algorithm in Section 3, this domain restriction amounts to taking our base cone in Algorithm 3 to be where
and is the representation vector for the linear functional defined by the formula
The requirement that this linear functional must be strictly positive is a special case of the following Lemma whose proof is a trivial computation.
Lemma 4.14.
Suppose are Boolean indices such that for any , the following equations are satisfied.
Then,
Lemma 4.14 provides a means to restrict the evaluation domain for the general linearized PSD problem as follows. Fix and suppose differ only in the coordinate with , and also assume that where is the Boolean indexing map. Then, it follows that for any , the values, , satisfy both equations in Lemma 4.14. Therefore, if is the representation vector for the linear functional defined by
then lies in for any . Equivalently, we may impose the required linear constraint, on the evaluation domain of the linearized problem. Hence, for each , we define
and for an arbitrary PSD problem, we may take our base cone to be
Applying Algorithm 3 with the base cone generated by is equivalent to solving the instance of LC-LEP defined by where is the restriction of to the subset for which the linear functionals defined by each are strictly positive for each .
In addition to restricting the computation to the polyhedral cones discussed above, we can reuse solutions of smaller PSD problems in some larger computations. As an example, suppose is the set of interaction polynomials for the PSD with interaction type and the polynomials for the PSD problem with interaction type . Observe that each admissible linear order on induces an imposed linear order on the even indexed polynomials, . A similar linear order is induced on the odd indexed polynomials, . Hence, a necessary condition to have an admissible linear extension for is that the order of and must both be consistent with one of the PSD solutions in . This implies the inclusion
(23) |
where represents the refinement of the Boolean lattice partial order, and the partial order induced by on the even/odd subsets.
To exploit this in general, we say that the PSD problem of type is a sub-problem for the PSD problem of type whenever the polynomials for must obey an implied partial order determined by the solutions of . Notice that the preceding discussion as well as Equation (23) applies also to an arbitrary polyhedral cone. Therefore, if there are a total of admissible linear extensions for all sub-problems of the PSD problem of type which we have previously computed, then we bootstrap those results when computing via the inclusion
where represents the refinement of the Boolean lattice partial order, and the partial order induced by on the corresponding subsets obtained from any sub-problem. This technique has been used in the computation for all the cases of order . Observe that the computation of can be done distributively for on different computational nodes, which, as is indicated in Section 5, we employed for the PSD problems of orders and .
In the special case of Section 4.4, we proved that inclusion in Equation (22) is actually equality when is constructed as we have described. However, in the typical case, these additional algebraic constraints are not sufficient to remove all spurious linear extensions except in the case . It remains an open problem to determine a smaller set such that for other interaction types. However, in the remainder of this section we consider the problem of extracting from when they are not equal.
Observe that we may obtain large subsets of simply by sampling. The particular strategy that we adopted is as follows. We uniformly sampled between and points
where . We chose . Mathematically the particular choice of is not important since the PSD polynomials are homogeneous, though in practice it does have an effect on sampling precision and speed. For each such we evaluated . If denotes the linear order of these values, then serves as a “witness” for the claim that . This produces
Obviously,
In general, sampling is relatively efficient and in cases where is not too large (see Table 1 for details), we recover the entire solution.
Once we have constructed the set from sampling and algorithms in Section 3 respectively, we apply a CAD algorithm to check whether or not the semi-algebraic set,
is empty for each and then is recovered. The CAD algorithm implementation we are using is CylindricalAlgebraicDecomposition in Mathematica 11 [26].
4.6 Computational complexity
Analyzing the efficiency of our solver for the PSD problem can be broken into three cases. The first case is the linear PSD problem. This is an instance of the LC-LEP in variables, and consequently, the complexity analysis in Section 3.3 applies.
The second case is the PSD problem with interaction type . By Theorem 4.12, the solution set is identical to the solutions of the associated linearized PSD problem. The latter is an instance of LC-LEP in variables and since , we have . In other words, the computational cost of solving this PSD problem is again equivalent to solving an instance of the LC-LEP in the same number of variables and the analysis in Section 3.3 applies.
The final case is the general PSD problem for interaction type , which we assume does not satisfy either of the two previous cases. Here we cannot guarantee that the complexity is any better than that of a CAD-based approach since the final step in our algorithm is to determine the admissibility of every linear extension
That is, any total order which is admissible for the linearized PSD problem, but is not witnessed when sampling the nonlinear PSD problem, must be rigorously checked for admissibility. This is done using a CAD-based algorithm to certify whether or not the semi-algebraic set, , is empty for each such . As discussed in Section 1, solving this problem requires, again in the worst case, computing a full CAD for subject to the additional algebraic constraints for . Consequently, our algorithm for solving the PSD inherits the double exponential complexity of the CAD algorithm in Equation (3). Based on the actual computations we have carried out, we conjecture that this worst case bound is not typical and may not even be sharp. There are several heuristics which make this conjecture plausible.
The first is the fact that sampling alone was sufficient to recover the full solution of the PSD problem in every case examined in this work (compare the first and last columns of Table 1). Consequently, every candidate ordering which was not ruled out by sampling was in fact non-admissible and the CAD-based computation only needed to certify this face. This is advantageous due to the fact that many speedups for the general CAD algorithm apply specifically for proving that a semi-algebraic set is in fact empty. Once again, each of these improvements maintains the same worst case running time, but they often produce much faster typical running times.
The second heuristic is due to the structure of the PSD problem itself. Not only are the polynomials in linear with respect to each variable, but itself contains a “complete” set of polynomials arising from the interaction function which forms a sort of template. This imposes stricter algebraic constraints on the linearized PSD problem as a consequence of Lemma 4.14. Additionally, this structure causes the PSD problems to nest into one another neatly in the sense of Equation (23). These properties combine to produce sets of candidate solutions of the linearized PSD problem which are remarkably smaller than the candidates produced by solving the linearized PSD problem naively (compare the second and third columns in Table 1).
These heuristics combined with the results for the cases we have computed make a compelling case that this algorithm is already reasonably efficient, but this is by no means the last word on the subject. Further improvements to this approach via imposing additional algebraic constraints, improving sampling techniques, or applying the linearization technique to other classes of polynomials is the subject of ongoing research.
5 Results for some PSD problems
In this section we provide (see Table 1) the results of our computations for interaction functions of orders 4, 5, and 6. A slightly different approach was taken to compute orders 5 and 6, from that used for 4. This had to do with the machines being used, but highlights the flexibility of our method.
For interaction functions of order 4, we applied Algorithm 1 using a rational linear programming algorithm. In particular, we used the implementation MixedIntegerLinearProgram from SageMath 8 [50]. This implies that the output of Algorithm 3 is correct. Observe that interaction type is linear and type is log linear, and therefore Algorithm 3 produces . The fact that our output agrees with that of [33] suggests that our code is functioning as desired. To compute the interaction type we apply Algorithm 3 to obtain . By Theorem 4.12 this determines .
To solve the PSD problem from interaction types and requires that we make use of the strategy discussed in Section 4.5. Again, we use Algorithm 3 to obtain . By Theorem 4.10, . As indicated in Column 7 of Table 1, we chose samples from and identified and linear orders, respectively. We ran CylindricalAlgebraicDecomposition in Mathematica 11 [26] on each element of . As can be seen by comparing Columns 6 and 3, none of these elements were admissible.
(1,1,1,1) | 336 | - | - | - |
(4) | 336 | - | - | - |
(2,1,1) | 1,344 | 1,344 | 2,352 | - |
(2,2) | 5,344 | 7,920 | 26,640 | 5,344 |
(3,1) | 3,084 | 5,112 | 68,641 | 3,084 |
(1,1,1,1,1) | 61,920 | - | - | 61,920 |
(5) | 61,920 | - | - | 61,920 |
(2,1,1,1) | 790,200 | 790,200 | * | 790,200 |
(2,2,1) | - | 11,035,808 | * | 6,570,952 |
(3,2) | - | * | * | 71,959,088† |
(4,1) | - | * | * | 11,213,616† |
(1,1,1,1,1,1) | 89,414,640 | - | - | 89,414,640 |
(6) | 89,414,640 | - | - | 89,414,640 |
We now turn to the computations of interaction functions of order 5 and 6. As these problems are too big to be done on a laptop we turned to a server for which SageMath was not installed. Thus, we made use of a numerical linear programing algorithm, linprog from Python 3.5 package scipy [53] with the default numerical error , in Algorithm 1. The interaction type type and are linear and and are log linear, and therefore via Algorithm 3 we obtain . We use the sampling technique (see Columns 7 and 8 of Table 1) to verify each of the elements of , thereby obtaining .
The computation for each order 4 case was done on a Mac Pro laptop (2.7 Hz Intel i5 and memory 8GB) with computation time under 4 hours. The computation of the remaining cases were done using a computing server with CentOs, intel 17.1, memory 32 GB, and less than 30 nodes. The computation time for both and was less than 4 hours, while the computation time for was on the order of 7 days. The codes which produced all of the computations in Table 1 are available on GitHub.
Acknowledgments
The authors would like to thank Shaun Harker, Sandra Di Rocco, Tomas Gedeon, and Mike Saks for helpful conversations. The authors acknowledge support from NSF DMS-1521771, DMS-1622401, DMS-1839294, the NSF HDR TRIPODS award CCF-1934924, DARPA contracts HR0011-16-2-0033 and FA8750-17-C- 0054, and NIH grant R01 GM126555-01.
References
- [1] Reka Albert, James J. Collins, and Leon Glass. Introduction to Focus Issue: Quantitative approaches to genetic networks. Chaos, 23(2):025001, JUN 2013.
- [2] David L Applegate, William Cook, Sanjeeb Dash, and Daniel G Espinoza. Exact solutions to linear programming problems. Operations Research Letters, 35(6):693–699, 2007.
- [3] Zin Arai, William Kalies, Hiroshi Kokubu, Konstantin Mischaikow, Hiroe Oka, and Paweł Pilarczyk. A database schema for the analysis of global dynamics of multiparameter systems. SIAM J. Appl. Dyn. Syst., 8(3):757–789, 2009.
- [4] Saugata Basu, Richard Pollack, and Marie-Françoise Roy. Algorithms in real algebraic geometry, volume 10 of Algorithms and Computation in Mathematics. Springer-Verlag, Berlin, 2003.
- [5] Stephen Boyd and Lieven Vandenberghe. Convex Optimization, 2004.
- [6] Graham Brightwell and Peter Winkler. Counting Linear Extensions is #P-complete. In Proceedings of the Twenty-third Annual ACM Symposium on Theory of Computing, STOC ’91, pages 175–181, New York, NY, USA, 1991. ACM.
- [7] Graham R Brightwell. The Number of Linear Extensions of Ranked Posets. Technical report, 2003.
- [8] Christopher W. Brown. Improved projection for cylindrical algebraic decomposition. Journal of Symbolic Computation, 32(5):447–465, 2001.
- [9] Christopher W. Brown. Constructing a single open cell in a cylindrical algebraic decomposition. Proceedings of the International Symposium on Symbolic and Algebraic Computation, ISSAC, pages 133–140, 2013.
- [10] Christopher W. Brown and James H. Davenport. The complexity of quantifier elimination and cylindrical algebraic decomposition. Proceedings of the International Symposium on Symbolic and Algebraic Computation, ISSAC, pages 54–60, 2007.
- [11] Justin Bush, Wes Cowan, Shaun Harker, and Konstantin Mischaikow. Conley-Morse databases for the angular dynamics of Newton’s method on the plane. SIAM J. Appl. Dyn. Syst., 15(2):736–766, 2016.
- [12] Justin Bush, Marcio Gameiro, Shaun Harker, Hiroshi Kokubu, Konstantin Mischaikow, Ippei Obayashi, and PawełPilarczyk. Combinatorial-topological framework for the analysis of global dynamics. Chaos, 22(4):047508, 16, 2012.
- [13] George E. Collins. Quantifier elimination for real closed fields by cylindrical algebraic decompostion. In H. Brakhage, editor, Automata Theory and Formal Languages, pages 134–183, Berlin, Heidelberg, 1975. Springer Berlin Heidelberg.
- [14] Charles Conley. Isolated invariant sets and the Morse index, volume 38 of CBMS Regional Conference Series in Mathematics. American Mathematical Society, Providence, R.I., 1978.
- [15] Charles C. Conley and Joel A. Smoller. The existence of heteroclinic orbits, and applications. pages 511–524. Lecture Notes in Phys., Vol. 38, 1975.
- [16] Bree Cummins, Tomas Gedeon, Shaun Harker, and Konstantin Mischaikow. Model Rejection and Parameter Reduction via Time Series. SIAM J. Appl. Dyn. Syst., 17(2):1589–1616, 2018.
- [17] Bree Cummins, Tomas Gedeon, Shaun Harker, Konstantin Mischaikow, and Kafung Mok. Combinatorial Representation of Parameter Space for Switching Networks. SIAM J. Appl. Dyn. Syst., 15(4):2176–2212, 2016.
- [18] Sarah Day, Yasuaki Hiraoka, Konstantin Mischaikow, and Toshi Ogawa. Rigorous numerics for global dynamics: a study of the Swift-Hohenberg equation. SIAM J. Appl. Dyn. Syst., 4(1):1–31 (electronic), 2005.
- [19] Sarah Day, Oliver Junge, and Konstantin Mischaikow. A rigorous numerical method for the global analysis of infinite-dimensional discrete dynamical systems. SIAM J. Appl. Dyn. Syst., 3(2):117–160 (electronic), 2004.
- [20] Rocky Diegmiller, Lun Zhang, Marcio Gameiro, Justinn Barr6, Jasmin Imran Alsous, Paul Schedl, Stanislav Y. Shvartsman, and Konstantin Mischaikow. Mapping parameter spaces of biological switches. 2020.
- [21] Guenter Ewald. Combinatorial convexity and algebraic geometry. GTM, 168, 1996.
- [22] Terrence Fine and John Gill. The enumeration of comparative probability relations. Ann. Prob., 4:667–673, 1976.
- [23] Marcio Gameiro, Tomas Gedeon, Shane Kepley, and Konstantin Mischaikow. Rational design of complex phenotype via network models. arXiv e-prints, page arXiv:2010.03803, October 2020.
- [24] Tomas Gedeon, Bree Cummins, Shaun Harker, and Konstantin Mischaikow. Identifying robust hysteresis in networks. PLOS Computational Biology, 14(4):1–23, 04 2018.
- [25] Shaun Harker, Konstantin Mischaikow, and Kelly Spendlove. A Computational Framework for the Connection Matrix Theory. arXiv e-prints, page arXiv:1810.04552, October 2018.
- [26] Wolfram Research, Inc. Mathematica, Version 11.
- [27] Abdul Salam Jarrah, Reinhard Laubenbacher, Brandilyn Stigler, and Michael Stillman. Reverse-engineering of polynomial dynamical systems. Advances in Applied Mathematics, 39(4):477 – 489, 2007.
- [28] Tomasz Kaczynski, Konstantin Mischaikow, and Marian Mrozek. Computational homology, volume 157 of Applied Mathematical Sciences. Springer-Verlag, New York, 2004.
- [29] William D. Kalies, Konstantin Mischaikow, and Robert C. A. M. van der Vorst. An algorithmic approach to chain recurrence. Found. Comput. Math., 5(4):409–449, 2005.
- [30] William D. Kalies, Konstantin Mischaikow, and Robert C. A. M. van der Vorst. Lattice structures for attractors I. J. Comput. Dyn., 1(2):307–338, 2014.
- [31] William D. Kalies, Konstantin Mischaikow, and Robert C. A. M. van der Vorst. Lattice structures for attractors II. Found. Comput. Math., 16(5):1151–1191, 2016.
- [32] William D. Kalies, Konstantin Mischaikow, and Robert C. A. M. van der Vorst. Lattice Structures for Attractors III. arXiv e-prints, page arXiv:1911.09382, November 2019.
- [33] Diane Maclagan. Boolean Term Orders and the Root System . Order, 15:279–295, 1999.
- [34] Bree Cummins Marcio Gameiro, Shaun Harker. Dsgrn: Dynamic signatures generated by regulatory networks. https://github.com/marciogameiro/DSGRN, 2020.
- [35] Scott McCallum. An improved projection operation for cylindrical algebraic decomposition. Lecture Notes in Computer Science (including subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics), 204 LNCS:277–278, 1985.
- [36] Christopher McCord. Mappings and homological properties in the Conley index theory. Ergodic Theory Dynam. Systems, 8∗(Charles Conley Memorial Issue):175–198, 1988.
- [37] Christopher McCord and Konstantin Mischaikow. On the global dynamics of attractors for scalar delay equations. J. Amer. Math. Soc., 9(4):1095–1133, 1996.
- [38] Christopher McCord, Konstantin Mischaikow, and Marian Mrozek. Zeta functions, periodic trajectories, and the Conley index. J. Differential Equations, 121(2):258–292, 1995.
- [39] Konstantin Mischaikow. Global asymptotic dynamics of gradient-like bistable equations. SIAM J. Math. Anal., 26(5):1199–1224, 1995.
- [40] Konstantin Mischaikow and Marian Mrozek. Chaos in the Lorenz equations: a computer-assisted proof. Bull. Amer. Math. Soc. (N.S.), 32(1):66–72, 1995.
- [41] Konstantin Mischaikow and Marian Mrozek. Chaos in the {L}orenz equations: a computer-assisted proof. Bull. Amer. Math. Soc. (N.S.), 32(1):66–72, 1995.
- [42] Konstantin Mischaikow and Marian Mrozek. Conley index. In Handbook of dynamical systems, Vol. 2, pages 393–460. North-Holland, Amsterdam, 2002.
- [43] John Montgomery. Cohomology of isolated invariant sets under perturbation. J. Differential Equations, 13:257–299, 1973.
- [44] OEIS Foundation Inc. The On-Line Encyclopedia of Integer Sequences, 2020. https://www.sagemath.org.
- [45] Jichang Sha and D. J. Kleitman. The number of linear extensions of subset ordering. Discrete Mathematics, 63(2-3):271–278, 1987.
- [46] Roman Srzednicki. On rest points of dynamical systems. Fund. Math., 126(1):69–81, 1985.
- [47] Richard P. Stanley. An introduction to hyperplane arrangements. In Geometric combinatorics, volume 13 of IAS/Park City Math. Ser., pages 389–496. Amer. Math. Soc., Providence, RI, 2007.
- [48] Herry Suprajitno and I Bin Mohd. Linear programming with interval arithmetic. Int. J. Contemp. Math. Sciences, 5(7):323–332, 2010.
- [49] Andrzej Szymczak. The Conley index and symbolic dynamics. Topology, 35(2):287–299, 1996.
- [50] The Sage Developers. SageMath, the Sage Mathematics Software System (Version 8). https://www.sagemath.org.
- [51] Seinosuke Toda. PP is as hard as the polynomial-time hierarchy. SIAM Journal on Computing, 20(5):865–877, 1991.
- [52] Robert J Vanderbei. Linear programming: foundations and extensions. Springer, 2020.
- [53] Pauli Virtanen et al. SciPy 1.0: Fundamental Algorithms for Scientific Computing in Python. Nature Methods, 17:261–272, 2020.
- [54] Ying Xin, Bree Cummins, and Tomas Gedeon. Multistability in the epithelial-mesenchymal transition network. BMC BIOINFORMATICS, 21(1), FEB 24 2020.