|
D.8.4.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.828427125
==> [2]:
==> -1.414213562
==> [3]:
==> [1]:
==> 2.828427125
==> [2]:
==> 1.414213562
==> [4]:
==> [1]:
==> -1
==> [2]:
==> 3
|
|