1

I have a system of polynomial equations with rational coefficients and I would like to find real solutions, if they exist. The system has $n\sim 10$ unknowns, $n$ equations with degree $\sim 2n$ and coefficient numerators and denominators below 1000. When I compute the system's Groebner basis the coefficients and degrees blow up such that it becomes impractical to work with directly.

A numerical gradient search on the original system is quite stable, but I have no idea whether it is truly converging on a solution. I think there must be standard techniques for approaching such a problem. For instance, I imagine there is a sort of result that says once a numerical search finds a candidate near enough to a solution, then a genuine solution must be nearby. Does such a result or similar approach exist?

2 Answers2

1

You have $n=10$ equations of degree $d=20$, this gives a Bezout bound of $N=20^{10}$ for the number of complex roots.

The complexity of a Gröbner basis is given in constructs like $d^{2^{O(n)}}$ or very slightly better $d^{n^2}$.

The other methods are essentially homotopy continuation methods, there is an algebraic variant in the Kronecker algorithm (CAS Magma application) and a numerical variant in the PHCpack library. They will likely be faster than the Gröbner algorithm, but I'm not sure that this will be relevant.

Purely numerical approaches are also likely to fail, as there will be many regions with very small function values but no solution close-by. The regions of quadratic convergence for the Newton method have a size that is inverse to $N$, so the global search effort to find good initial points has about the same complexity as trying to find all the roots.

Lutz Lehmann
  • 131,652
0

Consider a point $x_0$ satisfying, for some $R=[\pm \epsilon_1]\times \dots \times [\pm \epsilon_n]$:

  • $M=f'(x_0) \in \mathbb{R}^{n\times n}$ is invertible
  • $|f_i(x_0)| + \max_x \left|f_i(M^{-1}x+x_0)-f_i(x_0)-x_i\right| < \epsilon_i$ along $x\in R$

For each component $i$ consider $x\in R$ where $x_i=\pm\epsilon_i$. Expand $f_i(x_0+M^{-1}x)=f_i(x_0)+x_i+(f_i(x_0+M^{-1}x)-f_i(x_0)-x_i).$ By assumption we have the sign of $x_i$ determining the sign of $f_i$ along such $x$. Then by the Poincare-Miranda theorem, there is a solution to $f_1=\dots=f_n=0$ in $R$.