I'm trying to solve a system of equations but I don't realy know how to tackle it.

The equations all look as follows

$a_1 x_1+b_1x_1x_2^2+c_1x_1x_n^2=d_1$

$a_2 x_2+b_2x_2x_3^2+c_2x_2x_1^2=d_2$

$a_3 x_3+b_3x_3x_4^2+c_3x_3x_2^2=d_3$


$a_{n-1} x_{n-1}+b_{n-1}x_{n-1}x_n^2+c_{n-1}x_{n-1}x_{n-2}^2=d_{n-1}$

$a_n x_n+b_nx_nx_1^2+c_nx_nx_{n-1}^2=d_n$

So for the 2nd to the n-1'th equation the equations are of the form: $a_i x_i+b_ix_ix_{i+1}^2+c_ix_ix_{i-1}^2=d_i$, where the first and last equations look as described above.

In these equations a,b,c,d are constants, and I'm trying to solve for: $x_1,x_2,\dots,x_n$.

Apart from actually learning how to solve it (which would be really nice) I'm also looking at how much time it would take to solve this (in terms of n), and how many answers this system will (roughly) give. (I don't know if this helps but I'm only interested in Positive Real answers.) Any insights are appreciated.


If you intersect $n$ random cubics in $n$-dimensional space, you'd expect to get $3^n$ solutions, at least working over the complex numbers, in projective coordinates, and counting multiplicities. Of course, that may not apply here, as this is a very special family of cubics.

Assuming there's no trick that lets you solve this particular system easily, this problem belongs to computational algebraic geometry and there are various methods for approaching it. The "default" approaches to a problem like this are just to use a vanilla numerical solver (though there's no guarantee that it would find all the solutions), or to use Grobner bases. Grobner basis techniques are guaranteed to work, but require $O(e^{e^n})$ to run, which means that they're not useful for, say, $n > 20$. There are also some specialized numeric methods for polynomial systems, such as homotopy continuation, though I know less about these.

| cite | improve this answer | |

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.