MSOLVE(1)

NAME
msolve - computer algebra algorithms for solving polynomial systems

DESCRIPTION
msolve library for polynomial system solving, version 0.10.1 implemented by J. Berthomieu, C. Eder, M. Safey El Din

  Basic call:

    ./msolve -f [FILE1] -o [FILE2]

FILE1 and FILE2 are respectively the input and output files

Standard options

-f, --file FILE File name (mandatory).

-h, --help Prints this help. -o, --output-file FILE Name of output file. -t, --threads THR Number of threads to be used.

1   - one thread (default).

    THR > 1 - THR threads.

-v, --verbose VERB Level of verbosity, 0 - 2

0 - no output (default).
    1 - global information at the start and

end of the computation.
    2 - detailed output for each step of the

    algorithm, e.g. matrix sizes, #pairs, ...

  Input file format:

- first line: variables separated by a comma
    (no comma at end of line)

    - second line: characteristic of the field - next lines provide the polynomials (one per line),

    separated by a comma (no comma after the last polynomial)

Output file format: When there is no solution in an algebraic closure of the base field [-1]: Where there are infinitely many solutions in an algebraic closure of the base field: [1, nvars, -1,[]]: Else: Over prime fields: a rational parametrization of the solutions When input coefficients are rational numbers: real solutions to the input system (see the -P flag to recover a parametrization of the solutions) See the msolve tutorial for more details (https://msolve.lip6.fr)

Advanced options:

-F FILE File name encoding parametrizations in binary format.

-g, --groebner-basis GB Prints reduced Groebner bases of input system for

first prime characteristic w.r.t. grevlex ordering.
    One element per line is printed, commata separated. 0 - Nothing is printed. (default) 1 - Leading ideal is printed. 2 - Full reduced Groebner basis is printed.

-c GEN Handling genericity: If the staircase is not generic

enough, msolve can automatically try to fix this
    situation via first trying a change of the order of variables and finally adding a random linear form with a new variable (smallest w.r.t. DRL) 0 - Nothing is done, msolve quits. 1 - Change order of variables. 2 - Change order of variables, then try adding a

    random linear form. (default)

-d GEN Handling genericity further: If the staircase is not generic

enough, msolve can still try to perform the full computation
    by computing some normal forms and build the multiplication matrix, before fixing the situation via option -c 0 - No normal forms are computed. 1 - Few normal forms are computed. 2 - Some normal forms are computed. (default) 3 - Lots of normal forms are computed. 4 - All the normal forms are computed.

  -C Use sparse-FGLM-col algorithm:

Given an input file with k polynomials
    compute the quotient of the ideal generated by the first k-1 polynomials with respect to the kth polynomial.

-e, --elimination ELIM Define an elimination order: msolve supports two

blocks of variables, each block using the degree reverse
    lexicographical monomial order. ELIM has to be a number between 1 and #variables-1, and gives the number of eliminated variables. The basis with the first block of ELIM variables eliminated is then computed.

-I, --isolate ISOL Isolates the real roots (provided some univariate data)

without re-computing a Gr??bner basis
    0 - no (default). 1 - yes.

  -l, --linear-algebra LIN Linear algebra variant to be applied:

1 - exact sparse / dense
    2 - exact sparse (default)

42 - sparse / dense linearization (probabilistic)
    44 - sparse linearization (probabilistic)

-m MPR Maximal number of pairs used per matrix.

    0 - unlimited (default).

-n, --normal-form NF Given n input generators compute normal form of the last NF

elements of the input w.r.t. a degree reverse lexicographical
    Gr??bner basis of the first (n - NF) input elements. At the moment this only works for prime field computations. Combining this option with the "-i" option assumes that the first (n - NF) elements generate already a degree reverse lexicographical Gr??bner basis.

-p, --precision PRE Precision (in bits) on the output of real root isolation.

    128 (default).

-P, --parametrization PAR Get also rational parametrization of solution set.

0 (default). For a detailed description of the output
    format please see the general output data format section above.

-L, --lifting-mulmat LIF Controls lifting of multplication matrices over the rationals.

0 - no lifting (default).
    1 - matrices are lifted. Warning: when activated, this option may cause higher memory consumption.

-q Q Uses signature-based algorithms.

0 - no (default).
    1 - yes.

--random-seed
    SEED Random seed to initialize the pseudo random generator -1 - time(0) will be used (default) SEED ??? 0 - use at your own risks;

this is intended for developers and
    debug purposes only

-r, --reduce-gb RED Reduce Groebner basis.

0 - no.
    1 - yes (default).

-s HTS Initial hash table size given

as power of two.
    17 (default).

  -S Use f4sat saturation algorithm:

Given an input file with k polynomials
    compute the saturation of the ideal generated by the first k-1 polynomials with respect to the kth polynomial. Note: At the moment restricted to 32 bit prime fields.

-u UHT Number of steps after which the

hash table is newly generated.
    0 - no update (default).

-V, --version Prints msolve's version