## What does Hom4PS-3 do?

Hom4PS-3 solves

**systems of polynomial equations**. More specifically, it locate and approximate isolated solutions to systems of polynomial equations using numerical methods.## What does "Hom4PS" mean?

"Hom4PS" stands for

**Hom**otopy continuation for**P**olynomial**S**ystems.## Is Hom4PS-3 a symbolic or numerical solver?

Hom4PS-3 is primarily a

**numerical**solver. It can, however, carry out certain operations symbolically. The detail can be found in the documentation page.## Why do I need this when I have Newton's method?

For certain problems Newton's method (a.k.a. Newton-Raphson method) provides a simple and quick way to solve a polynomial system. However, it is a common misconception that Newton's method actually solves polynomial systems

in the following sense:

in the following sense:

- In multivariate cases in general, Newton's method rarely converges when arbitrary initial point is used, unless the initial point happen to be very close to a true solution.
- Even in the case where Newton's method does
*theoretically*converges, rounding error from numerical computation can causes it to iterate*indefinitely*. - When successful, Newton's method yield a
*single solution*. It is not capable of locating all possible solutions.

## What method does Hom4PS-3 use?

Hom4PS-3 uses a class of numerical method known as the homotopy continuation methods. It has been proved to be an efficient and reliable class of methods.

## What is homotopy continuation method?

The homotopy continuation methods is a major class of numerical methods for solving polynomial systems which deform the given polynomial system into a closely related system that is trivial to solve. Then continuation methods are applied to track paths originating at the known solutions of the trivial system and ending at the solutions of the given system. These methods have been proven to be reliable, efficient, and highly parallel. It is now used as the basic building block for other numerical methods, such as

*numerical irreducible decomposition*algorithms. See here for a more detailed description.## Can Hom4PS-3 find **all** complex solutions?

Yes. Hom4PS-3 can find all complex solutions that are

**isolated**.## Can Hom4PS-3 find **all** real solutions?

Yes. Hom4PS-3 can find all real solutions that are

**isolated**when considered as a complex solution.## Can Hom4PS-3 find solutions at **infinity**?

Yes. Hom4PS-3 can find solutions in the

**complex projective space**(or complex product projective space) which in certain sense captures "solutions at infinity".## Can I use Hom4PS-3 with other programming languages?

Yes. There are bindings (interfaces) for several popular languages including Python and Octave. Bindings for more languages are coming soon.

## Can I use Hom4PS-3 with other mathematical software?

There is also an interface for

**Octave**. Octave is a ??? compatible with Matlab. If you are a Matlab user, your program will most likely run, without any modification, in Octave. You can use Hom4PS-3 directly from Octave. See here for more detail.Interfaces with Mathematica and Maple are coming soon.

## Can Hom4PS-3 carry out computation in parallel?

Yes. Hom4PS-3 is capable of