|  |  D.8.3.11 triangL_solve Procedure from librarysolve.lib(see  solve_lib).
 
Example:Usage:
triangL_solve(i [, p] ); i=ideal, p=integer,p>0: gives precision of complex numbers in digits (default: p=30).
 
Assume:
the ground field has char 0; i is a zero-dimensional ideal.
Return:
ring Rwith the same number of variables, but with complex
coefficients (and precision p).Rcomes with a listrlistof numbers, in which the complex roots of i are stored.
Note:
The procedure uses a triangular system (Lazard's Algorithm) computed
from a standard basis of input ideal i to determine recursively all
complex roots with Laguerre's algorithm.
 |  | 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 = triangL_solve(s,10);
==> 
==> // 'triangL_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
 | 
 
 |