Changeset 120c517 in git for Singular/LIB/equising.lib


Ignore:
Timestamp:
Nov 8, 2005, 7:18:04 PM (18 years ago)
Author:
Hans Schönemann <hannes@…>
Branches:
(u'spielwiese', 'ec94ef7a30b928574c0c3daf41f6804dff5f6b69')
Children:
b17a5c26cefea774381518da0aa52b998e0b4075
Parents:
c91fefd86fa767380ec3afd51615cf5943a61c88
Message:
*lossen: simplify


git-svn-id: file:///usr/local/Singular/svn/trunk@8795 2c84dea3-7e68-4137-9b89-c4e89433aadc
File:
1 edited

Legend:

Unmodified
Added
Removed
  • Singular/LIB/equising.lib

    rc91fefd r120c517  
    1 version="$Id: equising.lib,v 1.13 2005-11-04 14:01:18 Singular Exp $";
     1version="$Id: equising.lib,v 1.14 2005-11-08 18:18:04 Singular Exp $";
    22category="Singularities";
    33info="
     
    10801080    }
    10811081  }
    1082 
    1083   // computation for all equimultiple sections being trivial (I^s(f))
     1082 
     1083  // Computation for all equimultiple sections being trivial (I^s(f))
    10841084  ideal Jtriv=J;
    10851085  for (i=1;i<=no_b; i++)
     
    10881088  }
    10891089  Jtriv=std(Jtriv);
     1090
     1091
    10901092
    10911093  dbprint(i_print,"// ");
     
    11181120    }
    11191121  }
     1122
     1123  //new CL 11/06:  check in which equations b(k) appears and remove those b(k)
     1124  //               which appear in exactly one of the equations (by removing this
     1125  //               equation)
     1126  dbprint(i_print,"// ");
     1127  dbprint(i_print,"// Remove superfluous equations:");
     1128  dbprint(i_print,"// -----------------------------");
     1129  int Z,App_in;
     1130  ideal J_Tmp;
     1131  int ncJ=ncols(J);
     1132
     1133  intmat Mdet[ncJ][1];
     1134  for (Z=1;Z<=ncJ;Z++){ Mdet[Z,1]=Z; }
     1135
     1136  for (i=1;i<=no_b; i++)
     1137  {
     1138    ideal b_appears_in(i);            // Eintraege sind spaeter 1 oder 0
     1139    intmat b_app_in(i)[1][ncJ];       // Eintraege sind spaeter 1 oder 0
     1140    b_appears_in(i)[ncJ]=0; 
     1141    J_Tmp = J-subst(J,b(i),0);
     1142    for (Z=1; Z<=ncJ; Z++) {
     1143      if (J_Tmp[Z]<>0) {      // b(i) appear in J_Tmp[Z]
     1144        b_appears_in(i)[Z]=1;
     1145        b_app_in(i)[1,Z]=1;
     1146      }
     1147    }
     1148    if (size(b_appears_in(i))==1) { //b(i) appears only in one J_Tmp[Z]
     1149      App_in = (b_app_in(i)*Mdet)[1,1];  // determines Z
     1150      J[App_in]=0;
     1151      b_appears_in(i)[App_in]=0;
     1152      b_app_in(i)[1,App_in]=0;
     1153    }
     1154  }
     1155
     1156  for (i=1;i<=no_b; i++)
     1157  {
     1158    if (size(b_appears_in(i))==1) { //b(i) appears only in one J_Tmp[Z]
     1159      App_in = (b_app_in(i)*Mdet)[1,1];  // determines Z
     1160      J[App_in]=0;
     1161      b_appears_in(i)[App_in]=0;
     1162      b_app_in(i)[1,Z]=1;
     1163      i=0;
     1164    }
     1165  }
     1166
    11201167
    11211168  ideal J_no_b = nselect(J,1,no_b);
     
    19832030option(prot);
    19842031timer=1;
    1985 ring r=32003,(x,y),ds;
     2032ring r=0,(x,y),ls;
    19862033poly f=(x4-y4)^2-x10;
    19872034list L=versal(f);
     
    20202067poly f=w2-v199;
    20212068list L=hnexpansion(f);
    2022 List LL=versal(f);
     2069list LL=versal(f);
    20232070def Px=LL[1];
    20242071setring Px;
Note: See TracChangeset for help on using the changeset viewer.