Home Online Manual
Top
Back: fglm_solve
Forward: simplexOut
FastBack: presolve_lib
FastForward: triang_lib
Up: solve_lib
Top: Singular Manual
Contents: Table of Contents
Index: Index
About: About this document

D.8.3.7 lex_solve

Procedure from library solve.lib (see solve_lib).

Usage:
lex_solve( i[,p] ); i=ideal, p=integer,
p>0: gives precision of complex numbers in decimal digits (default: p=30).

Assume:
i is a reduced lexicographical Groebner bases of a zero-dimensional ideal, sorted by increasing leading terms.

Return:
ring R with the same number of variables but with complex coefficients (and precision p). R comes with a list rlist of numbers, in which the complex roots of i are stored.

Example:
 
LIB "solve.lib";
ring r = 0,(x,y),lp;
// compute the intersection points of two curves
ideal s =  x2 + y2 - 10, x2 + xy + 2y2 - 16;
def R = lex_solve(stdfglm(s),10);
==> 
==> // 'lex_solve' created a ring, in which a list rlist of numbers (the
==> // complex solutions) is stored.
==> // To access the list of complex solutions, type (if the name R was assig\
   ned
==> // to the return value):
==>         setring R; rlist; 
setring R; rlist;
==> [1]:
==>    [1]:
==>       1
==>    [2]:
==>       -3
==> [2]:
==>    [1]:
==>       -2.8284271247
==>    [2]:
==>       -1.4142135624
==> [3]:
==>    [1]:
==>       2.8284271247
==>    [2]:
==>       1.4142135624
==> [4]:
==>    [1]:
==>       -1
==>    [2]:
==>       3