1 | #ifndef MPR_H |
---|
2 | #define MPR_H |
---|
3 | /**************************************** |
---|
4 | * Computer Algebra System SINGULAR * |
---|
5 | ****************************************/ |
---|
6 | |
---|
7 | /* $Id: mpr_inout.h,v 1.3 1999-06-29 09:03:45 wenk Exp $ */ |
---|
8 | |
---|
9 | /* |
---|
10 | * ABSTRACT - multipolynomial resultants - interface to Singular |
---|
11 | * |
---|
12 | */ |
---|
13 | |
---|
14 | #define DEFAULT_DIGITS 30 |
---|
15 | |
---|
16 | #define MPR_DENSE 1 |
---|
17 | #define MPR_SPARSE 2 |
---|
18 | |
---|
19 | /** solve a multipolynomial system using the u-resultant |
---|
20 | * Input ideal must be 0-dimensional and pVariables == IDELEMS(ideal). |
---|
21 | * Resultant method can be MPR_DENSE, which uses Macaulay Resultant (good for |
---|
22 | * dense homogeneous polynoms) or MPR_SPARSE, which uses Sparse Resultant |
---|
23 | * (Gelfand, Kapranov, Zelevinsky). |
---|
24 | * If interpolate == true then the determinant of the u-resultant will be |
---|
25 | * numerically interpolatet using a Vandermonde System. |
---|
26 | * Otherwise, the Sparse Bareiss will be used (faster!). |
---|
27 | * Returns a list containing the roots of the system. |
---|
28 | */ |
---|
29 | BOOLEAN nuUResSolve( leftv res, leftv arg1, leftv arg2, leftv arg3 ); |
---|
30 | |
---|
31 | /** build resultant matrix from ideal |
---|
32 | * Make sure that IDELEMS(ideal) == pVariables+1. |
---|
33 | */ |
---|
34 | BOOLEAN nuMPResMat( leftv res, leftv arg1, leftv arg2 ); |
---|
35 | |
---|
36 | /** find the (complex) roots an univariate polynomial |
---|
37 | * Determines the roots of an univariate polynomial using Laguerres' |
---|
38 | * root-solver. Good for polynomials with low and middle degree (<40). |
---|
39 | * Returns a list containing the roots of the polynomial. |
---|
40 | */ |
---|
41 | BOOLEAN nuLagSolve( leftv res, leftv arg1, leftv arg2 ); |
---|
42 | |
---|
43 | /** |
---|
44 | */ |
---|
45 | BOOLEAN nuVanderSys( leftv res, leftv arg1, leftv arg2, leftv arg3 ); |
---|
46 | |
---|
47 | #endif |
---|
48 | |
---|
49 | // local Variables: *** |
---|
50 | // folded-file: t *** |
---|
51 | // compile-command-1: "make installg" *** |
---|
52 | // compile-command-2: "make install" *** |
---|
53 | // End: *** |
---|