// $Id: spectrum.lib,v 1.8 2000-12-19 15:05:37 anne Exp $ /////////////////////////////////////////////////////////////////////////////// version="$Id: spectrum.lib,v 1.8 2000-12-19 15:05:37 anne Exp $"; category="Singularities"; info=" LIBRARY: spectrum.lib PROCEDURES FOR COMPUTING SINGULARITY SPECTRA PROCEDURES: spectrum(poly[,1]); spectrum of a isolated singularity (with/without tests) semic(s1,s2[,1]); tests if s2 is semicontinous for s1 using half open intervalls (and open intervalls for a 3rd paramater 1) semicqh(s1,s2[,1]); tests if s2 is semicontinous for s1 using open and half open intervalls spadd(s1,s2); sum of two spectra s1 and s2 spmul(s,k); multiplies the spectrum s with the int k (parameters in square brackets [] are optional) "; /////////////////////////////////////////////////////////////////////////////// proc spectrum (poly f, list #) "USAGE: spectrum(f[,1]); f polynomial computes the spectrum of f if a second argument 1 is given, no test for a degenerate principal part will be done RETURN: list EXAMPLE: example spectrum; 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; spectrum(f); } /////////////////////////////////////////////////////////////////////////////// proc semic (list s, list ss, list #) "USAGE: semic(s,ss[,i]); s, ss spectra, i int tests if ss is semicontinous for s using half open intervalls (and open intervalls for a 3rd paramater 1) RETURN: int EXAMPLE: example semic; shows examples " { if(size(#)==0) { return(system("semic",s,ss)); } return (system("semic",s,ss,#[1])); } example { "EXAMPLE:"; echo = 2; } /////////////////////////////////////////////////////////////////////////////// proc semicsqh (list s, list ss) "USAGE: semicsqh(s,ss); s, ss spectra, i int tests if ss is semicontinous for s using open and half open intervalls RETURN: int EXAMPLE: example semicsqh; shows examples " { return (system("semic",s,ss,1)); } example { "EXAMPLE:"; echo = 2; } /////////////////////////////////////////////////////////////////////////////// proc spadd (list s1, list s2) "USAGE: spadd(s1,s2); s1, s2 spectra sum of two spectra s1 and s2 RETURN: list 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 spectrum, k int multiplies the spectrum s with the int k RETURN: list EXAMPLE: example spmul; shows examples " { return (system("spmul",s,k)); } example { "EXAMPLE:"; echo = 2; } ///////////////////////////////////////////////////////////////////////////////