The polynomial solvers of borderbasix

Several polynomial solvers are provided. They differ from the coefficient type used during the borderbasis computation.

The polynomial solver can be used as follows:

solver_bb_rational exp1l

where expl is a file containing the polynomials, of the form:

3*x0^2*x1-1; 
2*x0^3+x1^2-1;

The polynomials are separated by a ; The variables are x0, x1, ... The output result is the dimension of the quotient space:

Number of solutions (with multiplicity): 7

You can also use it with additional arguments to store the solution:

solver_bb_rational expl quotient

The monomial basis and the table of multiplications are then stored in the file quotient:

basis:=[1,x0,x1,x0^2,x0*x1,x1^2,x0*x1^2]; 
m0:=[
 [0,0,0,1/2,1/3,0,0], [1,0,0,0,0,0,0], [0,0,0,0,0,0,1/3],
 [0,1,0,0,0,0,0], [0,0,1,0,0,0,0], [0,0,0,-1/2,0,0,0], [0,0,0,0,0,1,0]
];
m1:=[
 [0,0,0,1/3,0,0,0], [0,0,0,0,0,-2/3,0], [1,0,0,0,0,1,0],
 [0,0,0,0,0,0,-2/3], [0,1,0,0,0,0,1], [0,0,1,0,0,0,0], [0,0,0,0,1,0,0]
];

If an additional file argument sol is given,

solver_bb_rational expl quotient sol

then numerical approximations of the complex roots are computed and stored in the file sol:

sol:=[ 
 [0.0428035262163119+(-0.5580279186159117)*I,-1.0517405084461988+(0.1623024230495026)*I],
 [0.0428035262163119+(0.5580279186159117)*I,-1.0517405084461988+(-0.1623024230495026)*I],
 [-0.5392836762227580+(-0.0000000000000000)*I,1.1461572238101630+(0.0000000000000000)*I],
 [0.6794478081883069+(-0.1011278450437246)*I,0.6757807989652637+(0.2057214199313530)*I],
 [0.6794478081883069+(0.1011278450437246)*I,0.6757807989652637+(-0.2057214199313530)*I],
 [-0.4526094962932398+(0.7015185419968863)*I,-0.1971189024241464+(0.4357389800666190)*I],
 [-0.4526094962932398+(-0.7015185419968863)*I,-0.1971189024241464+(-0.4357389800666190)*I]
];

Permission is granted to copy, distribute and/or modify this document under the terms of the GNU General Public License. If you don't have this file, write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.