|
D.5.5.6 param
Procedure from library hnoether.lib (see hnoether_lib).
- Usage:
- param(L [,x]); L list, x any type (optional)
- Assume:
- L is the output of
develop(f) , or of
extdevelop(develop(f),n) , or one entry of the output of
reddevelop(f) .
- Return:
- a parametrization for f in the following format:
- if only the list L is given, the result is an ideal of two
polynomials p[1],p[2]: if the HNE was finite then f(p[1],p[2])=0};
if not, the "real" parametrization will be two power series and
p[1],p[2] are truncations of these series.
- if the optional parameter x is given, the result is a list l:
l[1]=param(L) (ideal) and l[2]=intvec with two entries indicating
the highest degree up to which the coefficients of the monomials in
l[1] are exact (entry -1 means that the corresponding parametrization
is exact).
- Note:
- If the basering has only 2 variables, the first variable is chosen
as indefinite. Otherwise, the 3rd variable is chosen.
Example:
| LIB "hnoether.lib";
ring exring=0,(x,y,t),ds;
poly f=x3+2xy2+y2;
list hne=develop(f);
==> Warning! You have defined too many variables!
==> All variables except the first two will be ignored!
==> h(0) = 1
==> a(1,2) = -1
list hne_extended=extdevelop(hne,10);
==> a(1,4) = 2
==> a(1,6) = -4
==> a(1,8) = 8
==> a(1,10) = -16
// compare the matrices ...
print(hne[1]);
==> 0,x,
==> 0,-1
print(hne_extended[1]);
==> 0,x, 0,0,0,0, 0,0,0,0,
==> 0,-1,0,2,0,-4,0,8,0,-16
// ... and the resulting parametrizations:
param(hne);
==> // ** Warning: result is exact up to order 2 in x and 3 in y !
==> _[1]=-t2
==> _[2]=-t3
param(hne_extended);
==> // ** Warning: result is exact up to order 10 in x and 11 in y !
==> _[1]=-t2+2t4-4t6+8t8-16t10
==> _[2]=-t3+2t5-4t7+8t9-16t11
param(hne_extended,0);
==> // ** Warning: result is exact up to order 10 in x and 11 in y !
==> [1]:
==> _[1]=-t2+2t4-4t6+8t8-16t10
==> _[2]=-t3+2t5-4t7+8t9-16t11
==> [2]:
==> 10,11
| See also:
develop;
extdevelop.
|