@c ---content LibInfo---
@comment This file was generated by doc2tex.pl from d2t_singular/mondromy_lib.doc
@comment DO NOT EDIT DIRECTLY, BUT EDIT d2t_singular/mondromy_lib.doc INSTEAD
@c library version: (1.22.2.2,2002/02/20)
@c library file: ../Singular/LIB/mondromy.lib
@cindex mondromy.lib
@cindex mondromy_lib
@table @asis
@item @strong{Library:}
mondromy.lib
@item @strong{Purpose:}
  Monodromy of an Isolated Hypersurface Singularity
@item @strong{Author:}
Mathias Schulze, email: mschulze@@mathematik.uni-kl.de

@item @strong{Overview:}
A library to compute the monodromy of an isolated hypersurface singularity.
It uses an algorithm by Brieskorn (manuscripta math. 2 (1970), 103-161) to
compute a connection matrix of the meromorphic Gauss-Manin connection up to
arbitrarily high order, and an algorithm of Gerard and Levelt (Ann. Inst.
Fourier, Grenoble 23,1 (1973), pp. 157-195) to transform it to a simple pole.

@end table

@strong{Procedures:}
@menu
* detadj:: determinant and adjoint matrix of square matrix U
* invunit:: series inverse of polynomial u up to order n
* jacoblift:: lifts f^kappa in jacob(f) with minimal kappa
* monodromyB:: monodromy of isolated hypersurface singularity f
* H2basis:: basis of Brieskorn lattice H''
@end menu
@cindex Monodromy
@cindex hypersurface singularity
@cindex Gauss-Manin connection
@cindex Brieskorn lattice
@c inserted refs from d2t_singular/mondromy_lib.doc:35
@ifinfo
@menu
See also:
* gaussman_lib::
@end menu
@end ifinfo
@iftex
@strong{See also:}
@ref{gaussman_lib}.
@end iftex
@c end inserted refs from d2t_singular/mondromy_lib.doc:35

@c ---end content LibInfo---

@c ------------------- detadj -------------
@node detadj, invunit,, mondromy_lib
@subsubsection detadj
@cindex detadj
@c ---content detadj---
Procedure from library @code{mondromy.lib} (@pxref{mondromy_lib}).

@table @asis
@item @strong{Usage:}
detadj(U); U matrix

@item @strong{Assume:}
U is a square matrix with non zero determinant.

@item @strong{Return:}
The procedure returns a list with at most 2 entries.
@*If U is not a square matrix, the list is empty.
@*If U is a square matrix, then the first entry is the determinant of U.
If U is a square matrix and the determinant of U not zero,
then the second entry is the adjoint matrix of U.

@item @strong{Display:}
The procedure displays comments if printlevel>=1.

@end table
@strong{Example:}
@smallexample
@c computed example detadj d2t_singular/mondromy_lib.doc:68 
LIB "mondromy.lib";
ring R=0,x,dp;
matrix U[2][2]=1,1+x,1+x2,1+x3;
list daU=detadj(U);
daU[1];
@expansion{} -x2-x
print(daU[2]);
@expansion{} x3+1, -x-1,
@expansion{} -x2-1,1    
@c end example detadj d2t_singular/mondromy_lib.doc:68
@end smallexample
@c ---end content detadj---

@c ------------------- invunit -------------
@node invunit, jacoblift, detadj, mondromy_lib
@subsubsection invunit
@cindex invunit
@c ---content invunit---
Procedure from library @code{mondromy.lib} (@pxref{mondromy_lib}).

@table @asis
@item @strong{Usage:}
invunit(u,n); u poly, n int

@item @strong{Assume:}
The polynomial u is a series unit.

@item @strong{Return:}
The procedure returns the series inverse of u up to order n
or a zero polynomial if u is no series unit.

@item @strong{Display:}
The procedure displays comments if printlevel>=1.

@end table
@strong{Example:}
@smallexample
@c computed example invunit d2t_singular/mondromy_lib.doc:103 
LIB "mondromy.lib";
ring R=0,(x,y),dp;
invunit(2+x3+xy4,10);
@expansion{} 1/8x2y8-1/16x9+1/4x4y4+1/8x6-1/4xy4-1/4x3+1/2
@c end example invunit d2t_singular/mondromy_lib.doc:103
@end smallexample
@c ---end content invunit---

@c ------------------- jacoblift -------------
@node jacoblift, monodromyB, invunit, mondromy_lib
@subsubsection jacoblift
@cindex jacoblift
@c ---content jacoblift---
Procedure from library @code{mondromy.lib} (@pxref{mondromy_lib}).

@table @asis
@item @strong{Usage:}
jacoblift(f); f poly

@item @strong{Assume:}
The polynomial f in a series ring (local ordering) defines
an isolated hypersurface singularity.

@item @strong{Return:}
The procedure returns a list with entries kappa, xi, u of type
int, vector, poly such that kappa is minimal with f^kappa in jacob(f),
u is a unit, and u*f^kappa=(matrix(jacob(f))*xi)[1,1].

@item @strong{Display:}
The procedure displays comments if printlevel>=1.

