I am interested in solving binomial systems of the form $$ \begin{cases} a_1 x_1^{d_{11}} x_2^{d_{12}} \cdots x_n^{d_{1n}} + b_1 x_1^{d_{11}} x_2^{d_{12}} \cdots x_n^{d_{1n}} &= 0 \\\\ \vdots &\vdots \\\\ a_m x_1^{d_{m1}} x_2^{d_{m2}} \cdots x_n^{d_{mn}} + b_m x_1^{d_{m1}} x_2^{d_{m2}} \cdots x_n^{d_{mn}} &= 0 \end{cases} $$ where the exponents may be negative. I.e., each equation has exactly two terms. For example $$ \begin{cases} 3 x_1^{2} x_2^{-5} + 4 x_1^{-1} x_2^{6} &= 0 \\\\ 2 x_1^{3} x_2^{5} - 7 x_1^{2} x_2^{4} &= 0 \end{cases} $$ I am looking for some software packages that can solve these systems over the nonzero complex numbers. Here is what I mean by "solve":
- When the solution set consists of isolated points. Locate the points.
- When the solution set has positive dimension, find the number of the components and the dimension. I.e., an irreducible decomposition of the variety defined by the system. Ideally we should also get the parametrization of each component.
- Multiplicity information would be nice but not necessary.
Or more technically, I'd like to decompose a variety defined by a binomial system into (irreducible) toric varieties and enumerate the characters.
Binomials.m2, a Maclaulay2 package (http://thomas-kahle.de/bpd.html) seems to be the best. But when applied to large systems with 50 or more variables, Binomials.m2 simply does not terminate within any reasonable amount of time.
I am familiar with the algorithms behind, but before I write my own, I would like to know if there is anything even better out there. Or maybe I'm using Binomials.m2 incorrectly?