The pss5 file syntax was designed so that it is easy to import example systems from other authors and from computer algebra systems. This is the cyclic4 polynomial system:
@variables [x_1,x_2,x_3,x_4]
[
x_4+x_3+x_2+x_1,
x_3*x_4+x_1*x_4+x_2*x_3+x_1*x_2,
x_2*x_3*x_4+x_1*x_3*x_4+x_1*x_2*x_4+x_1*x_2*x_3,
x_1*x_2*x_3*x_4-1
]
# File generated using the pss maxima interface.
The @variables clause is not mandatory but it help to make sense of the output
(otherwise pss will order the variables by first appearance). There should be
the same number of equations than variables. Equations are separated by
comma (,) or semi-column (;). Line starting by sharp sign(#) are comments.
Variables are case-sensitive. They are a letter followed by a sequence of
alphanumeric characters or underscore(_). Array notation like x[3] or x[3,2]
is accepted but not encouraged.
Real numbers can use exponential notation, like 1.3E+7. The square root of -1
is denoted by %i and complex number can be in one of the forms
(1-2%i) or (1,-2). It is also possible to expand a complex expression as a sum
of products, where constants will be real or imaginary.
A monomial is an optional real or complex constant, followed by a product of
variables or power of variables. The multiplication sing * is mandatory. Both
symbols ** and \^ are accepted for exponentiation.
Here is a valid equation:
-1.531013324281373*%i*X_1_3+0.3090320004213881*X_1_3
+1.522841221454615*%i*X_1_2+0.0129522072411*X_1_2
+0.6580171506051307*%i*X_1_1-0.7164510277358201*X_1_1- 1
The formal language definition for the input file can be found on section 2 of the
pss.pdf file (in /usr/local/share/doc/pss5rev1 directory).
More examples The directory /usr/local/share/doc/pss5rev1/polynomials contains a large number of examples coming from the POSSO project, or from Jan Verschelde PHCPack, or from T.Y.Li and collaborators (see [Other polynomial solvers]). For more information on those systems, I suggest checking Jan Verschelde's comments in PHCPack and also Bini and Mourrains's polynomial test suite at http://www-sop.inria.fr/saga/POL/