@end table
@strong{Example:}
@smallexample
@c computed example jacoblift d2t_singular/mondromy_lib.doc:137 
LIB "mondromy.lib";
ring R=0,(x,y),ds;
poly f=x2y2+x6+y6;
jacoblift(f);
@expansion{} [1]:
@expansion{}    2
@expansion{} [2]:
@expansion{}    1/2x2y3*gen(2)+1/6x7*gen(1)+5/6x6y*gen(2)-2/3xy6*gen(1)+1/6y7*gen(2)-4\
   x4y5*gen(2)-3/2x9y2*gen(1)-15/2x8y3*gen(2)+9/2x3y8*gen(1)-3/2x2y9*gen(2)
@expansion{} [3]:
@expansion{}    1-9x2y2
@c end example jacoblift d2t_singular/mondromy_lib.doc:137
@end smallexample
@c ---end content jacoblift---

@c ------------------- monodromyB -------------
@node monodromyB, H2basis, jacoblift, mondromy_lib
@subsubsection monodromyB
@cindex monodromyB
@c ---content monodromyB---
Procedure from library @code{mondromy.lib} (@pxref{mondromy_lib}).

@table @asis
@item @strong{Usage:}
monodromyB(f[,opt]); f poly, opt int

@item @strong{Assume:}
The polynomial f in a series ring (local ordering) defines
an isolated hypersurface singularity.

@item @strong{Return:}
The procedure returns a residue matrix M of the meromorphic
Gauss-Manin connection of the singularity defined by f
or an empty matrix if the assumptions are not fulfilled.
If opt=0 (default), exp(-2*pi*i*M) is a monodromy matrix of f,
else, only the characteristic polynomial of exp(-2*pi*i*M) coincides
with the characteristic polynomial of the monodromy of f.

@item @strong{Display:}
The procedure displays more comments for higher printlevel.

@end table
@strong{Example:}
@smallexample
@c computed example monodromyB d2t_singular/mondromy_lib.doc:175 
LIB "mondromy.lib";
ring R=0,(x,y),ds;
poly f=x2y2+x6+y6;
matrix M=monodromyB(f);
print(M);
@expansion{} 7/6,0,  0,0,  0,  0,0,   0,-1/2,0,  0,  0,    0,       
@expansion{} 0,  7/6,0,0,  0,  0,-1/2,0,0,   0,  0,  0,    0,       
@expansion{} 0,  0,  1,0,  0,  0,0,   0,0,   0,  0,  0,    0,       
@expansion{} 0,  0,  0,4/3,0,  0,0,   0,0,   0,  0,  0,    0,       
@expansion{} 0,  0,  0,0,  4/3,0,0,   0,0,   0,  0,  0,    0,       
@expansion{} 0,  0,  0,0,  0,  1,0,   0,0,   0,  0,  0,    0,       
@expansion{} 0,  0,  0,0,  0,  0,5/6, 0,0,   0,  0,  0,    0,       
@expansion{} 0,  0,  0,0,  0,  0,0,   1,0,   0,  0,  0,    0,       
@expansion{} 0,  0,  0,0,  0,  0,0,   0,5/6, 0,  0,  0,    0,       
@expansion{} 0,  0,  0,0,  0,  0,0,   0,0,   2/3,0,  0,    0,       
@expansion{} 0,  0,  0,0,  0,  0,0,   0,0,   0,  2/3,0,    0,       
@expansion{} 0,  0,  0,0,  0,  0,0,   0,0,   0,  0,  47/44,-625/396,
@expansion{} 0,  0,  0,0,  0,  0,0,   0,0,   0,  0,  9/44, -3/44    
@c end example monodromyB d2t_singular/mondromy_lib.doc:175
@end smallexample
@c ---end content monodromyB---

@c ------------------- H2basis -------------
@node H2basis,, monodromyB, mondromy_lib
@subsubsection H2basis
@cindex H2basis
@c ---content H2basis---
Procedure from library @code{mondromy.lib} (@pxref{mondromy_lib}).

@table @asis
@item @strong{Usage:}
H2basis(f); f poly

@item @strong{Assume:}
The polynomial f in a series ring (local ordering) defines
an isolated hypersurface singularity.

@item @strong{Return:}
The procedure returns a list of representatives of a C@{f@}-basis of the
Brieskorn lattice H''=Omega^(n+1)/df^dOmega^(n-1).

@item @strong{Theory:}
H'' is a free C@{f@}-module of rank milnor(f).

@item @strong{Display:}
The procedure displays more comments for higher printlevel.

@end table
@strong{Example:}
@smallexample
@c computed example H2basis d2t_singular/mondromy_lib.doc:213 
LIB "mondromy.lib";
ring R=0,(x,y),ds;
poly f=x2y2+x6+y6;
H2basis(f);
@expansion{} [1]:
@expansion{}    x4
@expansion{} [2]:
@expansion{}    x2y2
@expansion{} [3]:
@expansion{}    y4
@expansion{} [4]:
@expansion{}    x3
@expansion{} [5]:
@expansion{}    x2y
@expansion{} [6]:
@expansion{}    xy2
@expansion{} [7]:
@expansion{}    y3
@expansion{} [8]:
@expansion{}    x2
@expansion{} [9]:
@expansion{}    xy
@expansion{} [10]:
@expansion{}    y2
@expansion{} [11]:
@expansion{}    x
@expansion{} [12]:
@expansion{}    y
@expansion{} [13]:
@expansion{}    1
@c end example H2basis d2t_singular/mondromy_lib.doc:213
@end smallexample
@c ---end content H2basis---
