Top
Back: essdevelop
Forward: param
FastBack: gaussman_lib
FastForward: mondromy_lib
Up: hnoether_lib
Top: Singular Manual
Contents: Table of Contents
Index: Index
About: About this document

D.5.5.5 extdevelop

Procedure from library hnoether.lib (see hnoether_lib).

Usage:
extdevelop(L,N); list L, int N

Assume:
L is the output of develop(f), or of extdevelop(l,n), or one entry of the output of reddevelop(f).

Return:
an extension of the Hamburger-Noether development of f as a list in the same format as L has (up to the last entry in the output of develop(f)).
Type help develop;, resp. help reddevelop; for more details.

Note:
The new HN-matrix will have at least N columns (if the HNE is not finite). In particular, if f is irreducible then (in most cases) extdevelop(develop(f),N) will produce the same result as develop(f,N).
If the matrix M of L has n columns then, compared with param(L), param(extdevelop(L,N)) will increase the exactness by at least (N-n) more significant monomials.

Example:
 
LIB "hnoether.lib";
// -------- prepare for example ---------
if (nameof(basering)=="HNEring") {
def rettering=HNEring;
kill HNEring;
}
// ------ the example starts here -------
ring exring=0,(x,y),dp;
list hne=reddevelop(x14-3y2x11-y3x10-y2x9+3y4x8+y5x7+3y4x6+x5*(-y6+y5)
-3y6x3-y7x2+y8);
==> finite HNE found
==> HNE of one branch found
==> finite HNE found
==> // result: 3 branch(es) successfully computed,
==> //         basering has changed to HNEring
print(hne[1][1]);    // HNE of 1st branch is finite  
==> 0,x,0,
==> 0,1,x 
print(extdevelop(hne[1],5)[1]);
==>  No extension is possible
==> 0,x,0,
==> 0,1,x 
print(hne[2][1]);    // HNE of 2nd branch can be extended
==> 0,x,0,
==> 0,1,x,
==> 0,1,-1
list ehne=extdevelop(hne[2],5);
==> a(2,3) = -1
==> a(2,4) = 1
==> a(2,5) = -1
print(ehne[1]);      // new HN-matrix has 5 columns
==> 0,x,0, 0,0,
==> 0,1,x, 0,0,
==> 0,1,-1,1,-1
param(hne[2]);
==> // ** Warning: result is exact up to order 5 in x and 7 in y !
==> _[1]=x4-x5-x6+x7
==> _[2]=x6-2x7+2x9-x10
param(ehne);
==> // ** Warning: result is exact up to order 7 in x and 9 in y !
==> _[1]=x4-x5+x6-x7-x8+x9-x10+x11
==> _[2]=x6-2x7+3x8-4x9+2x10-2x12+4x13-3x14+2x15-x16
kill HNEring,exring;
// --- restore HNEring if previously defined ---
if (defined(rettering)) {
setring rettering;
def HNEring=rettering;
export HNEring;
}
See also: develop; param; reddevelop.


Top Back: essdevelop Forward: param FastBack: gaussman_lib FastForward: mondromy_lib Up: hnoether_lib Top: Singular Manual Contents: Table of Contents Index: Index About: About this document
            User manual for Singular version 2-0-0, February 2001, generated by texi2html.