Homotopy Techniques for Analytic Combinatorics in Several Variables
Abstract.
We combine tools from homotopy continuation solvers with the methods of analytic combinatorics in several variables to give the first practical algorithm and implementation for the asymptotics of multivariate rational generating functions not relying on a non-algorithmically checkable ‘combinatorial’ non-negativity assumption. Our homotopy implementation terminates on examples from the literature in three variables, and we additionally describe heuristic methods that terminate and correctly predict asymptotic behaviour in reasonable time on examples in even higher dimension. Our results are implemented in Julia, through the use of the HomotopyContinuation.jl package, and we provide a selection of examples and benchmarks.
Let be a complex-valued sequence with generating function . Although is a priori only a formal power series, in a wide variety of applications (in fact, whenever has at most exponential growth) it represents an analytic function in a neighbourhood of the origin. The field of analytic combinatorics creates effective techniques to determine the asymptotic behaviour of through a study of the analytic behaviour of . Most classical methods in analytic combinatorics take as input an algebraic or differential equation satisfied by and, when successful, return the leading terms in an asymptotic expansion of (see [10] or [17, Chapter 2]).
More recently, a theory of analytic combinatorics in several variables (ACSV) [17, 22] has been developed to translate the analytic behaviour of a -variate generating function
into asymptotic information about its coefficient sequence . In this paper we focus on the case of a power series expansion of a multivariate rational function and attempt to determine asymptotics of the -diagonal sequence for a fixed direction vector . The most common situation to arise in practice is the main diagonal, when .
Remark 0.1.
If has some zero coordinates then we can reduce to the above situation by setting some of the variables equal to zero and working in a lower dimension. For instance, the -diagonal of any series is the -diagonal of . Furthermore, our asymptotic statements continue to hold for directions if they are interpreted to be valid only when . In fact, the methods of ACSV show that asymptotics of the -diagonal usually vary smoothly with , allowing one to give a natural interpretation of asymptotics in irrational directions and derive central limit theorems [17, Section 5.3.3].
Remark 0.2.
Because the methods of ACSV hold in any dimension, our requirement that be rational is less restrictive than it may seem. For instance, the -diagonal of an algebraic function in variables can be represented [17, Section 3.2.2] as the diagonal of a rational function in variables (and a ‘skew-diagonal’ of a rational function in variables). The theoretical results discussed here also hold for meromorphic functions, when is (locally) the ratio of analytic functions, however our restriction to rational functions allows us to stay in the realm of algebraic quantities and polynomial systems, which we use for our explicit algorithms.
There are many factors making ACSV more complicated than its univariate counterpart. Although a univariate rational function has a finite number of singularities, meaning one can determine the ‘asymptotic contribution’ of each and simply sum those with the fastest growth, any (non-polynomial) rational function in at least two variables must have an infinite number of singularities. In addition to obscuring which singularities contribute to asymptotics, this also means that the singular set can have non-trivial geometry, for instance by self-intersecting. The difficulties that arise mean that unlike the univariate case, which relies on standard complex-analytic results going back hundreds of years, the most advanced ACSV results rely on advanced techniques from areas of mathematics as diverse as complex analysis in several variables, the study of singular integrals, algebraic geometry, differential geometry, and topology.
The starting point of an ACSV analysis expresses the -diagonal of as a -dimensional complex integral. In the simplest cases, asymptotic behaviour is determined by the behaviour of near two types of points: critical points, defined by an explicit polynomial system, and minimal points, which are singularities that are coordinate-wise closest to the origin. Critical points satisfy a square polynomial system, and generically form a finite set that can be manipulated in a computer algebra system. In contrast, there are always an infinite number of minimal points, which are defined by inequalities involving the moduli of coordinates and are thus trickier and more expensive to manipulate in computations.
0.1. Previous Work and Our Contributions
From the beginning of its modern period in work of Pemantle and Wilson [21], the goal of ACSV has always been to develop methods explicit enough to be implemented in a computer algebra system. The ‘surgery’ approach of [21], which applies to generating functions with smooth singular sets that form manifolds, essentially computes a residue in one variable to obtain a -dimensional integral that is approximated using the saddle-point method. Although this surgery method does not require much theory beyond univariate analytic combinatorics, it requires strong conditions on the locations of minimal points that can be computationally expensive to verify. Later techniques, using cones of hyperbolicity [3] and multivariate residue and homology computations [2], rely on more advanced theory but simplify the assumptions that need to be verified for the results to hold. In the simplest cases, which hold for the majority of examples encountered in combinatorial applications, it suffices to determine which of the critical points are minimal and then add explicit asymptotic contributions corresponding to the (finite number of) minimal critical points. The most expensive step in such an analysis is almost always checking minimality.
The first systematic algorithmic study of ACSV methods was conducted by Melczer and Salvy [18], who encoded critical points using a symbolic-numeric data structure known as a Kronecker or rational univariate representation and then reduced checking minimality to rigorously approximating the roots of certain univariate polynomials to sufficiently high accuracy. Those authors created a preliminary implementation of their work, which does not certify numeric computations to provide rigorous proofs and requires combinatorial rational functions, in the Maple computer algebra system. A rational function is combinatorial if all of its power series coefficients are non-negative: although this condition is satisfied for any multivariate generating function, in many combinatorial examples only one diagonal of enumerates a combinatorial class and the non-diagonal entries have negative coefficients. It is an open problem, even in the univariate case, whether it is decidable to detect when a rational function is combinatorial (see [20] for some open problems in this area). Although Melczer and Salvy [18] detail a method that, in principle, yields an algorithm for asymptotics that does not require combinatorality, in practice an implementation in Maple would not halt in reasonable time beyond low degree examples in two or three variables.
Instead of continuing with the Kronecker representation approach of Melczer and Salvy, in this paper we exploit homotopy continuation methods to certify minimality of critical points, and ultimately determine asymptotics of -diagonals of rational functions. Using the HomotopyContinuation.jl Julia package [7] for polynomial system solving, we provide the first implementation of ACSV methods under assumptions that often hold in practice. Our implementation is efficient enough to work even without the assumption of combinatorality, although when the user knows a priori that their input rational function is combinatorial then the computation is greatly reduced. In addition, we describe two heuristic methods to classify minimal critical points using numerical approximations that are extremely efficient, and are the only implemented algorithms we currently know of that can aid in the search for minimal points in more than three variables.
Example 0.3.
The main diagonal of the power series expansion of
is related to a result of Apéry [1] on the irrationality measure of . After importing our package we define the denominator polynomial in Julia using
If we know that this power series expansion is combinatorial, then we can get the (truncated for clarity) minimal critical point
and print out the leading asymptotic term of the diagonal with
It is not obvious from the definition that is combinatorial. If we don’t know our function is combinatorial then we can determine minimality by running find_min_crits(H), which returns the same point but requires approximately 15 minutes of computation. If we want to heuristically check for minimal critical points, but don’t know that is combinatorial and don’t want to wait for the full algorithm, we can run the algorithms find_min_crits(H; approx_crit=true) or find_min_crits(H; monodromy=true), described below, which also find the correct point and finish in seconds.
Remark 0.4.
Because we use numeric methods, asymptotic behaviour is returned with numeric approximations of constants. If the user wants to determine the algebraic quantities involved exactly, we recommend solving for the critical points (a relatively cheap operation) symbolically using another computer algebra system like Sage or Maple and then using the results of this package to filter out the minimal ones (the most expensive operation).
The rest of this paper proceeds as follows. Section 1 gives a quick recap of the methods of ACSV and the high-level problems that need to be decided to find asymptotics, with a description of numerical algebraic geometry methods for polynomial system solving given in Section 2. Section 3 uses this background material to detail our ACSVHomotopy.jl Julia package, while Section 4 illustrates the package on a wide variety of combinatorial examples, including benchmarks between different algorithms. Although our algorithms always terminate, due to the nature of homotopy continuation methods they may not always provide a rigorous proof of asymptotics -- Section 5 discusses this issue and describes situations in which the algorithms do give rigorous proofs. Finally, Section 6 concludes with some extensions that we believe should be addressed next.
1. Smooth ACSV
From now on, denotes a ratio of -variate coprime polynomials with power series expansion converging around the origin, and is a fixed direction vector.
Definition 1.1 (minimal critical points).
A point is a (simple) smooth critical point of if and
(1) |
We call a minimal point if and there does not exist such that and for all .
Remark 1.2.
If then (1) is trivially satisfied. If the gradient vanishes because has a higher-order pole (for instance, if for some polynomial ) then our analysis of minimal critical points can be performed on the square-free part of (the product of its irreducible factors) to obtain an asymptotic expansion of with minor modifications. On the other hand, if the gradient vanishes because the zero set of self-intersects then more advanced techniques are required [17, Part III].
We will be able to determine asymptotics in the presence of smooth minimal critical points, assuming a nondegeneracy condition on the zero set of .
Definition 1.3 (phase Hessian matrix).
If is a smooth critical point then the phase Hessian matrix at is the matrix defined by
where
Theorem 1.4 (Melczer [17, Theorem 5.1]).
Suppose that the system of polynomial equations (1) admits a finite number of solutions, exactly one of which, , is minimal. Suppose further that , that the phase Hessian matrix at has non-zero determinant, and that . Then, as ,
When the zero set of contains a finite number of points with the same coordinate-wise modulus as , all of which satisfy the same conditions as , then an asymptotic expansion of is obtained by summing the right hand side of this expansion at each point.
Remark 1.5.
The condition that means that the leading asymptotic term in Theorem 1.4 doesn’t vanish. When asymptotics can usually still be determined by computing higher-order terms using (increasingly complicated) explicit formulas.
1.1. Minimality Tests
The hardest work in applying Theorem 1.4 is computing the critical points, defined implicitly by (1), and determining which, if any, are minimal.
(Combinatorial Case) Recall that a function is called combinatorial if its power series expansion contains only a finite number of negative coefficients. When is combinatorial there is a simple test for minimal critical points.
Lemma 1.6 (Melczer and Salvy [18]).
Suppose has only a finite number of negative power series coefficients . If is a minimal critical point then so is . Furthermore, is a minimal critical point if and only if the system
(2) |
has a solution with and and no solution with and .
In the combinatorial case we firstly use Lemma 1.6 to characterize the minimal critical points with positive coordinates by studying the solutions to (2). From them, find the solutions to (1) with the same coordinate-wise modulus. The following algorithm summarizes this approach.
-
(1)
Determine the set of zeros of the polynomial system (2) in the variables . If is not finite, FAIL.
-
(2)
Find such that there exists and for all such triples, . If the number of such ’s is not exactly or if there are such points with , FAIL.
-
(3)
Identify among the elements of the set of zeros to (1).
-
(4)
Return
(General Case) If is not combinatorial, or if we don’t know a priori that is combinatorial, then it is no longer sufficient to consider only the critical points with positive real coordinates to check minimality. In order to express the moduli of coordinates as algebraic equations, we write for real variables and polynomials . Translating the smooth critical point equations (1) into these new coordinates gives that with is critical if and only if
(3) | ||||
(4) | ||||
(5) |
for some , where in each equation. To test minimality of these critical points we add the equations
(6) | ||||
(7) |
for , and verify there is no real solution to (3)-(7) with . Generically (3)-(7) have a finite set of real solutions, corresponding to the generically finite number of critical points of , but because this system contains equations in variables it will never have a (non-zero) finite number of solutions over the complex numbers. By considering critical values of the projection map onto the coordinate, Melczer and Salvy [18] proved that minimality can be tested by adding the additional equations
for . When then we can scale by and introduce the equations
(8) |
to (3)-(7), resulting in a square system with variables and equations. The case when is dealt with separately by adding the equations
for . We determine the minimal critical points by finding such that equations (3)-(5) have a real solution with but neither (3)-(8) nor (3)-(8’) have a real solution with and . This process provides the following algorithm.
Minimal Critical Points in the Non-Combinatorial Case
- (1)
-
(2)
Construct a set of minimal critical points such that there exists and for all such tuples, . If either is empty or one of its elements has , or if the elements of do not all belong to the same torus, FAIL.
-
(3)
Identify the elements of within the set of zeros to (1) and return them.
- (4)
Unfortunately, to moving variables makes verifying minimality much less practical than the combinatorial case. In essence, Lemma 1.6 states that to prove minimality in the combinatorial case it is sufficient to consider specific line segments in , while to prove minimality in the general case one must consider a much larger set of points in whose coordinate-wise moduli lie on specific line segments in .
Remark 1.7.
Melczer and Salvy [18] incorrectly state that and must both be non-zero: at least one is non-zero at the solutions of interest, but the other may vanish. This is why we introduce (8’). Melczer and Salvy [18] also require an extra condition that a certain Jacobian matrix is non-singular, however this is mainly required for their complexity analysis. If this condition fails then the system (3)-(8) can have extra solutions that are irrelevant to detecting minimality, but the presence of such solutions does not affect correctness of the minimality test.
2. Numerical Algebraic Geometry
Having reduced the ACSV analysis to questions about polynomial systems, we now recall some methods in computational algebraic geometry for the study of such systems. Although the theory of Gröbner bases is, by now, the basis of much work in this area, more recently numerical algebraic geometry has emerged as a practical alternative. In this section, we discuss several topics in numerical algebraic geometry that will be used for our techniques.
2.1. Homotopy Continuation
Homotopy continuation is one method to find numerical approximations of solutions to an square system of polynomial equations with variables. From the system we construct an polynomial system whose solutions are known a priori. The system is called a start system and the system is called the target system: connecting and using a homotopy such that and , we obtain solutions of by tracking homotopy paths from to . To track the homotopy paths, a numerical ordinary differential equation solving technique called the Davidenko equation and Newton iteration are used. These tracking techniques are typically referred to as predictor-corrector methods. For details, see [24, Chapter 2]. Homotopy continuation is implemented in Bertini [4], HomotopyContinuation.jl [7], and NAG4M2 [16].
2.2. Polyhedral Homotopy Continuation
The complexity of solving a polynomial system using homotopy continuation is determined by the number of homotopy paths to track. It is thus important to track a number of paths that are at least as large as the number of solutions of the system (so that all solutions can be found) but is not too much larger (to save computation). For polytopes the Euclidean volume of the Minkowski sum is a homogeneous polynomial in the variables , whose coefficient of is the mixed volume of .
Theorem 2.1 (Bernstein’s theorem [5, Theorem A]).
Let be a system of polynomials in . The number of isolated solutions of over is at most , where is the Newton polytope of . Furthermore, for polynomials with generic coefficients, the number of solutions for over the torus is exactly .
The polyhedral homotopy continuation method established by Huber and Sturmfels [13] is one common way to construct a start system whose solutions form a set with the size of the mixed volume of a system. Consider a polynomial
where is a collection of integer lattice points. Multiplying each monomial of by some term for a lifting function , we obtain the lifted polynomial
Suppose that a target system consists of polynomials supported on , respectively. Lifting all polynomials in gives a lifted system satisfying . The solutions of can be expressed by Puiseux series where
for some and nonzero constant , and substituting back into our polynomials gives
For a suitable choice of , the constants and exponents can be computed at each branch of , ultimately describing a start system with the right number of solutions. The polyhedral homotopy continuation is implemented in HOM4PS2 [15], HomotopyContinuation.jl [7], and PHCpack [26].
2.3. Monodromy
As seen in Section 1, we typically have some solutions of a polynomial system representing critical points and want to determine additional solutions to rule out those that are non-minimal. This ‘bootstrapping’ can be accomplished by monodromy.
For , consider the complex linear space of square systems depending on some coefficient parameters , where the monomial support for each polynomial is fixed. If we consider an affine linear map for then we can write , where is a parametrized linear variety of systems, and we define the solution variety and projection map .
Assume that the fiber only has finitely many points for a generic choice of . The set of systems in with non-generic fiber is called the branch locus of . Each element in the fundamental group of loops in modulo homotopy equivalence induces a permutation on the fiber , which is called a monodromy action. To find all solutions of a system with generic , one can first find a seed solution and numerically compute the monodromy action to find all solutions of . When the solution variety is irreducible then the monodromy action is transitive. This method for finding solutions of polynomial systems is studied and implemented in [7, 9].
2.4. Certification
By construction, numerical methods return approximations, so some kind of certification is necessary for rigorous results. Specifically, a user needs a certificate that an approximation obtained by the homotopy method is properly approximating a solution of a system. A numerical approximation is called certified if it can be refined to an actual solution of the system to an arbitrary precision by applying iterative operators (such as Newton iteration). Software providing such certification includes alphaCertified [12], the function certify implemented in HomotopyContinuation.jl [6] and NumericalCertification [14]. In our implementation, we use the function certify in HomotopyContinuation.jl exploiting the Krawczyk’s method via interval arithmetic [19, Chapter 8].
3. The ACSVHomotopy Package
We now combine the theory of ACSV presented in Section 1 with the techniques described in Section 2 to create effective and practical algorithms for the asymptotics of multivariate rational functions. Our algorithms are implemented in the Julia package ACSVHomotopy.jl, using the HomotopyContinuation.jl package for our homotopy and monodromy computations.
The package is available at
github.com/ACSVMath/ACSVHomotopy
and our example worksheet can be viewed at
github.com/ACSVMath/ACSVHomotopy/blob/main/ExampleWorksheet.ipynb
3.1. Combinatorial Case
For the combinatorial case we first compute the distinct solutions to (1) using a polyhedral homotopy with certification by Krawczyk’s method. We then solve and certify (2) with the added equation to eliminate all solutions with (there are never any solutions with as this would imply , contradicting having a power series expansion). Since we no longer have solutions where , by refining the solutions to sufficient precision we can determine the solutions with positive real coordinates where , match the projection onto the variables of each to a distinct solution of (1), and thus rule out all non-minimal critical points with positive coordinates. We then find all critical points with the same coordinate-wise moduli and return that set.
Example 3.1.
As a simple example, we can find the minimal critical point
controlling asymptotics for the central binomial coefficient which forms the main diagonal sequence of
Similarly, we can compute the approximations
for the two minimal critical points determining asymptotics for the main diagonal of
This diagonal enumerates walks on the cardinal directions that start at the origin and stay in .
As in the work of Melczer and Salvy, the most expensive operation occurs when trying to group roots with the same coordinate-wise modulus as a known minimal critical point (step (4) in Algorithm 1). When using a symbolic-numeric method it is possible to compute minimal polynomials for the values of the coordinates and use this to identify points with the same coordinate-modulus by computing numerically to bits of precision, where is a bound on the bitsize of the coefficients of the denominator and is the degree of (see [18, Corollary 54]). Combining past bounds in the literature [23, 8] allows us to identify an explicit precision such that if two solutions have coordinate-wise moduli agreeing to this precision then their coordinate-wise moduli are exactly equal. Our bound is also of bits, however the constant in front is worse than that when using minimal polynomials. After a minimal critical point is identified, our code continually refines precision using Newton iteration until any points with the same coordinate-wise moduli are found. In practice, any points with different coordinate-wise moduli are identified at precision much lower than the worst case bound, but we must compute up to the bound when there are points with the same coordinate-wise moduli. Unfortunately, the extreme precision involved with a large number of variables means that we cannot always rigorously check to the required accuracy, and the code returns a warning to the user with its output when this occurs.
3.2. General Case
In general we must consider the extended systems (3)-(8) and (3)-(8’), which essentially doubles the number of variables under consideration. Mirroring the combinatorial case, we can solve (3)-(8) and (3)-(8’) using a polyhedral homotopy, certify the results using Krawczyk’s method, and refine to a sufficient precision to determine when to rule out non-minimal points.
Remark 3.2.
The system (3)-(8’) is over determined, with equations and variables. In order to use HomotopyContinuation.jl we drop one of the equations in (8’) to obtain a square system: this can introduce additional solutions which are irrelevant to determining minimality, but does not affect the correctness of our test for minimality.
Example 3.3.
Straub and Zudilin [25], following Gillis, Reznick, and Zeilberger [11], study families of rational functions connected to special function theory. For instance, in three dimensions they study the constants for which
has non-negative power series coefficients on its main diagonal (which turns out to imply non-negativity of all power series coefficients). Running the code (for )
gives the minimal critical points controlling asymptotics of the main diagonal. Since this is a complex conjugate pair, the resulting asymptotic expansion implies that has an infinite number of negative coefficients on its main diagonal when (in fact, it has an infinite number of negative coefficients whenever ).
3.3. Faster Heuristics
As seen in the examples of Section 4, the high number of variables in the extended system even in low dimensional examples means it does not terminate within reasonable time for polynomials with four or more variables. In order to speed up our solvers, we can numerically approximate the distinct solutions to the small system (3)-(5) and then substitute each of these solutions as parameters into the extended equations (6)-(8) and (6)-(8’). In the implementation, it is done by running the function find_min_crits with the flag approx_crit = true.
Remark 3.4.
This approach approximates the solutions to the extended system (3)-(8) if the solutions vary smoothly with and , which happens whenever the Jacobian of (6)-(8) with respect to and is full rank at all values of and solving (3)-(5). Unfortunately, verifying this condition is usually about as costly as solving the extended system, so we do not do this in our computations and refer to this method only as an efficient heuristic that correctly identifies minimal critical points in a large variety of cases.
Example 3.5.
To stress-test our algorithms we generate a random polynomial with six terms in four variables having coefficients in and then set . Running
returns the unique minimal critical point in about three minutes. This example does not terminate without the approx_crit = true flag.
It is also possible to use the approximations to the critical points as a start system to solve (6)-(8) using the monodromy method. More precisely, for any solving (3)-(5) we set and in (6)-(8) and then compute a corresponding start value of by computing the left kernel of the Jacobian matrix of (6)-(7) with respect to variables and . From a given parameter value and the initial solution , we collect real solutions from the monodromy method and check if : if it is then we remove the parameter value as it is non-minimal. Interestingly, it appears that monodromy cannot detect solutions where when starting with a non-zero value of , and vice-versa, suggesting that solution variety is the union of components corresponding to these cases. We thus repeat this process separately for the cases where and when (8’) replaces (8). Finally, we return the values of that are not disregarded.
Example 3.6.
Melczer and Salvy [18] introduce the rational function
because it has two critical points with positive coordinates, one of which is smaller in the first coordinate and the other of which is smaller in the second coordinate (so it is not clear which, if any, should be minimal). Running
returns the correct minimal critical point.
4. Examples and Benchmarks
Tables 1 and 2 list benchmarks of our implementation against a selection of combinatorial and algebraic examples, executed on a Macbook pro, 2 GHz Quad-Core Intel Core i5, 16 GB RAM. The package supports arbitrary -diagonal sequences, but examples in this section were done with . See our supplementary notebook for the full details on the rational functions involved.
Remark 4.1.
The HomotopyContinuation.jl package converts input polynomials into compiled straight-line programs for fast evaluation. In order to better see the differences between examples as they grow in degree and dimension, we have removed compilation time from our benchmarks (compilation time takes the majority of the runtime for small examples but is a small part of larger examples). This results in several seconds on small examples, and up to tens of seconds on larger examples, that are not included in the reported timings. In particular, the (non-certified) package of Melczer and Salvy beats our package in the combinatorial case on most examples in Table 1 when compilation time is added (except for the two high degree examples where the Maple package takes much longer).
Example | Comb. | Maple Comb. |
0.0052 | 0.143 | |
Two positive CPs | 0.029 | 0.292 |
square-root | 0.01 | 0.06 |
Apéry | 0.025 | 0.06 |
Apéry | 0.7 | 0.3 |
random poly | 0.9 | 840 |
2D Walk | 0.03 | 0.06 |
3D Walk | 0.08 | 2.7 |
0.06 | 509 |
Example | HSolve | HSolve Approx | Monodromy |
---|---|---|---|
0.04 | 0.02 | 2.3 | |
Two positive CPs | 4.1 | 0.33 | 2.84 |
Apéry | 670 | 3.8 | 8.5 |
square-root | 29.5 | 0.72 | 14.9 |
random poly | INC | 189.4 | 583.1 |
2D Walk | INC | 15.3 | 31.9 |
GRZ | 236 | 3.6 | 3.8 |
5. Rigor of Results
Because we certify our solutions, we never attempt to approximate a point that is not actually a solution of the polynomial systems under consideration. However, by the way they are designed, it is possible for homotopy computations to miss solutions, which could result in a point being deemed minimal when it is not. There are some exceptions: when the number of solutions found matches the upper bound on the number of solutions given by the mixed volume, for instance, then we can be sure we have found all solutions. Tables 3 and 4 show a comparison between the mixed volumes of several systems studied here, compared to the actual number of solutions found. It can be observed that we often reach the upper bound in the combinatorial case, but this usually does not happen in the non-combinatorial case.
Example | Mixed volume | Solutions found |
---|---|---|
1 | 1 | |
9 | 9 | |
96 | 96 |
Example | (3)-(8) | Sols | (3)-(8’) | Sols |
---|---|---|---|---|
4 | 1 | 2 | 0 | |
3276 | 99 | 1638 | 126 | |
13068 | 162 | 4356 | 216 | |
FAIL | N/A | 442368 | 442368 |
We can also conclude we know minimality rigorously when there is another way to determine that a minimal critical point must exist, and all but one point is ruled out by our algorithms. For instance, in the combinatorial case it can be shown that any polynomial whose support contains the terms must have at least one minimal critical point with positive coordinates.
6. Conclusion
Despite the high computational cost associated to many of computations required to determine asymptotics using the methods of ACSV, the continued development of efficient computer algebra packages in Julia and other languages has made it feasible to automate the analysis beyond the simplest cases. There are many natural extensions still to be made, perhaps chiefly among them extending to the non-smooth case by incorporating algorithms for the Whitney stratification of algebraic varieties. Other interesting avenues for exploration include the development of better start systems for homotopy computations, to better match the number of critical points, and a theoretical study of the solution variety and its irreducible components for the monodromy approach (which could help the monodromy approach be competitive with or even surpass the polyhedral homotopy approach).
Finally, as already mentioned, in the combinatorial case the precision required to certify all minimal critical points with the same coordinate-wise modulus may not be practical. Our algorithm returns a warning with its output when it cannot verify equality between moduli to the precision required for rigorous certification.
Acknowledgments
KL and SM acknowledge the support of the AMS Math Research Community Combinatorial Applications of Computational Geometry and Algebraic Topology, which was funded by the National Science Foundation under Grant Number DMS 1641020. SM and JS’s work partially supported by NSERC Discovery Grant RGPIN-2021-02382.
References
- [1] R. Apéry. Sur certaines séries entières arithmétiques. In Study group on ultrametric analysis, 9th year: 1981/82, No. 1, pages Exp. No. 16, 2. Inst. Henri Poincaré, Paris, 1983.
- [2] Y. Baryshnikov, S. Melczer, and R. Pemantle. Stationary points at infinity for analytic combinatorics. Foundations of Computational Mathematics, 2022.
- [3] Y. Baryshnikov and R. Pemantle. Asymptotics of multivariate sequences, part III: Quadratic points. Adv. Math., 228(6):3127--3206, 2011.
- [4] D. J. Bates, J. D. Hauenstein, A. J. Sommese, and C. W. Wampler. Bertini: Software for numerical algebraic geometry. Available at bertini.nd.edu with permanent doi: dx.doi.org/10.7274/R0H41PB5.
- [5] D. N. Bernshtein. The number of roots of a system of equations. Functional Analysis and its applications, 9(3):183--185, 1975.
- [6] P. Breiding, K. Rose, and S. Timme. Certifying zeros of polynomial systems using interval arithmetic. arXiv preprint arXiv:2011.05000, 2020.
- [7] P. Breiding and S. Timme. HomotopyContinuation.jl: A package for homotopy continuation in julia. In International Congress on Mathematical Software, pages 458--465. Springer, 2018.
- [8] A. Dubickas and M. Sha. Counting and testing dominant polynomials. Exp. Math., 24(3):312--325, 2015.
- [9] T. Duff, C. Hill, A. Jensen, K. Lee, A. Leykin, and J. Sommars. Solving polynomial systems via homotopy continuation and monodromy. IMA Journal of Numerical Analysis, 39(3):1421--1446, 2019.
- [10] P. Flajolet and R. Sedgewick. Analytic combinatorics. Cambridge University Press, Cambridge, 2009.
- [11] J. Gillis, B. Reznick, and D. Zeilberger. On elementary methods in positivity theory. SIAM J. Math. Anal., 14(2):396--398, 1983.
- [12] J. D. Hauenstein and F. Sottile. alphaCertified: Software for certifying numerical solutions to polynomial equations. Available at math.tamu.edu/~ sottile/research/stories/alphaCertified, 2011.
- [13] B. Huber and B. Sturmfels. A polyhedral method for solving sparse polynomial systems. Mathematics of computation, 64(212):1541--1555, 1995.
- [14] K. Lee. The NumericalCertification package in Macaulay2. arXiv preprint arXiv: 2208.01784, 2022.
- [15] T.-L. Lee, T.-Y. Li, and C.-H. Tsai. HOM4PS-2.0: a software package for solving polynomial systems by the polyhedral homotopy continuation method. Computing, 83(2):109--133, 2008.
- [16] A. Leykin. Numerical algebraic geometry. Journal of Software for Algebra and Geometry, 3(1):5--10, 2011.
- [17] S. Melczer. An Invitation to Analytic Combinatorics: From One to Several Variables. Texts and Monographs in Symbolic Computation. Springer International Publishing, 2021.
- [18] S. Melczer and B. Salvy. Effective coefficient asymptotics of multivariate rational functions via semi-numerical algorithms for polynomial systems. J. Symbolic Comput., 103:234--279, 2021.
- [19] R. E. Moore, R. B. Kearfott, and M. J. Cloud. Introduction to interval analysis, volume 110. Siam, 2009.
- [20] J. Ouaknine and J. Worrell. Ultimate positivity is decidable for simple linear recurrence sequences. In Automata, languages, and programming. Part II, volume 8573 of Lecture Notes in Comput. Sci., pages 330--341. Springer, Heidelberg, 2014.
- [21] R. Pemantle and M. C. Wilson. Asymptotics of multivariate sequences. I. Smooth points of the singular variety. J. Combin. Theory Ser. A, 97(1):129--161, 2002.
- [22] R. Pemantle and M. C. Wilson. Analytic combinatorics in several variables, volume 140 of Cambridge Studies in Advanced Mathematics. Cambridge University Press, Cambridge, 2013.
- [23] M. Safey El Din and É. Schost. Bit complexity for multi-homogeneous polynomial system solving---Application to polynomial minimization. J. Symbolic Comput., 87:176--206, 2018.
- [24] A. Sommese and C. Wampler. The Numerical Solution of Systems of Polynomials Arising in Engineering and Science. World Scientific, 2005.
- [25] A. Straub and W. Zudilin. Positivity of rational functions and their diagonals. J. Approx. Theory, 195:57--69, 2015.
- [26] J. Verschelde. Algorithm 795: PHCpack: A general-purpose solver for polynomial systems by homotopy continuation. ACM Transactions on Mathematical Software (TOMS), 25(2):251--276, 1999.