# Authors: Antonio Laface, Luca Ugaglia # E-mail: alaface@udec.cl #----------- // r is the polynomial ring over which the calculations are made. ring r=32003,(x,y,z),dp; LIB "general.lib"; // Define the procedure dim_eff in order to evaluate if there are quasi homogeneous // linear systems of any degree with one point of multiplicity m0 and r points of // multiplicity m. // // Example: dim_eff(4,2,6) returns "L(6,4,2^6) dim(L)=1 vir(L)=0". This means that // between the quasi-homogeneous linear systems with one point of multiplicity 4 and // 6 points of multiplicity 2 there is only one special one: this is the system of // polynomials of degree 6, it has dimension 1 and virtual dimension 0. proc dim_eff (int mo,int m,int r) { int i,eff,virt,d; intvec hi; ideal I = 1; for(i=1; i<=r;i=i+1) { int p(i) = random(-100,100); int q(i) = random(-100,100); ideal K(i) = x-p(i)*z,y-q(i)*z; ideal I(i) = std(K(i)^(m)); I = std(intersect(I,I(i))); } int po = random(-100,100); int qo = random(-100,100); ideal Ko = x-po*z,y-qo*z; ideal Io = std((Ko)^(mo)); I = std(intersect(I,Io)); hi = hilb(I,2); int len = size(hi); for(d=2;d