Top
Back: D.5.5.2 sethnering
Forward: D.5.5.4 extdevelop
FastBack: D. SINGULAR libraries
FastForward: E. Release Notes
Up: D.5.5 hnoether_lib
Top: Singular 2-0-4 Manual
Contents: Table of Contents
Index: F. Index
About: About This Document

D.5.5.3 develop

Procedure from library hnoether.lib (see hnoether_lib).

Usage:

develop(f [,n]); f poly, n int

Assume:

f is a bivariate polynomial (in the first 2 ring variables) and irreducible as power series (for reducible f use hnexpansion).

Return:

list L with:

L[1]; matrix:

Each row contains the coefficients of the corresponding line of the Hamburger-Noether expansion (HNE). The end of the line is marked in the matrix by the first ring variable (usually x).

L[2]; intvec:

indicating the length of lines of the HNE

L[3]; int:

0 if the 1st ring variable was transversal (with respect to f),
1 if the variables were changed at the beginning of the computation,
-1 if an error has occurred.

L[4]; poly:

the transformed polynomial of f to make it possible to extend the Hamburger-Noether development a posteriori without having to do all the previous calculation once again (0 if not needed)

L[5]; int:

1 if the curve has exactly one branch (i.e., is irreducible),
0 else (i.e., the curve has more than one HNE, or f is not valid).

Display:

The (non zero) elements of the HNE (if not called by another proc).

Note:

The optional parameter n affects only the computation of the LAST line of the HNE. If it is given, the HN-matrix L[1] will have at least n columns.
Otherwise, the number of columns will be chosen minimal such that the matrix contains all necessary information (i.e., all lines of the HNE but the last (which is in general infinite) have place).
If n is negative, the algorithm is stopped as soon as the computed information is sufficient for invariants(L), but the HN-matrix L[1] may still contain undetermined elements, which are marked with the 2nd variable (of the basering).
For time critical computations it is recommended to use ring ...,(x,y),ls as basering - it increases the algorithm’s speed.
If printlevel>=0 comments are displayed (default is printlevel=0).

Example:

 
LIB "hnoether.lib";
ring exring = 7,(x,y),ds;
list hne=develop(4x98+2x49y7+x11y14+2y14);
print(hne[1]);
→ 0,0, 0,0,0,0,3,x,
→ 0,x, 0,0,0,0,0,0,
→ 0,0, 0,x,0,0,0,0,
→ 0,x, 0,0,0,0,0,0,
→ 0,-1,0,0,0,0,0,0 
// therefore the HNE is:
// z(-1)= 3*z(0)^7 + z(0)^7*z(1),
// z(0) = z(1)*z(2),       (there is 1 zero in the 2nd row before x)
// z(1) = z(2)^3*z(3),     (there are 3 zeroes in the 3rd row)
// z(2) = z(3)*z(4),
// z(3) = -z(4)^2 + 0*z(4)^3 +...+ 0*z(4)^8 + ?*z(4)^9 + ...
// (the missing x in the last line indicates that it is not complete.)
hne[2];
→ 7,1,3,1,-1
parametrisation(hne);
→ [1]:
→    _[1]=-x14
→    _[2]=-3x98-x109
// parametrization:   x(t)= -t^14+O(t^21),  y(t)= -3t^98+O(t^105)
// (the term -t^109 in y may have a wrong coefficient)
displayHNE(hne);
→ HNE[1]=-y+3*z(0)^7+z(0)^7*z(1)
→ HNE[2]=-x+z(1)*z(2)
→ HNE[3]=z(2)^3*z(3)
→ HNE[4]=z(3)*z(4)
→ HNE[5]=-z(4)^2

See also: displayHNE; extdevelop; hnexpansion.


Top Back: D.5.5.2 sethnering Forward: D.5.5.4 extdevelop FastBack: D. SINGULAR libraries FastForward: E. Release Notes Up: D.5.5 hnoether_lib Top: Singular 2-0-4 Manual Contents: Table of Contents Index: F. Index About: About This Document
            User manual for Singular version 2-0-4, October 2002, generated by texi2html.