/////////////////////////////////////////////////////////////////////////////// version="$Id: spectrum.lib,v 1.12 2001-02-02 16:21:37 mschulze Exp $"; category="Singularities"; info=" LIBRARY: spectrum.lib Singularity Spectrum for Nondegenerate Singularities AUTHOR: S. Endrass PROCEDURES: spectrumnd(poly[,1]); spectrum of a nondegenerate isolated singularity semicont(s1,s2[,1]); tests if s2 is semicontinous for s1 semicontqh(s1,s2); semicontinuity test using open and half open intervals spadd(s1,s2); sum of two spectra s1 and s2 spmul(s,k); product of spectrum s with integer k "; /////////////////////////////////////////////////////////////////////////////// proc spectrumnd (poly f, list #) "USAGE: spectrumnd(f[,1]); f poly ASSUME: f has nondegenerate principal part RETURN: a list containing the spectrum of f NOTE if a second argument 1 is given, no test for a degenerate principal part will be done EXAMPLE: example spectrumnd; shows examples " { if(size(#)==0) { return(system("spectrum",f)); } return (system("spectrum",f,#[1])); } example { "EXAMPLE:"; echo = 2; ring r=0,(x,y),ds; poly f=x^31+x^6*y^7+x^2*y^12+x^13*y^2+y^29; spectrumnd(f); } /////////////////////////////////////////////////////////////////////////////// proc semicont (list s, list ss, list #) "USAGE: semicont(s,ss[,1]); s, ss list RETURN: 1 if ss is semicontinous for s using half open intervals, 0 otherwise NOTE: if a third argument 1 is given, open intervals are used EXAMPLE: example semicont; shows examples " { if(size(#)==0) { return(system("semic",s,ss)); } return (system("semic",s,ss,#[1])); } example { "EXAMPLE:"; echo = 2; } /////////////////////////////////////////////////////////////////////////////// proc semicontsqh (list s, list ss) "USAGE: semicontsqh(s,ss); s, ss list RETURN: 1 if ss is semicontinous for s using open and half open intervals, 0 otherwise EXAMPLE: example semicontsqh; shows examples " { return (system("semic",s,ss,1)); } example { "EXAMPLE:"; echo = 2; } /////////////////////////////////////////////////////////////////////////////// proc spadd (list s1, list s2) "USAGE: spadd(s1,s2); s1, s2 list RETURN: a list containing the sum of the two spectra s1 and s2 EXAMPLE: example spadd; shows examples " { return (system("spadd",s1,s2)); } example { "EXAMPLE:"; echo = 2; } /////////////////////////////////////////////////////////////////////////////// proc spmul (list s, int k) "USAGE: spmul(s,k); s list, k int RETURN: a list containing the product of the spectrum s with the integer k EXAMPLE: example spmul; shows examples " { return (system("spmul",s,k)); } example { "EXAMPLE:"; echo = 2; } ///////////////////////////////////////////////////////////////////////////////